Inbound

Endpoints for managing inbound orders — the items being shipped to your warehouse.


POST/api/v1/inbound

Create an inbound order

Create a new inbound order. Data is sent as multipart/form-data to support file uploads for shipping labels.

You can also bulk-upload orders by setting bulk=true and attaching a CSV file.

Required attributes

  • Name
    date
    Type
    string
    Description

    Order date.

  • Name
    retailer
    Type
    string
    Description

    Where the item was purchased from.

  • Name
    order_number
    Type
    string
    Description

    Your order reference number.

  • Name
    item_name
    Type
    string
    Description

    Name of the item.

  • Name
    color
    Type
    string
    Description

    Item color or variant.

  • Name
    brand_sku
    Type
    string
    Description

    Your internal SKU.

  • Name
    quantity
    Type
    integer
    Description

    Number of units.

  • Name
    asin
    Type
    string
    Description

    Amazon ASIN. Required for FBA and FBM fulfillment types.

  • Name
    unit_cost
    Type
    number
    Description

    Cost per unit.

  • Name
    list_price
    Type
    number
    Description

    Listing price per unit.

  • Name
    fulfillment_type
    Type
    string
    Description

    Fulfillment type: fba, fbm, wfs, two-step, or shopify.

Optional attributes

  • Name
    size
    Type
    string
    Description

    Item size or variant.

  • Name
    amazon_sku
    Type
    string
    Description

    Amazon MSKU.

  • Name
    client_notes
    Type
    string
    Description

    Notes for the warehouse.

  • Name
    tracking_numbers
    Type
    array
    Description

    Tracking numbers for the inbound shipment.

  • Name
    sold_as
    Type
    string
    Description

    How the item is sold: individual or bundle.

  • Name
    units_per_pack
    Type
    string
    Description

    Number of units per pack. Required if sold_as is bundle.

  • Name
    upc
    Type
    string
    Description

    UPC barcode.

  • Name
    bundle_items
    Type
    array
    Description

    Array of bundle items if sold_as is bundle. Each item: { quantity, item_name, color, ... }.

  • Name
    shipping_label_files
    Type
    file(s)
    Description

    Shipping label files. Used for two-step fulfillment.

Request

POST
/api/v1/inbound
curl https://api.example.com/api/v1/inbound \
  -H "Authorization: ApiKey {your-api-key}" \
  -H "X-Warehouse-Id: {warehouse_id}" \
  -F "date=2025-03-25" \
  -F "retailer=Amazon" \
  -F "order_number=ORD-001" \
  -F "item_name=Widget A" \
  -F "color=Blue" \
  -F "brand_sku=WA-BLU-M" \
  -F "quantity=24" \
  -F "asin=B08N5WRWNW" \
  -F "unit_cost=12.50" \
  -F "list_price=24.99" \
  -F "fulfillment_type=fba"

Response

{
  "status": "success",
  "message": "Created order.",
  "data": {
    "order_id": "64c65048-b335-4921-b09d-68d4142d5655"
  }
}

Bulk Upload

POST
/api/v1/inbound
curl https://api.example.com/api/v1/inbound \
  -H "Authorization: ApiKey {your-api-key}" \
  -H "X-Warehouse-Id: {warehouse_id}" \
  -F "bulk=true" \
  -F "file=@orders.csv"

GET/api/v1/inbound

List inbound orders

Retrieve a paginated list of your inbound orders.

Query parameters

  • Name
    offset
    Type
    integer
    Description

    Pagination offset. Defaults to 0.

  • Name
    limit
    Type
    integer
    Description

    Maximum number of records to return. Defaults to 200. Pass -1 for all records.

  • Name
    sort_key
    Type
    string
    Description

    Field to sort by. Defaults to created_at.

  • Name
    sort_order
    Type
    string
    Description

    Sort direction: asc or desc. Defaults to desc.

  • Name
    fulfillment_types
    Type
    array
    Description

    Filter by fulfillment type: fba, fbm, wfs, two-step.

  • Name
    lang
    Type
    string
    Description

    Language for translations. Defaults to en.

Request

GET
/api/v1/inbound
curl -G https://api.example.com/api/v1/inbound \
  -H "Authorization: ApiKey {your-api-key}" \
  -H "X-Warehouse-Id: {warehouse_id}" \
  -d limit=50 \
  -d offset=0 \
  -d sort_key=created_at \
  -d sort_order=desc

