Skip to main content

UCP Catalog

Thyris exposes UCP-compatible catalog endpoints under:

https://merchant.thyris.cloud/api/protocols/ucp/catalog

These endpoints use the same authentication, scope enforcement, payload shape, and response model as the REST Catalog API.

For procurement UCP endpoints, see UCP Procurement.

For required and optional fields, see Request Field Requirements.

Authentication​

Authorization: Bearer tr_live_your_key_here

or:

x-api-key: tr_live_your_key_here

Endpoint Summary​

MethodEndpointEquivalent REST Endpoint
GET/productsGET /api/v1/catalog/products
POST/productsPOST /api/v1/catalog/products
GET/products/{productId}GET /api/v1/catalog/products/{productId}
PATCH/products/{productId}PATCH /api/v1/catalog/products/{productId}
DELETE/products/{productId}DELETE /api/v1/catalog/products/{productId}
GET/cartsGET /api/v1/catalog/carts
POST/cartsPOST /api/v1/catalog/carts
POST/carts/clear?cartId={cartId}POST /api/v1/catalog/carts/clear?cartId={cartId}
GET/ordersGET /api/v1/catalog/orders
POST/ordersPOST /api/v1/catalog/orders
GET/orders/{orderId}GET /api/v1/catalog/orders/{orderId}
PATCH/orders/{orderId}PATCH /api/v1/catalog/orders/{orderId}

Product Upsert Example​

curl -X POST "https://merchant.thyris.cloud/api/protocols/ucp/catalog/products" \
-H "Authorization: Bearer tr_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"storeId": "STORE_UUID",
"sku": "UCP-SKU-001",
"externalId": "ucp_product_001",
"name": "UCP Product",
"price": 49.9,
"currency": "USD",
"status": "active",
"inStock": true,
"inventoryQuantity": 5
}'

Cart Example​

curl -X POST "https://merchant.thyris.cloud/api/protocols/ucp/catalog/carts" \
-H "Authorization: Bearer tr_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"storeId": "STORE_UUID",
"items": [
{
"catalogId": "1234567890",
"quantity": 1
}
],
"otherDetails": {
"channel": "ucp"
}
}'

Notes​

  • Use the REST API documentation for field definitions and error behavior.
  • Scope rules are identical to REST catalog endpoints.
  • Product creation and updates can trigger outbound catalog webhooks.
  • Cart creation uses the 10 digit catalogId.
  • Order completion deducts inventory.