For the complete documentation index, see llms.txt. This page is also available as Markdown.

Products

Product catalog and inventory management.

get
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
pagenumberOptionalExample: 1
ippnumberOptionalExample: 50
sortstringOptional

If not set, sort will be defaulted as name (ASC)

Example: -name
salesTypestring · enumOptionalExample: PRODUCTPossible values:
upcstringOptional
skustringOptional
includeOfferingsFromAreaIdstringOptionalExample: les
subcategoryIdstringOptional
categoryIdstringOptional
searchstringOptionalExample: q
Responses
200

Returns a PaginatedProductCollection

application/json
_totalnumberRequired
get/pos/products
GET /apis/v2/pos/products HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "items": [
    {
      "id": "text",
      "brandName": "text",
      "name": "text",
      "description": "text",
      "sku": "text",
      "upc": "text",
      "status": "ACTIVE",
      "price": 1,
      "cost": 1,
      "salesType": "PRODUCT",
      "category": {
        "id": "text"
      },
      "subcategory": {
        "id": "text"
      },
      "picture": {
        "id": "text"
      },
      "createdBy": {
        "id": "text"
      },
      "updatedBy": {
        "id": "text"
      },
      "createdAt": "2026-01-01T00:00:00.000Z",
      "updatedAt": "2026-01-01T00:00:00.000Z",
      "offerings": {
        "_total": 1
      },
      "errors": [
        {
          "code": "text",
          "message": "text",
          "details": {}
        }
      ],
      "_links": {}
    }
  ],
  "_total": 1,
  "_pagination": {
    "page": 1,
    "ipp": 1,
    "count": 1,
    "total": 1
  },
  "_links": {
    "self": {
      "href": "text"
    }
  }
}
post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
idstringRead-onlyRequired
brandNamestring · nullableOptional
namestringRequired
descriptionstring · nullableOptional
skustringRequired
upcstringOptional
statusstring · enumRequiredPossible values:
pricenumberOptional
costnumberOptional
salesTypestring · enumRequiredPossible values:
createdAtstring · date-timeRead-onlyOptional
updatedAtstring · date-timeRead-onlyOptional
_linksobjectRequired
Responses
201

Returns a Product

application/json
idstringRead-onlyRequired
brandNamestring · nullableOptional
namestringRequired
descriptionstring · nullableOptional
skustringRequired
upcstringOptional
statusstring · enumRequiredPossible values:
pricenumberOptional
costnumberOptional
salesTypestring · enumRequiredPossible values:
createdAtstring · date-timeRead-onlyOptional
updatedAtstring · date-timeRead-onlyOptional
_linksobjectRequired
post/pos/products
POST /apis/v2/pos/products HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 229

{
  "brandName": "text",
  "name": "text",
  "description": "text",
  "sku": "text",
  "upc": "text",
  "status": "ACTIVE",
  "price": 1,
  "cost": 1,
  "salesType": "PRODUCT",
  "category": {
    "id": "text"
  },
  "subcategory": {
    "id": "text"
  },
  "picture": {
    "id": "text"
  },
  "_links": {}
}
{
  "id": "text",
  "brandName": "text",
  "name": "text",
  "description": "text",
  "sku": "text",
  "upc": "text",
  "status": "ACTIVE",
  "price": 1,
  "cost": 1,
  "salesType": "PRODUCT",
  "category": {
    "id": "text"
  },
  "subcategory": {
    "id": "text"
  },
  "picture": {
    "id": "text"
  },
  "createdBy": {
    "id": "text"
  },
  "updatedBy": {
    "id": "text"
  },
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z",
  "offerings": {
    "_total": 1
  },
  "errors": [
    {
      "code": "text",
      "message": "text",
      "details": {}
    }
  ],
  "_links": {}
}
post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200

Returns a streamable file

No content

post/pos/products/export
POST /apis/v2/pos/products/export HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

get
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productIdstringRequired
Responses
200

Returns a Product

