The Sending Code API lets you generate a short code that replaces a printed shipping label.
With this API you can:
Posti APIs are secured with authentication and authorization flows based on OAuth 2.0. The production credentials (client ID and secret) can be ordered from the LogEDI@posti.com. Required information in the credentials order: Posti contract number, Organization number (Business ID), contact information.
application/x-www-form-urlencoded
.
Production authentication token request URL:
https://gateway-auth.posti.fi/api/v1/token
Sample access token cURL request:
curl -X POST https://gateway-auth.posti.fi/api/v1/token \ --header "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "grant_type=client_credentials" \ --data-urlencode "client_id=<DEMO-USER-ID>" \ --data-urlencode "client_secret=<DEMO-SECRET-ID>"
If the client is successfully authenticated, an access token is returned. The content of the token_value is encrypted. The targets list the available APIs that are allowed to be used with the token.
{ "access_token": "", "token_type": "Bearer", "expires_in": 3600, "posti_fi": { "targets": { "2025-04": { "url": "https://gateway.posti.fi/2025-04", "tier": 0 } } } }
To use the access token to authenticate API request, construct a normal HTTPS request and include an Authorization header with the value of Bearer <token_value>.
Sample Sending Code API cURL request:
curl -X POST https://gateway.posti.fi/2025-04/labelless \ --header "Content-Type: application/json" \ --header "Authorization: Bearer <token_value>" \ --data "{'searchCriteria': {'trackingNumber': 'JJFI65432100000000224'}}"
Access tokens obtained from the token endpoint expire in one hour (3600 seconds).
You can view the OpenAPI specification here.
Pickup Point API is part of Posti APIs and follows a long-term version numbering, visible in the path in “yyyy-mm” format. Yearly releases will be published, and each version is supported for three years.
Currently only a production environment is available for customers.
Production Sending Code API endpoints
Create a sending code for a shipment
POST https://gateway.posti.fi/2025-04/labelless
Retrieve sending code by tracking number
GET https://gateway.posti.fi/2025-04/labelless/{trackingNumber}
Get shipment details by sending code
GET https://gateway.posti.fi/2025-04/labelless/shipment/{sendingCode}
"validation": {"noEdiCheck": true}
if you want to bypass the EDI
check. Normally, the system ensures the shipment has EDI data before
creating a code. { "searchCriteria": { "trackingNumber": " JJFI65432100000000224" }, "validation": { "noEdiCheck": true } }
You’ll get a list of shipments with their sending codes.
Example:
{ "shipments": [ { "trackingNumber": " JJFI65432100000000224", "sendingCode": "654321" } ] }