Skip to content
Developer docsAPI referenceVehicles

List vehicles

Every vehicle you can name with vehicle_id: the presets (containers, trailers, trucks, pallets of the types your organization may use), then your organization's own vehicles.

GEThttps://runner.cargoduo.com/v1/vehicles

Free: no credits are charged.

Authentication

Bearer API key with scoperesources:readLearn more

Query parameters

NameTypeRequiredDescription
limitinteger
integer
No

Page size.

Default 201–100
cursorstring
string
No

next_cursor of the previous page.

kindstring
string
No

Only presets (preset), or only your own vehicles (custom).

presetcustom
typestring
string
No

Only vehicles of this type.

trucktrailerflatbedcontainerpalletaircraftship
qstring
string
No

Only vehicles whose name contains this text.

created_bystring
string
No

Only what this member created: me (the key's creator) or a member id (usr_…).

Example request

curl -X GET "https://runner.cargoduo.com/v1/vehicles?type=trailer" \
  -H "Authorization: Bearer $CARGODUO_API_KEY"

Example response

200 OK · SavedVehicleList
{
  "data": [
    {
      "id": "standard-trailer-13-6m",
      "object": "vehicle",
      "kind": "preset",
      "name": "Standard Trailer (13.6m)",
      "type": "trailer",
      "length": 1362,
      "width": 248,
      "height": 270,
      "max_weight": 24000,
      "floor_load_capacity": 1800,
      "axle_positions": [
        30,
        938,
        1069,
        1200
      ],
      "axle_max_loads": [
        10000,
        8000,
        8000,
        8000
      ],
      "cog_range_x": 50,
      "cog_range_y": 20,
      "aux_deck": false,
      "aux_deck_height": null,
      "aux_deck_max_weight": null,
      "tractor_weight": null,
      "empty_trailer_weight": null,
      "front_axle_to_middle_axle": null,
      "front_axle_to_tractor_cog": null,
      "front_axle_to_kingpin": null,
      "kingpin_to_rear_axle": null,
      "trailer_cog_to_rear_axle": null,
      "trailer_start_to_kingpin": null,
      "max_middle_axle_weight": null,
      "max_rear_axle_weight": null,
      "blocked_areas": [],
      "created_by": null,
      "updated_by": null,
      "created_at": null
    },
    {
      "id": "veh_118",
      "object": "vehicle",
      "kind": "custom",
      "name": "Mega trailer 13.6 m",
      "type": "trailer",
      "length": 1360,
      "width": 248,
      "height": 300,
      "max_weight": 24000,
      "floor_load_capacity": null,
      "axle_positions": [],
      "axle_max_loads": [],
      "cog_range_x": null,
      "cog_range_y": null,
      "aux_deck": false,
      "aux_deck_height": null,
      "aux_deck_max_weight": null,
      "tractor_weight": null,
      "empty_trailer_weight": null,
      "front_axle_to_middle_axle": null,
      "front_axle_to_tractor_cog": null,
      "front_axle_to_kingpin": null,
      "kingpin_to_rear_axle": null,
      "trailer_cog_to_rear_axle": null,
      "trailer_start_to_kingpin": null,
      "max_middle_axle_weight": null,
      "max_rear_axle_weight": null,
      "blocked_areas": [],
      "created_by": {
        "id": "usr_7",
        "name": "Elif Kaya"
      },
      "updated_by": {
        "id": "usr_7",
        "name": "Elif Kaya"
      },
      "created_at": "2026-10-02T08:41:17Z"
    }
  ],
  "next_cursor": ""
}

Abridged: one preset and one of your vehicles are shown.

Responses

  • 200OKOne page of vehicles.
    NameTypeRequiredDescription
    dataSavedVehicle[]
    SavedVehicle[]
    No

    Presets first, then your own vehicles, oldest first.

    next_cursorstring
    string
    No

    Pass as ?cursor= for the next page; empty on the last page.

  • 401Unauthorizedunauthorizedkey_revokedkey_expired
    • unauthorizedMissing, malformed or unknown API key.
    • key_revokedThe key was revoked.
    • key_expiredThe key passed its expiry date.
    NameTypeRequiredDescription
    errorErrorBodyrequired
    ErrorBody
    Yes
    All error codes
  • 403Forbiddenip_not_allowedsubscription_inactiveaccount_inactivescope_missing
    • ip_not_allowedThe calling IP is not on the key's allowlist.
    • subscription_inactiveThe organization has no active subscription that includes the API.
    • account_inactiveThe organization is suspended, or has no owner whose account is active.
    • scope_missingThe key lacks a scope this endpoint needs.
    NameTypeRequiredDescription
    errorErrorBodyrequired
    ErrorBody
    Yes
    All error codes
  • 422Unprocessable entityvalidation_failed
    • validation_failedThe request is well-formed JSON but describes an invalid job. details[] lists every problem.
    NameTypeRequiredDescription
    errorErrorBodyrequired
    ErrorBody
    Yes
    All error codes
  • 429Too many requestsrate_limited
    • rate_limitedToo many requests in the current minute, hour or day (per key or per organization), or more than 60 failed authentications per minute from your IP address.
    NameTypeRequiredDescription
    errorErrorBodyrequired
    ErrorBody
    Yes
    All error codes
  • 500Internal server errorinternal_error
    • internal_errorSomething failed on our side.
    NameTypeRequiredDescription
    errorErrorBodyrequired
    ErrorBody
    Yes
    All error codes
  • 503Service unavailableapi_disabled
    • api_disabledThe API is temporarily disabled (maintenance) or switched off for the organization.
    NameTypeRequiredDescription
    errorErrorBodyrequired
    ErrorBody
    Yes
    All error codes