Collection points
A collection point is a store where the receiver picks up a parcel instead of having it delivered. Aramex is the only courier with collection points.
Looking up collection points
Section titled “Looking up collection points”If you want to show customers the Aramex collection points near them, for example as information on your checkout page, Transdirect has a lookup:
POST https://api.transdirect.com.au/api/collection-points/searchIt is outside /api/v5, accepts anonymous searches and allows 30 requests a minute per IP address. Call it from your server: browsers on other websites cannot call it directly.
| Field | Type | Required | Description |
|---|---|---|---|
postcode | string | Yes | Four-digit Australian postcode to search near. |
suburb | string | No | Suburb, to narrow the search. |
state | string | No | State code, for example NSW. |
street_address | string | No | Street address, to search near a specific address. |
limit | integer | No | Maximum points to return, from 1 to 100. Defaults to 20. |
booking_id | integer | No | Filter points by the booking’s items only when an api-key authenticates its owner. Ignored for anonymous requests and bookings owned by another member. |
The same ownership rule applies to POST /api/collection-points/closest and the /nearby-agents alias. A supplied invalid API key returns 401; omit the header for an anonymous search.
curl -X POST https://api.transdirect.com.au/api/collection-points/search \ -H "Content-Type: application/json" \ -d '{ "postcode": "2000", "suburb": "SYDNEY", "state": "NSW", "limit": 5 }'200 OK, with only the points that accept collections:
{ "success": true, "provider": "aramex", "count": 1, "agents": [ { "agent_id": "AU000123", "store_name": "Example Newsagency", "address": { "street_address": "100 George Street", "locality": "SYDNEY", "state": "NSW", "postcode": "2000", "country": "AU" }, "coordinates": { "latitude": -33.8688, "longitude": 151.2093 }, "distance_km": 0.42, "trading_hours": null, "collections_enabled": true, "max_weight_dead": 25, "single_dimension_limit": 120, "dimension_combined_max": 200, "phone": "", "email": "" } ]}coordinates values can be numbers, numeric strings or null. trading_hours and the three limits are passed through as Aramex supplies them, so treat them as display-only.
POST /api/collection-points/closest takes the same body and returns the nearest point as agent.
Errors
Section titled “Errors”Errors have the shape {"success": false, "error": "<message>"}.
| Status | error | Cause |
|---|---|---|
400 | Postcode is required | No postcode. |
400 | Invalid postcode format. Australian postcodes must be 4 digits. | postcode is not four digits. |
429 | Too many requests. Please wait a moment before searching again. | More than 30 requests a minute from your IP address. |
502 | For example Unable to search for collection points at this time. Please try again later. | Aramex could not be reached. Try again. closest also returns 502 when nothing is found near the postcode. |