REKKI catalog API
The catalog API from REKKI — 12 operation(s) for catalog.
Operations 15
Documentation
Documentation
https://github.com/rekki/supplier-api
APIReference
https://api.rekki.com/swagger/index.html
The catalog API from REKKI — 12 operation(s) for catalog.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/rekki-catalog-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: 'The base URL for all API endpoints is https://api.rekki.com/api
Api key value consists of word Bearer together with api key that you can get from integrations@rekki.com
'
title: Rekki.com Supplier Catalog API
contact:
email: integrations@rekki.com
license:
name: All rights reserved
version: '1.0'
servers:
- url: https://api.rekki.com/api
tags:
- name: catalog
paths:
/integration/v1/catalog/items:
get:
security:
- ApiKeyAuth: []
description: 'Lists all your catalog items. Sorted by creation date, with the oldest appearing first.
No input parameters. Options for pagination and sorting direction may be introduced later.
Response is a JSON object with a data property that contains catalog items of the authenticated supplier.'
tags:
- catalog
summary: Get catalog items for authenticated supplier
operationId: GetCatalogItems
deprecated: true
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/main.CatalogItems'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
post:
security:
- ApiKeyAuth: []
description: "### Parameters\n\n- **`id`**\nREKKI's ID to uniquely identify the catalog item (for REKKI internal reference).\nIf `id` is specified the item will be update, if not it will attempt to insert it.\n- **`product_code`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nProduct code for the item that maps to the supplier's catalog.\nSuppliers can modify the product code for future orders at https://supplier.rekki.com\n- **`name`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nItem name as would be defined on the customer's product list.\n- **`currency`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is GBP</span>\nCurrency code for the price. In [ISO 4217][] three-letter format.\n- **`units_prices`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nList of units and their prices that the item can be ordered in.\n- **`units_prices.unit`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nA unit that the item can be ordered in.\n- **`units_prices.price_cents`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is 0</span>\nThe order price in cents for the item per unit.\nFor example, a currency of GBP with unit 5L and price 850 means a 5L item can be ordered for £8.50.\n- **`units_prices.stock_count`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nThe number of items in stock for the related unit.\n- **`availability`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is \"in_stock\"</span>\nAvailability status of the item. Can be \"in_stock\" or \"out_of_stock\".\n- **`description`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nShort description of the item.\n- **`allergens`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of allergens for the item, if any.\n- **`allergens.type`** <span style=\"font-size: 12px; font-weight: 500;\">required when allergens is given</span>\nType of allergy. For example \"contains peanuts\" or \"may contain peanuts\".\n- **`allergens.symptoms`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of symptoms for the allergy.\n- **`order_cutoff_times`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nCutt-off times are the minimum amount of time before delivery when the item can still be ordered.\n- **`order_cutoff_times.{mon,tue,wed,thu,fri,sat,sun}`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nMinimum amount of time, in hours, that an item needs to be ordered in advance of delivery for the given day.\n- **`replacement_products`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of product codes for alternative items when this item is not available.\n- **`seasonality`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of date ranges when the item is in-season.\n- **`seasonality.start_date`** <span style=\"font-size: 12px; font-weight: 500;\">required when seasonality is given</span>\n The start date when the item is in season. In [ISO 8601][] calendar date format `YYYY-MM-DD`.\n - **`seasonality.end_date`** <span style=\"font-size: 12px; font-weight: 500;\">required when seasonality is given</span>\n The end date when the item is in season. In [ISO 8601][] calendar date format `YYYY-MM-DD`.\n"
tags:
- catalog
summary: Creates or Updates an item on your catalog. If item with this product_code already exists, you can update this item. Item is looked up by product code
operationId: UpdateCatalogItem
deprecated: true
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/main.APISupplierCatalogItem'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/main.GenericErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/main.APISupplierCatalogItem'
description: Payload
required: true
/integration/v1/catalog/items/{id}:
get:
security:
- ApiKeyAuth: []
tags:
- catalog
summary: Lists all orders placed for the supplier that were placed through REKKI.
operationId: GetCatalogItem
deprecated: true
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
- description: ID of the item to retrieve. Item IDs are discoverable when listing items.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/main.APISupplierCatalogItem'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/main.GenericErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
delete:
security:
- ApiKeyAuth: []
description: Delete an item from your catalog by its unique ID.
tags:
- catalog
summary: Delete an item from catalog
operationId: DeleteCatalogItem
deprecated: true
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
- description: ID of the item to retrieve. Item IDs are discoverable when listing items.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/main.SuccessConfirmation'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
/integration/v1/catalog/replace:
post:
security:
- ApiKeyAuth: []
description: "### Parameters\n\n- **`id`**\nREKKI's ID to uniquely identify the catalog item (for REKKI internal reference).\nIf `id` is specified the item will be update, if not it will attempt to insert it.\n- **`product_code`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nProduct code for the item that maps to the supplier's catalog.\nSuppliers can modify the product code for future orders at https://supplier.rekki.com\n- **`name`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nItem name as would be defined on the customer's product list.\n- **`currency`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is GBP</span>\nCurrency code for the price. In [ISO 4217][] three-letter format.\n- **`units_prices`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nList of units and their prices that the item can be ordered in.\n- **`units_prices.unit`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nA unit that the item can be ordered in.\n- **`units_prices.price_cents`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is 0</span>\nThe order price in cents for the item per unit.\nFor example, a currency of GBP with unit 5L and price 850 means a 5L item can be ordered for £8.50.\n- **`units_prices.stock_count`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nThe number of items in stock for the related unit.\n- **`availability`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is \"in_stock\"</span>\nAvailability status of the item. Can be \"in_stock\" or \"out_of_stock\".\n- **`description`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nShort description of the item.\n- **`allergens`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of allergens for the item, if any.\n- **`allergens.type`** <span style=\"font-size: 12px; font-weight: 500;\">required when allergens is given</span>\nType of allergy. For example \"contains peanuts\" or \"may contain peanuts\".\n- **`allergens.symptoms`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of symptoms for the allergy.\n- **`order_cutoff_times`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nCutt-off times are the minimum amount of time before delivery when the item can still be ordered.\n- **`order_cutoff_times.{mon,tue,wed,thu,fri,sat,sun}`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nMinimum amount of time, in hours, that an item needs to be ordered in advance of delivery for the given day.\n- **`replacement_products`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of product codes for alternative items when this item is not available.\n- **`seasonality`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of date ranges when the item is in-season.\n- **`seasonality.start_date`** <span style=\"font-size: 12px; font-weight: 500;\">required when seasonality is given</span>\n The start date when the item is in season. In [ISO 8601][] calendar date format `YYYY-MM-DD`.\n - **`seasonality.end_date`** <span style=\"font-size: 12px; font-weight: 500;\">required when seasonality is given</span>\n The end date when the item is in season. In [ISO 8601][] calendar date format `YYYY-MM-DD`.\n"
tags:
- catalog
summary: Drop all existing items from the catalog and upload new ones
operationId: ReplaceCatalog
deprecated: true
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/main.SuccessConfirmation'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/main.GenericErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/main.ReplaceCatalogInput'
description: Payload
required: true
/integration/v2/catalog/items/availability:
post:
security:
- ApiKeyAuth: []
tags:
- catalog
summary: Update availability status for one of the items in the catalog
operationId: UpdateCatalogItemAvailability
deprecated: true
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/main.UpdateSuccess'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/main.GenericErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/main.SetStockStatusInput'
description: Payload
required: true
/integration/v3/catalog/inventory:
post:
security:
- ApiKeyAuth: []
description: '### This API endpoint allows to update stock availability for products in the catalog.
By associating customer accounts with specific inventory locations, suppliers restrict customers to view products that are only available in the stock at the given location.
Provided stock availability details will override previous values for the specified customer accounts.
Additionally, if a customer account number that was previously associated with the given inventory location but is omitted from the `customer_account_numbers` list, this account will be unlinked from the inventory location.
'
tags:
- catalog
summary: Update catalog stock availability for the supplier
operationId: UpdateCatalogInventory
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/v3.UpdateInventoryCatalogOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/v3.GenericErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/v3.UpdateCatalogInventoryInput'
description: Payload
required: true
/integration/v3/catalog/items:
get:
security:
- ApiKeyAuth: []
description: 'Lists all your catalog items. Sorted by creation date, with the oldest appearing first.
No input parameters. Options for pagination and sorting direction may be introduced later.
Response is a JSON object with a data property that contains catalog items of the authenticated supplier.'
tags:
- catalog
summary: Get catalog items for authenticated supplier
operationId: GetCatalogItemsV3
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/v3.CatalogItems'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
post:
security:
- ApiKeyAuth: []
description: "### Parameters\n\n- **`id`**\nREKKI's ID to uniquely identify the catalog item (for REKKI internal reference).\nIf `id` is specified the item will be update, if not it will attempt to insert it.\n- **`product_code`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nProduct code for the item that maps to the supplier's catalog.\nSuppliers can modify the product code for future orders at https://supplier.rekki.com\n- **`name`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nItem name as would be defined on the customer's product list.\n- **`currency`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is GBP</span>\nCurrency code for the price. In [ISO 4217][] three-letter format.\n- **`units_prices`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nList of units and their prices that the item can be ordered in.\n- **`units_prices.unit`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nA unit that the item can be ordered in.\n- **`units_prices.price_cents`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is 0</span>\nThe order price in cents for the item per unit.\nFor example, a currency of GBP with unit 5L and price 850 means a 5L item can be ordered for £8.50.\n- **`units_prices.stock_count`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nThe number of items in stock for the related unit.\n- **`availability`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is \"in_stock\"</span>\nAvailability status of the item. Can be \"in_stock\" or \"out_of_stock\".\n- **`description`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nShort description of the item.\n- **`allergens`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of allergens for the item, if any.\n- **`allergens.type`** <span style=\"font-size: 12px; font-weight: 500;\">required when allergens is given</span>\nType of allergy. For example \"contains peanuts\" or \"may contain peanuts\".\n- **`allergens.symptoms`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of symptoms for the allergy.\n- **`order_cutoff_times`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nCutt-off times are the minimum amount of time before delivery when the item can still be ordered.\n- **`order_cutoff_times.{mon,tue,wed,thu,fri,sat,sun}`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nMinimum amount of time, in hours, that an item needs to be ordered in advance of delivery for the given day.\n- **`replacement_products`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of product codes for alternative items when this item is not available.\n- **`seasonality`** <span style=\"font-size: 12px; font-weight: 500;\">optional</span>\nList of date ranges when the item is in-season.\n- **`seasonality.start_date`** <span style=\"font-size: 12px; font-weight: 500;\">required when seasonality is given</span>\n The start date when the item is in season. In [ISO 8601][] calendar date format `YYYY-MM-DD`.\n - **`seasonality.end_date`** <span style=\"font-size: 12px; font-weight: 500;\">required when seasonality is given</span>\n The end date when the item is in season. In [ISO 8601][] calendar date format `YYYY-MM-DD`.\n"
tags:
- catalog
summary: Creates or Updates multiple items on your catalog. If item with this product_code already exists, you can update this item. Item is looked up by product code
operationId: UpdateCatalogItemsV3
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/v3.CatalogItems'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/v3.GenericErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/v3.UpdateCatalogInput'
description: Payload
required: true
/integration/v3/catalog/items/availability:
post:
security:
- ApiKeyAuth: []
tags:
- catalog
summary: Update availability status for one of the items in the catalog
operationId: UpdateCatalogItemAvailabilityV3
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/v3.UpdateSuccess'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/v3.AvailabilityErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/v3.SetStockStatusInput'
description: Payload
required: true
/integration/v3/catalog/items/delete:
post:
security:
- ApiKeyAuth: []
description: Delete items from the catalog by its unique IDs.
tags:
- catalog
summary: Delete items from catalog
operationId: DeleteCatalogItemsV3
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/v3.SuccessConfirmation'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/v3.DeleteCatalogItemsInput'
description: Payload
required: true
/integration/v3/catalog/items/photo:
post:
security:
- ApiKeyAuth: []
description: Upload a photo for an item in the supplier catalog
tags:
- catalog
operationId: UploadCatalogPhoto
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
- description: Product code of the item
name: product_code
in: query
required: true
schema:
type: string
- description: Unit of the item
name: product_unit
in: query
required: true
schema:
type: string
- description: Comma separated list of tags for the photo
name: tags
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/v3.UploadCatalogPhotoResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/v3.GenericErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
description: Image file
format: binary
required:
- file
/integration/v3/catalog/items/{id}:
get:
security:
- ApiKeyAuth: []
tags:
- catalog
summary: Fetch a specific catalog item by its Id.
operationId: GetCatalogItemV3
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
- description: ID of the item to retrieve. Item IDs are discoverable when listing items.
name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/v3.APISupplierCatalogItem'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/v3.GenericErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
/integration/v3/catalog/pricelist:
post:
security:
- ApiKeyAuth: []
description: '### This API endpoint allows to update price lists for customers.
Customer accounts can be linked to specific price lists, enabling products to be viewed and purchased at corresponding prices.
Provided price list details will override previous values for the specified customer accounts.
Additionally, if a customer account number that was previously associated with the given price list is omitted from the `customer_account_numbers` list, this account will be unlinked from the price list.
'
tags:
- catalog
summary: Update the price list for the supplier
operationId: UpdatePriceList
parameters:
- description: Required header
name: X-REKKI-Authorization-Type
in: header
required: true
schema:
type: string
enum:
- supplier_api_token
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/v3.UpdatePriceListOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/v3.GenericErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
'500':
description: Internal Server Error
content:
application/json:
schema:
type: string
requestBody:
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/v3.UpdatePriceListInput'
description: Payload
required: true
/integration/v3/catalog/replace:
post:
security:
- ApiKeyAuth: []
description: "### Parameters\n\n- **`id`**\nREKKI's ID to uniquely identify the catalog item (for REKKI internal reference).\nIf `id` is specified the item will be update, if not it will attempt to insert it.\n- **`product_code`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nProduct code for the item that maps to the supplier's catalog.\nSuppliers can modify the product code for future orders at https://supplier.rekki.com\n- **`name`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nItem name as would be defined on the customer's product list.\n- **`currency`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is GBP</span>\nCurrency code for the price. In [ISO 4217][] three-letter format.\n- **`units_prices`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nList of units and their prices that the item can be ordered in.\n- **`units_prices.unit`** <span style=\"font-size: 12px; font-weight: 500;\">required</span>\nA unit that the item can be ordered in.\n- **`units_prices.price_cents`** <span style=\"font-size: 12px; font-weight: 500;\">optional, default is 0</span>\nThe order price in cents for the item per unit.\nFor example, a currency of GBP with unit 5L and price 850 means a 5L item can be ordered for £8.50.\n- **`units_prices.stock_count`** <span style=\"font-size: 12px; font-weight: 500;\">option
# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/rekki/refs/heads/main/openapi/rekki-catalog-api-openapi.yml