---
title: Adi Shipping developer resources and public tracking API
description: Official Adi Shipping API discovery, OpenAPI, CLI, typed errors, rate limits, versioning, and read-only ZIM tracking documentation.
canonical: https://adi-shipping.com/developers/
last-updated: 2026-10-07
---

# Adi Shipping developer resources and public tracking API

The Adi Shipping website exposes one small, read-only endpoint for retrieving available ZIM shipment milestones. It does not create bookings, return shipping quotes, expose carrier credentials, or guarantee that an update will be available. Start with the [JSON API discovery document](https://adi-shipping.com/api/) or the [OpenAPI 3.1 contract](https://adi-shipping.com/openapi.json).

## Endpoint

`GET https://adi-shipping.com/api/v1/tracking.php?reference=REFERENCE`

The required `reference` parameter accepts a ZIM booking, bill of lading, or container reference. It may contain letters, digits, dots, underscores, slashes, and hyphens, with a maximum length of 40 characters. The endpoint does not require a client API key and is rate-limited.

```sh
curl --get 'https://adi-shipping.com/api/v1/tracking.php' \
  --data-urlencode 'reference=YOUR_REFERENCE' \
  --header 'Accept: application/json'
```

The `RateLimit-Policy` and `RateLimit` response headers describe the allowance and remaining requests. Compatibility fields `RateLimit-Limit`, `RateLimit-Remaining`, and `RateLimit-Reset` are also returned. A `429` response includes `Retry-After`.

## Responses

A successful response uses `application/json`, sets `ok` to `true`, and returns carrier, vessel, status, location, ETA, and milestone events. Carrier estimates are not guaranteed arrival times.

Errors use `application/problem+json` and the RFC 9457 Problem Details members, plus stable `code` and `resolution` fields. Compatibility members for existing website clients remain available:

- `400` — the reference is missing or invalid.
- `404` — no matching ZIM shipment was found.
- `429` — the rate limit was reached; wait before retrying.
- `502` — the live carrier service could not return data.
- `503` — live tracking is temporarily unavailable.

## Contract and responsible use

- [JSON API discovery document](https://adi-shipping.com/api/)
- [OpenAPI 3.1 specification](https://adi-shipping.com/openapi.json)
- [Typed JSON error model](https://adi-shipping.com/developers/errors/)
- [Versioning and deprecation policy](https://adi-shipping.com/developers/versioning/)
- [Official Adi Shipping CLI](https://adi-shipping.com/developers/cli/)
- [Contact and operational support](https://adi-shipping.com/contact/)
- [Privacy information](https://adi-shipping.com/privacy/)

Use only a known customer shipment reference. Do not enumerate references, store shipment details longer than necessary, or present estimates as guaranteed. Quote and case-specific requests require review by Adi Shipping; there is no separate API-key registration process or sandbox.

The compatibility alias `/api/tracking.php` is deprecated from 10 October 2026 and sunsets on 1 April 2027. It returns `Deprecation`, `Sunset`, successor, and policy links. Use `/api/v1/tracking.php` for all new integrations.
