Ecosystem Operator

Step-by-step guide for an ecosystem operator

An Ecosystem Operator is responsible for initializing the ecosystem, designing workflows and inviting participating organizations.

Workgroup Creation

A Workgroup is required to interact with counterparties using the baseline protocol.

prvd baseline workgroups init

During this process, you will be prompted to:

  • Name your Workgroup

  • Select a mainnet where the Workgroup will operate

    • To test baseline messaging, please select Ropsten, Rinkeby or Gorli

  • Select the appropriate Organization

Initialize a new workgroup:

CLI
Prompt
CLI
prvd baseline workgroups init --name '<workgroup name>' \
--network <network_id> \
--organization <organization_id>
Prompt
❯ prvd baseline workgroups init
DEBU[0000] using stderr for new logger instance
Workgroup Name: Demo Workgroup
✔ Ethereum Rinkeby testnet
✔ ABC Corp

Inviting Participants

A Workgroup setup is incomplete without participants to send messages. You will need to generate a verifiable credential (signed JWT) to distribute to each invitee, which will be used to join your Workgroup:

prvd baseline workgroups participants invite

During this process, you will be prompted to:

  • Enter the name of the invitee's Organization

  • Enter the invitee's email address

  • Select the appropriate Workgroup

  • Select the appropriate Organization

Invite a participant to the workgroup:

