> 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.8/api-integrations/data-catalog-data-lineage-and-grants-apis/data-structures.md).

# Data Structures

## Get bucket structures

> Searches bucket structures using the provided filters and returns matching data structures.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/buckets/structures":{"post":{"description":"Searches bucket structures using the provided filters and returns matching data structures.","operationId":"TdDdWeb.DataStructureController.get_bucket_structures","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureSearchRequest"}}},"description":"Bucket structures filters","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureSearchResponse"}}},"description":"Bucket structures response"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Get bucket structures","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureSearchRequest":{"additionalProperties":true,"title":"DataStructureSearchRequest","type":"object"},"DataStructureSearchResponse":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"data":{"items":{"$ref":"#/components/schemas/DataStructure"},"type":"array"},"filters":{"additionalProperties":true,"type":"object"},"scroll_id":{"nullable":true,"type":"string"}},"required":["data"],"title":"DataStructureSearchResponse","type":"object"},"DataStructure":{"additionalProperties":false,"properties":{"my_grant_request":{"nullable":true,"type":"object"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"inserted_at":{"format":"date-time","type":"string"},"note_last_changed_by":{"nullable":true,"type":"string"},"links":{"items":{"type":"object"},"nullable":true,"type":"array"},"type":{"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"my_grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"path":{"items":{"type":"string"},"nullable":true,"type":"array"},"note_last_changed_at":{"format":"date-time","nullable":true,"type":"string"},"parent_id":{"nullable":true,"type":"string"},"class":{"nullable":true,"type":"string"},"versions":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"source":{"additionalProperties":true,"nullable":true,"type":"object"},"original_name":{"nullable":true,"type":"string"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"source_id":{"nullable":true,"type":"integer"},"children":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"note":{"additionalProperties":true,"nullable":true,"type":"object"},"updated_at":{"format":"date-time","type":"string"},"description":{"nullable":true,"type":"string"},"name":{"type":"string"},"id":{"type":"integer"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"field_type":{"nullable":true,"type":"string"},"system_id":{"nullable":true,"type":"integer"},"classes":{"additionalProperties":true,"nullable":true,"type":"object"},"metadata_versions":{"items":{"type":"object"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"system":{"$ref":"#/components/schemas/System"},"ancestry":{"items":{"type":"object"},"nullable":true,"type":"array"},"parents":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"domain_ids":{"items":{"type":"integer"},"nullable":true,"type":"array"},"linked_concepts":{"nullable":true,"type":"boolean"},"group":{"nullable":true,"type":"string"},"domain":{"additionalProperties":true,"nullable":true,"type":"object"},"confidential":{"nullable":true,"type":"boolean"},"metadata":{"additionalProperties":true,"nullable":true,"type":"object"},"non_published_note":{"additionalProperties":true,"nullable":true,"type":"object"},"data_fields":{"items":{"type":"object"},"nullable":true,"type":"array"},"last_change_at":{"format":"date-time","nullable":true,"type":"string"},"version":{"nullable":true,"type":"integer"},"relations":{"additionalProperties":true,"nullable":true,"type":"object"}},"required":["id","name","type","system"],"title":"DataStructure","type":"object"},"Domain":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"},"parent_id":{"nullable":true,"type":"integer"},"parents":{"items":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"type":"object"},"nullable":true,"type":"array"},"updated_at":{"nullable":true,"type":"string"}},"required":["id","external_id","name"],"title":"Domain","type":"object"},"DataStructureVersion":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"children":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"class":{"nullable":true,"type":"string"},"classes":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"data_fields":{"items":{"additionalProperties":true,"type":"object"},"nullable":true,"type":"array"},"data_structure":{"additionalProperties":false,"properties":{"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"type":"string"},"id":{"type":"integer"}},"type":"object"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"grant":{"$ref":"#/components/schemas/DataStructure"},"grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"group":{"nullable":true,"type":"string"},"implementation_count":{"nullable":true,"type":"integer"},"inserted_at":{"format":"date-time","type":"string"},"metadata":{"additionalProperties":true,"type":"object"},"name":{"nullable":true,"type":"string"},"note":{"$ref":"#/components/schemas/Note"},"parents":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"system":{"$ref":"#/components/schemas/System"},"type":{"nullable":true,"type":"string"},"updated_at":{"format":"date-time","type":"string"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"version":{"type":"integer"}},"required":["version"],"title":"DataStructureVersion","type":"object"},"Note":{"additionalProperties":true,"description":"Dynamic content of the published note","title":"Note","type":"object"},"System":{"additionalProperties":false,"properties":{"external_id":{"nullable":true,"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"required":["id","name"],"title":"System","type":"object"},"UserPermissions":{"additionalProperties":true,"properties":{"confidential":{"type":"boolean"},"profile_permission":{"type":"boolean"},"request_grant":{"type":"boolean"},"update":{"type":"boolean"},"update_grant_removal":{"type":"boolean"},"view_lineage":{"type":"boolean"},"view_profiling_permission":{"type":"boolean"}},"title":"UserPermissions","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Bulk update template content for data structures

> Updates template content for data structures using a CSV upload.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/bulk_update_template_content":{"post":{"description":"Updates template content for data structures using a CSV upload.","operationId":"TdDdWeb.DataStructureController.bulk_update_template_content","parameters":[],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/DataStructureBulkUpdateTemplateContentRequest"}}},"description":"Bulk update template content payload","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureBulkUpdateTemplateContentResponse"}}},"description":"Bulk update template content response"},"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureBulkUpdateTemplateContentResponse"}}},"description":"Bulk update template content accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Bulk update template content for data structures","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureBulkUpdateTemplateContentRequest":{"properties":{"auto_publish":{"type":"boolean"},"lang":{"type":"string"},"structures":{"format":"binary","type":"string"}},"required":["structures"],"title":"DataStructureBulkUpdateTemplateContentRequest","type":"object"},"DataStructureBulkUpdateTemplateContentResponse":{"properties":{"hash":{"type":"string"},"status":{"type":"string"},"task_reference":{"additionalProperties":true,"type":"object"}},"title":"DataStructureBulkUpdateTemplateContentResponse","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Bulk upload data structure domains

> Bulk uploads domain assignments for data structures from a CSV payload.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/bulk_upload_domains":{"post":{"description":"Bulk uploads domain assignments for data structures from a CSV payload.","operationId":"TdDdWeb.DataStructureController.bulk_upload_domains","parameters":[],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/DataStructureBulkUploadDomainsRequest"}}},"description":"Bulk upload domains payload","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureBulkUploadDomainsResponse"}}},"description":"Bulk upload domains response"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Bulk upload data structure domains","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureBulkUploadDomainsRequest":{"properties":{"structures_domains":{"format":"binary","type":"string"}},"required":["structures_domains"],"title":"DataStructureBulkUploadDomainsRequest","type":"object"},"DataStructureBulkUploadDomainsResponse":{"properties":{"errors":{"items":{"additionalProperties":true,"type":"object"},"type":"array"},"ids":{"items":{"type":"integer"},"type":"array"}},"title":"DataStructureBulkUploadDomainsResponse","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Update data structure

