Skip to content

Get Reverse Linked Data

This service task retrieves all data objects that link to a specific target data object. It answers the reverse question: "Which records reference me?"

Benefit: Processes can automatically discover all incoming relationships — find every order that references a customer, every contract that points to a document — without manual searches or custom queries.


How it works

While Get Linked Data follows outgoing references from a source object, this service task searches in the opposite direction: it finds all objects that reference the given target.

Customer: Müller GmbH ←── Order-2026-001
                      ←── Order-2026-047
                      ←── Contract-2025-012

This is especially useful for answering questions like:

  • "Which orders belong to this customer?"
  • "Which contracts reference this document?"
  • "How many records point to this product?"

Input Parameters

Parameter Type Required Description
dataObjectId String Yes The ID of the target data object. All incoming references to this object are returned.
dataSchemaId String No Filter results by a specific source data structure (e.g. only return referencing "Order" records).
includeDetails Boolean No If true, enriches each reference with the source's document name and data object key. Default: false.

Example Input

{
  "dataObjectId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "dataSchemaId": "order",
  "includeDetails": true
}

Output

Field Type Description
dataObjectId String The target object ID (echoed back).
totalCount Number Number of incoming references found.
references Array List of data object references pointing to this target.

Each reference contains:

Field Type Description
sourceObjectId String The ID of the referencing source object.
sourceObjectAttribute String The attribute name on the source that holds the reference.
targetObjectId String The target object ID.
targetDataSchemaId String The data structure type of the target.
sourceDataSchemaId String The data structure type of the source.
sourceDocumentName String The document name of the source object.
sourceDocumentNameResolved String / null The resolved document name of the source (only with includeDetails: true).
sourceDataObjectKey String / null The data object key/path of the source (only with includeDetails: true).

Example Output

{
  "dataObjectId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "totalCount": 3,
  "references": [
    {
      "sourceObjectId": "550e8400-e29b-41d4-a716-446655440000",
      "sourceObjectAttribute": "customer",
      "targetObjectId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "targetDataSchemaId": "customer",
      "sourceDataSchemaId": "order",
      "sourceDocumentName": "Order-2026-001",
      "sourceDocumentNameResolved": "Order-2026-001",
      "sourceDataObjectKey": "order/objects/550e8400-e29b-41d4-a716-446655440000"
    },
    {
      "sourceObjectId": "661f9511-f3ac-52e5-b827-557766551111",
      "sourceObjectAttribute": "customer",
      "targetObjectId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "targetDataSchemaId": "customer",
      "sourceDataSchemaId": "order",
      "sourceDocumentName": "Order-2026-047",
      "sourceDocumentNameResolved": "Order-2026-047",
      "sourceDataObjectKey": "order/objects/661f9511-f3ac-52e5-b827-557766551111"
    },
    {
      "sourceObjectId": "772a0622-a4bd-63f6-c938-668877662222",
      "sourceObjectAttribute": "relatedCustomer",
      "targetObjectId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "targetDataSchemaId": "customer",
      "sourceDataSchemaId": "contract",
      "sourceDocumentName": "Contract-2025-012",
      "sourceDocumentNameResolved": "Contract-2025-012",
      "sourceDataObjectKey": "contract/objects/772a0622-a4bd-63f6-c938-668877662222"
    }
  ]
}

Use Cases

  • Customer 360°: Find all orders, contracts, and invoices that reference a specific customer.
  • Product impact analysis: Before discontinuing a product, identify all orders and contracts that still reference it.
  • Dependency check: Before deleting a record, verify no other records depend on it.
  • Aggregation: Count or sum values across all records referencing a specific entity (e.g. total order volume per customer).
  • Cascading updates: When a master record changes, find and update all dependent records.

Comparison with Get Linked Data

Aspect Get Linked Data Get Reverse Linked Data
Direction Source → Targets (outgoing) Targets → Source (incoming)
Question answered "What does this record reference?" "Who references this record?"
Enrichment field targetDocumentName sourceDocumentNameResolved
Typical use Follow a record's relationships Find all dependents of a record

Notes

  • Without includeDetails, only the reference metadata is returned (1 database query). With includeDetails, an additional query per referencing source object is executed.
  • If a referencing source object has been deleted, it is still included in the result but with sourceDocumentNameResolved: null.
  • Use dataSchemaId to narrow results when only references from a specific data structure type are relevant.
  • Combine with Get Linked Data for bidirectional graph traversal in complex processes.