API reference
All endpoints use the same URLs. Choose the logistics provider with the carrier field (body or query). One Bearer token works for every supported carrier.
Overview
Base URL
http://localhost/api
Use your deployed app origin as the base (e.g. https://your-domain.com when live, or http://localhost:8000 during local development).
Authentication
Authorization: Bearer <token>
Content type
Content-Type: application/json
Welcome to the EkspedisiKu API documentation. This API enables developers, partners, and system integrators to access shipping services through a single, consistent gateway.
With one API key, use the same endpoints (/api/rates, /api/shipments, /api/track/{id}) and select the provider via the carrier field or ?carrier= query.
Carrier parameter
Supported carrier values (booking & tracking). Rates returns all ready carriers unless you filter in your client.
| carrier | Booking | Tracking id | Pickup API |
|---|---|---|---|
| lion_parcel | origin, destination, package | STT / resi | Yes |
| lalamove | pickup/dropoff lat,lng + contacts | orderId | No (on-demand) |
| jne, jnt | Coming soon | ||
Key Features
- Easy integration: One API key for all supported carriers.
- Normalized responses: Rates and tracking are normalized so clients consume a consistent structure.
- Secure: Bearer token authentication, throttling, and usage history logging.
About this documentation
This guide covers:
- API endpoints and parameters
- Authentication and required headers
- Request/response examples
- Error handling
Server configuration
Set carrier credentials on the EkspedisiKu server (.env). Clients only send the Bearer token.
| Carrier | Variables |
|---|---|
| lion_parcel | LION_API_URL, LION_CLIENT_ID, LION_CLIENT_SECRET, LION_WEBHOOK_SECRET |
| lalamove | LALAMOVE_API_URL, LALAMOVE_API_KEY, LALAMOVE_API_SECRET, LALAMOVE_MARKET, LALAMOVE_DEFAULT_SERVICE_TYPE |