> Updates the specified data structure using the supplied payload and optional inheritance flag.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/{id}":{"put":{"description":"Updates the specified data structure using the supplied payload and optional inheritance flag.","operationId":"TdDdWeb.DataStructureController.update","parameters":[{"description":"Data structure ID","in":"path","name":"id","required":true,"schema":{"type":"integer"}},{"description":"Whether to inherit changes to versions","in":"query","name":"inherit","required":false,"schema":{"default":false,"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureUpdateRequest"}}},"description":"Data structure update payload","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureUpdateResponse"}}},"description":"Data structure updated"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdNotFoundErrorResponse"}}},"description":"Not found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdConflictResponse"}}},"description":"Conflict"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Update data structure","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureUpdateRequest":{"properties":{"data_structure":{"additionalProperties":true,"type":"object"},"inherit":{"type":"boolean"}},"required":["data_structure"],"title":"DataStructureUpdateRequest","type":"object"},"DataStructureUpdateResponse":{"additionalProperties":false,"properties":{"data":{"$ref":"#/components/schemas/DataStructure"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"}},"required":["data"],"title":"DataStructureUpdateResponse","type":"object"},"DataStructure":{"additionalProperties":false,"properties":{"my_grant_request":{"nullable":true,"type":"object"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"inserted_at":{"format":"date-time","type":"string"},"note_last_changed_by":{"nullable":true,"type":"string"},"links":{"items":{"type":"object"},"nullable":true,"type":"array"},"type":{"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"my_grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"path":{"items":{"type":"string"},"nullable":true,"type":"array"},"note_last_changed_at":{"format":"date-time","nullable":true,"type":"string"},"parent_id":{"nullable":true,"type":"string"},"class":{"nullable":true,"type":"string"},"versions":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"source":{"additionalProperties":true,"nullable":true,"type":"object"},"original_name":{"nullable":true,"type":"string"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"source_id":{"nullable":true,"type":"integer"},"children":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"note":{"additionalProperties":true,"nullable":true,"type":"object"},"updated_at":{"format":"date-time","type":"string"},"description":{"nullable":true,"type":"string"},"name":{"type":"string"},"id":{"type":"integer"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"field_type":{"nullable":true,"type":"string"},"system_id":{"nullable":true,"type":"integer"},"classes":{"additionalProperties":true,"nullable":true,"type":"object"},"metadata_versions":{"items":{"type":"object"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"system":{"$ref":"#/components/schemas/System"},"ancestry":{"items":{"type":"object"},"nullable":true,"type":"array"},"parents":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"domain_ids":{"items":{"type":"integer"},"nullable":true,"type":"array"},"linked_concepts":{"nullable":true,"type":"boolean"},"group":{"nullable":true,"type":"string"},"domain":{"additionalProperties":true,"nullable":true,"type":"object"},"confidential":{"nullable":true,"type":"boolean"},"metadata":{"additionalProperties":true,"nullable":true,"type":"object"},"non_published_note":{"additionalProperties":true,"nullable":true,"type":"object"},"data_fields":{"items":{"type":"object"},"nullable":true,"type":"array"},"last_change_at":{"format":"date-time","nullable":true,"type":"string"},"version":{"nullable":true,"type":"integer"},"relations":{"additionalProperties":true,"nullable":true,"type":"object"}},"required":["id","name","type","system"],"title":"DataStructure","type":"object"},"Domain":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"},"parent_id":{"nullable":true,"type":"integer"},"parents":{"items":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"type":"object"},"nullable":true,"type":"array"},"updated_at":{"nullable":true,"type":"string"}},"required":["id","external_id","name"],"title":"Domain","type":"object"},"DataStructureVersion":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"children":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"class":{"nullable":true,"type":"string"},"classes":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"data_fields":{"items":{"additionalProperties":true,"type":"object"},"nullable":true,"type":"array"},"data_structure":{"additionalProperties":false,"properties":{"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"type":"string"},"id":{"type":"integer"}},"type":"object"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"grant":{"$ref":"#/components/schemas/DataStructure"},"grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"group":{"nullable":true,"type":"string"},"implementation_count":{"nullable":true,"type":"integer"},"inserted_at":{"format":"date-time","type":"string"},"metadata":{"additionalProperties":true,"type":"object"},"name":{"nullable":true,"type":"string"},"note":{"$ref":"#/components/schemas/Note"},"parents":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"system":{"$ref":"#/components/schemas/System"},"type":{"nullable":true,"type":"string"},"updated_at":{"format":"date-time","type":"string"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"version":{"type":"integer"}},"required":["version"],"title":"DataStructureVersion","type":"object"},"Note":{"additionalProperties":true,"description":"Dynamic content of the published note","title":"Note","type":"object"},"System":{"additionalProperties":false,"properties":{"external_id":{"nullable":true,"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"required":["id","name"],"title":"System","type":"object"},"UserPermissions":{"additionalProperties":true,"properties":{"confidential":{"type":"boolean"},"profile_permission":{"type":"boolean"},"request_grant":{"type":"boolean"},"update":{"type":"boolean"},"update_grant_removal":{"type":"boolean"},"view_lineage":{"type":"boolean"},"view_profiling_permission":{"type":"boolean"}},"title":"UserPermissions","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdNotFoundErrorResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdNotFoundErrorResponse","type":"object"},"TdDdConflictResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdConflictResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Delete data structure

