Appearance
Customer item mappings
API reference
A customer's own article codes mapped to your article numbers. Composite key customer_number + customer_item_number; the referenced customer and product must exist. Accepts the sync key.
List customer item mappings
GET/customer-product/listintegration or sync key
List customer product mappings with pagination and optional filters.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | Page number Default 1. Min 1. | |
size | query | integer | Items per page Default 100. Min 1. Max 1000. | |
customer_number | query | string | null | Filter by customer number | |
customer_item_number | query | string | null | Filter by customer item number | |
item_number | query | string | null | Filter by supplier item number | |
language_code | query | string | null | Filter by language code |
Responses
| Status | Description | Body |
|---|---|---|
200 | Successful Response | CustomerProductListResponse |
404 | Resource not found | ErrorResponse |
422 | Validation Error | HTTPValidationError |
bash
curl -X GET "https://acme.aiotic.ai/customer-product/list?page=1&size=100&customer_number=<customer_number>" -H "X-API-Key: $AIOTIC_API_KEY"python
client.customer_products.list(customer_number="58931").itemsGet a customer item mapping
GET/customer-product/{customer_number}/{customer_item_number}integration or sync key
Get a specific customer product mapping by its composite key.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
customer_number | path | string | yes | Customer number |
customer_item_number | path | string | yes | Customer's own item number |
Responses
| Status | Description | Body |
|---|---|---|
200 | Successful Response | CustomerProduct |
404 | Resource not found | ErrorResponse |
422 | Validation Error | HTTPValidationError |
bash
curl -X GET "https://acme.aiotic.ai/customer-product/<customer_number>/<customer_item_number>" -H "X-API-Key: $AIOTIC_API_KEY"python
client.customer_products.get("58931", "LT-ART-001")Create or update a customer item mapping (upsert)
PUT/customer-product/{customer_number}/{customer_item_number}integration or sync key
Tells AIOTIC that when customer customer_number orders their article customer_item_number, it means your article item_number (language_code). Both the customer and the product must already exist (404 otherwise).
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
customer_number | path | string | yes | Customer number |
customer_item_number | path | string | yes | Customer's own item number |
Request body — application/json
Fields accepted when creating or updating a customer item mapping.
| Field | Type | Required | Description |
|---|---|---|---|
item_number | string | yes | Supplier product item number |
language_code | string | yes | Product language code |
created_at | string | When this mapping was created in AIOTIC Format: date-time. |
Responses
| Status | Description | Body |
|---|---|---|
202 | Successful Response | CustomerProduct |
404 | Resource not found | ErrorResponse |
422 | Validation Error | HTTPValidationError |
bash
curl -X PUT "https://acme.aiotic.ai/customer-product/<customer_number>/<customer_item_number>" -H "X-API-Key: $AIOTIC_API_KEY" \
-H "Content-Type: application/json" \
-d '{"item_number":"string","language_code":"string","created_at":"2026-03-14T10:30:00Z"}'python
client.customer_products.upsert("58931", "LT-ART-001", {"item_number": "PROD-001", "language_code": "nl"})
engine.apply(ChangeEvent.mapping_upsert("58931", "LT-ART-001", item_number="PROD-001", language_code="nl"))Delete a customer item mapping
DELETE/customer-product/{customer_number}/{customer_item_number}integration or sync key
Delete a customer product mapping.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
customer_number | path | string | yes | Customer number |
customer_item_number | path | string | yes | Customer's own item number |
Responses
| Status | Description | Body |
|---|---|---|
204 | Successful Response | — |
404 | Resource not found | ErrorResponse |
422 | Validation Error | HTTPValidationError |
bash
curl -X DELETE "https://acme.aiotic.ai/customer-product/<customer_number>/<customer_item_number>" -H "X-API-Key: $AIOTIC_API_KEY"python
client.customer_products.delete("58931", "LT-ART-001")