Skip to main content
Routal

Create a task on a stop

Attaches a new task to an existing stop.

POST
/v2/task

Attaches a new task to an existing stop. A task is a labeled checklist item the driver ticks during the visit: it carries a label, optional comments, optional barcode (to be scanned), custom_fields and a status (pending / completed / canceled).

Use tasks when a single stop contains multiple SKUs or sub-operations the driver has to tick / scan one by one. For richer proof-of-delivery payloads (signatures, photos, free-form comments) the driver app produces a report on the stop — that's separate from tasks.

private_key<token>

The Routal API authenticates requests with an API key passed as the private_key query string parameter. Generate and rotate your keys from the Developer Settings section of your Routal workspace.Never ship API keys to a browser or mobile app — they must stay server-side.

In: query

Query Parameters

stop_id*string

Stop ID

Match^[0-9a-f]{24}

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v2/task?stop_id=string" \  -H "Content-Type: application/json" \  -d '{}'
{
  "id": "4f75d991ac359f8c4c79d762",
  "stop_id": "4f75d991ac359f8c4c79d762",
  "label": "Deliver refrigerated parcel 1/2",
  "comments": "Keep cold chain. Weight 12.4 kg.",
  "barcode": "8410076472158",
  "status": "completed",
  "custom_fields": {
    "sku": "SKU-4582",
    "quantity": 2,
    "lot_number": "L-2026-038"
  },
  "created_by": "4f75d991ac359f8c4c79d762",
  "created_at": "2026-05-29T14:55:24.485Z",
  "updated_at": "2026-05-29T14:55:24.485Z",
  "deleted_at": "2026-05-29T14:55:24.485Z"
}
{
  "message": "Domain not found",
  "message_id": "highway.domain.error.not_found"
}
Empty
{
  "message": "Domain not found",
  "message_id": "highway.domain.error.not_found"
}
{
  "message": "Domain not found",
  "message_id": "highway.domain.error.not_found"
}
Empty
Empty