Offerings API
GET /api/v1/products
Returns all products in the workspace, sorted by createdAt descending (newest first). Use optional query parameters to filter by SKU or category. Useful for verifying a sync or checking the current catalog state.
This endpoint lists offerings of every type (PRODUCT, SERVICE, SUBSCRIPTION, CONTRACT) — see Offerings & types.
Request
GET /api/v1/products HTTP/1.1
Host: agentlyleads.com
Authorization: Bearer alk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxQuery parameters
| Parameter | Description |
|---|---|
sku | Return only the product with this exact SKU |
category | Return only products belonging to this category (matched by name) |
Both parameters are optional and can be combined.
Filter by category:
GET /api/v1/products?category=Electronics HTTP/1.1
Authorization: Bearer alk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxLook up a specific product by SKU:
GET /api/v1/products?sku=RTR-4G HTTP/1.1
Authorization: Bearer alk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxResponse — 200
{
"products": [
{
"id": "cmq1abc2def3ghi4jkl5",
"name": "4G Router",
"type": "PRODUCT",
"sku": "RTR-4G",
"price": 199,
"cost": 120,
"currency": "USD",
"unit": "each",
"billingPeriod": null,
"termMonths": null,
"stockQty": 50,
"reorderLevel": null,
"description": null,
"features": null,
"active": true,
"externalId": null,
"category": "Electronics",
"createdAt": "2025-06-01T12:00:00.000Z",
"updatedAt": "2025-06-27T09:00:00.000Z"
}
]
}All Product object fields are returned. See the Product object reference for field descriptions.
price and cost are returned as JSON numbers (never strings).