Response

{
  "status": "success",
  "message": "Fetched orders.",
  "data": {
    "orders": [
      {
        "order_id": "64c65048-b335-4921-b09d-68d4142d5655",
        "date": "03/25/2025",
        "retailer": "Amazon",
        "order_number": "ORD-001",
        "item_name": "Widget A",
        "color": "Blue",
        "brand_sku": "WA-BLU-M",
        "size": "Medium",
        "quantity": 24,
        "asin": "B08N5WRWNW",
        "amazon_sku": "WA-BLU-M-FBA",
        "unit_cost": 12.50,
        "list_price": 24.99,
        "client_notes": null,
        "fulfillment_type": "fba",
        "sold_as": "individual",
        "units_per_pack": 1,
        "upc": null,
        "tracking_numbers": ["1Z999AA10123456784"],
        "status": "inbound",
        "created_at": "2025-03-25T21:05:40Z"
      }
    ],
    "results": {
      "total": 150,
      "limit": 50,
      "offset": 0
    }
  }
}

PUT/api/v1/inbound/:order_id

Update an inbound order

Update an existing inbound order. Send only the fields you want to change — all fields are optional.

Path parameters

  • Name
    order_id
    Type
    string (uuid)
    Description

    The ID of the inbound order to update.

Request body

  • Name
    date
    Type
    string
    Description

    Order date.

  • Name
    retailer
    Type
    string
    Description

    Retailer name.

  • Name
    orderNumber
    Type
    string
    Description

    Order reference number.

  • Name
    itemName
    Type
    string
    Description

    Item name.

  • Name
    color
    Type
    string
    Description

    Item color or variant.

  • Name
    brandSKU
    Type
    string
    Description

    Internal SKU.

  • Name
    size
    Type
    string
    Description

    Item size.

  • Name
    quantity
    Type
    integer
    Description

    Number of units. Must be divisible by units_per_pack for bundles.

  • Name
    asin
    Type
    string
    Description

    Amazon ASIN.

  • Name
    amazonSKU
    Type
    string
    Description

    Amazon MSKU. Must start with PFL for FBM orders, or leave empty to auto-generate.

  • Name
    cogs
    Type
    number
    Description

    Unit cost.

  • Name
    listPrice
    Type
    number
    Description

    List price per unit. Required and must be non-zero for FBM orders.

  • Name
    notes
    Type
    string
    Description

    Client notes.

  • Name
    fulfilledBy
    Type
    string
    Description

    Fulfillment type: fba, fbm, wfs, two-step, shopify, manual. Cannot be changed once the order has been shipped.

  • Name
    trackingNumbers
    Type
    array
    Description

    Replaces all existing tracking numbers. Carrier is auto-detected.

  • Name
    sold_as
    Type
    string
    Description

    How the item is sold: individual, multi-pack, or bundle.

  • Name
    units_per_pack
    Type
    integer
    Description

    Units per pack. Required if sold_as is not individual.

Validation rules

  • Cannot change fulfilledBy when order status is outbound (already shipped)
  • FBM orders: amazonSKU must start with PFL (or be empty for auto-generation); listPrice must be non-zero; Seller Central must be linked
  • If sold_as is not individual: units_per_pack must be a positive integer and quantity must be divisible by it
  • Bundle orders: changing quantity syncs all child bundle item quantities

Request

PUT
/api/v1/inbound/:order_id
curl -X PUT https://api.example.com/api/v1/inbound/64c65048-b335-4921-b09d-68d4142d5655 \
  -H "Authorization: ApiKey {your-api-key}" \
  -H "X-Warehouse-Id: {warehouse_id}" \
  -H "Content-Type: application/json" \
  -d '{"quantity": 30, "notes": "Updated quantity"}'

Response

{
  "status": "success",
  "message": "Updated inbound order.",
  "data": null
}

Error (400)

{
  "status": "failed",
  "message": "An error occurred while processing your request.",
  "errors": [
    "Your amazon SKU must start with PFL for FBM orders or leave empty to auto generate it.",
    "List price must be filled out for FBM orders.",
    "Units per pack must be divisible by the total quantity ordered.",
    "Cannot change fulfilled by when order has been shipped out."
  ]
}

Was this page helpful?