> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.rushorder.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.rushorder.com/_mcp/server.

# List inbound POs

GET https://dream.rushorder.com/api/inbound

Returns every active inbound PO that matches all of the filters supplied. Results are not paged. Cancelled POs are not included.

Reference: https://docs.rushorder.com/api-reference/inbound/list

## Authentication

- `Authorization` header (basic auth, required) — Basic authentication of the form `Basic <base64(username:password)>`.

## Request

### Query parameters

- `PoRef` (string, optional) — Returns POs whose reference contains this text.
- `Bol` (string, optional) — Returns POs whose bill of lading contains this text.
- `Location` (string, optional) — The receiving warehouse, by location code or warehouse code.
- `Statuses` (list of enum, optional) — Returns POs in any of these statuses. Repeat the parameter for more than one. Case-insensitive.
  - Allowed values: `Announced`, `Accepted`, `Processing`, `Completed`
- `ExpectedDeliveryDateStart` (datetime, optional) — Earliest expected delivery date.
- `ExpectedDeliveryDateEnd` (datetime, optional) — Latest expected delivery date.

### Headers

- `RushOrderMomCode` (string, required) — All requests require the header to contain RushOrderMomCode, a 3 character string that represents the client internally in Rush Order. This should be given to you by Rush Order.

## Response

### 200

Success

- `list of InboundPoDetail`

## Types

### InboundPoDetail

- `Id` (integer, optional) — Rush Order's ID for the inbound PO. Use it with `GET /inbound/id/{poId}`.
- `CreatedDate` (datetime, optional)
- `ExpectedDeliveryDate` (datetime, optional)
- `AppointmentDate` (datetime, optional, nullable)
- `AppointmentTimeSlot` (integer, optional, nullable) — `0` is 8–10 AM, `1` is 10 AM–12 PM, `2` is 12–2 PM, and `3` is 2–4 PM.
- `ReceivedDate` (datetime, optional, nullable)
- `POReferenceNumber` (string, optional)
- `BillOfLading` (string, optional) — An empty string when the PO has none.
- `Status` (enum, optional) — `Announced`: no delivery appointment yet. `Accepted`: an appointment is booked or the delivery arrived, but receiving has not started. `Processing`: receiving is under way. `Completed`: every receiver is finished.
  - Allowed values: `Announced`, `Accepted`, `Processing`, `Completed`
- `ContainerLoad` (string, optional)
- `HazardType` (string, optional)
- `Location` (string, optional) — The receiving warehouse code.
- `LocationDisplay` (string, optional) — The receiving warehouse's display name.
- `ProjectTypeId` (integer, optional, nullable)
- `Project` (string, optional, nullable)
- `Email` (string, optional)
- `Notes` (string, optional)
- `Items` (list of InboundPoDetailItemsItems, optional)

### InboundPoDetailItemsItems

- `Sku` (string, optional)
- `Upc` (string, optional, nullable)
- `Description` (string, optional)
- `QtyExpected` (integer, optional)
- `LineId` (string, optional)
- `AltUpcs` (list of string, optional)

## Examples

**Response**

```json
[
  {
    "Id": 4821,
    "CreatedDate": "2024-01-15T09:30:00Z",
    "ExpectedDeliveryDate": "2024-01-15T09:30:00Z",
    "AppointmentDate": "2024-01-15T09:30:00Z",
    "AppointmentTimeSlot": 1,
    "ReceivedDate": "2024-01-15T09:30:00Z",
    "POReferenceNumber": "MYPO7656",
    "BillOfLading": "string",
    "Status": "Announced",
    "ContainerLoad": "palletized",
    "HazardType": "N/A",
    "Location": "string",
    "LocationDisplay": "string",
    "ProjectTypeId": 1,
    "Project": "string",
    "Email": "string",
    "Notes": "string",
    "Items": [
      {
        "Sku": "1023A0CF",
        "Upc": "string",
        "Description": "Model Airplane Kit (Green)",
        "QtyExpected": 120,
        "LineId": "string",
        "AltUpcs": [
          "string"
        ]
      }
    ]
  }
]
```

**SDK Code**

```python
import requests

url = "https://dream.rushorder.com/api/inbound"

querystring = {"PoRef":"MYPO"}

headers = {
    "RushOrderMomCode": "ABC"
}

response = requests.get(url, headers=headers, params=querystring, auth=("<username>", "<password>"))

print(response.json())
```

```javascript
const url = 'https://dream.rushorder.com/api/inbound?PoRef=MYPO';
const credentials = btoa("<username>:<password>");

const options = {
  method: 'GET',
  headers: {RushOrderMomCode: 'ABC', Authorization: `Basic ${credentials}`}
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://dream.rushorder.com/api/inbound?PoRef=MYPO"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("RushOrderMomCode", "ABC")
	req.SetBasicAuth("<username>", "<password>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://dream.rushorder.com/api/inbound?PoRef=MYPO")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["RushOrderMomCode"] = 'ABC'
request.basic_auth("<username>", "<password>")

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://dream.rushorder.com/api/inbound?PoRef=MYPO")
  .header("RushOrderMomCode", "ABC")
  .basicAuth("<username>", "<password>")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://dream.rushorder.com/api/inbound?PoRef=MYPO', [
  'headers' => [
    'RushOrderMomCode' => 'ABC',
  ],
    'auth' => ['<username>', '<password>'],
]);

echo $response->getBody();
```

```csharp
using RestSharp;
using RestSharp.Authenticators;

var client = new RestClient("https://dream.rushorder.com/api/inbound?PoRef=MYPO");
client.Authenticator = new HttpBasicAuthenticator("<username>", "<password>");
var request = new RestRequest(Method.GET);
request.AddHeader("RushOrderMomCode", "ABC");

IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let credentials = Data("<username>:<password>".utf8).base64EncodedString()

let headers = [
  "RushOrderMomCode": "ABC",
  "Authorization": "Basic \(credentials)"
]

let request = NSMutableURLRequest(url: NSURL(string: "https://dream.rushorder.com/api/inbound?PoRef=MYPO")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

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()
```