CLI
Prompt
CLI
prvd baseline workgroups participants invite --organization <organization_id> \
--workgroup <workgroup_id> \
--name 'DJ Corp' \
2021/05/21 11:24:39 invited baseline workgroup participant: [email protected]
eyJhbGciOiJSUzI1NiIsImtpZCI6IjIwOjU4OjU4OjQ3OmVkOmMxOmM0OmUyOjVkOjA4OmVkOmI4OjgxOjQ1OmZiOmJjIiwidHlwIjoiSldUIn0.eyJhdWQiOiJ0Y3A6Ly82LnRjcC5uZ3Jvay5pbzoxOTYyNiIsImJhc2VsaW5lIjp7Imludml0b3Jfb3JnYW5pemF0aW9uX2FkZHJlc3MiOiIweDBBNzlmZjAyNEFmMkViZjdCNURFNWNiOGQyNjZENWRiNjc4MTg2MTYiLCJyZWdpc3RyeV9jb250cmFjdF9hZGRyZXNzIjoiMHg5RkZEN2JlODk1NUUwZjdCZkZjRjUyN0E1MjkzNTk0QTJlMUU4QjhhIiwid29ya2dyb3VwX2lkIjoiMzg4MjEwNzAtNjYxMS00YTNiLTg5MDItN2VhNTQwZGQyNDQ5In0sImlhdCI6MTYyMTYxMDY3OSwiaXNzIjoib3JnYW5pemF0aW9uOjQwZWU4MGRhLTFjYzktNGFiYi04NDgwLWYyYjY4OGFjY2I5MCIsIm5hdHMiOnsicGVybWlzc2lvbnMiOnsicHVibGlzaCI6eyJhbGxvdyI6WyJiYXNlbGluZS5cdTAwM2UiXX19fSwic3ViIjoiZGpjb0Bwcm92aWRlLmxvY2FsIn0.fWo47v04w5hX6ghY-h5My0PTfH1OhPHTOSUyHvxUkB_XhGzbXrX6bgzLD28hDM6Nc1L0tznDulJOROgSniy-VXlos1aHXFF1sRjXEa1F-e3UbvzYLEGUSmRh3_j7rGf2_3QL4A1dXbftXwd_NRw-R_g-vp4dnA3PcuysEg5-YSRk4bMBGKlP7OpwGCaOUNH3vAi6X_D5p_S93U9nK5vgumQs_yuDfSQ9oV3YIRHNoNYGWDh4FMl3cXsncAHI5Rk9GjgHjq6kq2aLeo6LZ8ObOCkNlZpn8lBddTjBLSkNdJOnxA0qL18aIP8RsoWxzukmv9DUZxVhOwysRCC_dZ9rwlk5UKFBvem4mMqC2hxHv9WpKpOC3u4fxJHFdxcBk2e5nrRQvGKzb82q9xaJsCGLFZr3fKXkvVwqGOMi-t655N-qwvFGXLdj2ydsb4gqrlY-pkYR_3Qmm8UPjdfhHQrwrAL4DobIJWUhT_iDG945epPdXhtINEtPfGbR2kpwdeyMo_5kMro8SmThg44OdFhZae557XcP626P1TnA56-nttXgRK9LUrG-yTBbNz9sN2yofFL19xOkf6_dC1rOv-k2v2T_pxWwY69RrrEjKJVtN3BupKKarVJou5tEI8AWnnwRw91GQdMzttQgAxTIax67LNjc81Ar11qELhldCvorOEo
Prompt
prvd baseline workgroups participants invite
DEBU[0000] using stderr for new logger instance
Invitee Name: DJ Co
Invitee Email: [email protected]
✔ EY Summit Day 4
✔ KT
2021/05/21 11:24:39 invited baseline workgroup participant: [email protected]
eyJhbGciOiJSUzI1NiIsImtpZCI6IjIwOjU4OjU4OjQ3OmVkOmMxOmM0OmUyOjVkOjA4OmVkOmI4OjgxOjQ1OmZiOmJjIiwidHlwIjoiSldUIn0.eyJhdWQiOiJ0Y3A6Ly82LnRjcC5uZ3Jvay5pbzoxOTYyNiIsImJhc2VsaW5lIjp7Imludml0b3Jfb3JnYW5pemF0aW9uX2FkZHJlc3MiOiIweDBBNzlmZjAyNEFmMkViZjdCNURFNWNiOGQyNjZENWRiNjc4MTg2MTYiLCJyZWdpc3RyeV9jb250cmFjdF9hZGRyZXNzIjoiMHg5RkZEN2JlODk1NUUwZjdCZkZjRjUyN0E1MjkzNTk0QTJlMUU4QjhhIiwid29ya2dyb3VwX2lkIjoiMzg4MjEwNzAtNjYxMS00YTNiLTg5MDItN2VhNTQwZGQyNDQ5In0sImlhdCI6MTYyMTYxMDY3OSwiaXNzIjoib3JnYW5pemF0aW9uOjQwZWU4MGRhLTFjYzktNGFiYi04NDgwLWYyYjY4OGFjY2I5MCIsIm5hdHMiOnsicGVybWlzc2lvbnMiOnsicHVibGlzaCI6eyJhbGxvdyI6WyJiYXNlbGluZS5cdTAwM2UiXX19fSwic3ViIjoiZGpjb0Bwcm92aWRlLmxvY2FsIn0.fWo47v04w5hX6ghY-h5My0PTfH1OhPHTOSUyHvxUkB_XhGzbXrX6bgzLD28hDM6Nc1L0tznDulJOROgSniy-VXlos1aHXFF1sRjXEa1F-e3UbvzYLEGUSmRh3_j7rGf2_3QL4A1dXbftXwd_NRw-R_g-vp4dnA3PcuysEg5-YSRk4bMBGKlP7OpwGCaOUNH3vAi6X_D5p_S93U9nK5vgumQs_yuDfSQ9oV3YIRHNoNYGWDh4FMl3cXsncAHI5Rk9GjgHjq6kq2aLeo6LZ8ObOCkNlZpn8lBddTjBLSkNdJOnxA0qL18aIP8RsoWxzukmv9DUZxVhOwysRCC_dZ9rwlk5UKFBvem4mMqC2hxHv9WpKpOC3u4fxJHFdxcBk2e5nrRQvGKzb82q9xaJsCGLFZr3fKXkvVwqGOMi-t655N-qwvFGXLdj2ydsb4gqrlY-pkYR_3Qmm8UPjdfhHQrwrAL4DobIJWUhT_iDG945epPdXhtINEtPfGbR2kpwdeyMo_5kMro8SmThg44OdFhZae557XcP626P1TnA56-nttXgRK9LUrG-yTBbNz9sN2yofFL19xOkf6_dC1rOv-k2v2T_pxWwY69RrrEjKJVtN3BupKKarVJou5tEI8AWnnwRw91GQdMzttQgAxTIax67LNjc81Ar11qELhldCvorOEo

Verifiable Credential

The invitation is a verifiable credential (signed JWT) that authorizes the invited party to connect and send protocol messages:

{
"aud": "tcp://8.tcp.ngrok.io:15739",
"baseline": {
"invitor_organization_address": "0x584f8C05f665E6bA1ffdb729cc588C8D9158c3cd",
"registry_contract_address": "0x7fC1B14a4DC8662e0F9092cc68182bFc26E49596",
"workgroup_id": "6b0e1154-1cbe-4c8b-9b90-6e176d70e4ca"
},
"iat": 1621700053,
"iss": "organization:789c6248-591e-4b71-bc95-1e766e51d629",
"nats": {
"permissions": {
"publish": {
"allow": [
"baseline.>"
]
}
}
},
}