Catalog Items

Create catalog item

Create a catalog item using an SQL query and place it in a folder. The catalog item is published immediately.

Only SQL catalog items can be created through this endpoint. The type field selects the kind of catalog item to create, and currently only dslQueryCatalogItem is supported. Catalog items imported from a source are created by documentation flows (POST /catalog/v1/documentation-flow/start).

Creating the catalog item also runs the query on the connection to import the catalog item attributes from the query result. If the import fails, the request still succeeds and the catalog item is created without attributes. To verify the result, retrieve the catalog item attributes using List catalog attributes with the catalogItemUrn query parameter.

To find or create the target folder, use the Folders endpoints.

Stewardship cannot be changed through this endpoint. To change the group responsible for the entity, use POST /catalog/v1/stewardship/manage.

post/catalog/v1/catalog-items

Request

Request body

typestring required

Type of the catalog item to create. The only supported value is dslQueryCatalogItem, which creates an SQL catalog item.

namestring required

Name of the catalog item.

descriptionstring

Description of the catalog item.

connectionUrnstring uri required

A URN identifying a Connection to a source system.

Format: urn:ata:{tenant}:processing:connection:{uuid}

Example: urn:ata:acme-corp:processing:connection:123e4567-e89b-12d3-a456-426614174000.

querystring required

SQL query used to create the catalog item.

folderUrnstring uri required

A URN identifying a Folder resource in the Catalog API.

Format: urn:ata:{tenant}:catalog:folder:{uuid}

Example: urn:ata:acme-corp:catalog:folder:123e4567-e89b-12d3-a456-426614174000.

Example request

{
  "type": "dslQueryCatalogItem",
  "name": "high_value_customers",
  "description": "Customers with a lifetime value over 10k",
  "connectionUrn": "urn:ata:acme-corp:processing:connection:b812d964-f94e-4be7-85c3-0073742ade09",
  "query": "SELECT * FROM customers WHERE lifetime_value > 10000",
  "folderUrn": "urn:ata:acme-corp:catalog:folder:9b1c4d2e-6f3a-4c5b-8d7e-1a2b3c4d5e6f"
}

Response

The created catalog item. SQL catalog items carry the folder hierarchy in folders and no locations.

urnstring uri

A URN identifying a catalog item resource in the Catalog API.

Format: urn:ata:{tenant}:catalog:catalog-item:{uuid}

Example: urn:ata:acme-corp:catalog:catalog-item:123e4567-e89b-12d3-a456-426614174000.

namestring required

Name of the catalog item.

descriptionstring

Description of the catalog item.

originPathstring

Origin path of the catalog item in the source system.

extraPropertiesExtraProperties

A map of properties associated with the entity defined in the metadata model. Only scalar and reference properties are supported, including arrays.

In responses, only properties explicitly requested via the extraProperties query parameter are included.

In PATCH requests, only the properties listed in the body are modified; set a property to null (for scalars) or [] (for reference arrays) to clear its value.

To find which extra properties are available for an entity, retrieve its entity definition through the Metadata model entities endpoints: catalogItem for catalog items, attribute for catalog attributes, source for sources, folder for folders, and the term's own type (for example, businessTerm) for terms.

Example response

{
  "urn": "urn:ata:acme-corp:catalog:catalog-item:fde84300-7a83-4d24-8c88-30ada80b0b54",
  "name": "customers",
  "description": "This table contains information about our customers",
  "originPath": "public/customers",
  "connection": {
    "urn": "urn:ata:acme-corp:processing:connection:b812d964-f94e-4be7-85c3-0073742ade09"
  },
  "termAssignments": [
    {
      "termUrn": "urn:ata:acme-corp:catalog:term:1ede1262-f76b-4d00-9929-e92c15d8a5ba"
    },
    {
      "termUrn": "urn:ata:acme-corp:catalog:term:3fa85f64-5717-4562-b3fc-2c963f66afa6"
    }
  ],
  "locations": [
    {
      "urn": "urn:ata:acme-corp:catalog:location:2b9d1f0a-3c4e-4a5b-9c8d-7e6f5a4b3c2d",
      "name": "public"
    },
    {
      "urn": "urn:ata:acme-corp:catalog:location:3c0e2a1b-4d5f-4b6c-8d9e-1f2a3b4c5d6e",
      "name": "CustomerDB"
    }
  ],
  "source": {
    "urn": "urn:ata:acme-corp:catalog:source:28e3ca71-635b-43c4-9d1b-bc9cc642721f"
  },
  "effectiveStewardship": {
    "groupUrn": "urn:ata:acme-corp:iam:group:b3c4d5e6-f7a8-4b9c-8d0e-1f2a3b4c5d6e",
    "originUrn": "urn:ata:acme-corp:catalog:source:28e3ca71-635b-43c4-9d1b-bc9cc642721f"
  },
  "effectiveCriticality": {
    "isCritical": true
  },
  "primaryDqMonitor": {
    "urn": "urn:ata:acme-corp:data-quality:dq-monitor:3c9e6679-7425-40de-944b-e07fc1f90ae7"
  },
  "aliases": [
    {
      "type": "COLLIBRA_ASSET_ID",
      "value": "123e4567-e89b-12d3-a456-426614174000"
    }
  ],
  "extraProperties": {
    "isPii": true,
    "community": "Customer Solutions",
    "domains": [
      "urn:ata:acme-corp:catalog:domain:10bae762-0000-8010-8000-000001eb0065"
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.