Skip to main content
POST
cURL
Both FBO accounts must belong to this organization. Every item must be in_vault on the source account. Create checks every item before it writes the transfer. One failed item rejects the request. The items never leave the vault. Save the returned id. Omit approve and the transfer starts at pending_approval. The items stay in_vault.

Authorizations

string
required
Send Bearer <token> in this header. The key needs transfer_batches:create.

Body

string
required
string
required
Must differ from fromFboAccountId.
string
boolean
Omit the field, or set false, to start at pending_approval. Confirm that transfer later with Confirm Transfer. The response includes items.
array
required
The inventory items to transfer — at least one. Each entry contains:
  • inventoryItemId (string, required) — ID of the inventory item to transfer.
  • reason (string, required) — One of request, trade, or rebalance. Use trade for a sale or swap, rebalance when reallocating holdings, and request when the destination account asked for the item. It does not collect payment.
inventoryItemId values must be unique within the request.
This endpoint supports the Idempotency-Key header.
cURL

Errors

A schema failure is 400 BAD_REQUEST. The message is body/<field> <reason>. These checks are 422 VALIDATION_ERROR. Branch on message. {label} is the item serial number, or the item id when it has no serial. An item that does not exist and one that belongs to another organization both return Inventory item not found. {status} is the item’s current status with spaces instead of underscores.