> Deletes the specified data structure, either logically or permanently depending on query parameters.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/{id}":{"delete":{"description":"Deletes the specified data structure, either logically or permanently depending on query parameters.","operationId":"TdDdWeb.DataStructureController.delete","parameters":[{"description":"Data structure ID","in":"path","name":"id","required":true,"schema":{"type":"integer"}},{"description":"If true, performs logical deletion (soft delete)","in":"query","name":"logical","required":false,"schema":{"default":"false","enum":["true","false"],"type":"string"}}],"responses":{"204":{"description":"Data structure deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"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":"Delete data structure","tags":["Data Structures"]}}},"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"},"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"}}}}
```

## Update data structure

> Updates the specified data structure using the supplied payload and optional inheritance flag.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/{id}":{"patch":{"description":"Updates the specified data structure using the supplied payload and optional inheritance flag.","operationId":"TdDdWeb.DataStructureController.update (2)","parameters":[{"description":"Data structure ID","in":"path","name":"id","required":true,"schema":{"type":"integer"}},{"description":"Whether to inherit changes to versions","in":"query","name":"inherit","required":false,"schema":{"default":false,"type":"boolean"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureUpdateRequest"}}},"description":"Data structure update payload","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureUpdateResponse"}}},"description":"Data structure updated"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdNotFoundErrorResponse"}}},"description":"Not found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdConflictResponse"}}},"description":"Conflict"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Update data structure","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureUpdateRequest":{"properties":{"data_structure":{"additionalProperties":true,"type":"object"},"inherit":{"type":"boolean"}},"required":["data_structure"],"title":"DataStructureUpdateRequest","type":"object"},"DataStructureUpdateResponse":{"additionalProperties":false,"properties":{"data":{"$ref":"#/components/schemas/DataStructure"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"}},"required":["data"],"title":"DataStructureUpdateResponse","type":"object"},"DataStructure":{"additionalProperties":false,"properties":{"my_grant_request":{"nullable":true,"type":"object"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"inserted_at":{"format":"date-time","type":"string"},"note_last_changed_by":{"nullable":true,"type":"string"},"links":{"items":{"type":"object"},"nullable":true,"type":"array"},"type":{"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"my_grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"path":{"items":{"type":"string"},"nullable":true,"type":"array"},"note_last_changed_at":{"format":"date-time","nullable":true,"type":"string"},"parent_id":{"nullable":true,"type":"string"},"class":{"nullable":true,"type":"string"},"versions":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"source":{"additionalProperties":true,"nullable":true,"type":"object"},"original_name":{"nullable":true,"type":"string"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"source_id":{"nullable":true,"type":"integer"},"children":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"note":{"additionalProperties":true,"nullable":true,"type":"object"},"updated_at":{"format":"date-time","type":"string"},"description":{"nullable":true,"type":"string"},"name":{"type":"string"},"id":{"type":"integer"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"field_type":{"nullable":true,"type":"string"},"system_id":{"nullable":true,"type":"integer"},"classes":{"additionalProperties":true,"nullable":true,"type":"object"},"metadata_versions":{"items":{"type":"object"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"system":{"$ref":"#/components/schemas/System"},"ancestry":{"items":{"type":"object"},"nullable":true,"type":"array"},"parents":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"domain_ids":{"items":{"type":"integer"},"nullable":true,"type":"array"},"linked_concepts":{"nullable":true,"type":"boolean"},"group":{"nullable":true,"type":"string"},"domain":{"additionalProperties":true,"nullable":true,"type":"object"},"confidential":{"nullable":true,"type":"boolean"},"metadata":{"additionalProperties":true,"nullable":true,"type":"object"},"non_published_note":{"additionalProperties":true,"nullable":true,"type":"object"},"data_fields":{"items":{"type":"object"},"nullable":true,"type":"array"},"last_change_at":{"format":"date-time","nullable":true,"type":"string"},"version":{"nullable":true,"type":"integer"},"relations":{"additionalProperties":true,"nullable":true,"type":"object"}},"required":["id","name","type","system"],"title":"DataStructure","type":"object"},"Domain":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"},"parent_id":{"nullable":true,"type":"integer"},"parents":{"items":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"type":"object"},"nullable":true,"type":"array"},"updated_at":{"nullable":true,"type":"string"}},"required":["id","external_id","name"],"title":"Domain","type":"object"},"DataStructureVersion":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"children":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"class":{"nullable":true,"type":"string"},"classes":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"data_fields":{"items":{"additionalProperties":true,"type":"object"},"nullable":true,"type":"array"},"data_structure":{"additionalProperties":false,"properties":{"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"type":"string"},"id":{"type":"integer"}},"type":"object"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"grant":{"$ref":"#/components/schemas/DataStructure"},"grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"group":{"nullable":true,"type":"string"},"implementation_count":{"nullable":true,"type":"integer"},"inserted_at":{"format":"date-time","type":"string"},"metadata":{"additionalProperties":true,"type":"object"},"name":{"nullable":true,"type":"string"},"note":{"$ref":"#/components/schemas/Note"},"parents":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"system":{"$ref":"#/components/schemas/System"},"type":{"nullable":true,"type":"string"},"updated_at":{"format":"date-time","type":"string"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"version":{"type":"integer"}},"required":["version"],"title":"DataStructureVersion","type":"object"},"Note":{"additionalProperties":true,"description":"Dynamic content of the published note","title":"Note","type":"object"},"System":{"additionalProperties":false,"properties":{"external_id":{"nullable":true,"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"required":["id","name"],"title":"System","type":"object"},"UserPermissions":{"additionalProperties":true,"properties":{"confidential":{"type":"boolean"},"profile_permission":{"type":"boolean"},"request_grant":{"type":"boolean"},"update":{"type":"boolean"},"update_grant_removal":{"type":"boolean"},"view_lineage":{"type":"boolean"},"view_profiling_permission":{"type":"boolean"}},"title":"UserPermissions","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdNotFoundErrorResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdNotFoundErrorResponse","type":"object"},"TdDdConflictResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdConflictResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Upload data structures metadata

> Uploads data structures metadata via multipart form data and returns the uploaded version.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/metadata":{"post":{"description":"Uploads data structures metadata via multipart form data and returns the uploaded version.","operationId":"TdDdWeb.MetadataController.upload","parameters":[],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/MetadataUploadRequest"}}},"description":"Metadata upload payload","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureVersionResponse"}}},"description":"Metadata upload completed"},"202":{"description":"Metadata upload accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdNotFoundErrorResponse"}}},"description":"Not found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityStringResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Upload data structures metadata","tags":["Data Structures"]}}},"components":{"schemas":{"MetadataUploadRequest":{"additionalProperties":false,"properties":{"data_fields":{"description":"CSV file with field metadata","format":"binary","nullable":true,"type":"string"},"data_structure_relations":{"description":"CSV file with structure relations","format":"binary","nullable":true,"type":"string"},"data_structures":{"description":"CSV file with structure metadata","format":"binary","type":"string"},"domain":{"description":"Domain external ID to assign to all structures","nullable":true,"type":"string"},"external_id":{"description":"External ID of the structure to update synchronously","nullable":true,"type":"string"},"inherit_domains":{"description":"Inherit domains from parent (true/false)","nullable":true,"type":"string"},"job_id":{"description":"Job ID for tracking","nullable":true,"type":"string"},"op":{"description":"Operation type (upsert, etc.)","nullable":true,"type":"string"},"parent_external_id":{"description":"Parent external ID for synchronous update","nullable":true,"type":"string"},"source":{"description":"Source external ID","nullable":true,"type":"string"}},"required":["data_structures"],"title":"MetadataUploadRequest","type":"object"},"DataStructureVersionResponse":{"properties":{"data":{"additionalProperties":true,"type":"object"}},"title":"DataStructureVersionResponse","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdNotFoundErrorResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdNotFoundErrorResponse","type":"object"},"TdDdUnprocessableEntityStringResponse":{"additionalProperties":false,"properties":{"error":{"type":"string"},"message":{"type":"string"}},"title":"TdDdUnprocessableEntityStringResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Upload data structures metadata

> Uploads data structures metadata via multipart form data and returns the uploaded version.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/metadata":{"patch":{"description":"Uploads data structures metadata via multipart form data and returns the uploaded version.","operationId":"TdDdWeb.MetadataController.upload (2)","parameters":[],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/MetadataUploadRequest"}}},"description":"Metadata upload payload","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureVersionResponse"}}},"description":"Metadata upload completed"},"202":{"description":"Metadata upload accepted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdNotFoundErrorResponse"}}},"description":"Not found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityStringResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Upload data structures metadata","tags":["Data Structures"]}}},"components":{"schemas":{"MetadataUploadRequest":{"additionalProperties":false,"properties":{"data_fields":{"description":"CSV file with field metadata","format":"binary","nullable":true,"type":"string"},"data_structure_relations":{"description":"CSV file with structure relations","format":"binary","nullable":true,"type":"string"},"data_structures":{"description":"CSV file with structure metadata","format":"binary","type":"string"},"domain":{"description":"Domain external ID to assign to all structures","nullable":true,"type":"string"},"external_id":{"description":"External ID of the structure to update synchronously","nullable":true,"type":"string"},"inherit_domains":{"description":"Inherit domains from parent (true/false)","nullable":true,"type":"string"},"job_id":{"description":"Job ID for tracking","nullable":true,"type":"string"},"op":{"description":"Operation type (upsert, etc.)","nullable":true,"type":"string"},"parent_external_id":{"description":"Parent external ID for synchronous update","nullable":true,"type":"string"},"source":{"description":"Source external ID","nullable":true,"type":"string"}},"required":["data_structures"],"title":"MetadataUploadRequest","type":"object"},"DataStructureVersionResponse":{"properties":{"data":{"additionalProperties":true,"type":"object"}},"title":"DataStructureVersionResponse","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdNotFoundErrorResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdNotFoundErrorResponse","type":"object"},"TdDdUnprocessableEntityStringResponse":{"additionalProperties":false,"properties":{"error":{"type":"string"},"message":{"type":"string"}},"title":"TdDdUnprocessableEntityStringResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## List data structures

> Retrieves a paginated list of data structures based on search parameters and permissions.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures":{"get":{"description":"Retrieves a paginated list of data structures based on search parameters and permissions.","operationId":"TdDdWeb.DataStructureController.index","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureSearchResponse"}}},"description":"Data structures list response"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"List data structures","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureSearchResponse":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"data":{"items":{"$ref":"#/components/schemas/DataStructure"},"type":"array"},"filters":{"additionalProperties":true,"type":"object"},"scroll_id":{"nullable":true,"type":"string"}},"required":["data"],"title":"DataStructureSearchResponse","type":"object"},"DataStructure":{"additionalProperties":false,"properties":{"my_grant_request":{"nullable":true,"type":"object"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"inserted_at":{"format":"date-time","type":"string"},"note_last_changed_by":{"nullable":true,"type":"string"},"links":{"items":{"type":"object"},"nullable":true,"type":"array"},"type":{"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"my_grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"path":{"items":{"type":"string"},"nullable":true,"type":"array"},"note_last_changed_at":{"format":"date-time","nullable":true,"type":"string"},"parent_id":{"nullable":true,"type":"string"},"class":{"nullable":true,"type":"string"},"versions":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"source":{"additionalProperties":true,"nullable":true,"type":"object"},"original_name":{"nullable":true,"type":"string"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"source_id":{"nullable":true,"type":"integer"},"children":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"note":{"additionalProperties":true,"nullable":true,"type":"object"},"updated_at":{"format":"date-time","type":"string"},"description":{"nullable":true,"type":"string"},"name":{"type":"string"},"id":{"type":"integer"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"field_type":{"nullable":true,"type":"string"},"system_id":{"nullable":true,"type":"integer"},"classes":{"additionalProperties":true,"nullable":true,"type":"object"},"metadata_versions":{"items":{"type":"object"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"system":{"$ref":"#/components/schemas/System"},"ancestry":{"items":{"type":"object"},"nullable":true,"type":"array"},"parents":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"domain_ids":{"items":{"type":"integer"},"nullable":true,"type":"array"},"linked_concepts":{"nullable":true,"type":"boolean"},"group":{"nullable":true,"type":"string"},"domain":{"additionalProperties":true,"nullable":true,"type":"object"},"confidential":{"nullable":true,"type":"boolean"},"metadata":{"additionalProperties":true,"nullable":true,"type":"object"},"non_published_note":{"additionalProperties":true,"nullable":true,"type":"object"},"data_fields":{"items":{"type":"object"},"nullable":true,"type":"array"},"last_change_at":{"format":"date-time","nullable":true,"type":"string"},"version":{"nullable":true,"type":"integer"},"relations":{"additionalProperties":true,"nullable":true,"type":"object"}},"required":["id","name","type","system"],"title":"DataStructure","type":"object"},"Domain":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"},"parent_id":{"nullable":true,"type":"integer"},"parents":{"items":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"type":"object"},"nullable":true,"type":"array"},"updated_at":{"nullable":true,"type":"string"}},"required":["id","external_id","name"],"title":"Domain","type":"object"},"DataStructureVersion":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"children":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"class":{"nullable":true,"type":"string"},"classes":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"data_fields":{"items":{"additionalProperties":true,"type":"object"},"nullable":true,"type":"array"},"data_structure":{"additionalProperties":false,"properties":{"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"type":"string"},"id":{"type":"integer"}},"type":"object"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"grant":{"$ref":"#/components/schemas/DataStructure"},"grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"group":{"nullable":true,"type":"string"},"implementation_count":{"nullable":true,"type":"integer"},"inserted_at":{"format":"date-time","type":"string"},"metadata":{"additionalProperties":true,"type":"object"},"name":{"nullable":true,"type":"string"},"note":{"$ref":"#/components/schemas/Note"},"parents":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"system":{"$ref":"#/components/schemas/System"},"type":{"nullable":true,"type":"string"},"updated_at":{"format":"date-time","type":"string"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"version":{"type":"integer"}},"required":["version"],"title":"DataStructureVersion","type":"object"},"Note":{"additionalProperties":true,"description":"Dynamic content of the published note","title":"Note","type":"object"},"System":{"additionalProperties":false,"properties":{"external_id":{"nullable":true,"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"required":["id","name"],"title":"System","type":"object"},"UserPermissions":{"additionalProperties":true,"properties":{"confidential":{"type":"boolean"},"profile_permission":{"type":"boolean"},"request_grant":{"type":"boolean"},"update":{"type":"boolean"},"update_grant_removal":{"type":"boolean"},"view_lineage":{"type":"boolean"},"view_profiling_permission":{"type":"boolean"}},"title":"UserPermissions","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"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Search structure tags

> Searches structure tags with the given filters and returns paginated results including total count.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/structure_tags/search":{"post":{"description":"Searches structure tags with the given filters and returns paginated results including total count.","operationId":"TdDdWeb.StructureTagSearchController.search","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StructureTagSearchRequest"}}},"description":"Structure tag search filters","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StructureTagSearchResponse"}}},"description":"Structure tag search response"},"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":"Search structure tags","tags":["Data Structures"]}}},"components":{"schemas":{"StructureTagSearchRequest":{"additionalProperties":false,"properties":{"min_id":{"description":"Return structure tags with ID greater than or equal to this value","nullable":true,"type":"integer"},"since":{"description":"Return structure tags updated at or after this timestamp (ISO 8601)","nullable":true,"type":"string"},"size":{"description":"Maximum number of results to return","minimum":1,"nullable":true,"type":"integer"}},"title":"StructureTagSearchRequest","type":"object"},"StructureTagSearchResponse":{"additionalProperties":false,"properties":{"data":{"description":"List of structure tags matching the search","items":{"$ref":"#/components/schemas/StructureTagResource"},"type":"array"}},"required":["data"],"title":"StructureTagSearchResponse","type":"object"},"StructureTagResource":{"additionalProperties":false,"properties":{"comment":{"nullable":true,"type":"string"},"data_structure_id":{"type":"integer"},"id":{"type":"integer"},"inserted_at":{"format":"date-time","type":"string"},"tag_id":{"type":"integer"},"updated_at":{"format":"date-time","type":"string"}},"required":["id","data_structure_id","tag_id","inserted_at","updated_at"],"title":"StructureTagResource","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"}}}}
```

