Overview
The MoEngage Catalog API allows you to programmatically manage product and item catalogs. Use these endpoints to create new catalogs, define custom schemas, and perform bulk operations for ingesting, updating, or deleting items.MOE-APPKEY header. Ensure both are provided for every request.Catalog API Endpoints
The Catalog API consists of the following operations:- Create a New Catalog
- Add Catalog Attributes
- Ingest Items into the Catalog
- Update Existing Items
- Delete Existing Items
API Constraints & Limits
| Feature | Limit |
|---|---|
| Rate Limit | 100 requests/minute OR 1000 requests/hour |
| Max Payload Size | 5MB (requires Content-Length header) |
| Batch Size | Max 50 items per Ingest/Update/Delete request |
| Max Attributes | 50 attributes per catalog |
| Max Catalogs | 35 catalogs per account |
Supported Data Types
When defining attributes or ingesting items, ensure the values match these supported types:| Type | Description |
|---|---|
string | Textual data |
bool | Boolean (true/false) |
double | Numeric/Floating point values |
datetime | Date and time format |
geopoint | Geographical coordinates |
Notes
id: The unique identifier for the item.title: The name of the item.link: The deep link or URL to the item page.image_link: The URL of the primary product image.
catalog_id returned upon successful creation is a UUID. You must store this ID as it is required as a path parameter for all subsequent item management requests.FAQs
Catalog Management
What happens if I try to create a catalog with a name that already exists?
What happens if I try to create a catalog with a name that already exists?
409 Conflict error with the error code duplicate-catalog-name. Catalog names must be unique within your workspace.Can I add new attributes to a catalog after it has been created?
Can I add new attributes to a catalog after it has been created?
duplicate-item-attributes array in the response.What is the maximum number of custom attributes I can define?
What is the maximum number of custom attributes I can define?
What are the benefits of using the API catalog over a file-based catalog?
What are the benefits of using the API catalog over a file-based catalog?
What are the error codes?
What are the error codes?
Is it possible to change the data type of an attribute once an API catalog is created?
Is it possible to change the data type of an attribute once an API catalog is created?
How many attributes can I add to a catalog?
How many attributes can I add to a catalog?
Can I add a new attribute in payload while sending updates for existing items?
Can I add a new attribute in payload while sending updates for existing items?
What happens if my payload consist of items which are not in catalog?
What happens if my payload consist of items which are not in catalog?
Item Ingestion & Updates
How does the API handle partial failures during bulk ingestion?
How does the API handle partial failures during bulk ingestion?
200 OK with a detailed breakdown. The response body will include a valid count and an invalid count with a details array specifying which document_ids failed and why (e.g., data type mismatch or missing attributes).Can I update an item ID?
Can I update an item ID?
id is the primary key. To change an ID, you must delete the existing item and ingest it as a new item.Is there a limit to how many items I can delete at once?
Is there a limit to how many items I can delete at once?
How long does it take to reflect the newly added items or updates in MoEngage
How long does it take to reflect the newly added items or updates in MoEngage