FedEx Authentication with RocketShipIt Child Credentials
RocketShipIt is a FedEx® Compatible solution. Instead of registering for your own FedEx developer account and creating an app, you can generate FedEx API credentials for your FedEx account number directly from the My Account page. This gives you a child_key and child_secret linked to your FedEx account.
Step 1: Get an access token
FedEx child credentials cannot be exchanged for a token by calling FedEx directly — the token request must also be signed with RocketShipIt's parent credentials, which we hold securely in the cloud. Send the Authenticate call to the RocketShipIt Cloud API with your child credentials and we take care of the rest:
curl -X POST \
https://api.rocketship.it/v1 \
-H 'Content-Type: application/json' \
-H 'x-api-key: YOUR_RS_API_KEY' \
-d '{
"carrier": "FedEx-REST",
"action": "authenticate",
"params": {
"child_key": "YOUR_CHILD_KEY",
"child_secret": "YOUR_CHILD_SECRET"
}
}'
Note:
YOUR_RS_API_KEYis your RocketShipIt API key from the My Account page, the same key used for all Cloud API requests. You do not need aclient_idorclient_secret— that is the point of child credentials.
Example response:
{
"data": {
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6...",
"errors": null,
"expires_at": 1765432101000,
"expires_in": 3600,
"scope": "CXS",
"token_type": "bearer"
},
"meta": {
"code": 200,
"error_message": ""
}
}
access_tokenis thekeyyou will use in subsequent requests.expires_inis seconds until expiration. FedEx tokens are valid for ~1 hour.expires_atis a Unix epoch timestamp in milliseconds.
Store the token and reuse it until it expires, then make the Authenticate call again to get a fresh one. See Authenticating with REST oauth APIs for general guidance on token handling.
Step 2: Use the token as key
Use the access_token as the key parameter in any FedEx-REST request. These requests can go to the Cloud API or to your self-hosted RocketShipIt instance:
{
"carrier": "FedEx-REST",
"action": "track",
"params": {
"key": "eyJhbGciOiJIUzI1NiIsInR5cCI6...",
"tracking_number": "794843185271"
}
}
Notes
- The
Authenticatecall with child credentials only works against the RocketShipIt Cloud API (https://api.rocketship.it/v1). A self-hosted instance cannot mint tokens from child credentials alone, but it can use the resultingkeyfor all other FedEx-REST actions. - If you supply your own
client_id/client_secret(from your own FedEx developer account), those are always used instead — child credentials are only an alternative for users who don't want to manage a FedEx developer account. - Child credentials are production credentials tied to the FedEx account number you registered on the My Account page.
