Skip to main content

Catalog API

Manage product catalog with bulk upload and WhatsApp XML feed.

Endpoints

MethodPathDescription
GET/catalogList products
GET/catalog/{id}Get product
POST/catalogCreate product
PATCH/catalog/{id}Update product
DELETE/catalog/{id}Delete product
POST/catalog/bulkBulk upload
GET/catalog/feed/{company_id}.xmlWhatsApp XML feed

List Products

GET /catalog

Query Parameters

ParameterTypeDescription
pageintPage number
limitintItems per page
categorystringFilter by category
company_iduuidFilter by company
searchstringSearch products

Create Product

POST /catalog

Request Body

{
  "name": "Gold Ring",
  "description": "22K gold ring",
  "category": "Jewelry",
  "sub_category": "Rings",
  "price_amount": 50000,
  "price_currency": "INR",
  "moq": 1,
  "_country": "India",
  "images": ["originhttps://..."]
}

Fields

FieldTypeDescription
namestringProduct name
descriptionstringProduct description
categorystringCategory
sub_categorystringSub-category
price_amountintegerPrice in paise
price_currencystringCurrency code
moqintegerMinimum order quantity
origin_countrystringCountry of origin
importer_namestringImporter name (for imported goods)
importer_addressstringImporter address

Bulk Upload

Upload multiple products via CSV or Excel.
POST /catalog/bulk

Request

  • Content-Type: multipart/form-data
  • File: CSV or Excel file

Response

{
  "success": true,
  "created": 50,
  "failed": 2,
  "errors": [
    {"row": 5, "error": "Invalid price format"}
  ]
}

WhatsApp XML Feed

Generate XML feed for Meta Commerce Manager.
GET /catalog/feed/{company_id}.xml

Example

curl http://localhost:8000/api/v1/catalog/feed/company-uuid.xml

Output

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <product>
    <id>prod-001</id>
    <name>Gold Ring</name>
    <description>22K gold ring</description>
    <price>500.00</price>
    <currency>INR</currency>
    <image>https://...</image>
    <availability>in stock</availability>
  </product>
</catalog>

WhatsApp Setup

  1. Generate XML feed URL
  2. Go to Meta Commerce Manager
  3. Add catalog → Connect via feed
  4. Configure hourly sync

Rate Limits

EndpointLimit
List/Search120/min
Create/Update120/min
Bulk Upload10/min