post https://{shopdomain}.myshoplaza.com/openapi/2022-01/procurements//items
Requires
write_product
access scope. More access scope
The Batch Create Procurement Items API allows the bulk addition of procurement items to a procurement record. This API is useful for adding multiple products and their variants in a single request to streamline the procurement process.This API is especially useful for:
- Adding multiple items to a procurement record in a single operation.
- Managing procurement workflows with large datasets.
- Reducing manual input for procurement item creation.
Request Parameters
Public Request Parameters
Path Parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
id | string | Yes | "382451985837728044" | The unique identifier of the procurement record. |
Body Parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
items | array | Yes | See below | The array of items to be added to the procurement record. |
items. product_id | string | Yes | "3824536038 65993516" | The unique identifier of the product. |
items. variant_id | string | No | "5723299f- 238a-4491-8b42-a187462e748a" | The unique identifier of the product variant. |
items. transfer_quantity | integer | Yes | 100 | The quantity of the item to be transferred. |
Response Explanation
Public Response Parameters
Success Response
Parameter | Type | Example | Description |
---|---|---|---|
fail_items | array | An array of items that failed to be added, with details of each failure. | |
fail_items. product_id | string | "3824536038 65993516" | The unique identifier of the product that failed. |
fail_items. variant_id | string | "5723299f-23 8a-4491-8b42-a187462e748a" | The unique identifier of the variant that failed. |
fail_items. error_message | string | "Invalid product ID" | A description of why the item failed to be added. |
Error Response
Error responses in the API can be represented using two different fields: errors
and error
. Both fields provide details about issues encountered during request processing. Below is an explanation of the fields with their respective examples and descriptions.
Field | Type | Example | Description |
---|---|---|---|
errors | Array | ["inventory not found"] | A list of errors encountered during the request processing. |
Field | Type | Example | Description |
---|---|---|---|
error | Array | "error": "store is not active" | Indicates an error encountered during the process. |
Error Details
Status Code | Message | Possible Reason | Example Response |
---|---|---|---|
400 | Bad Request | Invalid input format or request structure (e.g., missing required fields or incorrect data types). | Bad Request |
Unauthorized | The request is missing valid authentication credentials or the credentials provided are invalid. | Unauthorized | |
422 | Invalid or empty procurement_id | missing required procurement_id or procurement_id with incorrect UUID types | { "errors": [ "The procurement cannot be operated"]} |
Duplicated variant | API request contains multiple entries with the same procurement item | { "errors": [ "Duplicated variant"]} | |
404 | Inventory is not found | Providedvariant_id is not found | { "errors": [ "inventory not found"]} |
500 | Invalid or empty variant_id | missing required variant_id or variant_id with incorrect UUID types | { "errors": [ "sql: converting argument $2 type: invalid UUID length: 35" ] } |