Download OpenAPI specification:Download
The Drop Shipping API enables customers to fulfill orders for available units and lots that are in stock in the Optoro RMS.
Results from the listings endpoint are paginated and the subset of listings that are returned are based on the offset and per_page parameters supplied in the request. The total count of records in the set is returned in the response header record_count. This can be used to calculate the number of pages that need to be retrieved to get all records.
A list of listings of units and lots. The total number of records in the set will be in the response header record_count.
Bad Request
Not Authorized
Not Found
Validation error. Fix request payload and try again.
Internal Server Error
{- "listings": [
- {
- "identifier": "S11727",
- "condition": "N",
- "channel": "rts_drop_ship",
- "quantity": 1,
- "lot": {
- "warehouse_name": "Warehouse A",
- "template_name": "template",
- "photo_urls": [
- "test_image.com",
- "example_image.com"
], - "weight": 1.5,
- "manifest_items": [
- {
- "identifier": "ITEM-PTAA760-1",
- "item_title": "TITLE-PTAA760-1",
- "condition": "new",
- "manufacturer": "Dooley and Sons",
- "upc": "0123456789012",
- "sku": "SKU-PTAA760-1"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "next_page": {
- "offset": "ZW1aSlowb3laazl3V1hSNlJVdGFPRE16U1cxc1JHaHBRVFJOV",
- "path": "/listings?updated_at=2023-08-16T17:27:46&channel=rts_drop_ship&offset=ZW1aSlowb3laazl3V1hSNlJVdGFPRE16U1cxc1JHaHBRVFJOV",
}
}
Returns the listing details for the listing that matches the identifier that is included in the query parameters.
Returns the listing details for the listing that matches the identifier that is included in the query parameters.
Bad Request
Not Authorized
Not Found
Internal Server Error
{- "listing": {
- "identifier": "S11727",
- "condition": "N",
- "channel": "rts_drop_ship",
- "quantity": 1,
- "lot": {
- "warehouse_name": "Warehouse A",
- "template_name": "template",
- "photo_urls": [
- "test_image.com",
- "example_image.com"
], - "weight": 1.5,
- "manifest_items": [
- {
- "identifier": "ITEM-PTAA760-1",
- "item_title": "TITLE-PTAA760-1",
- "condition": "new",
- "manufacturer": "Dooley and Sons",
- "upc": "0123456789012",
- "sku": "SKU-PTAA760-1"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Tell the drop ship service that the client system does not want some amount of this inventory anymore available on this channel.
Returns the listing details for the listing that matches the identifier that is included in the query parameters.
Bad Request
Not Authorized
Not Found
Validation error. Fix request payload and try again.
Internal Server Error
{- "condition": "N",
- "channel": "rts_drop_ship",
- "quantity": 1
}
{- "message": "Listing quantity updated"
}
Results from the orders endpoint are paginated and the subset of orders that are returned are based on the offset and per_page parameters supplied in the request.
A list of orders of units and lots. The total number of records in the set will be in the response header record_count.
Bad Request
Not Authorized
Not Found
Validation error. Fix request payload and try again.
Internal Server Error
{- "orders": [
- {
- "id": 1,
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "billing_address": {
- "id": 1,
- "name": "Lacy Macejkovic",
- "company": "Bayer-Abernathy",
- "telephone_number": "(914) 000-8971",
- "street": "315 5th Ave",
- "street2": "Suite 2112",
- "city": "Scarsdale",
- "state": "NY",
- "zip_code": "10583",
- "country": "US",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}, - "shipping_address": {
- "id": 1,
- "name": "James Carter",
- "company": "Carter Industries",
- "telephone_number": "(206) 555-1208",
- "street": "121 Vine Street",
- "street2": "Suite 1200",
- "city": "Seattle",
- "state": "WA",
- "zip_code": "98121",
- "country": "US",
- "loading_dock": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}, - "brand": "acme",
- "shipping_method": "STANDARD",
- "status": "accepted",
- "price_cents": 10000,
- "processing_fee_cents": 0,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "comments": "Sample order instructions",
- "expected_delivery_date": "2019-08-24",
- "signature_required": true,
- "packing_slip_identifier": "1497064",
- "reject_reason": "",
- "order_items": [
- {
- "id": 1,
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "PTBQ121308",
- "brand": "test_brand",
- "condition": "N",
- "quantity": 1,
- "price_cents": 10000,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "status": "created",
- "comments": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "next_page": {
- "offset": "ZW1aSlowb3laazl3V1hSNlJVdGFPRE16U1cxc1JHaHBRVFJOV",
- "path": "/orders?updated_at=2023-08-16T17:27:46&status=shipped&offset=ZW1aSlowb3laazl3V1hSNlJVdGFPRE16U1cxc1JHaHBRVFJOV",
}
}
Used to notify Optoro of purchases of individual units or lots. Units or lots are assigned as an order item on the order.
Order rejected response
Order accepted response
Bad Request
Not Authorized
Not Found
Request too large
Order not created response
Internal Server Error
{- "order": {
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "channel": "rts_drop_ship",
- "billing_address": {
- "name": "Lacy Macejkovic",
- "company": "Bayer-Abernathy",
- "telephone_number": "252-948-6723 12345",
- "street": "315 5th Ave",
- "street2": "Suite 2112",
- "city": "New York",
- "state": "NY",
- "zip_code": "10016",
- "country": "US"
}, - "shipping_address": {
- "name": "Lacy Macejkovic",
- "company": "Bayer-Abernathy",
- "telephone_number": "252-948-6723 12345",
- "street": "315 5th Ave",
- "street2": "Suite 2112",
- "city": "New York",
- "state": "NY",
- "zip_code": "10016",
- "country": "US",
- "loading_dock": true
}, - "brand": "acme",
- "shipping_method": "STANDARD",
- "price_cents": 10000,
- "processing_fee_cents": 0,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "comments": "Gift wrap required",
- "expected_delivery_date": "2019-08-24",
- "signature_required": true,
- "packing_slip_identifier": "1497064",
- "order_items": [
- {
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "PTBQ121308",
- "brand": "acme",
- "condition": "N",
- "quantity": 1,
- "price_cents": 10000,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "comments": ""
}
]
}
}
{- "message": "rejected",
- "reason": "Insufficient Quantity for: <order item #1 client_identifier> - <order item #1 sku>(condition), <order item #2 client_identifier> - <order item #2 sku> (condition)",
- "order": {
- "client_identifier": "3573390128",
- "order_items": [
- {
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "PTBQ121308",
- "condition": "N",
- "quantity": 3,
- "available_quantity": 1
}
]
}
}
This request creates orders in batches. Batches can contain a maximum of 25 orders per request.
Array of objects (order-2) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Array
|
Batch order creation response
Bad Request
Not Authorized
Not Found
Request too large
Validation error. Fix request payload and try again.
Internal Server Error
{- "orders": [
- {
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "channel": "rts_drop_ship",
- "billing_address": {
- "name": "Lacy Macejkovic",
- "company": "Bayer-Abernathy",
- "telephone_number": "252-948-6723 12345",
- "street": "315 5th Ave",
- "street2": "Suite 2112",
- "city": "New York",
- "state": "NY",
- "zip_code": "10016",
- "country": "US"
}, - "shipping_address": {
- "name": "Lacy Macejkovic",
- "company": "Bayer-Abernathy",
- "telephone_number": "252-948-6723 12345",
- "street": "315 5th Ave",
- "street2": "Suite 2112",
- "city": "New York",
- "state": "NY",
- "zip_code": "10016",
- "country": "US",
- "loading_dock": true
}, - "brand": "acme",
- "shipping_method": "STANDARD",
- "price_cents": 10000,
- "processing_fee_cents": 0,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "comments": "Gift wrap required",
- "expected_delivery_date": "2019-08-24",
- "signature_required": true,
- "packing_slip_identifier": "1497064",
- "order_items": [
- {
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "PTBQ121308",
- "brand": "acme",
- "condition": "N",
- "quantity": 1,
- "price_cents": 10000,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "comments": ""
}
]
}
]
}
[- {
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "status": "created",
- "message": null
}
]
Returns the order details for the order that matches the identifier that is included in the url path.
Success response will return HTTP status code 200
Bad Request
Not Authorized
Not Found
Request too large
Unprocessable Entity
Internal Server Error
{- "order": {
- "id": 1,
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "billing_address": {
- "id": 1,
- "name": "Lacy Macejkovic",
- "company": "Bayer-Abernathy",
- "telephone_number": "(914) 000-8971",
- "street": "315 5th Ave",
- "street2": "Suite 2112",
- "city": "Scarsdale",
- "state": "NY",
- "zip_code": "10583",
- "country": "US",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}, - "shipping_address": {
- "id": 1,
- "name": "James Carter",
- "company": "Carter Industries",
- "telephone_number": "(206) 555-1208",
- "street": "121 Vine Street",
- "street2": "Suite 1200",
- "city": "Seattle",
- "state": "WA",
- "zip_code": "98121",
- "country": "US",
- "loading_dock": true,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}, - "brand": "acme",
- "shipping_method": "STANDARD",
- "status": "accepted",
- "price_cents": 10000,
- "processing_fee_cents": 0,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "comments": "Sample order instructions",
- "expected_delivery_date": "2019-08-24",
- "signature_required": true,
- "packing_slip_identifier": "1497064",
- "reject_reason": "",
- "order_items": [
- {
- "id": 1,
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "PTBQ121308",
- "brand": "test_brand",
- "condition": "N",
- "quantity": 1,
- "price_cents": 10000,
- "tax_cents": 1000,
- "shipping_cost_cents": 500,
- "shipping_tax_cents": 0,
- "status": "created",
- "comments": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Marks the lot order that matches the identifier that is included in the url path as accepted from pending_payment.
Success response will return HTTP status code 204 with no content
Bad Request
Not Authorized
Not Found
Request too large
Validation error. Fix request payload and try again.
Internal Server Error
{- "order": {
- "payment_status": "complete"
}
}
{- "message": "Order cannot be found"
}
Cancels the lot order that matches the identifier that is included in the url path from pending_payment status.
Success response will return HTTP status code 204 with no content
Bad Request
Not Authorized
Not Found
Request too large
Validation error. Fix request payload and try again.
Internal Server Error
{- "message": "Order cannot be found"
}
Results from the shipments endpoint are paginated and the subset of shipments that are returned are based on the offset and per_page parameters supplied in the request. The total count of records in the set is returned in the response header record_count. This can be used to calculate the number of pages that need to be retrieved to get all records.
updated_at required | string <date-time> Last updated time in ISO 8601 format, UTC. Example: updated_at=2022-01-01T17:27:46 |
channel | string Filter shipments by Inventory channel name. Example: channel=rts_drop_ship |
offset | string or null Default: null The offset parameter is an encrypted value determining the starting point for result retrieval. Encrypted cursor for secure pagination, collected from the first API response payload. Specify the encrypted offset to retrieve results from a specific position in the dataset. Example: offset=Asdirnkfidyetrf3V1hSNlJVdGFPRE16U1cxc1JQWEYTRDFGH |
per_page | integer <= 100 Default: 20 This allows control over the amount of results returned per page. Maximum allowed value is 100. |
Returns the list of shipments matching the given conditions.
Bad Request
Not Authorized
Validation error. Fix request payload and try again.
Internal Server Error
{- "shipments": [
- {
- "id": 1,
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "channel": "rts_drop_ship",
- "carrier": "UPS",
- "shipping_method": "UPS 2nd day air",
- "tracking_number": "1Z2E07A20302245707",
- "billed_weight": 10,
- "shipping_cost_cents": 1000,
- "packing_slip_identifier": "1497064",
- "shipment_items": [
- {
- "id": 1,
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "SKU12345",
- "quantity": 1,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "next_page": {
- "offset": "ZW1aSlowb3laazl3V1hSNlJVdGFPRE16U1cxc1JHaHBRVFJOV",
- "path": "/shipments?updated_at=2023-08-16T17:27:46&offset=ZW1aSlowb3laazl3V1hSNlJVdGFPRE16U1cxc1JHaHBRVFJOV",
}
}
Get details of a shipment by tracking number.
Returns the details of a shipment.
Bad Request
Not Authorized
Internal Server Error
{- "shipments": [
- {
- "id": 1,
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "channel": "rts_drop_ship",
- "carrier": "UPS",
- "shipping_method": "UPS 2nd day air",
- "tracking_number": "1Z2E07A20302245707",
- "billed_weight": 10,
- "shipping_cost_cents": 1000,
- "packing_slip_identifier": "1497064",
- "shipment_items": [
- {
- "id": 1,
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "SKU12345",
- "quantity": 1,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}
Get details of a shipments filtered by an order.
Returns the list of shipments for the given order.
Bad Request
Not Authorized
Internal Server Error
{- "shipments": [
- {
- "id": 1,
- "client_identifier": "3fda4c37-6830-469f-b343-9d1a482a97fd",
- "channel": "rts_drop_ship",
- "carrier": "UPS",
- "shipping_method": "UPS 2nd day air",
- "tracking_number": "1Z2E07A20302245707",
- "billed_weight": 10,
- "shipping_cost_cents": 1000,
- "packing_slip_identifier": "1497064",
- "shipment_items": [
- {
- "id": 1,
- "client_identifier": "296f0b98-7bc5-4750-8cb9-2e36db1ff766",
- "sku": "SKU12345",
- "quantity": 1,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
], - "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}