# Create Catalog Item

Create a new catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`

**Scopes:**
`catalogs:write`

# OpenAPI definition

```json
{
  "openapi": "3.0.2",
  "info": {
    "title": "Catalogs API",
    "version": "2024-10-15",
    "description": "The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.",
    "contact": {
      "name": "Klaviyo Developer Experience Team",
      "email": "developers@klaviyo.com",
      "url": "https://developers.klaviyo.com"
    },
    "termsOfService": "https://www.klaviyo.com/legal/api-terms",
    "license": {
      "name": "License",
      "url": "https://www.klaviyo.com/legal"
    }
  },
  "servers": [
    {
      "url": "https://a.klaviyo.com",
      "description": "Production"
    }
  ],
  "paths": {
    "/api/catalog-items": {
      "post": {
        "operationId": "create_catalog_item",
        "summary": "Create Catalog Item",
        "description": "Create a new catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m`\n\n**Scopes:**\n`catalogs:write`",
        "parameters": [
          {
            "name": "revision",
            "in": "header",
            "description": "API endpoint revision (format: YYYY-MM-DD[.suffix])",
            "required": true,
            "schema": {
              "type": "string",
              "default": "2024-10-15"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/CatalogItemCreateQuery"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/PostCatalogItemResponse"
                }
              }
            }
          },
          "4XX": {
            "$ref": "#/components/responses/ClientError"
          },
          "5XX": {
            "$ref": "#/components/responses/ServerError"
          }
        },
        "tags": [
          "Items"
        ],
        "x-klaviyo-pre-release": "None",
        "x-klaviyo-ratelimit": {
          "burst": "75/s",
          "steady": "700/m"
        },
        "x-klaviyo-scopes": [
          "catalogs:write"
        ],
        "x-klaviyo-subtag": "Items"
      }
    }
  },
  "components": {
    "schemas": {
      "CatalogItemEnum": {
        "type": "string",
        "enum": [
          "catalog-item"
        ]
      },
      "CatalogVariantEnum": {
        "type": "string",
        "enum": [
          "catalog-variant"
        ]
      },
      "CatalogCategoryEnum": {
        "type": "string",
        "enum": [
          "catalog-category"
        ]
      },
      "CatalogItemCreateQueryResourceObject": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/CatalogItemEnum"
          },
          "attributes": {
            "type": "object",
            "properties": {
              "external_id": {
                "description": "The ID of the catalog item in an external system.",
                "type": "string",
                "example": "SAMPLE-DATA-ITEM-1"
              },
              "integration_type": {
                "description": "The integration type. Currently only \"$custom\" is supported.",
                "type": "string",
                "example": "$custom",
                "default": "$custom",
                "enum": [
                  "$custom"
                ]
              },
              "title": {
                "description": "The title of the catalog item.",
                "type": "string",
                "example": "Ocean Blue Shirt (Sample)"
              },
              "price": {
                "description": "This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).",
                "type": "number",
                "example": 42
              },
              "catalog_type": {
                "description": "The type of catalog. Currently only \"$default\" is supported.",
                "type": "string",
                "example": "$default",
                "default": "$default"
              },
              "description": {
                "description": "A description of the catalog item.",
                "type": "string",
                "example": "Ocean blue cotton shirt with a narrow collar and buttons down the front and long sleeves. Comfortable fit and titled kaleidoscope patterns."
              },
              "url": {
                "description": "URL pointing to the location of the catalog item on your website.",
                "type": "string",
                "example": "https://via.placeholder.com/150"
              },
              "image_full_url": {
                "description": "URL pointing to the location of a full image of the catalog item.",
                "type": "string",
                "example": "https://via.placeholder.com/300"
              },
              "image_thumbnail_url": {
                "description": "URL pointing to the location of an image thumbnail of the catalog item",
                "type": "string",
                "example": "https://via.placeholder.com/150"
              },
              "images": {
                "description": "List of URLs pointing to the locations of images of the catalog item.",
                "type": "array",
                "items": {
                  "type": "string"
                },
                "example": [
                  "https://via.placeholder.com/150"
                ]
              },
              "custom_metadata": {
                "description": "Flat JSON blob to provide custom metadata about the catalog item. May not exceed 100kb.",
                "type": "object",
                "example": {
                  "Top Pick": true
                }
              },
              "published": {
                "description": "Boolean value indicating whether the catalog item is published.",
                "type": "boolean",
                "example": true,
                "default": true
              }
            },
            "required": [
              "external_id",
              "title",
              "description",
              "url"
            ]
          },
          "relationships": {
            "type": "object",
            "properties": {
              "categories": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "type",
                        "id"
                      ],
                      "properties": {
                        "type": {
                          "$ref": "#/components/schemas/CatalogCategoryEnum"
                        },
                        "id": {
                          "description": "A list of catalog category IDs representing the categories the item is in",
                          "type": "string",
                          "example": "$custom:::$default:::SAMPLE-DATA-CATEGORY-APPAREL"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "required": [
          "type",
          "attributes"
        ]
      },
      "CatalogItemCreateQuery": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/CatalogItemCreateQueryResourceObject"
          }
        },
        "required": [
          "data"
        ]
      },
      "PostCatalogItemResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "type": {
                "$ref": "#/components/schemas/CatalogItemEnum"
              },
              "id": {
                "description": "The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.",
                "type": "string",
                "example": "$custom:::$default:::SAMPLE-DATA-ITEM-1"
              },
              "attributes": {
                "type": "object",
                "properties": {
                  "external_id": {
                    "description": "The ID of the catalog item in an external system.",
                    "type": "string",
                    "example": "SAMPLE-DATA-ITEM-1"
                  },
                  "title": {
                    "description": "The title of the catalog item.",
                    "type": "string",
                    "example": "Ocean Blue Shirt (Sample)"
                  },
                  "description": {
                    "description": "A description of the catalog item.",
                    "type": "string",
                    "example": "Ocean blue cotton shirt with a narrow collar and buttons down the front and long sleeves. Comfortable fit and titled kaleidoscope patterns."
                  },
                  "price": {
                    "description": "This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).",
                    "type": "number",
                    "example": 42
                  },
                  "url": {
                    "description": "URL pointing to the location of the catalog item on your website.",
                    "type": "string",
                    "example": "https://via.placeholder.com/150"
                  },
                  "image_full_url": {
                    "description": "URL pointing to the location of a full image of the catalog item.",
                    "type": "string",
                    "example": "https://via.placeholder.com/300"
                  },
                  "image_thumbnail_url": {
                    "description": "URL pointing to the location of an image thumbnail of the catalog item",
                    "type": "string",
                    "example": "https://via.placeholder.com/150"
                  },
                  "images": {
                    "description": "List of URLs pointing to the locations of images of the catalog item.",
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "example": [
                      "https://via.placeholder.com/150"
                    ]
                  },
                  "custom_metadata": {
                    "description": "Flat JSON blob to provide custom metadata about the catalog item. May not exceed 100kb.",
                    "type": "object",
                    "example": {
                      "Top Pick": true
                    }
                  },
                  "published": {
                    "description": "Boolean value indicating whether the catalog item is published.",
                    "type": "boolean",
                    "example": true
                  },
                  "created": {
                    "description": "Date and time when the catalog item was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).",
                    "type": "string",
                    "format": "date-time",
                    "example": "2022-11-08T00:00:00+00:00"
                  },
                  "updated": {
                    "description": "Date and time when the catalog item was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm).",
                    "type": "string",
                    "format": "date-time",
                    "example": "2022-11-08T00:00:00+00:00"
                  }
                }
              },
              "relationships": {
                "type": "object",
                "properties": {
                  "variants": {
                    "type": "object",
                    "properties": {
                      "data": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "type",
                            "id"
                          ],
                          "properties": {
                            "type": {
                              "$ref": "#/components/schemas/CatalogVariantEnum"
                            },
                            "id": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "links": {
                        "$ref": "#/components/schemas/RelationshipLinks"
                      }
                    }
                  }
                }
              },
              "links": {
                "$ref": "#/components/schemas/ObjectLinks"
              }
            },
            "required": [
              "type",
              "id",
              "attributes",
              "links"
            ]
          }
        },
        "required": [
          "data"
        ]
      },
      "RelationshipLinks": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "format": "uri"
          },
          "related": {
            "type": "string",
            "format": "uri"
          }
        },
        "required": [
          "self",
          "related"
        ]
      },
      "ObjectLinks": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "format": "uri"
          }
        },
        "required": [
          "self"
        ]
      }
    },
    "responses": {
      "ClientError": {
        "description": "Client Error",
        "content": {
          "application/vnd.api+json": {
            "schema": {
              "type": "object",
              "properties": {
                "errors": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "id",
                      "code",
                      "title",
                      "detail"
                    ],
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "code": {
                        "type": "string"
                      },
                      "title": {
                        "type": "string"
                      },
                      "detail": {
                        "type": "string"
                      },
                      "source": {
                        "type": "object",
                        "properties": {
                          "pointer": {
                            "type": "string"
                          },
                          "parameter": {
                            "type": "string"
                          }
                        }
                      }
                    }
                  }
                }
              },
              "required": [
                "errors"
              ]
            }
          }
        }
      },
      "ServerError": {
        "description": "Server Error",
        "content": {
          "application/vnd.api+json": {
            "schema": {
              "type": "object",
              "properties": {
                "errors": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "id",
                      "code",
                      "title",
                      "detail"
                    ],
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "code": {
                        "type": "string"
                      },
                      "title": {
                        "type": "string"
                      },
                      "detail": {
                        "type": "string"
                      },
                      "source": {
                        "type": "object",
                        "properties": {
                          "pointer": {
                            "type": "string"
                          },
                          "parameter": {
                            "type": "string"
                          }
                        }
                      }
                    }
                  }
                }
              },
              "required": [
                "errors"
              ]
            }
          }
        }
      }
    },
    "securitySchemes": {
      "Klaviyo-API-Key": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "Private key authentication for /api/ endpoints is performed by setting the `Authorization` header to `Klaviyo-API-Key your-private-api-key`<br>For more information please visit https://developers.klaviyo.com/en/v2024-10-15/reference/api-overview#authentication",
        "x-default": "Klaviyo-API-Key your-private-api-key"
      }
    }
  },
  "tags": [
    {
      "name": "Items"
    }
  ],
  "security": [
    {
      "Klaviyo-API-Key": []
    }
  ],
  "x-readme": {
    "explorer-enabled": false,
    "proxy-enabled": true,
    "samples-enabled": true
  },
  "_id": {
    "buffer": {
      "0": 103,
      "1": 14,
      "2": 199,
      "3": 71,
      "4": 109,
      "5": 224,
      "6": 147,
      "7": 0,
      "8": 82,
      "9": 88,
      "10": 175,
      "11": 31
    }
  }
}
```