Skip to content
Last updated

Using Your Carrier Accounts

In addition to the ShipStation carriers that are included with your account, you can also connect your own carrier accounts so you can ship with your own negotiated rates with ShipStation API.

You can connect your accounts either programmatically with the /v1/connections endpoint or via your account Dashboard.

Requirements

To connect your own carrier accounts to ShipStation API:

  • You must be on an Advanced Plan or higher.
  • You must have an account already set up with each carrier you want to connect to ShipStation API.
  • You must connect your carrier accounts in the Production environment.
  • By default, you can only connect one instance of a carrier account. To override this default, include "allow_duplicate_account_number": "true" in your connection request.

Available Carrier Integrations

ShipStation API supports 100+ global carriers that offer a variety of domestic and international services to meet your brand's unique shipping needs.

The following list provides the connection information model and example POST calls for most of our available carriers (though this list is not exhaustive). You can find further details about using each carrier in the carrier guides (thank you for your patience while we continue to add more guides to this list - there are a lot of them!).

You can access the full list of carriers available in your ShipStation API Dashboard.

Open the sections below to view connection details and example connection requests for your carriers.

Access Worldwide

Connection Properties:

carrier_name: access_worldwide

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/access_worldwide

POST /v1/connections/carriers/access_worldwide HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test Access Worldwide Account",
  "username": "your_username_here",
  "password": "your_password_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/access_worldwide/:id

DELETE /v1/connections/carriers/access_worldwide/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

APC

Connection Properties:

carrier_name: apc

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/apc

POST /v1/connections/carriers/apc HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my apc account",
  "username": "usernameapc",
  "password": "pa55word"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE v1/connections/carriers/apc/:id

DELETE /v1/connections/carriers/apc/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Aramex Australia

Connection properties:

carrier_name: fastway_au

PropertyDescription
nicknamestring, required
client_idstring, required
client_secretstring, required
emailstring, required

Connect Account

POST /v1/connections/carriers/fastway_au

POST /v1/connections/carriers/fastway_au HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
    "nickname": "My Fastway AU Account",
    "client_id": "myclient-id",
    "client_secret": "mysecret",
    "email": "myemail@email.com"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/fastway_au/:id

DELETE /v1/connections/carriers/fastway_au/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Aramex New Zealand

Connection Properties:

carrier_name: fastway_nz

PropertyDescription
nicknamestring, required
client_idstring, required
client_secretstring, required
emailstring, required
account_type_idstring, optional

Connect Account

POST /v1/connections/carriers/fastway_nz

POST /v1/connections/carriers/fastway_nz HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my aramex account",
  "client_id": "my client id",
  "client_secret": "my client secret",
  "email": "me@example.com",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/fastway_nz/:id

DELETE /v1/connections/carriers/fastway_nz/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Asendia

Connection Properties:

carrier_name: asendia

PropertyDescription
nicknamestring, required
ftp_usernamestring, required
ftp_passwordstring, required
account_numberint, required
processing_locationstring, required

Connect Account

POST /v1/connections/carriers/asendia

POST /v1/connections/carriers/asendia HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my asendia account",
  "ftp_username": "userasendia",
  "ftp_password": "pa55word",
  "account_number": 1234,
  "processing_location": "LAX"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/asendia/:id

DELETE /v1/connections/carriers/asendia/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Australia Post eParcel

Connection Properties:

carrier_name: australia_post

PropertyDescription
nicknamestring, required
account_numberstring, required
api_keystring, required
api_secretstring, required

Connect Account

POST /v1/connections/carriers/australia_post

POST /v1/connections/carriers/australia_post HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my australia post account",
  "account_number": "123456789",
  "api_key": "your_api_key_here",
  "api_secret": "your_api_secret_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/australia_post/:id

DELETE /v1/connections/carriers/australia_post/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Australia MyPost Business

Connection Properties:

carrier_name: australia_post_mypost_business

PropertyDescription
nicknamestring, required
partner_tokenstring, required
payment_methodstring, required
partner_idstring, optional
charge_account_numberstring, optional

Connect Account

POST /v1/connections/carriers/australia_post_mypost_business

POST /v1/connections/carriers/australia_post_mypost_business HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my AU Post MPB account",
  "partner_token": "my partner token",
  "payment_method": "my payment method",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/australia_post_mypost_business/:id

DELETE /v1/connections/carriers/australia_post_mypost_business/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Canpar

Connection Properties:

carrier_name: canpar

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
account_numberstring, required

Connect Account

POST /v1/connections/carriers/canpar

POST /v1/connections/carriers/canpar HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Canpar Account",
  "username": "username",
  "password": "pa55word",
  "account_number": "12345"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/canpar/:id

DELETE /v1/connections/carriers/canpar/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

CouriersPlease

Connection Properties:

carrier_name: couriers_please

PropertyDescription
nicknamestring, required
account_numberstring, required
api_secretstring, required

Connect Account

POST /v1/connections/carriers/couriers_please

POST /v1/connections/carriers/couriers_please HTTP/1.1
Host: api.shipengine.com
API-Key: your_api_secret_here
Content-Type: application/json

