Shipping Service Codes: UPS, FedEx and USPS API Service Code Lists

A service code tells a carrier API which delivery service to rate or ship with. UPS uses two-character codes (03 is UPS Ground, 65 is UPS Worldwide Saver), FedEx uses uppercase names (FEDEX_GROUND, PRIORITY_OVERNIGHT) and the USPS REST APIs use mail classes (USPS_GROUND_ADVANTAGE, PRIORITY_MAIL).

In RocketShipIt you send the carrier's own code as service, on every carrier. Rate responses return it in service_code with a readable name in desc, so the value you get back from a rate is the value to send when you create the label.

UPS service codes#

These are the codes for the UPS-REST carrier (and the legacy UPS carrier, which uses the same codes).

Code Service Where it ships
01 UPS Next Day Air US domestic
02 UPS 2nd Day Air US domestic
03 UPS Ground US domestic
12 UPS 3 Day Select US domestic
13 UPS Next Day Air Saver US domestic
14 UPS Next Day Air Early US domestic
59 UPS 2nd Day Air A.M. US domestic
07 UPS Worldwide Express International
08 UPS Worldwide Expedited International
11 UPS Standard International ground: US to Canada and Mexico, and within Europe
54 UPS Worldwide Express Plus International
65 UPS Worldwide Saver (UPS Saver, UPS Express Saver) International, and domestic outside the US
17 UPS Worldwide Economy DDU International
72 UPS Worldwide Economy DDP International
82 UPS Today Standard Poland domestic
83 UPS Today Dedicated Courier Poland domestic
84 UPS Today Intercity Poland domestic
85 UPS Today Express Poland domestic
86 UPS Today Express Saver Poland domestic
92 UPS Ground Saver, under 1 lb US domestic
93 UPS Ground Saver, 1 lb or more US domestic
94 UPS Ground Saver, Bound Printed Matter US domestic
95 UPS Ground Saver, Media Mail US domestic
M2–M6 UPS Mail Innovations See Mail Innovations

Codes 92 to 95 are the old SurePost codes. UPS renamed the service without changing them, and rate responses still describe them as "UPS SurePost"; see UPS Ground Saver.

A code that isn't in this table (for example 74, UPS Express 12:00 in Europe) is still sent to UPS unchanged, so it works if UPS offers it on the lane. The rate comes back with the correct service_code and a desc of "Unknown service code".

Is UPS Saver the correct code for international shipping?#

Yes. 65 is UPS Worldwide Saver, UPS's international express service with end-of-day delivery, usually one to three business days. The same code is called "UPS Saver" or "UPS Express Saver" when you ship from outside the US. It is not the domestic US saver service. That one is 13, UPS Next Day Air Saver, and it isn't Ground Saver (92/93) either, which is an economy ground service.

For international shipments from the US, the choice is usually between:

Code Service Speed
54 Worldwide Express Plus Early morning, 1–3 days
07 Worldwide Express Morning to major cities, 1–3 days
65 Worldwide Saver End of day, 1–3 days
08 Worldwide Expedited 2–5 days
11 Standard Ground, Canada and Mexico only
72 / 17 Worldwide Economy DDP / DDU Slowest, lowest cost

Not every service is offered on every lane. Rate the shipment without a service to see which ones UPS offers between the two addresses.

Rating one UPS service#

