# Create Warehouse Receiving Order POST https://api.shipbob.com/2026-01/receiving Content-Type: application/json Creates a new warehouse receiving order with specified fulfillment center, boxes, and inventory items. Reference: https://developer.shipbob.com/api/receiving/create-warehouse-receiving-order ## OpenAPI Specification ```yaml openapi: 3.1.1 info: title: | Create Warehouse Receiving Order version: endpoint_receiving.createWarehouseReceivingOrder paths: /2026-01/receiving: post: operationId: create-warehouse-receiving-order summary: | Create Warehouse Receiving Order description: > Creates a new warehouse receiving order with specified fulfillment center, boxes, and inventory items. tags: - - subpackage_receiving parameters: - name: Authorization in: header description: Authentication using Personal Access Token (PAT) token or OAuth2 required: true schema: type: string responses: '201': description: Success content: application/json: schema: $ref: >- #/components/schemas/Receiving.V2.WarehouseReceivingOrderViewModel '400': description: Bad Request content: {} '401': description: Authorization missing or invalid content: {} '403': description: The provided credentials are not authorized to access this resource content: {} '404': description: Not Found content: {} requestBody: description: The receiving order to create content: application/json: schema: $ref: '#/components/schemas/Receiving.CreateReceivingOrderModel' components: schemas: Receiving.PackingType: type: string enum: - value: EverythingInOneBox - value: OneSkuPerBox - value: MultipleSkuPerBox Receiving.AddBoxItemToBoxModel: type: object properties: inventory_id: type: integer description: Unique inventory id of the items in the box lot_date: type: - string - 'null' format: date-time description: Lot expiration date for the items in the box lot_number: type: - string - 'null' description: Lot number of the items in the box quantity: type: integer description: Quantity of the items in the box required: - inventory_id - quantity Receiving.AddBoxToOrderModel: type: object properties: box_items: type: - array - 'null' items: $ref: '#/components/schemas/Receiving.AddBoxItemToBoxModel' description: Items contained in this box tracking_number: type: - string - 'null' description: Tracking number for the box shipment required: - box_items - tracking_number Receiving.AssignOrderToFulfillmentCenterModel: type: object properties: id: type: integer description: ID of the fulfillment center to assign this receiving order to required: - id Receiving.PackageType: type: string enum: - value: Package - value: Pallet - value: FloorLoadedContainer Receiving.CreateReceivingOrderModel: type: object properties: box_packaging_type: $ref: '#/components/schemas/Receiving.PackingType' boxes: type: - array - 'null' items: $ref: '#/components/schemas/Receiving.AddBoxToOrderModel' description: Box shipments to be added to this receiving order expected_arrival_date: type: string format: date-time description: >- Expected arrival date of all the box shipments in this receiving order fulfillment_center: $ref: '#/components/schemas/Receiving.AssignOrderToFulfillmentCenterModel' package_type: $ref: '#/components/schemas/Receiving.PackageType' purchase_order_number: type: - string - 'null' description: Purchase order number for this receiving order required: - box_packaging_type - boxes - expected_arrival_date - fulfillment_center - package_type Receiving.FulfillmentCenterViewModel: type: object properties: address1: type: - string - 'null' description: Address line one of the fulfillment center address2: type: - string - 'null' description: Address line two of the fulfillment center city: type: - string - 'null' description: City the fulfillment center is located in country: type: - string - 'null' description: Country the fulfillment center is located in email: type: - string - 'null' description: Email contact for the fulfillment center id: type: integer description: Unique identifier of the fulfillment center name: type: - string - 'null' description: Name of the fulfillment center phone_number: type: - string - 'null' description: Phone number contact for the fulfillment center state: type: - string - 'null' description: State the fulfillment center is located in timezone: type: - string - 'null' description: Timezone the fulfillment center is located in zip_code: type: - string - 'null' description: Postal code of the fulfillment center Receiving.V2.InventoryQuantityViewModel: type: object properties: expected_quantity: type: integer description: Quantity of the inventory item submitted in the WRO inventory_id: type: integer description: ID of the inventory item received_quantity: type: integer description: Quantity of the inventory item received by the warehouse sku: type: - string - 'null' description: Sku of the inventory item stowed_quantity: type: integer description: Quantity of the inventory item stowed by the warehouse Receiving.ReceivingStatus: type: string enum: - value: Awaiting - value: Processing - value: Completed - value: Cancelled - value: Incomplete - value: Arrived - value: PartiallyArrived - value: PartiallyArrivedAtHub - value: ArrivedAtHub - value: ProcessingAtHub - value: InternalTransfer Receiving.V2.ReceivingOrderStatusHistoryViewModel: type: object properties: id: type: integer description: Unique id of the status status: type: - string - 'null' description: Name of the status timestamp: type: string format: date-time description: Timestamp when the status was recorded Receiving.V2.WarehouseReceivingOrderViewModel: type: object properties: box_labels_uri: type: - string - 'null' description: >- URL to the packing slip to be included in each box shipment for this receiving order box_packaging_type: $ref: '#/components/schemas/Receiving.PackingType' expected_arrival_date: type: string format: date-time description: Expected date that all packages will have arrived external_sync_timestamp: type: - string - 'null' format: date-time description: >- The timestamp in UTC when a 3rd party integrator has set in our system fulfillment_center: $ref: '#/components/schemas/Receiving.FulfillmentCenterViewModel' id: type: integer description: Unique id of the warehouse receiving order insert_date: type: string format: date-time description: Insert date of the receiving order inventory_quantities: type: - array - 'null' items: $ref: '#/components/schemas/Receiving.V2.InventoryQuantityViewModel' description: Inventory items and quantities within the WRO last_updated_date: type: string format: date-time description: Last date the receiving order was updated package_type: $ref: '#/components/schemas/Receiving.PackageType' purchase_order_number: type: - string - 'null' description: Purchase order number for a receiving order status: $ref: '#/components/schemas/Receiving.ReceivingStatus' status_history: type: - array - 'null' items: $ref: >- #/components/schemas/Receiving.V2.ReceivingOrderStatusHistoryViewModel description: The history of status changes for this receiving order ``` ## SDK Code Examples ```python Receiving_createWarehouseReceivingOrder_example import requests url = "https://api.shipbob.com/2026-01/receiving" payload = { "box_packaging_type": "EverythingInOneBox", "boxes": [ { "box_items": [ { "inventory_id": 0, "quantity": 1, "lot_date": "2019-08-24T14:15:22Z", "lot_number": "2222" } ], "tracking_number": "860C8CDC8F0B4FC7AB69AC86C20539EC" } ], "expected_arrival_date": "2019-08-24T14:15:22Z", "fulfillment_center": { "id": 0 }, "package_type": "Package", "purchase_order_number": "string" } headers = { "Authorization": "Bearer ", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.json()) ``` ```javascript Receiving_createWarehouseReceivingOrder_example const url = 'https://api.shipbob.com/2026-01/receiving'; const options = { method: 'POST', headers: {Authorization: 'Bearer ', 'Content-Type': 'application/json'}, body: '{"box_packaging_type":"EverythingInOneBox","boxes":[{"box_items":[{"inventory_id":0,"quantity":1,"lot_date":"2019-08-24T14:15:22Z","lot_number":"2222"}],"tracking_number":"860C8CDC8F0B4FC7AB69AC86C20539EC"}],"expected_arrival_date":"2019-08-24T14:15:22Z","fulfillment_center":{"id":0},"package_type":"Package","purchase_order_number":"string"}' }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go Receiving_createWarehouseReceivingOrder_example package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.shipbob.com/2026-01/receiving" payload := strings.NewReader("{\n \"box_packaging_type\": \"EverythingInOneBox\",\n \"boxes\": [\n {\n \"box_items\": [\n {\n \"inventory_id\": 0,\n \"quantity\": 1,\n \"lot_date\": \"2019-08-24T14:15:22Z\",\n \"lot_number\": \"2222\"\n }\n ],\n \"tracking_number\": \"860C8CDC8F0B4FC7AB69AC86C20539EC\"\n }\n ],\n \"expected_arrival_date\": \"2019-08-24T14:15:22Z\",\n \"fulfillment_center\": {\n \"id\": 0\n },\n \"package_type\": \"Package\",\n \"purchase_order_number\": \"string\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("Authorization", "Bearer ") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Receiving_createWarehouseReceivingOrder_example require 'uri' require 'net/http' url = URI("https://api.shipbob.com/2026-01/receiving") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer ' request["Content-Type"] = 'application/json' request.body = "{\n \"box_packaging_type\": \"EverythingInOneBox\",\n \"boxes\": [\n {\n \"box_items\": [\n {\n \"inventory_id\": 0,\n \"quantity\": 1,\n \"lot_date\": \"2019-08-24T14:15:22Z\",\n \"lot_number\": \"2222\"\n }\n ],\n \"tracking_number\": \"860C8CDC8F0B4FC7AB69AC86C20539EC\"\n }\n ],\n \"expected_arrival_date\": \"2019-08-24T14:15:22Z\",\n \"fulfillment_center\": {\n \"id\": 0\n },\n \"package_type\": \"Package\",\n \"purchase_order_number\": \"string\"\n}" response = http.request(request) puts response.read_body ``` ```java Receiving_createWarehouseReceivingOrder_example import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.post("https://api.shipbob.com/2026-01/receiving") .header("Authorization", "Bearer ") .header("Content-Type", "application/json") .body("{\n \"box_packaging_type\": \"EverythingInOneBox\",\n \"boxes\": [\n {\n \"box_items\": [\n {\n \"inventory_id\": 0,\n \"quantity\": 1,\n \"lot_date\": \"2019-08-24T14:15:22Z\",\n \"lot_number\": \"2222\"\n }\n ],\n \"tracking_number\": \"860C8CDC8F0B4FC7AB69AC86C20539EC\"\n }\n ],\n \"expected_arrival_date\": \"2019-08-24T14:15:22Z\",\n \"fulfillment_center\": {\n \"id\": 0\n },\n \"package_type\": \"Package\",\n \"purchase_order_number\": \"string\"\n}") .asString(); ``` ```php Receiving_createWarehouseReceivingOrder_example request('POST', 'https://api.shipbob.com/2026-01/receiving', [ 'body' => '{ "box_packaging_type": "EverythingInOneBox", "boxes": [ { "box_items": [ { "inventory_id": 0, "quantity": 1, "lot_date": "2019-08-24T14:15:22Z", "lot_number": "2222" } ], "tracking_number": "860C8CDC8F0B4FC7AB69AC86C20539EC" } ], "expected_arrival_date": "2019-08-24T14:15:22Z", "fulfillment_center": { "id": 0 }, "package_type": "Package", "purchase_order_number": "string" }', 'headers' => [ 'Authorization' => 'Bearer ', 'Content-Type' => 'application/json', ], ]); echo $response->getBody(); ``` ```csharp Receiving_createWarehouseReceivingOrder_example using RestSharp; var client = new RestClient("https://api.shipbob.com/2026-01/receiving"); var request = new RestRequest(Method.POST); request.AddHeader("Authorization", "Bearer "); request.AddHeader("Content-Type", "application/json"); request.AddParameter("application/json", "{\n \"box_packaging_type\": \"EverythingInOneBox\",\n \"boxes\": [\n {\n \"box_items\": [\n {\n \"inventory_id\": 0,\n \"quantity\": 1,\n \"lot_date\": \"2019-08-24T14:15:22Z\",\n \"lot_number\": \"2222\"\n }\n ],\n \"tracking_number\": \"860C8CDC8F0B4FC7AB69AC86C20539EC\"\n }\n ],\n \"expected_arrival_date\": \"2019-08-24T14:15:22Z\",\n \"fulfillment_center\": {\n \"id\": 0\n },\n \"package_type\": \"Package\",\n \"purchase_order_number\": \"string\"\n}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` ```swift Receiving_createWarehouseReceivingOrder_example import Foundation let headers = [ "Authorization": "Bearer ", "Content-Type": "application/json" ] let parameters = [ "box_packaging_type": "EverythingInOneBox", "boxes": [ [ "box_items": [ [ "inventory_id": 0, "quantity": 1, "lot_date": "2019-08-24T14:15:22Z", "lot_number": "2222" ] ], "tracking_number": "860C8CDC8F0B4FC7AB69AC86C20539EC" ] ], "expected_arrival_date": "2019-08-24T14:15:22Z", "fulfillment_center": ["id": 0], "package_type": "Package", "purchase_order_number": "string" ] as [String : Any] let postData = JSONSerialization.data(withJSONObject: parameters, options: []) let request = NSMutableURLRequest(url: NSURL(string: "https://api.shipbob.com/2026-01/receiving")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "POST" request.allHTTPHeaderFields = headers request.httpBody = postData as Data let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```