{
  "nickname": "My CouriersPlease Account",
  "account_number": "123456789",
  "api_secret": "your_api_secret_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/couriers_please/:id

DELETE /v1/connections/carriers/couriers_please/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DAI Post

Connection Properties:

carrier_name: dai

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
account_numberstring, required
use_shipperaddress_as_returnboolean, required

Connect Account

POST /v1/connections/carriers/dai

POST /v1/connections/carriers/dai HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my DAI account",
  "username": "my username",
  "password": "my password",
  "account_numer": "my account number",
  "use-shipperaddress_as_return": TRUE
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dai/:id

DELETE /v1/connections/carriers/dai/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Delivengo

Connection Properties:

carrier_name: delivengo

PropertyDescription
nicknamestring, required
emailstring, required
api_keystring, required

Connect Account

POST /v1/connections/carriers/delivengo

POST /v1/connections/carriers/delivengo HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Delivengo Account",
  "email": "myemail@email.com",
  "api_key": "your_api_key_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/delivengo/:id

DELETE /v1/connections/carriers/delivengo/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Deutsche Post DHL

Connection Properties:

carrier_name: deutsche_post_dhl

PropertyDescription
userstring, required
passwordstring, required
tracking_userstring, optional
account_numberstring, required
tracking_passwordstring, optional
participation_numberstring, optional

Connect Account

POST /v1/connections/carriers/deutsche_post_dhl

POST /v1/connections/carriers/deutsche_post_dhl HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my Deutsche Post DHL account",
  "account_number": "123456789",
  "password": "password123",
  "tracking_user": "tracking_username",
  "account_number": "56789",
  "tracking_password": "tr4ckpa55word",
  "participation_number": "88888",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/deutsche_post_dhl/:id

DELETE /v1/connections/carriers/deutsche_post_dhl/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DHL E-Commerce

INFO:

Rating for DHL

DHL E-Commerce supports rating but only if you have DHL E-Commerce API credentials. Please contact your DHL account representative for more information.

Connection Properties:

carrier_name: dhl_global_mail

PropertyDescription
nicknamestring, required
client_idstring, required
api_secretstring, required
pickup_numberstring, required
distribution_centerstring, required
sold_tostring, required

Connect Account

POST /v1/connections/carriers/dhl_global_mail

POST /v1/connections/carriers/dhl_global_mail HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test DHL E-Commerce Account",
  "client_id": "your_client_id_here",
  "api_secret": "your_api_secret_here"
  "pickup_number": "123456789",
  "distribution_center": "USDFW1",
  "sold_to": "1234567",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dhl_global_mail/:id

DELETE /v1/connections/carriers/dhl_global_mail/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DHL and DHL E-Commerce service marks are owned by Deutsche Post DHL Group and used with permission.

DHL E-Commerce Australia

Connection Properties:

carrier_name: dhl_ecommerce_au

PropertyDescription
nicknamestring, required
pickup_account_idstring, required
sold_to_account_idstring, required
shipment_id_prefixstring, required
skip_rating_during_label_creationboolean, optional

Connect Account

POST /v1/connections/carriers/dhl_ecommerce_au

POST /v1/connections/carriers/dhl_ecommerce_au HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my dhl account",
  "pickup_account_id": "123456789",
  "sold_to_account_id": "987654312",
  "shipment_id_prefix": "123abc",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dhl_ecommerce_au/:id

DELETE /v1/connections/carriers/dhl_ecommerce_au/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DHL and DHL E-Commerce service marks are owned by Deutsche Post DHL Group and used with permission.

DHL Express Australia

Connection Properties:

carrier_name: dhl_express_australia

PropertyDescription
nicknamestring, required
account_numberstring, required

Connect Account

POST /v1/connections/carriers/dhl_express_australia

POST /v1/connections/carriers/dhl_express_australia HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my dhl account",
  "account_number": "123456789"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dhl_express_australia/:id

DELETE /v1/connections/carriers/dhl_express_australia/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DHL and DHL Express AU service marks are owned by Deutsche Post DHL Group and used with permission.

DHL Express CA

Connection Properties:

carrier_name: dhl_express_canada

PropertyDescription
nicknamestring, required
account_numberstring, required

Connect Account

POST /v1/connections/carriers/dhl_express_canada

POST /v1/connections/carriers/dhl_express_canada HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my dhl account",
  "account_number": "123456789"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dhl_express_canada/:id

DELETE /v1/connections/carriers/dhl_express_canada/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DHL and DHL Express CA service marks are owned by Deutsche Post DHL Group and used with permission.

DHL Express UK

Connection Properties:

carrier_name: dhl_express_uk

PropertyDescription
nicknamestring, required
account_numberstring, required
site_idstring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/dhl_express_uk

POST /v1/connections/carriers/dhl_express_uk HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my dhl account",
  "account_number": "123456789",
  "site_id": "ExampleId",
  "password": "password123"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dhl_express_uk/:id

DELETE /v1/connections/carriers/dhl_express_uk/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DHL and DHL Express UK service marks are owned by Deutsche Post DHL Group and used with permission.

DHL Express

Connection Properties:

carrier_name: dhl_express

PropertyDescription
nicknamestring, required
account_numberstring, required
site_idstring, required if password provided
passwordstring, required if site_id provided
country_codestring, optional

Connect Account

POST /v1/connections/carriers/dhl_express

POST /v1/connections/carriers/dhl_express HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my dhl account",
  "account_number": "123456789"
  "site_id": "my site_id",
  "password": "my password",
  "country_code": "US"
}

