Aller au contenu

Create a bundle

Creates a bundle from existing items.

Bundles cannot contain other bundles and do not create stock on their own.

POSThttps://rest.boxhero-app.com/v1/bundles
Authorizationstringobligatoire

En-tête d’authentification Bearer au format Bearer <token>, où <token> est votre jeton d’API.

namestringmin length 1, max length 255obligatoire

Bundle display name.

skustringmin length 1, max length 255obligatoire

Stock Keeping Unit. Must be unique across active bundles in the team.

barcodestringmax length 255

Primary bundle barcode.

photo_urlstringmax length 2048

Public URL of the bundle photo.

memostringmax length 2000

Free-text memo.

coststring

Cost per bundle, as a decimal string.

pricestring

Selling price per bundle, as a decimal string.

componentsarray of objectobligatoire

Component list. When provided on update, this replaces the full component list.

Afficher les propriétés
item_idintegerminimum 0, maximum 2147483647

Component item id. Mutually exclusive with item_sku.

item_skustringmin length 1, max length 255

Component item SKU (case-insensitive). Mutually exclusive with item_id.

quantitynumberobligatoire

Quantity of this item required per bundle.

201The created bundle’s id.
idintegerminimum 0, maximum 2147483647obligatoire

Id of the newly created bundle.

400Request validation failed, such as duplicate SKU or duplicate/invalid component items.
idstringobligatoire

Unique exception id (ex_ followed by 32 lowercase hex chars, no dashes — e.g. ex_8f5c0c8e0e0a4a3c9b3f4f2c4f6c8d2a). Quote this in support tickets so we can find the request in our logs.

typestringobligatoire

Stable, machine-readable error code (RFC 7807-style URI fragment). Branch your error handling on this, not on title.

Valeurs possibles/errors/not-found/errors/invalid-request/errors/invalid-team-mode/errors/tokens/invalid/errors/tokens/required/errors/too-many-requests/errors/core/usage-limit-exceeded/errors/core/forbidden/errors/core/unhandled/errors/unhandled

titlestringobligatoire

Human-readable summary of the error, in English.

correlationIDstringobligatoire

Request correlation id (rq_ followed by 32 lowercase hex chars, no dashes — e.g. rq_01abf3...). Identical to the X-Correlation-Id response header. Pass an X-Correlation-Id request header to thread your trace through to ours.

instancestringobligatoire

Pointer to the specific failing resource (e.g. /items/12345). Path-only, no /v1 version prefix.

codestring

Sub-reason code surfaced from upstream BoxHero core (on core-mapped 4xx) or from the gateway itself (e.g. not-available-for-api-token on 403). Use this for fine-grained branching after dispatching on type.

errorsarray of object

Field-level error details. Present on /errors/invalid-request (400) responses. Each entry locates a single failure via JSONPath-like path segments and a human-readable message.

Afficher les propriétés
patharray of string | numberobligatoire
messagestringobligatoire
401Missing or invalid API token.
idstringobligatoire

Unique exception id (ex_ followed by 32 lowercase hex chars, no dashes — e.g. ex_8f5c0c8e0e0a4a3c9b3f4f2c4f6c8d2a). Quote this in support tickets so we can find the request in our logs.

typestringobligatoire

Stable, machine-readable error code (RFC 7807-style URI fragment). Branch your error handling on this, not on title.

Valeurs possibles/errors/not-found/errors/invalid-request/errors/invalid-team-mode/errors/tokens/invalid/errors/tokens/required/errors/too-many-requests/errors/core/usage-limit-exceeded/errors/core/forbidden/errors/core/unhandled/errors/unhandled

titlestringobligatoire

Human-readable summary of the error, in English.

correlationIDstringobligatoire

Request correlation id (rq_ followed by 32 lowercase hex chars, no dashes — e.g. rq_01abf3...). Identical to the X-Correlation-Id response header. Pass an X-Correlation-Id request header to thread your trace through to ours.

instancestringobligatoire

Pointer to the specific failing resource (e.g. /items/12345). Path-only, no /v1 version prefix.

codestring

Sub-reason code surfaced from upstream BoxHero core (on core-mapped 4xx) or from the gateway itself (e.g. not-available-for-api-token on 403). Use this for fine-grained branching after dispatching on type.

errorsarray of object

Field-level error details. Present on /errors/invalid-request (400) responses. Each entry locates a single failure via JSONPath-like path segments and a human-readable message.

Afficher les propriétés
patharray of string | numberobligatoire
messagestringobligatoire
429Rate limit exceeded. Check RateLimit, Retry-After, and X-RateLimit-* response headers before retrying.
idstringobligatoire

Unique exception id (ex_ followed by 32 lowercase hex chars, no dashes — e.g. ex_8f5c0c8e0e0a4a3c9b3f4f2c4f6c8d2a). Quote this in support tickets so we can find the request in our logs.

typestringobligatoire

Stable, machine-readable error code (RFC 7807-style URI fragment). Branch your error handling on this, not on title.

Valeurs possibles/errors/not-found/errors/invalid-request/errors/invalid-team-mode/errors/tokens/invalid/errors/tokens/required/errors/too-many-requests/errors/core/usage-limit-exceeded/errors/core/forbidden/errors/core/unhandled/errors/unhandled

titlestringobligatoire

Human-readable summary of the error, in English.

correlationIDstringobligatoire

Request correlation id (rq_ followed by 32 lowercase hex chars, no dashes — e.g. rq_01abf3...). Identical to the X-Correlation-Id response header. Pass an X-Correlation-Id request header to thread your trace through to ours.

instancestringobligatoire

Pointer to the specific failing resource (e.g. /items/12345). Path-only, no /v1 version prefix.

codestring

Sub-reason code surfaced from upstream BoxHero core (on core-mapped 4xx) or from the gateway itself (e.g. not-available-for-api-token on 403). Use this for fine-grained branching after dispatching on type.

errorsarray of object

Field-level error details. Present on /errors/invalid-request (400) responses. Each entry locates a single failure via JSONPath-like path segments and a human-readable message.

Afficher les propriétés
patharray of string | numberobligatoire
messagestringobligatoire

Requête

Terminal window
curl --request POST \
--url 'https://rest.boxhero-app.com/v1/bundles' \
--header "Authorization: Bearer $BOXHERO_API_TOKEN" \
--header 'Content-Type: application/json' \
--data '{
"name": "Starter kit",
"sku": "BUNDLE-STARTER",
"barcode": "8801234567890",
"cost": "12.50",
"price": "29.99",
"components": [
{
"item_id": 14290445,
"quantity": 1
},
{
"item_id": 14290446,
"quantity": 2
}
]
}'

Réponse

{
"id": 4042
}