application/json
idstringRead-onlyRequired
brandNamestring · nullableOptional
namestringRequired
descriptionstring · nullableOptional
skustringRequired
upcstringOptional
statusstring · enumRequiredPossible values:
pricenumberOptional
costnumberOptional
salesTypestring · enumRequiredPossible values:
createdAtstring · date-timeRead-onlyOptional
updatedAtstring · date-timeRead-onlyOptional
_linksobjectRequired
get/pos/products/{productId}
GET /apis/v2/pos/products/{productId} HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "id": "text",
  "brandName": "text",
  "name": "text",
  "description": "text",
  "sku": "text",
  "upc": "text",
  "status": "ACTIVE",
  "price": 1,
  "cost": 1,
  "salesType": "PRODUCT",
  "category": {
    "id": "text"
  },
  "subcategory": {
    "id": "text"
  },
  "picture": {
    "id": "text"
  },
  "createdBy": {
    "id": "text"
  },
  "updatedBy": {
    "id": "text"
  },
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z",
  "offerings": {
    "_total": 1
  },
  "errors": [
    {
      "code": "text",
      "message": "text",
      "details": {}
    }
  ],
  "_links": {}
}
delete
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productIdstringRequired
Responses
200

Product deleted successfully

No content

delete/pos/products/{productId}
DELETE /apis/v2/pos/products/{productId} HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

patch
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
productIdstringRequired
Body
idstringRead-onlyRequired
brandNamestring · nullableOptional
namestringRequired
descriptionstring · nullableOptional
skustringRequired
upcstringOptional
statusstring · enumRequiredPossible values:
pricenumberOptional
costnumberOptional
salesTypestring · enumRequiredPossible values:
createdAtstring · date-timeRead-onlyOptional
updatedAtstring · date-timeRead-onlyOptional
_linksobjectRequired
Responses
200

Returns a Product

application/json
idstringRead-onlyRequired
brandNamestring · nullableOptional
namestringRequired
descriptionstring · nullableOptional
skustringRequired
upcstringOptional
statusstring · enumRequiredPossible values:
pricenumberOptional
costnumberOptional
salesTypestring · enumRequiredPossible values:
createdAtstring · date-timeRead-onlyOptional
updatedAtstring · date-timeRead-onlyOptional
_linksobjectRequired
patch/pos/products/{productId}
PATCH /apis/v2/pos/products/{productId} HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 229

{
  "brandName": "text",
  "name": "text",
  "description": "text",
  "sku": "text",
  "upc": "text",
  "status": "ACTIVE",
  "price": 1,
  "cost": 1,
  "salesType": "PRODUCT",
  "category": {
    "id": "text"
  },
  "subcategory": {
    "id": "text"
  },
  "picture": {
    "id": "text"
  },
  "_links": {}
}
{
  "id": "text",
  "brandName": "text",
  "name": "text",
  "description": "text",
  "sku": "text",
  "upc": "text",
  "status": "ACTIVE",
  "price": 1,
  "cost": 1,
  "salesType": "PRODUCT",
  "category": {
    "id": "text"
  },
  "subcategory": {
    "id": "text"
  },
  "picture": {
    "id": "text"
  },
  "createdBy": {
    "id": "text"
  },
  "updatedBy": {
    "id": "text"
  },
  "createdAt": "2026-01-01T00:00:00.000Z",
  "updatedAt": "2026-01-01T00:00:00.000Z",
  "offerings": {
    "_total": 1
  },
  "errors": [
    {
      "code": "text",
      "message": "text",
      "details": {}
    }
  ],
  "_links": {}
}
post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
filestring · binaryOptional
Responses
201

Returns a ProductImportSummary

application/json
importednumberRequired
updatednumberRequired
failednumberRequired
post/pos/products/import
POST /apis/v2/pos/products/import HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: multipart/form-data
Accept: */*
Content-Length: 17

{
  "file": "binary"
}
{
  "imported": 1,
  "updated": 1,
  "failed": 1,
  "errors": [
    {
      "code": "text",
      "message": "text",
      "details": {}
    }
  ]
}

Last updated

Was this helpful?