Documentation Index
Fetch the complete documentation index at: https://x-preview-mintlify-17c4c782.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Programmatically manage product catalogs, products, product sets, and scheduled feeds for Dynamic Product Ads.
Quick Links
Overview
The Catalog API is a commerce solution that gives advertisers the ability to set up product feeds, group products into sets, and holistically manage catalog products. The Catalog API enables programmatic catalog management and grants advertisers more control over how their catalogs are ingested and updated.
A catalog holds everything regarding the user’s product and product set and is associated with the user’s handle. Currently, one user can only create one catalog.
The Catalog API supports two ways to ingest products:
- Scheduled Feed: Add a feed URL (CSV, TSV, or XML) that will be periodically fetched. X supports files up to 8GB.
- Batch Products API: View, create, update, and delete product attributes with batch (JSON) requests.
X merchants can create product sets based on filter rules. This allows attaching additional metadata to products and creating special product sets for organic commerce features or Dynamic Product Ads. The Catalog API and X Shopping Manager support two types of product sets:
- Manual: Select up to 50 products and set a name and description.
- Filter: Add up to 30 filters to automatically generate sets (price, Google product category, product type, inventory, sale price, custom fields, etc.).
Prerequisites
Catalog API endpoints are currently available via early-access only. To apply for access, please reach out to your X representative or fill out the appropriate form.
You must accept the terms of service via X Shopping Manager.
For product specifications and Shopping Manager details, see the Product specifications guide.
Rate Limits
Product Catalog
| HTTP Method | Rate limit |
|---|
| GET /product_catalogs | 1,000 per 15 minutes |
| POST /product_catalogs | 20 per 15 minutes |
| PUT /product_catalogs/:product_catalog_id | 20 per 15 minutes |
| DELETE /product_catalogs/:product_catalog_id | 20 per 15 minutes |
Batch Products API
| HTTP Method | Rate limit |
|---|
| GET /product_catalogs/:product_catalog_id/products | 1,000 per 15 minutes |
| PUT /product_catalogs/:product_catalog_id/products | 600 per 15 minutes |
| DELETE /product_catalogs/:product_catalog_id/products | 150 per 15 minutes |
Product Sets
| HTTP Method | Rate limit |
|---|
| GET /product_catalogs/:product_catalog_id/product_sets | 2,000 per 15 minutes |
| POST /product_catalogs/:product_catalog_id/product_sets | 100 per 15 minutes |
| PUT /product_catalogs/:product_catalog_id/product_sets/:product_set_id | 500 per 15 minutes |
| DELETE /product_catalogs/:product_catalog_id/product_sets/:product_set_id | 100 per 15 minutes |
Scheduled Feeds
| HTTP Method | Rate limit |
|---|
| GET /product_catalogs/:product_catalog_id/scheduled_feeds | 1,000 per 15 minutes |
| POST /product_catalogs/:product_catalog_id/scheduled_feeds | 20 per 15 minutes |
| PUT /product_catalogs/:product_catalog_id/scheduled_feeds/:scheduled_feed_id | 20 per 15 minutes |
| DELETE /product_catalogs/:product_catalog_id/scheduled_feeds/:scheduled_feed_id | 20 per 15 minutes |
Full API Reference
For the complete reference (Product Catalogs, Products, Product Sets, and Scheduled Feeds endpoints), see the Catalog Management API Reference page.