Ordoro Label API
Labels can be retrieved in a raw image format using the Label endpoints. For order specific labels refer to the Orders section.
Labels can be retrieved in a raw image format using the Label endpoints. For order specific labels refer to the Orders section.
openapi: 3.0.0
info:
title: Ordoro API Documentation Address Label API
description: "# Introduction\n\nThe Ordoro API can be used to access data or integrate to add functionality to Ordoro. The Ordoro API uses the application/json Content-Type. The Ordoro API documentation is in beta. [See our forum](https://forums.ordoro.com) for questions or comments to help us improve the docs or request features.\n#### Note: Any routes with a /v3 designation will not allow for trailing slashes while all other routes and endpoints will require a trailing slash.\n\n# Authentication\n\nThe Ordoro API uses [Basic HTTP Authentication](http://en.wikipedia.org/wiki/Basic_access_authentication). Please create API keys via Settings->Account Settings->API Keys in app and use those for basic auth in your API requests.\n\n# Additional Resources\n\nFor a look at some code examples on how to use the API check out our github repo https://github.com/ordoro/api-examples.\n\n# API Responses\n\nMost of our endpoints return either a list of objects or a single object instance. They share similar response shapes.\n\n## List endpoints\n\nList endpoints respond with the following parameters:\n\n| Name | Type | Description |\n|----------------|--------------------------|-------------|\n| `count` | int | The total number of objects returned by a query ( **not** necessarily the number of objects included in a response). |\n| `limit` | int | The maximum number of objects returned per request. Defaults to 10. Maximum is 100. You can set this as a URL parameter. |\n| `offset` | int | The number of objects being offset in the response. May be altered as a URL Parameter. |\n| `<model name>` | array | An array of objects. The name of the model should be singular. For example, the /v3/order endpoint will have an `order` parameter, as opposed to `orders`.|\n\nHere is an example response for the `/v3/order` list endpoint.\n\n```\n{\n \"count\": 2,\n \"limit\": 10,\n \"offset\" 0,\n \"order\": [\n {\n // an order object\n },\n {\n // another order object\n }\n ]\n}\n```\n\n## Instance endpoints\n\nInstance endpoints return a single instance of a serialized model. `/v3/order/{order_number}` is an example of an instance endpoint.\n\n# Error Handling\n\nError responses contain the following parameters:\n\n| Name | Type | Description |\n|-----------------|------------------|----------------------------------------------------------------------|\n| `error_message` | string | Some human-readable error message. |\n| `param` | string or `null` | The name of the corresponding parameter, or null for general errors. |\n\n# Rate Limiting\n\nAPI requests will be limited to 500 requests per minute. Any requests over this threshold will respond with a 429 status code."
contact: {}
version: '1.0'
servers:
- url: https://api.ordoro.com/
variables: {}
tags:
- name: Label
description: Labels can be retrieved in a raw image format using the Label endpoints. For order specific labels refer to the Orders section.
paths:
/label/{label_id}/raw/:
get:
tags:
- Label
summary: Get raw label data by ID
description: Get label data as stored from the carrier in its direct raw image form or converted from PDF
operationId: LabelRawByLabelId_GET
parameters:
- name: label_id
in: path
description: ''
required: true
style: simple
schema:
type: string
responses:
'200':
description: ''
headers:
cache-control: private
pragma: public
deprecated: false
/v3/order/{order_number}/label:
delete:
description: Delete label for an order
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/delete_label'
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'200':
description: Label successfully deleted
content:
application/json:
schema:
$ref: '#/components/schemas/order'
/v3/order/{order_number}/label/endicia:
post:
summary: Create an Endicia USPS label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelEndicia_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_endicia_label'
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
example:
cost: 7.2
ship_date: '2016-02-17T06:06:06.123456-06:00'
shipping_method: GROUND
tracking_number: '782401895410'
tracking_url: http://usps/tracking-number/34349384
schema:
$ref: '#/components/schemas/shipping_info'
/v3/order/{order_number}/label/fedex:
post:
summary: Create a FedEx label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelFedEx_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_fedex_label'
examples:
example:
value:
shipper_id: 12345
packages:
- box_shape: YOUR_PACKAGING
length: 4
height: 2
width: 4
declared_value: 0
dry_ice_weight: 0
weight: 22
recipient_address_is_residential: false
delivery_confirmation: NO_SIGNATURE_REQUIRED
shipping_method: FEDEX_GROUND
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
example:
shipping_method: FEDEX_GROUND
ship_date: '2016-03-02T06:06:06.123456-06:00'
tracking_number: '782505088888'
cost: 7.95
tracking_url: http://www.fedex.com/Tracking?action=track&language=english&last_action=alttrack&ascend_header=1&cntry_code=us&initial=x&mps=y&tracknumbers=938475
schema:
$ref: '#/components/schemas/shipping_info'
/v3/order/{order_number}/label/pitney:
post:
summary: Create a Pitney USPS label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelPitney_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_pitney_label'
examples:
example:
value:
shipper_id: 99999
shipping_method: PM
packages:
- height: 7
length: 8
width: 3
weight: 14
box_shape: PKG
delivery_confirmation: DelCon
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
example:
shipping_method: PM
ship_date: '2016-03-02T06:06:06.123456-06:00'
tracking_number: '782505088888'
cost: 7.95
tracking_url: http://www.pitney.com/track_it=782505088888
schema:
$ref: '#/components/schemas/shipping_info'
/v3/order/{order_number}/label/ups:
post:
summary: Create a UPS label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelUPS_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_ups_label'
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
example:
cost: 7.2
ship_date: '2016-02-17T06:06:06.123456-06:00'
shipping_method: UPS_AIR
tracking_number: '782401895410'
tracking_url: http://www.ups.com/tracking-number?0987
schema:
$ref: '#/components/schemas/shipping_info'
/v3/order/{order_number}/label/australia_post:
post:
summary: Create an Australia Post label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelAustraliaPost_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_easypost_label'
examples:
example:
value:
shipment_id: ship_1234
service_token: service_1234
packages:
- weight: 5
length: 9
width: 5
height: 6
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
example:
cost: 13.23
ship_date: '2019-06-27T06:06:06.123456-06:00'
shipping_method: TBD
tracking_number: '555555555'
tracking_url: http://www.auspost.com/Tracking?555555555
schema:
$ref: '#/components/schemas/shipping_info'
/v3/order/{order_number}/label/canada_post:
post:
summary: Create a Canada Post label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelCanadaPost_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_canada_post_label'
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
example:
cost: 7.2
ship_date: '2016-02-17T06:06:06.123456-06:00'
shipping_method: CANADA_AIR
tracking_number: '782401895410'
tracking_url: http://www.canada.com/Tracking?9873984
schema:
$ref: '#/components/schemas/shipping_info'
/v3/order/{order_number}/label/dhl:
post:
summary: Create a DHL Express label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelDHL_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_dhl_label'
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
example:
cost: 13.23
ship_date: '2016-06-27T06:06:06.123456-06:00'
shipping_method: P
tracking_number: '555555555'
tracking_url: http://www.dhl.com/Tracking?555555555
schema:
$ref: '#/components/schemas/shipping_info'
/v3/order/{order_number}/label/dhl_ecommerce:
post:
summary: Create a DHL ecommerce label for an order
description: The `order_number` parameter is the identifier of the order
operationId: OrderByOrderNumberLabelDHL_Ecommerce_POST
tags:
- Label
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/post_dhl_ecommerce_label'
parameters:
- $ref: '#/components/parameters/orderNumberPath'
responses:
'201':
description: Label successfully created
content:
application/json:
schema:
$ref: '#/components/schemas/shipping_info'
/v3/label:
get:
summary: Get labels
description: Get labels for each order number passed in to the `o` parameter
operationId: V3Label_GET
tags:
- Label
parameters:
- description: The Order number. To retrieve multiple labels, pass in multiple "o" params
name: o
type: string
in: query
required: true
- description: Specify the type of PDF label. Can be one of [additional_docs, canada_pdf, multi_page, single_page]
name: pdf_type
type: string
in: query
required: true
enum:
- additional_docs
- canada_pdf
- multi_page
- single_page
- description: Set predefined or custom sizes. Can be one of [desktop, thermal, custom]
name: size
type: string
in: query
required: true
enum:
- desktop
- thermal
- custom
- description: The page width in inches
name: page_width
type: number
in: query
required: false
- description: The page height in inches
name: page_height
type: number
in: query
required: false
- description: The top margin in inches
name: page_top_margin
type: number
in: query
required: false
- description: The left margin in inches
name: page_left_margin
type: number
in: query
required: false
- description: The label width, within the page, in inches
name: label_width
type: number
in: query
required: false
- description: The label height, within the page, in inches
name: label_height
type: number
in: query
required: false
- description: The label orientation. Can be one of [portrait, landscape]
name: label_orientation
type: string
in: query
required: false
enum:
- portrait
- landscape
- description: The degree of rotation for the label. Can be one of [0, 90, 180, 270]
name: label_rotation
type: number
in: query
required: false
enum:
- 0
- 90
- 180
- 270
- description: Get a return label or a forward label based on this boolean field
name: return
type: boolean
in: query
required: false
responses:
'200':
description: A PDF of label data
content:
application/pdf:
schema:
type: string
format: byte
default:
description: Unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/error'
components:
schemas:
order:
title: Order Schema
type: object
additionalProperties: false
properties:
id:
type: integer
order_number:
type: string
barcode:
type: string
order_placed_date:
type: string
created_date:
type: string
updated_date:
type: string
cancelled_date:
anyOf:
- type: string
- type: 'null'
obscured_date:
anyOf:
- type: string
- type: 'null'
status:
type: string
shippability:
type: string
shipping_address:
$ref: '#/components/schemas/address'
billing_address:
$ref: '#/components/schemas/address'
alternate_ship_from_address:
oneOf:
- $ref: '#/components/schemas/address'
- type: 'null'
label_infos:
type: array
items:
type: number
lines:
type: array
items:
type: object
properties:
link:
type: string
id:
type: integer
quantity:
type: integer
item_price:
type: number
supplier_price:
anyOf:
- type: number
- type: 'null'
sku:
type: string
product_name:
type: string
product_is_kit_parent:
type: boolean
product_serial_numbers:
type: array
items:
type: string
order_line_product_name:
type: string
product_link:
type: string
product_category:
anyOf:
- type: string
- type: 'null'
cart_order_id:
anyOf:
- type: string
- type: 'null'
cart_orderitem_id:
anyOf:
- type: string
- type: 'null'
cart_shipment_id:
anyOf:
- type: string
- type: 'null'
cogs:
type: number
shippability:
type: object
properties:
shippability:
type: string
supplier_id:
anyOf:
- type: number
- type: 'null'
is_dropship:
type: boolean
details:
anyOf:
- type: string
- type: 'null'
upc:
anyOf:
- type: string
- type: 'null'
sales_channel_location_id:
anyOf:
- type: integer
- type: 'null'
is_allocated:
type: boolean
required:
- quantity
- item_price
- supplier_price
- link
- product_name
- product_link
- sku
- shippability
- details
- upc
weight:
description: Weight in ounces
type: number
notes_from_customer:
anyOf:
- type: string
- type: 'null'
internal_notes:
anyOf:
- type: string
- type: 'null'
requested_shipping_method:
anyOf:
- type: string
- type: 'null'
deliver_by_date:
anyOf:
- type: string
- type: 'null'
ship_by_date:
anyOf:
- type: string
- type: 'null'
sales_channel:
type: object
properties:
id:
type: integer
link:
type: string
warehouse:
type: object
properties:
id:
type: integer
link:
type: string
shipping_info:
$ref: '#/components/schemas/shipping_info'
return_shipping_info:
$ref: '#/components/schemas/shipping_info'
dropshipping_info:
$ref: '#/components/schemas/dropshipping_info'
comments:
type: array
items:
type: object
properties:
date:
type: string
text:
type: string
user:
type: string
tags:
type: array
items:
$ref: '#/components/schemas/tag'
financial:
$ref: '#/components/schemas/order_financial'
link:
type: string
additional_cart_info:
type: object
properties:
is_prime:
type: boolean
is_order_parent:
type: boolean
parent_order_number:
anyOf:
- type: string
- type: 'null'
sibling_order_numbers:
type: array
items:
type: string
audit_label:
type: array
items:
type: object
return_order_reference_ids:
type: array
items:
type: string
similar_open_addresses_count:
type: integer
allocation_status:
type: string
batch_reference_id:
anyOf:
- type: string
- type: 'null'
batch:
type: object
has_revision:
type: boolean
revision_locked_fields:
type: array
items:
type: string
required:
- billing_address
- shipping_address
post_dhl_label:
title: DHL Label Request schema
type: object
additionalProperties: false
properties:
shipper_id:
type: integer
weight:
description: Weight in ounces
type: number
length:
description: Length in inches
type: integer
width:
description: Width in inches
type: integer
height:
description: Height in inches
type: integer
box_shape:
description: optional box type [FLY=Flyer/Smalls - pieces that are too small, thin or light to be sorted on a standard conveyor, or for which it makes sense to group pieces into larger units for sort purposes. COY=Parcels/Conveyables - pieces that can be handled onto a system, less than 31.5 kg and up to 60*60*120cm. NCY=Non-conveyables - Pieces that cannot on their own be sorted on standard conveyor. PAL=Pallets - large, irregular or heavy pieces, Palletized with weight upto 1000 KG. DBL=Double Pallets - large, irregular or heavy pieces, Palletized with weight upto 1000 KG. BOX=Parcels that are conveyable have the shape of a box. Up to 70kg.]
type: string
enum:
- FLY
- COY
- NCY
- PAL
- DBL
- BOX
packages:
maxItems: 1
type: array
items:
type: object
additionalProperties: false
properties:
weight:
description: Weight in ounces
type: number
length:
description: Length in inches
type: number
width:
description: Width in inches
type: number
height:
description: Height in inches
type: number
declared_value:
description: Package Level Declared Value for Dutiable International Shipments
type: number
box_shape:
description: optional box type [FLY=Flyer/Smalls - pieces that are too small, thin or light to be sorted on a standard conveyor, or for which it makes sense to group pieces into larger units for sort purposes. COY=Parcels/Conveyables - pieces that can be handled onto a system, less than 31.5 kg and up to 60*60*120cm. NCY=Non-conveyables - Pieces that cannot on their own be sorted on standard conveyor. PAL=Pallets - large, irregular or heavy pieces, Palletized with weight upto 1000 KG. DBL=Double Pallets - large, irregular or heavy pieces, Palletized with weight upto 1000 KG. BOX=Parcels that are conveyable have the shape of a box. Up to 70kg.]
type: string
enum:
- FLY
- COY
- NCY
- PAL
- DBL
- BOX
required:
- length
- width
- height
- weight
packing_list_id:
description: id for packing list for profile template associated with this label
type: integer
customs_info:
items:
$ref: '#/components/schemas/customs_line'
type: array
reason_for_export:
description: '[P - Permanent, T - Temporary, R - Re-Export] It is required for dutiable shipment.'
type: string
default: P
reason_for_export_explanation:
type: string
declared_value:
description: Shipment Level Declared Value for Dutiable International Shipments
type: number
insured_value:
type: number
insurance_type:
type: string
enum:
- dhl
shipping_method:
$ref: '#/components/schemas/dhl_service_types'
notify_bill_to:
type: boolean
default: false
notify_ship_to:
type: boolean
default: false
ship_date:
type: string
format: date-time
pickup:
description: pickup date time to schedule for the carrier
type: string
format: date-time
signature_service:
description: signature service option. Signature services are included in international shipments. Use `SX` for no signature required
type: string
enum:
- SX
nonstandard_day:
description: options are [AA - Saturday Delivery, AB - Saturday Pickup, AC - Holiday Delivery, AD - Holiday Pickup, AG - Domestic Saturday Delivery]
type: string
enum:
- AA
- AB
- AC
- AD
- AG
nonstandard_contents:
description: options are [HB - Lithium Ion PI965 Section II, HC - Dry Ice UN1845, HD - Lithium Ion PI965-966 Section II, HE - Dangerous Goods, HG - Perishable Cargo, HH - Excepted Quantity, HI - Spill Cleaning, HK - Consumer Commodities, HL - Limited Quantities ADR, HM - Lithium Metal PI969 Section II, HN - ADR Load Exemption, HV - Lithium Ion PI967-Section II, HW - Lithium Metal PI970-Section II, HY - Biological UN3373]
type: string
enum:
- HB
- HC
- HD
- HE
- HG
- HH
- HI
- HK
- HL
- HM
- HN
- HV
- HW
- HY
is_dutiable:
type: boolean
default: true
federal_tax_id:
description: Mandatory for domestic shipment of country code = BR
type: string
maxLength: 20
state_tax_id:
description: Mandatory for domestic shipment of country code = BR
type: string
maxLength: 20
duty_payment_type:
type: string
description: Duties may be paid via Shipper [S], Recipient [R], or Third Party [T]
default: R
enum:
- S
- R
- T
reference_id:
description: Identifier for a Return Order
type: string
reference_number:
type: string
sender_tax_info:
type: object
additionalProperties: false
properties:
tax_id_number:
type: string
tax_id_type:
type: string
tax_issuer_country:
type: string
required:
- tax_id_number
- tax_id_type
- tax_issuer_country
receiver_tax_info:
type: object
additionalProperties: false
properties:
tax_id_number:
type: string
tax_id_type:
type: string
tax_issuer_country:
type: string
required:
- tax_id_number
- tax_id_type
- tax_issuer_country
ship_from:
description: The ship_from address is used as the originating address of the rate and label request.
$ref: '#/components/schemas/v1_address'
ship_to:
description: The to address is used as the destination address of a return order rate and label request.
$ref: '#/components/schemas/v1_address'
return:
type: boolean
default: false
warehouse_id:
description: Currently ignored. Previously used for updating a warehouse for the ship_from address on an order.
type: integer
shipping_payment_type:
type: string
description: Shipping may be paid via Shipper [S], Recipient [R], or Third Party [T]
default: S
enum:
- S
- R
- T
shipping_payment_account:
type: string
description: Shipment bill to account
duty_payment_account:
type: string
description: Duty bill to account
foreign_trade_regulation:
type: string
description: Foreign trade regulation code
enum:
- 30.2(d)(2)
- '30.36'
- 30.37(a)
- 30.37(b)
- 30.37(e)
- 30.37(f)
- 30.37(g)
- 30.37(h)
- 30.37(i)
- 30.37(k)
- 30.37(o)
- 30.37(q)
- 30.37(r)
- '30.39'
- 30.40(a)
- 30.40(b)
- 30.40(c)
- 30.40(d)
internal_transaction_number:
type: string
description: Internal transaction number provided by the US Customs AES System
minLength: 14
maxLength: 14
required:
- shipper_id
- shipping_method
post_ups_label:
title: UPS Label Request Schema
type: object
additionalProperties: false
properties:
additional_handling:
type: boolean
certificate_origin:
default: false
type: boolean
customs_info:
items:
$ref: '#/components/schemas/customs_line'
type: array
delivery_confirmation:
description: '[''0'' - None, ''1'' - Confirm, ''2'' - Signature, ''3'' - Adult Signature, ''4'' - USPS for use with Mail Innovations]'
type: string
direct_delivery:
type: boolean
dry_ice_regulation_set:
description: indicates dry ice shipment option [CFR = For HazMat regulated by US Dept of Transportation within the U.S. or ground shipments to Canada, IATA = For Worldwide Air movement]
type: string
insurance_type:
type: string
insured_value:
default: 0
type: number
notify_bill_to:
default: false
type: boolean
notify_ship_to:
default: false
type: boolean
box_shape:
description: ups box options [01 - UPS Letter, 02 - Customer Supplied Package, 03 - Tube, 04 - PAK, 2a - Small Express Box, 2b - Medium Express Box, 2c - Large Express Box, 24 - UPS 25KG Box, 25 - UPS 10KG Box]
type: string
declared_value:
description: Package level declared value for UPS
type: number
description:
description: Package level description, required for return shipments
type: string
dry_ice_weight:
description: Dry ice weight in ounces, required for dry ice shipments
type: number
height:
description: Height in inches
type: number
length:
description: Length in inches
type: number
weight:
description: weight of the package in ounces
type: number
width:
description: Width in inches
typ
# --- truncated at 32 KB (82 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ordoro/refs/heads/main/openapi/ordoro-label-api-openapi.yml