## Get data structures metrics

> Retrieves metrics for data structures using the provided filters, when permitted.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/metrics":{"post":{"description":"Retrieves metrics for data structures using the provided filters, when permitted.","operationId":"TdDdWeb.DataStructureController.metrics","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureMetricsRequest"}}},"description":"Metrics filters","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureMetricsResponse"}}},"description":"Data structures metrics"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Get data structures metrics","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureMetricsRequest":{"properties":{"page":{"default":0,"type":"integer"},"since":{"format":"date_time","type":"string"},"size":{"default":50,"type":"integer"}},"title":"DataStructureMetricsRequest","type":"object"},"DataStructureMetricsResponse":{"additionalProperties":false,"properties":{"data":{"items":{"$ref":"#/components/schemas/DataStructureMetric"},"type":"array"}},"required":["data"],"title":"DataStructureMetricsResponse","type":"object"},"DataStructureMetric":{"additionalProperties":false,"properties":{"class":{"nullable":true,"type":"string"},"confidential":{"type":"boolean"},"deleted_at":{"nullable":true,"type":"string"},"description":{"nullable":true,"type":"string"},"domain_ids":{"items":{"type":"integer"},"type":"array"},"external_id":{"nullable":true,"type":"string"},"field_type":{"nullable":true,"type":"string"},"id":{"type":"integer"},"inserted_at":{"type":"string"},"last_change_at":{"nullable":true,"type":"string"},"linked_concepts":{"nullable":true,"type":"boolean"},"metadata":{"additionalProperties":true,"type":"object"},"name":{"type":"string"},"parent_id":{"nullable":true,"type":"integer"},"source_id":{"nullable":true,"type":"integer"},"system_id":{"type":"integer"},"type":{"type":"string"},"updated_at":{"type":"string"},"version":{"type":"integer"}},"required":["id","name","type","system_id","domain_ids","inserted_at","updated_at","version","confidential"],"title":"DataStructureMetric","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Bulk update data structures

> Performs a bulk update on matching data structures using the supplied update payload.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/bulk_update":{"post":{"description":"Performs a bulk update on matching data structures using the supplied update payload.","operationId":"TdDdWeb.DataStructureController.bulk_update","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureBulkUpdateRequest"}}},"description":"Bulk update request","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureBulkUpdateResponse"}}},"description":"Bulk update response"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Bulk update data structures","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureBulkUpdateRequest":{"properties":{"bulk_update_request":{"additionalProperties":true,"type":"object"}},"required":["bulk_update_request"],"title":"DataStructureBulkUpdateRequest","type":"object"},"DataStructureBulkUpdateResponse":{"properties":{"errors":{"items":{"additionalProperties":true,"type":"object"},"type":"array"},"ids":{"items":{"type":"integer"},"type":"array"}},"title":"DataStructureBulkUpdateResponse","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Search data structures

> Searches data structures using the supplied filters and returns matching results.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/data_structures/search":{"post":{"description":"Searches data structures using the supplied filters and returns matching results.","operationId":"TdDdWeb.DataStructureController.search","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureSearchRequest"}}},"description":"Search filters","required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureSearchResponse"}}},"description":"Search data structures response"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Search data structures","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureSearchRequest":{"additionalProperties":true,"title":"DataStructureSearchRequest","type":"object"},"DataStructureSearchResponse":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"data":{"items":{"$ref":"#/components/schemas/DataStructure"},"type":"array"},"filters":{"additionalProperties":true,"type":"object"},"scroll_id":{"nullable":true,"type":"string"}},"required":["data"],"title":"DataStructureSearchResponse","type":"object"},"DataStructure":{"additionalProperties":false,"properties":{"my_grant_request":{"nullable":true,"type":"object"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"inserted_at":{"format":"date-time","type":"string"},"note_last_changed_by":{"nullable":true,"type":"string"},"links":{"items":{"type":"object"},"nullable":true,"type":"array"},"type":{"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"my_grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"path":{"items":{"type":"string"},"nullable":true,"type":"array"},"note_last_changed_at":{"format":"date-time","nullable":true,"type":"string"},"parent_id":{"nullable":true,"type":"string"},"class":{"nullable":true,"type":"string"},"versions":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"source":{"additionalProperties":true,"nullable":true,"type":"object"},"original_name":{"nullable":true,"type":"string"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"source_id":{"nullable":true,"type":"integer"},"children":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"note":{"additionalProperties":true,"nullable":true,"type":"object"},"updated_at":{"format":"date-time","type":"string"},"description":{"nullable":true,"type":"string"},"name":{"type":"string"},"id":{"type":"integer"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"field_type":{"nullable":true,"type":"string"},"system_id":{"nullable":true,"type":"integer"},"classes":{"additionalProperties":true,"nullable":true,"type":"object"},"metadata_versions":{"items":{"type":"object"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"system":{"$ref":"#/components/schemas/System"},"ancestry":{"items":{"type":"object"},"nullable":true,"type":"array"},"parents":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"domain_ids":{"items":{"type":"integer"},"nullable":true,"type":"array"},"linked_concepts":{"nullable":true,"type":"boolean"},"group":{"nullable":true,"type":"string"},"domain":{"additionalProperties":true,"nullable":true,"type":"object"},"confidential":{"nullable":true,"type":"boolean"},"metadata":{"additionalProperties":true,"nullable":true,"type":"object"},"non_published_note":{"additionalProperties":true,"nullable":true,"type":"object"},"data_fields":{"items":{"type":"object"},"nullable":true,"type":"array"},"last_change_at":{"format":"date-time","nullable":true,"type":"string"},"version":{"nullable":true,"type":"integer"},"relations":{"additionalProperties":true,"nullable":true,"type":"object"}},"required":["id","name","type","system"],"title":"DataStructure","type":"object"},"Domain":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"},"parent_id":{"nullable":true,"type":"integer"},"parents":{"items":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"type":"object"},"nullable":true,"type":"array"},"updated_at":{"nullable":true,"type":"string"}},"required":["id","external_id","name"],"title":"Domain","type":"object"},"DataStructureVersion":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"children":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"class":{"nullable":true,"type":"string"},"classes":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"data_fields":{"items":{"additionalProperties":true,"type":"object"},"nullable":true,"type":"array"},"data_structure":{"additionalProperties":false,"properties":{"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"type":"string"},"id":{"type":"integer"}},"type":"object"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"grant":{"$ref":"#/components/schemas/DataStructure"},"grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"group":{"nullable":true,"type":"string"},"implementation_count":{"nullable":true,"type":"integer"},"inserted_at":{"format":"date-time","type":"string"},"metadata":{"additionalProperties":true,"type":"object"},"name":{"nullable":true,"type":"string"},"note":{"$ref":"#/components/schemas/Note"},"parents":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"system":{"$ref":"#/components/schemas/System"},"type":{"nullable":true,"type":"string"},"updated_at":{"format":"date-time","type":"string"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"version":{"type":"integer"}},"required":["version"],"title":"DataStructureVersion","type":"object"},"Note":{"additionalProperties":true,"description":"Dynamic content of the published note","title":"Note","type":"object"},"System":{"additionalProperties":false,"properties":{"external_id":{"nullable":true,"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"required":["id","name"],"title":"System","type":"object"},"UserPermissions":{"additionalProperties":true,"properties":{"confidential":{"type":"boolean"},"profile_permission":{"type":"boolean"},"request_grant":{"type":"boolean"},"update":{"type":"boolean"},"update_grant_removal":{"type":"boolean"},"view_lineage":{"type":"boolean"},"view_profiling_permission":{"type":"boolean"}},"title":"UserPermissions","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"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```

## Get structures for a system

> Retrieves all data structures for the specified system.

```json
{"openapi":"3.0.0","info":{"title":"td-dd","version":"Truedat 8.8.2"},"paths":{"/api/systems/{system_id}/structures":{"get":{"description":"Retrieves all data structures for the specified system.","operationId":"TdDdWeb.DataStructureController.get_system_structures","parameters":[{"description":"System ID","in":"path","name":"system_id","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataStructureSearchResponse"}}},"description":"System structures response"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnauthorizedResponse"}}},"description":"Unauthorized"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdForbiddenResponse"}}},"description":"Forbidden"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdUnprocessableEntityObjectResponse"}}},"description":"Unprocessable Entity"},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TdDdInternalServerErrorResponse"}}},"description":"Internal Server Error"}},"summary":"Get structures for a system","tags":["Data Structures"]}}},"components":{"schemas":{"DataStructureSearchResponse":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"data":{"items":{"$ref":"#/components/schemas/DataStructure"},"type":"array"},"filters":{"additionalProperties":true,"type":"object"},"scroll_id":{"nullable":true,"type":"string"}},"required":["data"],"title":"DataStructureSearchResponse","type":"object"},"DataStructure":{"additionalProperties":false,"properties":{"my_grant_request":{"nullable":true,"type":"object"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"inserted_at":{"format":"date-time","type":"string"},"note_last_changed_by":{"nullable":true,"type":"string"},"links":{"items":{"type":"object"},"nullable":true,"type":"array"},"type":{"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"my_grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"path":{"items":{"type":"string"},"nullable":true,"type":"array"},"note_last_changed_at":{"format":"date-time","nullable":true,"type":"string"},"parent_id":{"nullable":true,"type":"string"},"class":{"nullable":true,"type":"string"},"versions":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"source":{"additionalProperties":true,"nullable":true,"type":"object"},"original_name":{"nullable":true,"type":"string"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"source_id":{"nullable":true,"type":"integer"},"children":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"note":{"additionalProperties":true,"nullable":true,"type":"object"},"updated_at":{"format":"date-time","type":"string"},"description":{"nullable":true,"type":"string"},"name":{"type":"string"},"id":{"type":"integer"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"field_type":{"nullable":true,"type":"string"},"system_id":{"nullable":true,"type":"integer"},"classes":{"additionalProperties":true,"nullable":true,"type":"object"},"metadata_versions":{"items":{"type":"object"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"system":{"$ref":"#/components/schemas/System"},"ancestry":{"items":{"type":"object"},"nullable":true,"type":"array"},"parents":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"domain_ids":{"items":{"type":"integer"},"nullable":true,"type":"array"},"linked_concepts":{"nullable":true,"type":"boolean"},"group":{"nullable":true,"type":"string"},"domain":{"additionalProperties":true,"nullable":true,"type":"object"},"confidential":{"nullable":true,"type":"boolean"},"metadata":{"additionalProperties":true,"nullable":true,"type":"object"},"non_published_note":{"additionalProperties":true,"nullable":true,"type":"object"},"data_fields":{"items":{"type":"object"},"nullable":true,"type":"array"},"last_change_at":{"format":"date-time","nullable":true,"type":"string"},"version":{"nullable":true,"type":"integer"},"relations":{"additionalProperties":true,"nullable":true,"type":"object"}},"required":["id","name","type","system"],"title":"DataStructure","type":"object"},"Domain":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"},"parent_id":{"nullable":true,"type":"integer"},"parents":{"items":{"additionalProperties":false,"properties":{"external_id":{"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"type":"object"},"nullable":true,"type":"array"},"updated_at":{"nullable":true,"type":"string"}},"required":["id","external_id","name"],"title":"Domain","type":"object"},"DataStructureVersion":{"additionalProperties":false,"properties":{"_actions":{"additionalProperties":true,"nullable":true,"type":"object"},"children":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"class":{"nullable":true,"type":"string"},"classes":{"additionalProperties":{"type":"string"},"nullable":true,"type":"object"},"data_fields":{"items":{"additionalProperties":true,"type":"object"},"nullable":true,"type":"array"},"data_structure":{"additionalProperties":false,"properties":{"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"type":"string"},"id":{"type":"integer"}},"type":"object"},"deleted_at":{"format":"date-time","nullable":true,"type":"string"},"domains":{"items":{"$ref":"#/components/schemas/Domain"},"nullable":true,"type":"array"},"external_id":{"nullable":true,"type":"string"},"grant":{"$ref":"#/components/schemas/DataStructure"},"grants":{"items":{"$ref":"#/components/schemas/DataStructure"},"nullable":true,"type":"array"},"group":{"nullable":true,"type":"string"},"implementation_count":{"nullable":true,"type":"integer"},"inserted_at":{"format":"date-time","type":"string"},"metadata":{"additionalProperties":true,"type":"object"},"name":{"nullable":true,"type":"string"},"note":{"$ref":"#/components/schemas/Note"},"parents":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"siblings":{"items":{"$ref":"#/components/schemas/DataStructureVersion"},"nullable":true,"type":"array"},"system":{"$ref":"#/components/schemas/System"},"type":{"nullable":true,"type":"string"},"updated_at":{"format":"date-time","type":"string"},"user_permissions":{"$ref":"#/components/schemas/UserPermissions"},"version":{"type":"integer"}},"required":["version"],"title":"DataStructureVersion","type":"object"},"Note":{"additionalProperties":true,"description":"Dynamic content of the published note","title":"Note","type":"object"},"System":{"additionalProperties":false,"properties":{"external_id":{"nullable":true,"type":"string"},"id":{"type":"integer"},"name":{"type":"string"}},"required":["id","name"],"title":"System","type":"object"},"UserPermissions":{"additionalProperties":true,"properties":{"confidential":{"type":"boolean"},"profile_permission":{"type":"boolean"},"request_grant":{"type":"boolean"},"update":{"type":"boolean"},"update_grant_removal":{"type":"boolean"},"view_lineage":{"type":"boolean"},"view_profiling_permission":{"type":"boolean"}},"title":"UserPermissions","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"},"TdDdForbiddenResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdForbiddenResponse","type":"object"},"TdDdUnprocessableEntityObjectResponse":{"additionalProperties":false,"properties":{"errors":{"properties":{"detail":{"type":"string"}},"type":"object"}},"required":["errors"],"title":"TdDdUnprocessableEntityObjectResponse","type":"object"},"TdDdInternalServerErrorResponse":{"additionalProperties":false,"properties":{"errors":{"additionalProperties":false,"properties":{"detail":{"type":"string"}},"required":["detail"],"type":"object"}},"required":["errors"],"title":"TdDdInternalServerErrorResponse","type":"object"}}}}
```