A successful connection will return the carrier's carrier_id property in the response.

Modify Settings

Hide Account Number in Archive Document

ParameterDescription
should_hide_account_number_on_archive_docboolean

PUT /v1/connections/carriers/dhl_express/:id/settings

PUT /v1/connections/carriers/dhl_express/se-123/settings HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "should_hide_account_number_on_archive_doc": true
}

Disconnect Account

DELETE /v1/connections/carriers/dhl_express/:id

DELETE /v1/connections/carriers/dhl_express/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DHL and DHL Express service marks are owned by Deutsche Post DHL Group and used with permission.

DPD

Connection Properties:

carrier_name: dpd

PropertyDescription
nicknamestring, required
account_numberstring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/dpd

POST /v1/connections/carriers/dpd HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my DPD account",
  "account_number": "123456789",
  "password": "password123"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dpd/:id

DELETE /v1/connections/carriers/dpd/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DPD Germany

Connection Properties:

carrier_name: dpd_germany

PropertyDescription
usernamestring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/dpd_germany

POST /v1/connections/carriers/dpd_germany HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my DPD DE account",
  "account_number": "123456789",
  "password": "password123"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/dpd_germany/:id

DELETE /v1/connections/carriers/dpd_germany/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

DPD Local

Connection Properties:

carrier_name: apicode-dpd-local

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/apicode-dpd-local

POST /v1/connections/carriers/apicode-dpd-local HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my DPD Local account",
  "username": "123456789",
  "password": "password123"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/apicode-dpd-local/:id

DELETE /v1/connections/carriers/apicode-dpd-local/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Endicia

Connection Properties:

carrier_name: endicia

PropertyDescription
nicknamestring, required
accountstring, required
passphrasestring, required

Connect Account

POST /v1/connections/carriers/endicia

POST /v1/connections/carriers/endicia HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Endicia account",
  "account": "__YOUR_USERNAME_HERE__",
  "passphrase": "__YOUR_PASSWORD_HERE__"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/endicia/:id

DELETE /v1/connections/carriers/endicia/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

ePost Global

Connection Properties:

carrier_name: rr_donnelley

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/rr_donnelley

POST /v1/connections/carriers/rr_donnelley HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my rr donnelley account",
  "username": "donnelleyaccount",
  "password": "pa55word"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/rr_donnelley/:id

DELETE /v1/connections/carriers/rr_donnelley/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

EVRi UK

Connection Properties:

carrier_name: hermescorp

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
client_idstring, required
client_namestring, required
endpoint ("Production" or "Testing")string, required

Connect Account

POST /v1/connections/carriers/hermescorp

POST /v1/connections/carriers/hermescorp HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Hermes Account",
  "username": "hermes_user",
  "password": "pa55word",
  "client_id": "12345",
  "client_name": "Hermes User",
  "endpoint": "Production"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/hermescorp/:id

DELETE /v1/connections/carriers/hermescorp/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

FedEx UK

Connection Properties:

carrier_name: fedex_uk

PropertyDescription
nicknamestring, required
account_numberstring, required
first_namestring, required
last_namestring, required
companystring
address1string, required
address2string
citystring, required
postal_codestring, required
country_codestring, required
emailstring, required
phonestring, required
agree_to_eulabool, required

Connect Account

POST /v1/connections/carriers/fedex_uk

POST /v1/connections/carriers/fedex_uk HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My FedEx UK account",
  "account_number": "123456789",
  "company": "Example Corp.",
  "first_name": "John",
  "last_name": "Doe",
  "phone": "20 5555 5555",
  "address1": "77 Netherpark Crescent",
  "address2": "Suite 100",
  "city": "London",
  "postal_code": "ABC 123",
  "country_code": "GB",
  "email": "john.doe@example.com",
  "agree_to_eula": "true"
}

A successful connection will return the carrier's carrier_id property in the response.

INFO:

Terms of Service

By connecting a FedEx UK account, you and your users agree to the FedEx EULA.

Disconnect Account

DELETE /v1/connections/carriers/fedex_uk/:id

DELETE /v1/connections/carriers/fedex_uk/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

FedEx service marks are owned by Federal Express Corporation and used with permission.

FedEx US & CA

Connection Properties:

carrier_name: fedex

PropertyDescription
nicknamestring, required
account_numberstring, required
first_namestring, required
last_namestring, required
companystring
address1string, required
address2string
citystring, required
state_provincestring, required
postal_codestring, required
country_codestring, required
emailstring, required
phonestring, required
agree_to_eulabool, required

Connect Account

POST /v1/connections/carriers/fedex

POST /v1/connections/carriers/fedex HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My FedEx account",
  "account_number": "123456789",
  "company": "Example Corp.",
  "first_name": "John",
  "last_name": "Doe",
  "phone": "111-111-1111",
  "address1": "4009 Marathon Blvd.",
  "address2": "Suite 300",
  "city": "Austin",
  "state": "TX",
  "postal_code": "78756",
  "country_code": "US",
  "email": "john.doe@example.com",
  "agree_to_eula": "true"
}

A successful connection will return the carrier's carrier_id property in the response.

