Setting up an additional event subscriber

Configuring an additional subscriber enables the sharing of event data from one Org (the main Org) with one or more other Orgs ( partner Orgs). A partner Org can be a either:

  • A different Org on the Pismo platform
  • An entirely external system than can consume SNS events

You can subscribe an Org to many other Orgs to receive their events data. In addition, you can use event filtering to customize the specific events you are interested in.

Access to event data between Org can occur by event streaming or shared access to batch event files. The event data from one or more Orgs is sent to another Org. The following diagram illustrates these two options.

๐Ÿ“˜

For clarity, these examples show integrations between AWS clouds. However, it is possible for events to be shared among other cloud providers, such as Azure and GCP. For more information, see Setting up real-time event delivery.

A partner Org subscribes to event data from one or more Orgs, either by streaming events or batch event-file delivery. The following diagram illustrates the data flows of a subscriber Org receiving streaming events or event files from two other Orgs:

If there is more than one main Org linked to an additional Org, the subscribers may have duplicate data from the main Orgs in the same file of the additional Org. The additional Org only reads/receives files with event content from the linked main Orgs.

The following example code shows event data from two main Orgs in a file of the additional Org:

{
    "event_id": "252212bf-cde2-43f9-b28f-33ea2b452b32",
    "domain": "onboarding",
    "event_type": "succeeded",
    "schema_version": 1,
    "org_id": "TN-a1db4e4e-315f-4a67-9036-ecacd370b561",
    "cid": "8a3f650b-c80c-451f-993d-7368dba4c715",
    "timestamp": "2019-07-20T19:03:00.000Z",
    "data": {}
}
{
    "event_id": "562212bf-cde2-43f9-b28f-33ea2b452b13",
    "domain": "onboarding",
    "event_type": "succeeded",
    "schema_version": 1,
    "org_id": "TN-1234e4e-531f-jhft-5896-asades55655",
    "cid": "9a3f650b-c80c-451f-993d-7368dba4c714",
    "timestamp": "2019-07-20T19:03:00.000Z",
    "data": {}
}

In a case like this, the additional Org is able to distinguish events between the two main Orgs by using their org_id. The names of the main Org files are different from the names of the additional Org files. Also, there is no standard for file naming. Despite the examples with integrations only between AWS clouds, the files integrations available are described in the Setting up event file delivery guide.

Conditions

All preconditions needed to ask the Data Team (for more information, see Data and reporting overview).

Preconditions

  • The main Org must be on the Pismo Data Platform.

  • The additional subscriber Org must be on the Pismo Data Platform and must have data integration configured to be able to read/receive SNS events.

Post-conditions

  • Nothing changes for the main Org.

  • The additional Org will be able to read/receive events data from one of the clouds that the Pismo Data Platform currently integrates (GCP, Azure or AWS).

The sending of the event (or the writing of the file to the bucket) occurs asynchronously. So, it is even possible for the additional Org to receive access to the file/event before the main subscriber Org).