UPS-REST rates every available service by default (UPS's Shop request option, with transit times). To rate a single service, send its code with "request_option": "Rate":

{
  "carrier": "UPS-REST",
  "action": "getallrates",
  "params": {
    "key": "your-key-from-authenticate-request",
    "account_number": "YOUR_ACCOUNT",
    "service": "65",
    "request_option": "Rate",
    "ship_city": "Atlanta",
    "ship_state": "GA",
    "ship_code": "30328",
    "ship_country": "US",
    "to_city": "Toronto",
    "to_state": "ON",
    "to_code": "M5V 2T6",
    "to_country": "CA",
    "packages": [
      { "weight": 5, "length": 10, "width": 8, "height": 6 }
    ]
  }
}

To ship with that service, send the same service on submitshipment.

FedEx service types#

FedEx calls them service types. Send one as service on the FedEx-REST carrier (the legacy FedEx carrier takes the same values).

Service type Service
FIRST_OVERNIGHT FedEx First Overnight
PRIORITY_OVERNIGHT FedEx Priority Overnight
STANDARD_OVERNIGHT FedEx Standard Overnight
FEDEX_2_DAY_AM FedEx 2Day A.M.
FEDEX_2_DAY FedEx 2Day
FEDEX_EXPRESS_SAVER FedEx Express Saver (3 business days)
FEDEX_GROUND FedEx Ground (business addresses, and FedEx International Ground to Canada)
GROUND_HOME_DELIVERY FedEx Home Delivery (residential addresses)
SMART_POST FedEx Ground Economy, formerly SmartPost; see FedEx SmartPost
FEDEX_INTERNATIONAL_PRIORITY_EXPRESS FedEx International Priority Express
FEDEX_INTERNATIONAL_PRIORITY FedEx International Priority
INTERNATIONAL_FIRST FedEx International First
INTERNATIONAL_ECONOMY FedEx International Economy
FEDEX_INTERNATIONAL_CONNECT_PLUS FedEx International Connect Plus
INTERNATIONAL_PRIORITY_DISTRIBUTION FedEx International Priority DirectDistribution
INTL_GROUND_DISTRIBUTION FedEx International Ground Distribution
FEDEX_FIRST_FREIGHT FedEx First Overnight Freight
FEDEX_1_DAY_FREIGHT FedEx 1Day Freight
FEDEX_2_DAY_FREIGHT FedEx 2Day Freight
FEDEX_3_DAY_FREIGHT FedEx 3Day Freight
INTERNATIONAL_PRIORITY_FREIGHT FedEx International Priority Freight
INTERNATIONAL_ECONOMY_FREIGHT FedEx International Economy Freight
INTERNATIONAL_DISTRIBUTION_FREIGHT FedEx International Priority DirectDistribution Freight
FEDEX_INTERNATIONAL_DEFERRED_FREIGHT FedEx International Deferred Freight

FEDEX_GROUND vs GROUND_HOME_DELIVERY is the one that trips people up: both are FedEx's ground network, but FedEx requires Home Delivery for residential addresses. Set residential correctly and rate without a service to see which one FedEx returns.

FedEx Freight LTL (FEDEX_FREIGHT_PRIORITY, FEDEX_FREIGHT_ECONOMY) has its own carrier and credentials since FedEx Freight moved to a separate API; see FedEx Freight.

USPS mail classes#

The USPS-REST carrier sends service to USPS as the mail class:

Mail class Service
USPS_GROUND_ADVANTAGE USPS Ground Advantage (replaced First-Class Package Service and Parcel Post)
PRIORITY_MAIL Priority Mail
PRIORITY_MAIL_EXPRESS Priority Mail Express
PARCEL_SELECT Parcel Select (the default for labels when service is empty)
PARCEL_SELECT_LIGHTWEIGHT Parcel Select Lightweight
MEDIA_MAIL Media Mail
LIBRARY_MAIL Library Mail
BOUND_PRINTED_MATTER Bound Printed Matter
USPS_CONNECT_LOCAL USPS Connect Local
USPS_CONNECT_REGIONAL USPS Connect Regional
USPS_CONNECT_MAIL USPS Connect Mail

For domestic rates, leave service empty (or send ALL) to get every mail class USPS offers for the package. With a service, RocketShipIt asks USPS for that one mail class only. In the response, service_code is the USPS SKU of the price and local_service_code is the mail class. International rates return international mail classes, such as PRIORITY_MAIL_INTERNATIONAL, in the same field.

The short values in Parameters (PRIORITY, EXPRESS, MEDIA...) belong to the retired USPS Web Tools API, not the REST carrier. If you're moving to the REST APIs, switch them to mail classes.

Other carriers#

  • DHL Express product codes (P Express Worldwide, D Express Worldwide documents, N Domestic Express...), Stamps.com (US-GA, US-PM...), DHL eCommerce and other carriers are listed in Parameters. DHL special service codes, which go in addons, are in DHL Service Codes.
  • UPS Mail Innovations (M2–M6): Mail Innovations.