# Lalamove > Lalamove is a Hong Kong-founded on-demand logistics and same-day delivery platform operating across Asia and Latin America. Its Delivery API (v3) lets partners request quotations, place and edit delivery orders, track assigned drivers, add priority fees, and receive order lifecycle webhooks across eleven markets. Generated by the API Evangelist enrichment pipeline on 2026-07-19. Lalamove does not publish its own /llms.txt (probed developers.lalamove.com, www.lalamove.com, lalamove.com, rest.lalamove.com — 403 or 404). This file is generated from the API Evangelist catalog entry and the artifacts in this repository, all sourced from https://developers.lalamove.com/. ## Key facts - API: Lalamove Delivery API v3, REST over HTTPS, JSON in and out. - Production base URL: https://rest.lalamove.com/v3 - Sandbox base URL: https://rest.sandbox.lalamove.com/v3 - Auth: HMAC SHA256 request signing. `Authorization: hmac {KEY}:{TIMESTAMP}:{SIGNATURE}` — NOT a bearer token. - Every request also requires a `Market` header (UN/LOCODE) and a `Request-ID` nonce. - Markets: HK, SG, MY, TH, PH, ID, VN, TW, JP, MX, BR. - Envelope: requests and responses wrap the payload in a top-level `data` object. - Errors: custom `{"errors": [{"id","message","detail"}]}` array — not RFC 9457. - No idempotency key. No pagination. No published OpenAPI or AsyncAPI. ## Endpoints - POST /v3/quotations — request a delivery quotation for a route of stops - GET /v3/quotations/{quotationId} — retrieve a quotation - POST /v3/orders — place an order against a quotation ID - GET /v3/orders/{orderId} — retrieve order details and status - PATCH /v3/orders/{orderId} — edit drop-off locations before pickup - DELETE /v3/orders/{orderId} — cancel an order within the policy window - GET /v3/orders/{orderId}/drivers/{driverId} — get assigned driver details - DELETE /v3/orders/{orderId}/drivers/{driverId} — change the assigned driver - POST /v3/orders/{orderId}/priority-fee — add or increase a tip - GET /v3/cities — market service types and special request configuration - PATCH /v3/webhook — configure the partner webhook URL ## Order lifecycle ASSIGNING_DRIVER -> ON_GOING -> PICKED_UP -> COMPLETED. Terminal alternatives: CANCELED (canceled within policy), REJECTED (rejected twice, no longer broadcast), EXPIRED (two hours with no driver acceptance). ## Docs - [Developer portal / API reference](https://developers.lalamove.com/): authentication, order flow, service types, quotations, orders, drivers, webhooks, errors, onboarding. - [Partner Portal](https://partnerportal.lalamove.com): credentials (Developers tab), wallet top-up, webhook configuration. - [Status page](https://status.lalamove.com): platform availability. - [GitHub organization](https://github.com/lalamove): SDK and example source. ## SDKs and examples - [@lalamove/lalamove-js](https://www.npmjs.com/package/@lalamove/lalamove-js): official Node.js/TypeScript SDK (v1.1.0), source at https://github.com/lalamove/delivery-nodejs-sdk - [lalamove/delivery-php-sdk](https://github.com/lalamove/delivery-php-sdk): PHP SDK source, published on Packagist as lalamove-api/delivery-sdk (self-described WIP) - [lalamove/api-examples](https://github.com/lalamove/api-examples): REST API examples in C#, Go, Java, Node.js, PHP, Python and Ruby ## Repository artifacts - authentication/lalamove-authentication.yml — HMAC signing steps and required headers - conventions/lalamove-conventions.yml — envelope, market scoping, tracing, rate limits, versioning - errors/lalamove-problem-types.yml — HTTP statuses and the ERR_ code registry - asyncapi/lalamove-delivery-webhooks.yml — the ten webhook events and order statuses - data-model/lalamove-data-model.yml — Quotation / Order / Driver / Stop / City entity graph - lifecycle/lalamove-lifecycle.yml — versioning, deprecation posture, markets, onboarding - changelog/lalamove-changelog.yml — dated changelog, March 2025 to April 2026 - sandbox/lalamove-sandbox.yml — sandbox host, key prefixes, testing guidance - packages/lalamove-packages.yml — first-party and community client libraries - conformance/lalamove-conformance.yml — standards conformance assertions with evidence - security/lalamove-domain-security.yml — TLS/HSTS/DNSSEC/SPF/DMARC probe results - skills/ — packaged Agent Skills for the quote-to-delivery and tracking flows ## Integration notes for agents - Sign every request; a stale or mismatched timestamp yields HTTP 401. The timestamp inside the Authorization header must be byte-identical to the one used to build the signature. - Quotations expire. Re-quote rather than reusing a stale quotationId (ERR_INVALID_QUOTATION_ID). - There is NO idempotency key. Do not blind-retry POST /v3/orders after a timeout — reconcile with GET /v3/orders/{orderId} first, or you will dispatch a duplicate courier. - Placing orders, canceling, changing drivers and adding priority fees spend real money from a prepaid market wallet and dispatch physical couriers. Treat these as high-consequence and require human confirmation. - Rate-limit headers are per-endpoint: RateLimit-Limit-Post{API}, RateLimit-Remaining-Post{API}, RateLimit-Reset-Post{API}. - Call GET /v3/cities before quoting to enumerate valid service types and special requests for the market.