> ## Documentation Index
> Fetch the complete documentation index at: https://doc.convo.co.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a New Product Catalogue for WhatsApp Commerce

> POST /project/{project_id}/create-catalog — Create a new product catalogue linked to your WhatsApp Business account for commerce messaging.

Use this endpoint to create a new product catalogue linked to your WhatsApp Business account. Catalogues let you showcase products directly in WhatsApp conversations, enabling commerce messaging flows such as product carousels and order messages.

## Endpoint

```text theme={null}
POST https://connect.api-wa.co/project-apis/v1/project/{project_id}/create-catalog
```

## Authentication

```text theme={null}
X-API-WA-Project-API-Pwd: YOUR_API_PASSWORD
```

## Path Parameters

<ParamField path="project_id" type="string" required>
  Your Convo project ID.
</ParamField>

## Request Body

<ParamField body="name" type="string" required>
  A display name for the catalogue (e.g., `"Summer Collection 2024"`).
</ParamField>

<ParamField body="vertical" type="string">
  The product vertical/category for this catalogue. Common values include:

  * `commerce`
  * `destinations`
  * `flights`
  * `hotels`
  * `home_listings`
  * `vehicles`
</ParamField>

<ParamField body="product_count" type="integer">
  Initial number of products to associate with this catalogue. Defaults to `0`.
</ParamField>

<ParamField body="feed_count" type="integer">
  Number of product feeds associated with this catalogue. Defaults to `0`.
</ParamField>

<ParamField body="default_image_url" type="string">
  Fallback image URL to use when a product does not have its own image.
</ParamField>

<ParamField body="fallback_image_url" type="array">
  Array of fallback image URLs, used as additional fallbacks if `default_image_url` is unavailable.
</ParamField>

<ParamField body="is_catalog_segment" type="boolean">
  Set to `true` if this catalogue represents a segment of a larger catalogue.
</ParamField>

<ParamField body="da_display_settings" type="object">
  Display settings for dynamic ad rendering. Contains two sub-objects:

  * `carousel_ad` — transformation settings for carousel ad display
  * `single_ad` — transformation settings for single-product ad display
</ParamField>

## Request Example

```bash theme={null}
curl -X POST \
  "https://connect.api-wa.co/project-apis/v1/project/YOUR_PROJECT_ID/create-catalog" \
  -H "X-API-WA-Project-API-Pwd: YOUR_API_PASSWORD" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Summer Collection 2024",
    "vertical": "commerce",
    "product_count": 0,
    "feed_count": 0,
    "default_image_url": "https://example.com/images/default-product.jpg",
    "fallback_image_url": [],
    "is_catalog_segment": false,
    "da_display_settings": {
      "carousel_ad": {
        "transformation_type": "square"
      },
      "single_ad": {
        "transformation_type": "square"
      }
    }
  }'
```

## Response

```json theme={null}
{
  "status": true
}
```

<ResponseField name="status" type="boolean">
  Returns `true` when the catalogue was created successfully.
</ResponseField>

## Error Responses

| Status Code | Description                                                                                             |
| ----------- | ------------------------------------------------------------------------------------------------------- |
| `400`       | Bad Request — A required field is missing or the request body is malformed.                             |
| `500`       | Internal Server Error — An unexpected server-side error occurred. Retry the request or contact support. |
