Skip to content

Endpoint Relationships

Additional Endpoints can be added as a Child Endpoint or as a Dependent Publisher.

Child Endpoints

A Child Endpoint can be added to a Parent Endpoint to establish a hierarchy of data, such as a sales order that has line items or a project that includes multiple resources. In some cases, you can save and query child records with the parent; and in those instances, you can nest the maps of the children inside the parent (see the Action Mapping section for Looping Lists). However, in other cases the data retrieval or save must happen separately per the API specifications, which is when Child Endpoints can be used.

A Child Endpoint enables data to be pulled from different locations within the same system, using the same Endpoint. For example, if you establish an endpoint to pull sales order data, but the header data and the line-item data are stored in different locations, you can set up one or more Child Endpoints so that all of the needed data is pulled within a single endpoint. When Central goes to either retrieve or save that order's data, it will also include any Child Endpoints to ensure data is read/written appropriately.

A Child Endpoint functions the same way that the Parent Endpoint functions. In a read action, the Primary Key of the parent is "passed" into the Child Endpoint's configuration to query all of the children (see the Action Mapping section for Parameterization). In a save action, the parent will loop and call that save action for each Child Endpoint, for each child entity that was received on the message payload. Each Child Endpoint must be set up and mapped using the same steps as the Parent Endpoint.

Dependent Publishers

Dependent Publishers are used when the synchronization between two different types of entities is contingent on one another. For example, synchronizing a sales order is typically related to a customer that will eventually be sent a bill. So, you likely cannot create the sales order until the associated customer has been synchronized first. In this scenario, you would have an Endpoint as a publisher for the customer data, and that Endpoint would have a Dependent Publisher for the sales order to ensure that Central does not attempt to synchronize a sales order until the customer dependency has been synchronized first.

Additionally, in some cases you may want to publish a message for data that has been deleted, so that other systems can also delete or deactivate that data. You can set up a Delete Publisher in a similar way, but with a couple of important notes:

WARNING

Delete Publishers must be set up as a Dependent Publisher for the Endpoint that publishing the data begins with. It is important to note that the Delete Publisher and the Delete Subscriber must have the same Transaction Type as their parent.

WARNING

When adding a Delete Publisher to any subscribing Endpoints, you must both set the Support Operations of the Endpoint to support deletes and you must configure the delete action to execute the delete.

Add a Child Endpoint

NOTE

Once created, a Child Endpoint must be configured like any other Endpoint. By default, in a publish all child records will be loaded individually. If a system requires them to be loaded all at once, you can toggle "Load All Children Together" in the Edit Endpoint Dialog box.

  1. Select Build > Data Hubs from the main menu.

  2. Select the appropriate Data Hub; then, select the appropriate parent Endpoint.

    TIP

    You can also select the Endpoint menu icon > Edit to navigate to the same screen.

  3. Select the Relationships drop-down menu; then, select Add Child Endpoint.

  4. Enter a Name and select a Data Model to link.

    NOTE

    Only Schemas associated with the selected Endpoint will be selectable.

  5. Select Save.

Add a Dependent Publisher

NOTE

Once created, a Dependent Publisher must be configured like any other Endpoint.

  1. Select Build > Data Hubs from the main menu.

  2. Select the appropriate Data Hub; then, select the appropriate parent Endpoint.

    TIP

    You can also select the Endpoint menu icon > Edit to navigate to the same screen.

  3. Select the Relationships drop-down menu; then, select Add Dependent Publisher.

  4. Follow the instructions in the Add Endpoints to a Data Hub section, starting with step 4.

See Also

Team Central Admin Web Documentation