Get a sales return
Returns a sales return by id, with source order reference, lines, per-item receiving progress, and linked stock transactions.
https://rest.boxhero-app.com/v1/returns/{return_id}Bearer <token> 格式的 Bearer 认证请求头,其中 <token> 为你的 API 令牌。
Return id.
200The requested sales return.
A sales return with lines, per-item receiving progress, and linked transactions.
显示属性
Return id.
Return number.
Return date/time.
Return status.
可选值confirmedin-progressdone
Customer for the sales return.
显示属性
Id of the referenced entity.
Display name of the entity at the time the transaction was recorded.
true when the underlying entity has since been deleted. The embedded snapshot is preserved so historical transactions remain readable.
Reference to the source sales order for a return.
显示属性
Order id.
Order number.
Return total as a decimal string.
Source sales order ISO currency code, or null when unset.
Free-text memo. Empty string when not set.
Optimistic-concurrency version.
Reference to a related entity (location, partner, or user) embedded in a transaction. The snapshot is captured at transaction time and does not update if the source entity is later renamed or removed.
显示属性
Id of the referenced entity.
Display name of the entity at the time the transaction was recorded.
true when the underlying entity has since been deleted. The embedded snapshot is preserved so historical transactions remain readable.
Server-side creation timestamp.
Web URL to view this return in the BoxHero app.
Read-only tags parsed from the memo.
Detailed return lines.
显示属性
Return line id.
Line rank in the return.
Source order line id.
Set when the line references a single item.
显示属性
Item or bundle id.
Display name.
SKU. Empty string when unset.
Barcode. Empty string when unset.
Whether the underlying item or bundle is deleted.
Set when the line references a bundle.
显示属性
Item or bundle id.
Display name.
SKU. Empty string when unset.
Barcode. Empty string when unset.
Whether the underlying item or bundle is deleted.
Unit price as stored on the line.
Quantity. May include up to four decimal places in core data.
Tax name, or null when no tax is applied.
Tax rate as a percentage string.
Whether the stored line price includes tax.
Discount name, or null when no discount is applied.
Discount type. "percent" is a 0-100 percentage; "amount" is an absolute amount.
可选值percentamount
Discount percentage or absolute amount.
price * quantity before discount and tax.
Discount amount applied to this line.
Inclusive plus exclusive tax amount for this line.
Final line total after discount and exclusive tax.
Per-item receiving progress. Bundle return lines are exploded and duplicate items are collapsed.
显示属性
Reference to an item or bundle embedded in order, return, transaction, and bundle component responses.
显示属性
Item or bundle id.
Display name.
SKU. Empty string when unset.
Barcode. Empty string when unset.
Whether the underlying item or bundle is deleted.
Ordered or returned quantity for this item. Bundle lines are exploded into component quantities and duplicate items are collapsed.
Absolute quantity already fulfilled or received for this item.
Remaining quantity for this item, clamped to zero when over-fulfilled.
Inventory transactions linked to this return.
显示属性
Location transaction id.
Fulfillment direction of an order-linked transaction.
可选值inout
Effective transaction time.
Reference to a related entity (location, partner, or user) embedded in a transaction. The snapshot is captured at transaction time and does not update if the source entity is later renamed or removed.
显示属性
Id of the referenced entity.
Display name of the entity at the time the transaction was recorded.
true when the underlying entity has since been deleted. The embedded snapshot is preserved so historical transactions remain readable.
Quantity. May include up to four decimal places in core data.
401Missing or invalid API token.
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.
Stable, machine-readable error code (RFC 7807-style URI fragment). Branch your error handling on this, not on title.
可选值/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
Human-readable summary of the error, in English.
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.
Pointer to the specific failing resource (e.g. /items/12345). Path-only, no /v1 version prefix.
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.
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.
显示属性
404No return with the given id was found in this team.
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.
Stable, machine-readable error code (RFC 7807-style URI fragment). Branch your error handling on this, not on title.
可选值/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
Human-readable summary of the error, in English.
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.
Pointer to the specific failing resource (e.g. /items/12345). Path-only, no /v1 version prefix.
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.
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.
显示属性
429Rate limit exceeded. Check RateLimit, Retry-After, and X-RateLimit-* response headers before retrying.
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.
Stable, machine-readable error code (RFC 7807-style URI fragment). Branch your error handling on this, not on title.
可选值/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
Human-readable summary of the error, in English.
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.
Pointer to the specific failing resource (e.g. /items/12345). Path-only, no /v1 version prefix.
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.
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.
显示属性
请求
curl --request GET \ --url 'https://rest.boxhero-app.com/v1/returns/{return_id}' \ --header "Authorization: Bearer $BOXHERO_API_TOKEN"const response = await fetch("https://rest.boxhero-app.com/v1/returns/{return_id}", { method: "GET", headers: { Authorization: `Bearer ${process.env.BOXHERO_API_TOKEN}`, },});const data = await response.json();import osimport requests
response = requests.get( "https://rest.boxhero-app.com/v1/returns/{return_id}", headers={ "Authorization": "Bearer " + os.environ["BOXHERO_API_TOKEN"], },)data = response.json()GET /v1/returns/{return_id} HTTP/1.1Host: rest.boxhero-app.comAuthorization: Bearer <token>响应
{ "item": { "id": 90301, "return_number": "R-1001", "return_time": "2026-01-15T09:30:00.000Z", "status": "confirmed", "partner": { "id": 431488, "name": "Northwind Retail", "deleted": false }, "order": { "id": 90201, "order_number": "SO-2001" }, "total_price": "99.95", "currency_code": "USD", "memo": "", "revision": 3, "created_by": { "id": 1001, "name": "John Smith", "deleted": false }, "created_at": "2026-01-15T09:30:00.000Z", "url": "https://app.boxhero-app.com/returns/90301", "tags": [], "items": [ { "id": 700301, "rank": 0, "order_item_id": 700201, "item": { "id": 14290445, "name": "Finish Setting Powder", "sku": "SKU-12345678", "barcode": "2097678335587", "deleted": false }, "bundle": null, "price": "19.99", "quantity": 5, "tax_name": null, "tax_rate": null, "tax_inclusive": null, "discount_name": null, "discount_type": null, "discount_value": null, "subtotal": "99.95", "discount_amount": "0.00", "tax_amount": "0.00", "total": "99.95" } ], "tx_items": [ { "item": { "id": 14290445, "name": "Finish Setting Powder", "sku": "SKU-12345678", "barcode": "2097678335587", "deleted": false }, "ordered_quantity": 5, "fulfilled_quantity": 5, "pending_quantity": 0 } ], "transactions": [ { "id": 14012345, "type": "out", "transaction_time": "2026-01-16T11:00:00.000Z", "to_location": { "id": 47041, "name": "Warehouse", "deleted": false }, "count_of_items": 1, "total_quantity": 5 } ] }}{ "id": "ex_8f5c0c8e-0e0a-4a3c-9b3f-4f2c4f6c8d2a", "correlationID": "01J9X8K9XZ4ZWV9T8MQ8B7H7C2", "type": "/errors/tokens/required", "title": "Missing API token. Provide a Bearer token in the Authorization header.", "example": "Bearer wqnot0dlysdg5vymubzi4kiv"}{ "id": "ex_8f5c0c8e-0e0a-4a3c-9b3f-4f2c4f6c8d2a", "correlationID": "01J9X8K9XZ4ZWV9T8MQ8B7H7C2", "type": "/errors/not-found", "title": "No return with the given id was found in this team.", "instance": "/returns/12345"}{ "id": "ex_8f5c0c8e-0e0a-4a3c-9b3f-4f2c4f6c8d2a", "correlationID": "01J9X8K9XZ4ZWV9T8MQ8B7H7C2", "type": "/errors/too-many-requests", "title": "Too many requests.", "instance": "/returns/12345", "retryAfter": 60}