INFO:

Terms of Service

By connecting a FedEx US or CA account, you and your users agree to the FedEx EULA.

Modify Settings

ShipStation API takes advantage of some of FedEx's advanced functionality but does not enable it by default.

ParameterTypeDescription
pickup_typeenumerated stringDetermines how FedEx will pickup your packages
none - Not specified
regular_pickup - You already have a daily pickup scheduled with FedEx
request_courier - You will call FedEx to request a courier
drop_box - You will drop-off packages in a FedEx drop box
business_service_center - You will drop-off packages at an authorized FedEx business service center
station - You will drop-off the package at a FedEx Station
smart_post_hubenumerated stringnone, allentown_pa, atlanta_ga, charlotte_nc, chino_ca, dallas_tx, denver_co, detroit_mi, edison_nj, grove_city_oh, groveport_oh, houston_tx, indianapolis_in, kansas_city_ks, los_angeles_ca, martinsburg_wv, memphis_tn, middletown_ct, minneapolis_mn, new_berlin_wi, northborough_ma, orlando_fl, phoneix_az, pittsburgh_pa, portland_or, reno_nv, sacramento_ca, salt_lake_city_ut, seattle_wa, st_louis_mo
smart_post_endorsementenumerated stringnone, return_service_requested, forwarding_service_requested, address_service_requested, change_service_requested, leave_if_no_response
is_primary_accountboolWhether or not the account is set to primary, this currently has no function inside of ShipStation API.
signature_imagestringA Base 64 encoded image of the signature to be used for this account.
letterhead_imagestringA Base 64 encoded image of the letterhead to be used for this account.

INFO:

FedEx SmartPost™

  • To enable SmartPost™ both smart_post properties are required and must be valid.
  • FedEx makes documentation available for SmartPost™ here.

PUT /v1/connections/carriers/fedex/:carrier_id/settings

PUT /v1/connections/carriers/fedex/se-108252/settings HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
    "nickname": "my fedex account",
    "pickup_type": "regular_pickup",
    "smart_post_hub": "dallas_tx",
    "smart_post_endorsement": "address_service_requested",
    "is_primary_account": "false",
    "signature_image": "base64string",
    "letterhead_image": "base64string"
}

On a successful response, you will receive an HTTP status 204.

Disconnect Account

DELETE /v1/connections/carriers/fedex/:ID

DELETE /v1/connections/carriers/fedex/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

When FedEx has been successfully disconnected, you will receive a HTTP 204, No Content status.

FedEx service marks are owned by Federal Express Corporation and used with permission.

FirstMile

Connection Properties:

carrier_name: firstmile

PropertyDescription
nicknamestring, required
mailer_idstring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/firstmile

POST /v1/connections/carriers/firstmile HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my firstmile account",
  "mailer_id": "1234",
  "password": "pa55word"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/firstmile/:id

DELETE /v1/connections/carriers/firstmile/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

GLS Canada

Connection Properties:

carrier_name: gls_canada

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
keystring, required

Connect Account

IMPORTANT: Please use your API login credentials to link your GLS account. These credentials are different from the credentials for the GLS website. To obtain your API credentials, submit a request with the GLS sales team.

POST /v1/connections/carriers/gls_canada`

POST /v1/connections/carriers/gls_canada` HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my GLS CA account",
  "username": "usergls",
  "password": "pa55word",
  "key": "your_api_key_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/gls_canada`/:id

