canonical: https://jentic.com/apis/postnord.com/postnord

# PostNord API

Jentic publishes the only available OpenAPI specification for PostNord API, keeping it validated and agent-ready. The PostNord API provides shipment tracking, service point lookup, and transit time calculation for parcels in Sweden, Denmark, Norway, and Finland. It supports tracking by identifier or customer reference, finding nearest service points by address or GPS coordinates, and calculating expected transit times between postal codes across Nordic countries.

## For AI agents

Track shipments across Nordic countries, find nearest pickup service points by address or coordinates, and calculate transit times between postal codes in Sweden, Denmark, Norway, and Finland.

## Scope

Does not handle shipment booking, label generation, or customs declarations - use for tracking, service point lookup, and transit time estimation only.

## Capabilities

- Track shipments by tracking number or customer reference with event-level detail
- Find nearest service points by street address with configurable result count up to 20
- Locate pickup points by GPS coordinates for map-based location services
- Calculate expected transit days between origin and destination postal codes
- Retrieve service point details including opening hours and route distance
- Support multi-language responses in English, Swedish, Danish, Norwegian, and Finnish

## Use cases

### Parcel Tracking Integration

Integrate PostNord shipment tracking into e-commerce platforms and customer portals. The API returns detailed tracking events with timestamps, event codes, and location data for each shipment. Supports tracking by PostNord identifier or seller-assigned customer reference number, enabling both carrier-level and order-level tracking without requiring end customers to know internal shipment IDs.

Example prompt: Track shipment with identifier 'SE123456789' using GET `/rest/shipment/v5/trackandtrace/findByIdentifier.json` and return the current status and estimated delivery date

### Service Point Finder for Checkout Flows

Display nearby PostNord pickup locations during e-commerce checkout so customers can choose their preferred collection point. The API returns up to 20 service points sorted by distance, including address, coordinates, opening hours, and route distance in meters. Supports lookup by street address or GPS coordinates for both desktop address entry and mobile location-based flows.

Example prompt: Find the 5 nearest service points to postal code '11153' in Sweden (country code SE) using GET `/rest/businesslocation/v5/servicepoint/findNearestByAddress.json`

### Transit Time Estimation

Calculate expected delivery times between Nordic postal codes for a given PostNord service type. The API returns transit days and expected delivery date, enabling accurate delivery date displays at checkout and logistics planning. Supports routes within and between Sweden, Denmark, Norway, and Finland with service-specific transit calculations.

Example prompt: Calculate transit time from postal code '11153' in Sweden to '2100' in Denmark for service code '19' using GET `/rest/transport/v1/transittime/getTransitTimeInformation.json`

### AI Agent Logistics Monitoring

Enable AI agents to monitor Nordic shipment status and locate pickup points through Jentic. Agents discover tracking and service point operations via intent search, receive the operation schemas with required parameters, and execute queries without navigating PostNord developer documentation. Jentic handles API key injection so agents focus on shipment data interpretation.

Example prompt: Search Jentic for 'track a parcel in Sweden', load the PostNord tracking schema, and execute with a tracking identifier to retrieve delivery status and events

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/rest/shipment/v5/trackandtrace/findByIdentifier.json` | Track a shipment by tracking number |
| GET | `/rest/shipment/v5/trackandtrace/findByReference.json` | Track a shipment by customer reference |
| GET | `/rest/businesslocation/v5/servicepoint/findNearestByAddress.json` | Find nearest service points by address |
| GET | `/rest/businesslocation/v5/servicepoint/findNearestByCoordinates.json` | Find nearest service points by GPS coordinates |
| GET | `/rest/businesslocation/v5/servicepoint/getByServicePointId.json` | Get service point details by ID |
| GET | `/rest/transport/v1/transittime/getTransitTimeInformation.json` | Calculate transit time between postal codes |

## Key resources

- **Tracking** — Track shipments by identifier or customer reference with event history
- **Service Points** — Find and retrieve details for PostNord pickup and drop-off locations
- **Transit Times** — Calculate expected delivery duration between postal codes

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 49 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 100 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 50 / 100
  - Agent Usability: 94 / 100
  - Security: 15 / 100
  - AI Discoverability: 100 / 100
- **View full report:** https://jentic.com/apis/postnord.com/postnord/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the PostNord API by hand means appending your apikey as a query parameter on every call to api2.postnord.com and threading the right track-and-trace or service-point endpoint yourself. Through Jentic you install once, import the PostNord API from the API Directory, store the API key once, and your agent calls it.
- **Permission scoping:** PostNord carries the parcel identifier and address in the query rather than as a path resource, so scoping is by operation: you limit the agent to the operations it needs, such as tracking a shipment or finding the nearest service point. Transit-time lookups are included only if you add that operation.
- **Credential handling:** Your PostNord API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'track a parcel in Sweden' or 'find the nearest service point', and Jentic returns the matching PostNord operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **DHL Shipment Tracking API** — Global shipment tracking across DHL Express, Parcel, and Freight divisions
- **AfterShip API** — Multi-carrier shipment tracking aggregator with delivery notifications
- **ShipEngine API** — Multi-carrier shipping platform for label generation and rate comparison

## FAQ

### Why is there no official OpenAPI spec for PostNord API?

PostNord does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call PostNord API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the PostNord API use?

The PostNord API uses an API key passed as a query parameter named apikey. You obtain a key from the PostNord developer portal. Through Jentic, this key is stored encrypted in the credential vault and injected automatically into requests.

### Which countries does the PostNord API cover for shipment tracking?

The PostNord API covers Sweden (SE), Denmark (DK), Norway (NO), and Finland (FI). All service point and tracking endpoints accept country codes from these four Nordic countries. Transit time calculations support routes within and between these countries.

### What are the rate limits for the PostNord API?

The PostNord API enforces per-key rate limits that depend on your developer account tier. Service point lookups return up to 20 results per request via the numberOfServicePoints parameter. Monitor response codes for rate limit indicators and implement backoff when needed.

### How do I find the nearest pickup point through the PostNord API using Jentic?

Install the SDK with pip install jentic, then search for 'find nearest PostNord service point'. Jentic returns the findNearestByAddress operation schema requiring countryCode and at least a postalCode or city. Execute to receive service points sorted by distance with addresses, coordinates, and opening hours.

### Can I track a shipment by order number rather than tracking ID?

Yes. The findByReference endpoint at `/rest/shipment/v5/trackandtrace/findByReference.json` accepts a customer reference number along with your PostNord customer number. This enables tracking by your internal order ID without requiring the PostNord tracking identifier.

### Can I limit what my agent is allowed to do with the PostNord API?

Yes. Because you run Jentic One yourself, your own rules decide which PostNord operations and credentials the agent may use, and scoping here works at the operation level since the parcel identifier and address travel in the query rather than as a path resource. You can allow only the operations the agent needs, such as tracking a shipment by identifier or finding the nearest service point by address or coordinates, while withholding others. Transit-time lookups are available to the agent only if you include that operation in its allowed set. The API key stays with your instance and is injected at execution, so it never reaches the agent's prompt or logs.
