> For the complete documentation index, see [llms.txt](https://docs.truedat.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.truedat.io/v8.12/api-integrations/data-catalog-data-lineage-and-grants-apis/nodes.md).

# Nodes

## Get node

> Retrieves details of a specific node by its ID, optionally scoped to a domain.\
> \
> Requires the \*\*'View lineage'\*\* permission.\
> \
> If \`domain\_id\` is provided, the node information is filtered to that domain. Otherwise, the node is returned with full visibility.<br>

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.12.2"},"paths":{"/api/nodes/{id}":{"get":{"description":"Retrieves details of a specific node by its ID, optionally scoped to a domain.\n\nRequires the **'View lineage'** permission.\n\nIf `domain_id` is provided, the node information is filtered to that domain. Otherwise, the node is returned with full visibility.\n","operationId":"TdDdWeb.NodeController.show","parameters":[{"description":"Node ID","in":"path","name":"id","required":true,"schema":{"type":"string"}},{"description":"Domain ID","in":"query","name":"domain_id","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NodeShowResponse"}}},"description":"Node retrieved"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdNotFoundErrorResponse"}}},"description":"Not found"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Get node","tags":["Nodes"]}}},"components":{"schemas":{"NodeShowResponse":{"additionalProperties":false,"properties":{"data":{"description":"List of node groups and their resources for the specified node","items":{"$ref":"#/components/schemas/NodeIndexItem"},"type":"array"}},"required":["data"],"title":"NodeShowResponse","type":"object"},"NodeIndexItem":{"additionalProperties":false,"properties":{"groups":{"items":{"$ref":"#/components/schemas/NodeGroup"},"type":"array"},"parent":{"nullable":true,"type":"string"},"resources":{"items":{"$ref":"#/components/schemas/NodeResource"},"type":"array"}},"required":["parent"],"title":"NodeIndexItem","type":"object"},"NodeGroup":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"}},"required":["external_id","name"],"title":"NodeGroup","type":"object"},"NodeResource":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"}},"required":["external_id","name"],"title":"NodeResource","type":"object"},"TdDdUnauthorizedResponse":{"anyOf":[{"$ref":"#/components/schemas/TdDdUnauthorizedMessageResponse"},{"$ref":"#/components/schemas/TdDdUnauthorizedErrorResponse"}],"description":"Unauthorized response from auth plug or error view","title":"TdDdUnauthorizedResponse"},"TdDdUnauthorizedMessageResponse":{"additionalProperties":false,"properties":{"message":{"type":"string"}},"required":["message"],"title":"TdDdUnauthorizedMessageResponse","type":"object"},"TdDdUnauthorizedErrorResponse":{"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnauthorizedErrorResponse","type":"object"},"TdDdNotFoundErrorResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdNotFoundErrorResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## List nodes

> Returns a list of lineage nodes, optionally filtered by domain. The response structure includes nested groups and resources that represent the lineage hierarchy.\
> \
> Requires the \*\*'View lineage'\*\* permission.\
> \
> If \`domain\_id\` is provided, the list is filtered accordingly. Otherwise, all nodes visible to the user are returned.<br>

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.12.2"},"paths":{"/api/nodes":{"get":{"description":"Returns a list of lineage nodes, optionally filtered by domain. The response structure includes nested groups and resources that represent the lineage hierarchy.\n\nRequires the **'View lineage'** permission.\n\nIf `domain_id` is provided, the list is filtered accordingly. Otherwise, all nodes visible to the user are returned.\n","operationId":"TdDdWeb.NodeController.index","parameters":[{"description":"Domain ID","in":"query","name":"domain_id","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NodesIndexResponse"}}},"description":"Nodes retrieved"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"List nodes","tags":["Nodes"]}}},"components":{"schemas":{"NodesIndexResponse":{"additionalProperties":false,"properties":{"data":{"description":"List of node groups and their resources","items":{"$ref":"#/components/schemas/NodeIndexItem"},"type":"array"}},"required":["data"],"title":"NodesIndexResponse","type":"object"},"NodeIndexItem":{"additionalProperties":false,"properties":{"groups":{"items":{"$ref":"#/components/schemas/NodeGroup"},"type":"array"},"parent":{"nullable":true,"type":"string"},"resources":{"items":{"$ref":"#/components/schemas/NodeResource"},"type":"array"}},"required":["parent"],"title":"NodeIndexItem","type":"object"},"NodeGroup":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"}},"required":["external_id","name"],"title":"NodeGroup","type":"object"},"NodeResource":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"}},"required":["external_id","name"],"title":"NodeResource","type":"object"},"TdDdUnauthorizedResponse":{"anyOf":[{"$ref":"#/components/schemas/TdDdUnauthorizedMessageResponse"},{"$ref":"#/components/schemas/TdDdUnauthorizedErrorResponse"}],"description":"Unauthorized response from auth plug or error view","title":"TdDdUnauthorizedResponse"},"TdDdUnauthorizedMessageResponse":{"additionalProperties":false,"properties":{"message":{"type":"string"}},"required":["message"],"title":"TdDdUnauthorizedMessageResponse","type":"object"},"TdDdUnauthorizedErrorResponse":{"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnauthorizedErrorResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Update nodes domains

> Recomputes the domain assignments for all lineage nodes.\
> \
> Requires the \*\*'View lineage'\*\* permission.\
> \
> This is a background operation that recalculates domain memberships for all nodes based on the current data structure configurations. This endpoint is typically used for maintenance or after bulk changes to data structures. The operation is performed synchronously.<br>

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.12.2"},"paths":{"/api/lineage/update_nodes_domains":{"get":{"description":"Recomputes the domain assignments for all lineage nodes.\n\nRequires the **'View lineage'** permission.\n\nThis is a background operation that recalculates domain memberships for all nodes based on the current data structure configurations. This endpoint is typically used for maintenance or after bulk changes to data structures. The operation is performed synchronously.\n","operationId":"TdDdWeb.NodeController.update_nodes_domains","parameters":[],"responses":{"204":{"description":"Nodes domains updated"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Update nodes domains","tags":["Nodes"]}}},"components":{"schemas":{"TdDdUnauthorizedResponse":{"anyOf":[{"$ref":"#/components/schemas/TdDdUnauthorizedMessageResponse"},{"$ref":"#/components/schemas/TdDdUnauthorizedErrorResponse"}],"description":"Unauthorized response from auth plug or error view","title":"TdDdUnauthorizedResponse"},"TdDdUnauthorizedMessageResponse":{"additionalProperties":false,"properties":{"message":{"type":"string"}},"required":["message"],"title":"TdDdUnauthorizedMessageResponse","type":"object"},"TdDdUnauthorizedErrorResponse":{"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnauthorizedErrorResponse","type":"object"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```