DELETE /v1/connections/carriers/gls_canada`/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

GLS France

Connection Properties:

carrier_name: gls_france

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
contact_idstring, required

Connect Account

POST /v1/connections/carriers/gls_france

POST /v1/connections/carriers/gls_france HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my GLS FR account",
  "username": "usergls",
  "password": "pa55word",
  "contact_id": "1234",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/gls_france/:id

DELETE /v1/connections/carriers/gls_france/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

GLS Germany

Connection Properties:

carrier_name: gls_germany

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
customer_idstring, required
contact_idstring, required

Connect Account

IMPORTANT: Please use your API login credentials to link your GLS account. These credentials are different from the credentials for the GLS website. To obtain your API credentials, submit a request with the GLS sales team.

POST /v1/connections/carriers/gls_germany

POST /v1/connections/carriers/gls_germany HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my GLS DE account",
  "username": "usergls",
  "password": "pa55word",
  "customer_id": "1234",
  "contact_id": "5678",
  "client_id": "91011",
  "client_secret": "your client secret",
  "key": "your_api_key_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/gls_germany/:id

DELETE /v1/connections/carriers/gls_germany/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

GLS Netherlands

Connection Properties:

carrier_name: gls_nl

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
keystring, required

Connect Account

POST /v1/connections/carriers/gls_nl

POST /v1/connections/carriers/gls_nl HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my GLS NL account",
  "username": "usergls",
  "password": "pa55word",
  "key": "your_api_key_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/gls_nl/:id

DELETE /v1/connections/carriers/gls_nl/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

GLS US

Connection Properties:

carrier_name: gls_us

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
account_numberinteger, required

Connect Account

IMPORTANT: Please use your API login credentials to link your GLS account. These credentials are different from the credentials for the GLS website. To obtain your API credentials, submit a request with the GLS sales team.

POST /v1/connections/carriers/gls_us

POST /v1/connections/carriers/gls_us HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my GLS US account",
  "username": "usergls",
  "password": "pa55word",
  "account_number": 123456789
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/gls_us/:id

DELETE /v1/connections/carriers/gls_us/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

GrupoAMPM

Connection Properties:

carrier_name: grupo_ampm

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
account_numbernumber, required

Connect Account

POST /v1/connections/carriers/grupo_ampm

POST /v1/connections/carriers/grupo_ampm HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my GrupoAMPM account",
  "username": "username",
  "password": "pa55word",
  "account_number": 123456789
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/grupo_ampm/:id

DELETE /v1/connections/carriers/grupo_ampm/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Hermes Germany

Connection Properties:

carrier_name: hermes_germany

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
pickup_window_slotstring, required
api_languagestring, optional
test_credentialsboolean, optional

Connect Account

POST /v1/connections/carriers/hermes_germany

POST /v1/connections/carriers/hermes_germany HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my dhl account",
  "username": "my username",
  "password": "my password",
  "pickup_window_slot": "my account pickup window",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/hermes_germany/:id

DELETE /v1/connections/carriers/hermes_germany/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

IntelliQuick Delivery

Connection Properties:

carrier_name: intelliquick_delivery

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
account_numberinteger, required

Connect Account

POST /v1/connections/carriers/intelliquick_delivery

POST /v1/connections/carriers/intelliquick_delivery HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My IntelliQuick Delivery Account",
  "username": "username",
  "password": "pa55word",
  "account_number": 1234567,
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/intelliquick_delivery/:id

DELETE /v1/connections/carriers/intelliquick_delivery/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Landmark Global

Connection Properties:

carrier_name: landmark_global

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
client_idstring, required

Connect Account

POST /v1/connections/carriers/landmark_global

POST /v1/connections/carriers/landmark_global HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my landmark_global account",
  "username": "username",
  "password": "password",
  "client_id": "client_id"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/landmark_global/:id

DELETE /v1/connections/carriers/landmark_global/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Loomis Express

Connection Properties:

carrier_name: loomis_express

PropertyDescription
nicknamestring, required
user_idstring, required
passwordstring, required
shipper_numstring, required

Connect Account

POST /v1/connections/carriers/loomis_express

POST /v1/connections/carriers/loomis_express HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my loomis_express account",
  "user_id": "123",
  "password": "345",
  "shipper_num": "site"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/loomis_express/:id

DELETE /v1/connections/carriers/loomis_express/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Maersk E-Delivery

Connection Properties:

carrier_name: maersk_b2c

PropertyDescription
nicknamestring, required
authentication_keystring, required
scramblestring, optional

Connect Account

POST /v1/connections/carriers/maersk_b2c

POST /v1/connections/carriers/maersk_b2c HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my maersk_b2c account",
  "authentication_key": "your auth key"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/maersk_b2c/:id

DELETE /v1/connections/carriers/maersk_b2c/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Mondial Relay

Connection Properties:

carrier_name: mondial_relay

PropertyDescription
nicknamestring, required
api_keystring, required
enseignestring, required

Connect Account

POST /v1/connections/carriers/mondial_relay

POST /v1/connections/carriers/mondial_relay HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my mondial_relay account",
  "api_key": "your_api_key_here",
  "enseigne": "your_enseigne_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/mondial_relay/:id

DELETE /v1/connections/carriers/mondial_relay/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

New Zealand Couriers

Connection Properties:

carrier_name: new_zealand_couriers

PropertyDescription
nicknamestring, required
carrier_namestring, required
customer_idstring, required
client_idstring, required
client_secretstring, required

Connect Account

POST /v1/connections/carriers/new_zealand_couriers

POST /v1/connections/carriers/new_zealand_couriers HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my new_zealand_couriers account",
  "carrier_name": "carrier name",
  "customer_id": "your customer id",
  "client_id": "your client id",
  "client_secret": "your client secret"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/new_zealand_couriers/:id

DELETE /v1/connections/carriers/new_zealand_couriers/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Newgistics

Connection Properties:

carrier_name: newgistics

PropertyDescription
nicknamestring, required
merchant_idnumeric, required
mailer_idstring, required
induction_sitestring, required

Connect Account

POST /v1/connections/carriers/newgistics

POST /v1/connections/carriers/newgistics HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my newgistics account",
  "merchant_id": "123",
  "mailer_id": "345",
  "induction_site": "site"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/newgistics/:id

DELETE /v1/connections/carriers/newgistics/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

NOW Couriers

Connection Properties:

carrier_name: now_couriers

PropertyDescription
nicknamestring, required
carrier_namestring, required
customer_idstring, required
client_idstring, required
client_secretstring, required

Connect Account

POST /v1/connections/carriers/now_couriers

POST /v1/connections/carriers/now_couriers HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My now_couriers Account",
  "carreir_name": "carrier name",
  "customer_id": "123456789",
  "client_id": "12345",
  "client_secet": "54321"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/now_couriers/:id

DELETE /v1/connections/carriers/now_couriers/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

NZ Post Domestic

Connection Properties:

carrier_name: courierpost

PropertyDescription
nicknamestring, required
usernamestring, required
accountnumberinteger, required
siteCodeinteger, required

Connect Account

POST /v1/connections/carriers/courierpost

POST /v1/connections/carriers/courierpost HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My NZ Post Domestic Account",
  "username": "123456789",
  "account_number": 123456789,
  "site_code": 12345
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/courierpost/:id

DELETE /v1/connections/carriers/courierpost/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

NZ Post International

Connection Properties:

carrier_name: new_zealand_post_international

PropertyDescription
nicknamestring, required
account_numberinteger, required
indicia_numberstring, optional
site_codeinteger, required

Connect Account

POST /v1/connections/carriers/new_zealand_post_international

POST /v1/connections/carriers/new_zealand_post_international HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My new_zealand_post_international Account",
  "account_number": 123456789,
  "site_code": 12345
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/new_zealand_post_international/:id

DELETE /v1/connections/carriers/new_zealand_post_international/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

99Minutos

Connection Properties:

carrier_name: n9minutos

PropertyDescription
nicknamestring, required
api_keystring, required

Connect Account

POST /v1/connections/carriers/n9minutos

POST /v1/connections/carriers/n9minutos HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test 99Minutos Account",
  "api_key": "your_api_key_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/n9minutos/:id

DELETE /v1/connections/carriers/n9minutos/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

OnTrac

Connection Properties:

carrier_name: ontrac

PropertyDescription
nicknamestring, required
account_numberint, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/ontrac

POST /v1/connections/carriers/ontrac HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my ontrac account",
  "account_number": 1234,
  "password": "pa55word"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/ontrac/:id

DELETE /v1/connections/carriers/ontrac/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Parcelforce

Connection Properties:

carrier_name: parcelforce

PropertyDescription
nicknamestring, required
account_numberstring, required
passwordstring, required
sftp_usernamestring, required
sftp_passwordstring, required
contract_numberstring, required
department_idstring, required
test_accountboolean, required

Connect Account

POST /v1/connections/carriers/parcelforce

POST /v1/connections/carriers/parcelforce HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Parcelforce Account",
  "account_number": "1234",
  "password": "pa55word",
  "sftp_username": "sftp_user",
  "sftp_password": "pa55word",
  "contract_number": "12345",
  "department_id": "12",
  "test_account": false
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/parcelforce/:id

DELETE /v1/connections/carriers/parcelforce/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Post Haste

Connection Properties:

carrier_name: post_haste

PropertyDescription
nicknamestring, required
carrier_namestring, required
customer_idstring, required
client_idstring, required
client_secretstring, required

Connect Account

POST /v1/connections/carriers/post_haste

POST /v1/connections/carriers/post_haste HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My post_haste Account",
  "carreir_name": "carrier name",
  "customer_id": "123456789",
  "client_id": "12345",
  "client_secet": "54321"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/post_haste/:id

DELETE /v1/connections/carriers/post_haste/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

PostNL

Connection Properties:

carrier_name: postnl

PropertyDescription
nicknamestring, required
api_keystring, required
customer_codestring, required
global_customer_codestring, required
customer_numberstring, required
collection_locationstring, optional
down_partner_idstring, optional
global_range_minnumber, required
global_range_maxnumber, required

Connect Account

POST /v1/connections/carriers/postnl

POST /v1/connections/carriers/postnl HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test PostNL Account",
  "api_key": "your_api_key_here",
  "customer_code": "656565",
  "global_customer_code": "7777",
  "customer_number": "12345",
  "collection_location": "location_info",
  "down_partner_id": "your_partner_id",
  "global_range_min": "50",
  "global_range_max": "100",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/postnl/:id

DELETE /v1/connections/carriers/postnl/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Purolator Canada

Connection Properties:

carrier_name: purolator_ca

PropertyDescription
nicknamestring, required
account_numberstring, required
activation_keystring, required

Connect Account

POST /v1/connections/carriers/purolator_ca

POST /v1/connections/carriers/purolator_ca HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test Purolator Canada Account",
  "account_number": "1234567890",
  "activation_key" : "abcdefgh-1234-ijkl-5678-mnopqrstuvwx"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/purolator_ca/:id

DELETE /v1/connections/carriers/purolator_ca/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Quantium Solutions International

Connection Properties:

carrier_name: quantium

PropertyDescription
nicknamestring, required
aaccountnostring, required
customeridstring, required
usernamestring, required
passwordstring, required
AESKeystring, required
AuthorizationKeystring, optional
handovermodesstring, required
collectiontimefromstring, optional
collectiontimetostring, optional
dropoffpointcodestring, optional

Connect Account

POST /v1/connections/carriers/quantium

POST /v1/connections/carriers/quantium HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My quantium Account",
  "accountno": "654321",
  "customerid": "my customerid",
  "username": "my username",
  "password": "my password",
  "AESKey": "12345",
  "handovermodes": "mode1"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/quantium/:id

DELETE /v1/connections/carriers/quantium/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Redpack

Connection Properties:

carrier_name: redpack

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
client_idstring, required
client_secretstring required

Connect Account

POST /v1/connections/carriers/redpack

POST /v1/connections/carriers/redpack HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test Redpack Account",
  "username": "username",
  "password": "password",
  "client_id": "client_id",
  "client_secret": "client_secret"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/redpack/:id

DELETE /v1/connections/carriers/redpack/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Royal Mail

The Royal Mail connection process involves several manual steps and a waiting period before activation is complete. Review the Royal Mail carrier guide for details. Only the basic connection properties and sample request are included below.

Connection Properties:

carrier_name: royal_mail

PropertyDescription
nicknamestring, required
account_numberstring, required
oba_emailstring, required
contact_namestring, required
emailstring, required
street_line1string, required
street_line2string
citystring, required
postal_codestring, required
phonestring, required
posting_location_numberstring, required

Connect Account

POST /v1/connections/carriers/royal_mail

POST /v1/connections/carriers/royal_mail HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Royal Mail account",
  "account_number":  "123456789",
  "oba_email": "john.doe@example.com",
  "company_name": "Example Corp",
  "contact_name": "John Doe",
  "email": "john.doe@example.com",
  "street_line1": "77 Netherpark Crescent",
  "street_line2": "",
  "city": "STIRKOKE HOUSE",
  "postal_code": "KW1 6LZ",
  "phone": "215-555-5555"
  "posting_location_number": "1234567890"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/royal_mail/:id

DELETE /v1/connections/carriers/royal_mail/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Seko Omni-Channel Logistics

Connection Properties:

carrier_name: seko

PropertyDescription
nicknamestring, required
access_keystring, required

Connect Account

POST /v1/connections/carriers/seko

POST /v1/connections/carriers/seko HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "my seko account",
  "access_key": "you_access_key_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/seko/:id

DELETE /v1/connections/carriers/seko/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Sendle

Connection Properties:

carrier_name: sendle

PropertyDescription
nicknamestring, required
sendle_idstring, required
api_keystring, required

Connect Account

POST /v1/connections/carriers/sendle

POST /v1/connections/carriers/sendle HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test Sendle Account",
  "sendle_id": "your_username_here",
  "api_key": "your_password_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/sendle/:id

DELETE /v1/connections/carriers/sendle/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Stamps.com

Connection Properties:

carrier_name: stamps_com

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/stamps_com

POST /v1/connections/carriers/stamps_com HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My stamps.com account",
  "username": "__YOUR_USERNAME_HERE__",
  "password": "__YOUR_PASSWORD_HERE"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/stamps_com/:id

DELETE /v1/connections/carriers/stamps_com/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

StarTrack

Connection Properties:

carrier_name: star_track

PropertyDescription
nicknamestring, required
account_numberstring, required
user_idstring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/star_track

POST /v1/connections/carriers/star_track HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Star Track account",
  "account_number": "12345",
  "user_id": "__YOUR_USERNAME_HERE__",
  "password": "__YOUR_PASSWORD_HERE"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/star_track/:id

DELETE /v1/connections/carriers/star_track/se-1234567 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Team Global Express IPEC

Connection Properties:

carrier_name: toll_ipec

PropertyDescription
nicknamestring, required
requested_by_namestring, required
requested_by_emailstring, required
company_namestring, required
address_line_1string, required
address_line_2string, optional
suburbstring required
statestring, required
contact_namestring, required
account_numberstring, required
toll_ipec_account_managerstring, required
use_test_endpointboolean, optional
skip_rating_during_label_creationboolean, optional

Connect Account

POST /v1/connections/carriers/toll_ipec

POST /v1/connections/carriers/toll_ipec HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My toll_ipec account",
  "requested_by_name":  "requested by name",
  "requested_by_email" : "john.doe@example.com",
  "company_name": "Example Corp",
  "address_line_1": "77 Netherpark Crescent",
  "address_line_2": "",
  "suburb": "Alexandria",
  "state": "Sydney",
  "contact_name": "John Doe",
  "account_number": "1234567890",
  "toll_ipec_account_manager": "Sam Smith"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/toll_ipec/:id

DELETE /v1/connections/carriers/toll_ipec/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Team Global Express Priority

Connection Properties:

carrier_name: toll_priority

PropertyDescription
nicknamestring, required
requested_by_namestring, required
requested_by_emailstring, required
company_namestring, required
address_line_1string, required
address_line_2string, optional
suburbstring required
statestring, required
contact_namestring, required
account_numberstring, required
toll_priority_account_managerstring, required
use_test_endpointboolean, optional
skip_rating_during_label_creationboolean, optional

Connect Account

POST /v1/connections/carriers/toll_priority

POST /v1/connections/carriers/toll_priority HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My toll_priority account",
  "requested_by_name":  "requested by name",
  "requested_by_email": "john.doe@example.com",
  "company_name": "Example Corp",
  "address_line_1": "77 Netherpark Crescent",
  "address_line_2": "",
  "suburb": "Alexandria",
  "state": "Sydney",
  "contact_name": "John Doe",
  "account_number": "1234567890",
  "toll_priority_account_manager": "Sam Smith"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/toll_priority/:id

DELETE /v1/connections/carriers/toll_priority/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

TNT Australia

Connection Properties:

carrier_name: tnt_australia

PropertyDescription
nicknamestring, required
usernamestring, required
passwordstring, required
prefixstring, required
account_numberstring, required
range_maxnumber, required
range_minnumber required
sender_codestring, required
tracking_passwordstring, required
tracking_usernamestring, required
tracking_group_codestring, required
is_test_credentialsboolean, optional

Connect Account

POST /v1/connections/carriers/tnt_australia

POST /v1/connections/carriers/tnt_australia HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My tnt_australia account",
  "username":  "my username",
  "password": "my password",
  "prefix": "abc123",
  "account_number": "123456",
  "range_max": 100,
  "range_min": 5,
  "sender_code": "987654",
  "tracking_password": "my tracking password",
  "tracking_username": "my tracking username",
  "tracking_group_code": "xyz456"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/tnt_australia/:id

DELETE /v1/connections/carriers/tnt_australia/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

Tusk

Connection Properties:

carrier_name: tusk

PropertyDescription
account_namestring, required
api_keystring, required

Connect Account

POST /v1/connections/carriers/tusk

POST /v1/connections/carriers/tusk HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Tusk account",
  "account_name": "__YOUR_ACCOUNT_NAME_HERE__",
  "api_key": "__YOUR_API_KEY_HERE__",
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/tusk/se-1234

DELETE /v1/connections/carriers/tusk/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

UPS

Connection Properties:

carrier_name: ups

PropertyDescriptionTypeRequired?
nicknameThis is a nickname for you to identify the carrier account in ShipStation API.stringrequired
account_numberAccount Numberstringrequired
account_postal_codeAccount Postal CodestringNo
account_country_codeCountry your UPS account is based instringNo

Connect Account

POST /v1/connections/carriers/ups

POST /v1/connections/carriers/ups HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
"nickname": "My UPS account",
"account_number": "123456789",
"account_postal_code": "10001",
"account_country_code": "US"
}

You will receive a 302 response with a Location header. You must redirect your user to the URL from this header, which will land on a UPS sign-in screen.

"Location": "https://authbridge.auctane.com/authflow/ups/shipengine/initiate?callbackUrl=https..."

We advise redirecting your user to this location URL in a pop-up window. When the user has signed in, they will land on a page that will direct them to close the window. At this point, your application should make a List Carrier call to retrieve the new list of connected carrier accounts.

IMPORTANT:

UPS Technology Agreement

By connecting a UPS account, you and your users agree to the UPS Technology Agreement.

Reconnecting a UPS Account

In some cases, you may need to reconnect a UPS account to ShipStation API. Reconnection can take place in the ShipStation API dashboard or via API using the update carrier method. Reconnecting will allow you to keep the same carrier_id and connection contract.

The following scenarios will require you to reconnect your UPS account to ShipStation API:

  • If you change your UPS account password, use the reconnect option to reauthorize the connection.
  • If your UPS account refresh token times out, use the reconnect option to resolve this issue and maintain your carrier_id. This issue is somewhat rare, but can occur on some accounts.
  • If your UPS account was connected prior to June 3, 2024, you'll need to reconnect to re-establish a connection with the UPS oAuth API. Review our How To Reauthorize Your UPS Account help article for details.

Modify UPS Settings

ShipStation API takes advantage of some of UPS's advanced functionality but does not enable it by default. These settings can be updated in the Dashboard or via the API.

The following parameters are returned when using the GET method with the carrier settings endpoint.

ParameterTypeDescription
nicknamestringThe display name assigned to the account.
is_primary_accountbooleanIndicates the account is or is not the default account.
pickup_typeenumerated stringdaily_pickup, occasional_pickup, customer_counter
See our Intro to Pickup Dropoff apge to learn more.
use_carbon_neutral_shipping_programbooleanAdds a fee to the shipment to purchase carbon offset credits.
use_ground_freight_pricingbooleanAn advanced option available for certain UPS services. See our UPS Ground Freight page for more details.
use_consolidation_servicesbooleanEnable the use of UPS Mail Innovations® and Ground Saver® services.
use_order_number_on_mail_innovations_labelsboolean
mail_innocations_endorsementenumerated stringreturn_service_requested forwarding_service_requested address_service_requested change_service_requested leave_if_no_response
mail_innovations_cost_centerstring
use_negotiated_ratesbooleanIf your account has been approved for negotiated rates, you can enable this option to use those rates. Once enabled, negotiated rates cannot be disabled.
account_postal_codestringRequired Postal code for the account.
invoicestring
mail_innovations_customer_idstringRequired to get rates for MI services. Also known as UPS MI account number.
mail_innovations_customer_guidstringRequired to get rates for MI services. Also known as a rate key.
account_country_codestringRequired 2-character country code associated with the account.
account_numberstringThe UPS account number.

Disconnect Account

DELETE /v1/connections/carriers/ups/:id

DELETE /v1/connections/carriers/UPS/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__

When UPS has been successfully disconnected, you will receive a HTTP 204, No Content status.

Yodel

Connection Properties:

carrier_name: yodel

PropertyDescription
nicknamestring, required
user_idstring, required
account_idstring, required
passwordstring, required

Connect Account

POST /v1/connections/carriers/yodel

POST /v1/connections/carriers/yodel HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "Test Yodel Account",
  "user_id": "your_user_id_here",
  "account_id": "your_account_id_here",
  "password": "your_password_here"
}

A successful connection will return the carrier's carrier_id property in the response.

Disconnect Account

DELETE /v1/connections/carriers/yodel/:id

DELETE /v1/connections/carriers/yodel/se-1234 HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__