Place Order
Submit an order to get value from your old IT assets
POST
/api/v1/itad/place-orderDescription
List the devices and the address where they are located. Include all required shipping fields in your request.
Optionally set recovery_option to choose how devices are recovered. When omitted or invalid, send_me_a_box is used.
The order is always created when core fields are valid. Recovery is attempted immediately after placement and depends on your region and service provider configuration.
Request
Headers
| Header | Value | Required |
|---|---|---|
| Authorization | Bearer <access_token> | Yes |
| Content-Type | application/json | Yes |
Body Parameters
| Parameter | Type | Required | Example | Description |
|---|---|---|---|---|
| items | array | Yes | — | Non-empty array of devices to dispose. |
| shipping_name | string | Yes | — | Ship-from contact or company name (where devices are located). |
| shipping_address_1 | string | Yes | — | Ship-from street address line 1. |
| shipping_address_2 | string | No | — | Ship-from street address line 2. |
| shipping_city | string | Yes | — | Ship-from city. |
| shipping_state | string | Yes | — | Ship-from state or province. |
| shipping_country | string | Yes | — | Ship-from country code (e.g. US). |
| shipping_zip | string | Yes | — | Ship-from postal code. |
| shipping_phone | string | Yes | — | Ship-from phone (10–15 digits). |
| shipping_email | string | No | — | Shipping contact email. |
| recovery_option | string | No | send_me_a_box | How devices should be recovered after the order is placed: send_me_a_box, print_a_label, or request_pickup. Omitted or invalid values default to send_me_a_box. |
Each object in items[]
Fields
| Parameter | Type | Required | Description |
|---|---|---|---|
| device_category | string | number | Yes | 1=Mobile, 2=Tablet, 3=iPod, 4=Laptop, 5=Server, 6=Printer, 7=Desktop, 8=Network, 9=Other (or name). |
| qty | number | Yes | Quantity (must be ≥ 1). |
| brand | string | Yes | Device brand (e.g. Apple, Dell). |
| model | string | Yes | Device model (e.g. MacBook Pro 14, Latitude 5520). |
When recovery_option is print_a_label
Fields
| Parameter | Type | Required | Example | Description |
|---|---|---|---|---|
| number_of_labels | number | Yes | 1 | Number of shipping labels to generate (1–10). |
| weight_lbs | number | Yes | 5 | Package weight in pounds. Alias: w_pound. |
| weight_oz | number | Yes | 0 | Additional package weight in ounces. Alias: w_ounce. Combined weight must be greater than 0 and not exceed 150 lbs. |
| length_in | number | Yes | 12 | Package length in inches. Alias: d_length. |
| width_in | number | Yes | 10 | Package width in inches. Alias: d_width. |
| height_in | number | Yes | 8 | Package height in inches. Alias: d_height. |
When recovery_option is request_pickup
Fields
| Parameter | Type | Required | Example | Description |
|---|---|---|---|---|
| pickup_firstname | string | Yes | — | Pickup contact first name. Alias: firstname. |
| pickup_lastname | string | Yes | — | Pickup contact last name. Alias: lastname. |
| pickup_email | string | Yes | — | Pickup contact email. Alias: email. |
| pickup_phone | string | Yes | — | Pickup contact phone (at least 10 digits). Alias: phone. |
| pickup_phone_country | string | Yes | US | Pickup phone country (ISO alpha-2). Alias: phone_country. |
| pickup_address_1 | string | Yes | — | Pickup street address line 1. Alias: address_1. |
| pickup_address_2 | string | No | — | Pickup street address line 2. Alias: address_2. |
| pickup_city | string | Yes | — | Pickup city. Alias: city. |
| pickup_state | string | Yes | — | Pickup state or province. Alias: state. |
| pickup_country | string | Yes | — | Pickup country. Alias: country. |
| pickup_zip | string | Yes | — | Pickup postal code (5–10 characters). Alias: zip. |
| pickup_date | string | Yes | 06/15/2026 | Requested pickup date (MM/DD/YYYY or YYYY-MM-DD). |
| pickup_time | string | Yes | 10:00:00 | Preferred pickup time (HH:MM:SS, e.g. 10:00:00). |
| pickup_service | string | Yes | inside_pickup | Pickup service type. Must be inside_pickup (inside pickup) or liftgate_service_pickup (liftgate services at pickup). |
| pickup_description | string | Yes | — | Packaging details: pallets, gaylords, box counts, etc. Alias: description. |
| is_freight_elevator | boolean | No | false | Freight elevator available at pickup. Default false. |
| forklift_available | boolean | No | false | Forklift available at pickup. Default false. |
| liftgate_required | boolean | No | false | Liftgate service required for this pickup. Default false. |
| pickup_weight | string | No | — | Total shipment weight in lbs. Alias: weight. |
Example Request Body
{
"items": [
{
"device_category": 4,
"qty": 2,
"brand": "Apple",
"model": "MacBook Pro 14"
},
{
"device_category": "phone",
"qty": 5,
"brand": "Samsung",
"model": "Galaxy S23"
}
],
"shipping_name": "Acme Corp IT",
"shipping_address_1": "500 Logistics Way",
"shipping_address_2": "Suite 200",
"shipping_city": "San Jose",
"shipping_state": "CA",
"shipping_country": "US",
"shipping_zip": "95110",
"shipping_phone": "4085551234",
"shipping_email": "it@acme.com",
"recovery_option": "send_me_a_box"
}Response
| Field | Type | Description |
|---|---|---|
| message | string | Order placement result message. |
| order_number | string | Numeric order number for tracking and cancellation. |
Notes
- shipping_name, shipping_address_1, shipping_city, shipping_state, shipping_country, shipping_zip, and shipping_phone are required.
- Each item must include device_category, qty, brand, and model.
- recovery_option: send_me_a_box (default), print_a_label, or request_pickup. Omitted or invalid values default to send_me_a_box.
- send_me_a_box uses the shipping address on the order — no extra fields.
- print_a_label requires number_of_labels, weight_lbs, weight_oz, length_in, width_in, and height_in.
- request_pickup requires contact, pickup location, pickup_date, pickup_time, pickup_service (inside_pickup or liftgate_service_pickup), and pickup_description.
- If recovery cannot be completed for the region, the order is still created and order_number is returned. Message: "Order placed successfully. But the recovery option is not available for this region."
- Mexico (MX) only supports request_pickup for recovery. print_a_label requires UPS logistics in the ship-from country.
Related Endpoints
Did this page help you?
Request
curl -X POST https://uat.unduit.com/api-exposed/api/v1/itad/place-order \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"items": [
{
"device_category": 4,
"qty": 2,
"brand": "Apple",
"model": "MacBook Pro 14"
},
{
"device_category": "phone",
"qty": 5,
"brand": "Samsung",
"model": "Galaxy S23"
}
],
"shipping_name": "Acme Corp IT",
"shipping_address_1": "500 Logistics Way",
"shipping_address_2": "Suite 200",
"shipping_city": "San Jose",
"shipping_state": "CA",
"shipping_country": "US",
"shipping_zip": "95110",
"shipping_phone": "4085551234",
"shipping_email": "it@acme.com",
"recovery_option": "send_me_a_box"
}'Success Response
{
"message": "Order placed successfully",
"order_number": "174894512345"
}