Optional space-delimited scopes.
ShipSaving New Open API (v1.0.5)
https://x-api.shipsaving.us/
https://x-api.shipsaving.com/
- Sandbox server
https://x-api.shipsaving.us/oauth2/token
- Production server
https://x-api.shipsaving.com/oauth2/token
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
-u <username>:<password> \
https://x-api.shipsaving.us/oauth2/token \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d grant_type=client_credentials \
-d scope=API
{ "access_token": "eyJraWQiOiIxIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJTU19MSVZFX3RoNXE5S0pUZTBrdllsM3pRSFFmU0Q3NW5ETGlZQ2s4dlowSSIsImF1ZCI6IlNTX0xJVkVfdGg1cTlLSlRlMGt2WWwzelFIUWZTRDc1bkRMaVlDazh2WjBJIiwibmJmIjoxNzU0MzU1MzM0LCJjb21wYW55X2lkIjoiMTgyMyIsInVzZXJfaWQiOiIyNDA3Iiwic2NvcGUiOlsiQVBJIl0sImlzX3ZhbGlkIjp0cnVlLCJpc3MiOiJodHRwczovL3gtYXBpLnNoaXBzYXZpbmcudXMiLCJleHAiOjE3NTQzNTcxMzQsImlhdCI6MTc1NDM1NTMzNCwidGVzdF9tb2RlbCI6ZmFsc2V9.CsOfJozZUmd5cFrSodxGuDH0xxRQjau_qKwyOuJBPWigJeZXeoB_FgOl7r2kDfVndrru7IkXw5XCEmePkTJ25nyTD7RiysInBOuU0a89mfj4czedC8qHIHU-EI1CfRopHan2dCHfSog5skNT6edAmQfSNndj6mV18Pr0AclnhEgIG-CsfYkxZXRITXeqFKqiLfbUt8A4YsqT9zhXHqqttk42rBNzSddgBcBkHNGdys-qltEPc7xB_NpV02tZbsfl-hcHbHZYt_ufT4u4BLy5g7p6bd4Tt2vgUbRrVx-umCWuT3dad5di2Loj9vs2boywSCQshM1Aj4Fxzg8Sk-GsBw", "scope": "API", "token_type": "Bearer", "expires_in": 1799 }
Request
The Address Validation API checks the validity of U.S. domestic addresses and returns standardized address components in accordance with USPS® addressing standards. This helps improve delivery accuracy, reduce undeliverable mail, and support consistent pricing for shipping and logistics.
Non-U.S. addresses
Ifcountry != "US"
, the validation process is skipped (the API is designed for U.S. domestic addresses only).Errored results
Iferrored = true
, theerrors
array is returned and should be used directly as the error message(s).Corrected without errors
Iferrored = false && corrected = true
, use the returned address fields (street
,street2
,city
,state
,zip
,country
,residential
) as the standardized address.- The
corrections
array provides machine-readable codes that indicate how to improve the original input for a better match.
- The
Standardized flag
The fieldstandardized
indicates whether the returned address differs from the original input:- If identical,
standardized = false
. - If different (e.g., casing, ZIP+4 adjustments, or street corrections), then
standardized = true
.
- If identical,
Primary street line (house number + street name).
ZIP or ZIP+4 (US). Accepts 5 or 9 digits, with optional dash.
- Sandbox server
https://x-api.shipsaving.us/api/address/validate
- Production server
https://x-api.shipsaving.com/api/address/validate
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://x-api.shipsaving.us/api/address/validate \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"street": "17XXX Castleton Street",
"street2": "STE XXX",
"city": "City Of XXXX",
"state": "CA",
"zip": "91748-5761",
"country": "US"
}'
OK
Validation errors discovered during processing.
Applied corrections or suggestions.
{ "code": "ok", "msg": "ok", "data": { "street": "17800 CASTLETON ST", "street2": null, "city": "CITY OF INDUSTRY", "state": "CA", "zip": "91748-1749", "country": "US", "residential": true, "errored": true, "corrected": true, "standardized": false, "errors": [ … ], "corrections": [ … ] } }