Catalog AI
Sign In

Attribute sets API

Attribute sets define which fields an enrichment job fills and the prompt behind each one. Read them here to discover the attributeSetId and attributeIds values that enrichment, brand, and category jobs expect.

All three endpoints are read-only. Attribute sets are created and edited in the dashboard under Settings > Attribute Sets.

Endpoints

Method Endpoint Description
POST /attribute-sets Product attribute sets
POST /brand-attribute-sets Brand attribute sets
POST /product-category-attribute-sets Category attribute sets

Each takes no request body. Send an empty object.

Product attribute sets

Returns every product attribute set in the organization, sorted by name, with the attributes each one contains in display order.

Endpoint: POST /api/{organization}/attribute-sets

Example request

curl -X POST https://catalog-ai.tdcapps.com/api/your-org/attribute-sets \
  -H "Authorization: Bearer your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{}'

Response

{
  "success": true,
  "data": {
    "attributeSets": [
      {
        "id": "attrset_abc123",
        "name": "Hand tools",
        "organizationId": "org_abc123",
        "attributeSetAttributes": [
          {
            "order": 0,
            "attribute": {
              "id": "attr_material",
              "name": "Material",
              "slug": "material",
              "type": "text",
              "prompt": "The primary material the tool body is made from.",
              "categoryPrompt": null,
              "isActive": true
            }
          }
        ]
      }
    ]
  }
}

Attribute fields

Field Type Description
id string Use this as an entry in attributeIds when creating a job
name string Display name
slug string Stable key, useful for mapping into your own schema
type string The value type the attribute holds
prompt string The instruction the model follows for this attribute
categoryPrompt string | null Optional per-category override. Product attribute sets only
isActive boolean Inactive attributes are skipped by jobs

Brand attribute sets

The same shape, for brand enrichment jobs. Brand attributes carry no categoryPrompt.

Endpoint: POST /api/{organization}/brand-attribute-sets

curl -X POST https://catalog-ai.tdcapps.com/api/your-org/brand-attribute-sets \
  -H "Authorization: Bearer your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{}'

Category attribute sets

The same shape, for category enrichment jobs. Category attributes carry no categoryPrompt.

Endpoint: POST /api/{organization}/product-category-attribute-sets

curl -X POST https://catalog-ai.tdcapps.com/api/your-org/product-category-attribute-sets \
  -H "Authorization: Bearer your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{}'

Errors

Status Meaning
401 No API key on the request
403 The key cannot reach this organization
500 Server error

Next steps