---
title: "Create Product"
method: POST
path: "/mgmt/connections/{connectionId}/products"
tags: ["productCatalog"]
---

# Create Product

`POST /mgmt/connections/{connectionId}/products`

## Request

- Base URL: `https://api.v3.taxcloud.com`
- URL: `https://api.v3.taxcloud.com/mgmt/connections/{connectionId}/products`
- Auth: HTTP bearer

Creates a Product in the product catalog. Product represents the type of line item from the integration when calculating tax rates.

## Path parameters

- `connectionId` string, required

## Request body

- MANAGEMENTAPIProductRequest
  - `$schema` string, uri: A URL to the JSON Schema for this object.
  - `channel` string, nullable: The type of channel the product comes from (e.g., amazon, walmart etc.). It accepts any string and attempts to snake_case the input.
  - `externalTaxCode` string, nullable: Tax code from the external platform, used as the lookup key in taxonomy mappings to derive a default TIC. Merchants may override the resulting TIC.
  - `productId` string, required: ID of the product in the given connection & channel
  - `productName` string, nullable: Name of the product for description purposes (not used in mapping)
  - `tic` integer, nullable: TIC number for the product

## Response `201`

Created

- MANAGEMENTAPIProductResponse
  - `$schema` string, uri: A URL to the JSON Schema for this object.
  - `channel` string, nullable, required: The type of channel the product comes from (e.g., amazon, walmart etc.)
  - `connectionId` string, required
  - `externalTaxCode` string: Tax code from the external platform, used as the lookup key in taxonomy mappings to derive a default TIC. Merchants may override the resulting TIC.
  - `id` integer, required
  - `productId` string, required: ID of the product in the given connection & channel
  - `productName` string, nullable, required: Name of the product for description purposes (not used in mapping)
  - `tic` integer, nullable: TIC number for the product

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `422`: Unprocessable Entity
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/taxcloud/apis/taxcloud-2.md) - [All operations](https://skmtc.dev/taxcloud/apis/taxcloud-2/llms.txt) - [OpenAPI document](https://skmtc.dev/taxcloud/apis/taxcloud-2/revisions/e0cd5a77728e?raw)
