For the complete documentation index, see llms.txt. This page is also available as Markdown.

Checkpoints

The individual stops that make up a route, each essentially a task.

A checkpoint is one stop on a route. It is essentially a task with an extra link to the parent route, so it carries the same fields and completes the same way.

These operations work on checkpoints individually, which is what changing one stop on an existing route needs. Creating a route creates its checkpoints with it.

Checkpoint object

For the attached form, see the form object.

API actions

API base path: /task/checkpoint.

Operations that list no errors of their own return only the general error codes.

For the external_id_counts field in the response, see the task/route/create method description.


Required sub-user rights: task_update.

Create checkpoint

post
/task/checkpoint/create

Create a checkpoint on an existing route, and return its ID.

The checkpoint is inserted at order in the parent route's checkpoint list, and any checkpoint already at that position, along with everything after it, shifts one place right.

to is required and cannot be in the past, and from cannot be after to. Both rules are checked before anything else and report task.to or task.from rather than a top-level parameter.

Requires the task_update right.

Authorizations
AuthorizationstringRequired

Either a user session hash or an API key, with the "NVX " prefix, for example "NVX 22eac1c27af4be7b9d04da2ce1af111b". Obtain a session hash from the userAuth operation, or create an API key from the API keys operations. A small number of operations accept a session hash only and reject an API key with error code 4; each says so in its description.

Body
create_formbooleanOptional

Optional. Default false. When true, the form_template_id inside checkpoint is read and a form is created from that template.

Responses
200

The created checkpoint

application/json
successbooleanRead-onlyOptional

true if request finished successfully.

Example: true
idintegerOptional

ID of the new checkpoint.

post/task/checkpoint/create
POST /v2/task/checkpoint/create HTTP/1.1
Host: api.eu.navixy.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 777

{
  "checkpoint": {
    "id": 1,
    "tracker_id": null,
    "location": {
      "lat": 1,
      "lng": 1,
      "address": "text",
      "radius": 1
    },
    "label": "text",
    "description": "text",
    "from": "2026-08-24 09:00:00",
    "to": "2026-08-24 09:00:00",
    "external_id": null,
    "status": "unassigned",
    "status_change_date": "text",
    "max_delay": 1,
    "min_stay_duration": 1,
    "min_arrival_duration": 1,
    "origin": "manual",
    "tags": [
      1
    ],
    "type": "task",
    "form": {
      "id": 1,
      "label": "text",
      "description": "text",
      "fields": [
        {
          "ANY_ADDITIONAL_PROPERTY": "anything"
        }
      ],
      "submit_in_zone": true,
      "task_id": null,
      "checkin_id": null,
      "tracker_id": null,
      "template_id": null,
      "template_version": null,
      "values": null,
      "submitted": null,
      "submit_location": {
        "lat": 1,
        "lng": 1,
        "address": "text"
      }
    },
    "form_template_id": 1,
    "fields": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "parent_id": 1,
    "order": 1
  },
  "create_form": true
}
{
  "success": true,
  "id": 1,
  "external_id_counts": [
    {
      "external_id": "text",
      "count": 1
    }
  ]
}

Errors

These errors come in addition to the general error codes:

  • 201 - Not found in the database - if task.tracker_id is not null and belongs to nonexistent tracker.

  • 236 - Feature unavailable due to tariff restrictions - if device's tariff does not allow usage of tasks.


Required sub-user rights: task_update.

Delete checkpoint

post
/task/checkpoint/delete

Delete a checkpoint by ID. The remaining checkpoints on the route close the gap.

Only a task in unassigned or assigned state can be changed. Anything else returns error 255.

Also accepts GET with the same parameters as query-string values.

Requires the task_update right.

Authorizations
AuthorizationstringRequired

Either a user session hash or an API key, with the "NVX " prefix, for example "NVX 22eac1c27af4be7b9d04da2ce1af111b". Obtain a session hash from the userAuth operation, or create an API key from the API keys operations. A small number of operations accept a session hash only and reject an API key with error code 4; each says so in its description.

Body
checkpoint_idinteger · min: 1Required

ID of the checkpoint to delete.

Responses
200

Checkpoint deleted

application/json
successbooleanRead-onlyOptional

true if request finished successfully.

Example: true
post/task/checkpoint/delete
POST /v2/task/checkpoint/delete HTTP/1.1
Host: api.eu.navixy.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 19

{
  "checkpoint_id": 1
}
{
  "success": true
}

Errors

These errors come in addition to the general error codes:

  • 201 - Not found in the database - if there is no checkpoint with such an ID.


List checkpoints

post
/task/checkpoint/list

Return checkpoints by ID.

checkpoint_ids is required and must not be empty, so this operation reads a known set rather than browsing all checkpoints.

Also accepts GET with the same parameters as query-string values.

Authorizations
AuthorizationstringRequired

Either a user session hash or an API key, with the "NVX " prefix, for example "NVX 22eac1c27af4be7b9d04da2ce1af111b". Obtain a session hash from the userAuth operation, or create an API key from the API keys operations. A small number of operations accept a session hash only and reject an API key with error code 4; each says so in its description.

Body
checkpoint_idsinteger[] · min: 1Required

IDs of the checkpoints to return. Must not be empty.

Responses
200

Matching checkpoints

application/json
successbooleanRead-onlyOptional

true if request finished successfully.

Example: true
countintegerOptional

Total number of checkpoints found.

post/task/checkpoint/list
POST /v2/task/checkpoint/list HTTP/1.1
Host: api.eu.navixy.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 22

{
  "checkpoint_ids": [
    1
  ]
}
{
  "success": true,
  "list": [
    {
      "id": 1,
      "user_id": 1,
      "tracker_id": null,
      "location": {
        "lat": 1,
        "lng": 1,
        "address": "text",
        "radius": 1
      },
      "label": "text",
      "description": "text",
      "creation_date": "text",
      "from": "2026-08-24 09:00:00",
      "to": "2026-08-24 09:00:00",
      "external_id": null,
      "status": "unassigned",
      "status_change_date": "text",
      "max_delay": 1,
      "min_stay_duration": 1,
      "min_arrival_duration": 1,
      "arrival_date": null,
      "stay_duration": 1,
      "origin": "manual",
      "tags": [
        1
      ],
      "type": "task",
      "form": {
        "id": 1,
        "label": "text",
        "description": "text",
        "fields": [
          {
            "ANY_ADDITIONAL_PROPERTY": "anything"
          }
        ],
        "created": "text",
        "submit_in_zone": true,
        "task_id": null,
        "checkin_id": null,
        "tracker_id": null,
        "template_id": null,
        "template_version": null,
        "values": null,
        "submitted": null,
        "submit_location": {
          "lat": 1,
          "lng": 1,
          "address": "text"
        }
      },
      "form_template_id": 1,
      "fields": {
        "ANY_ADDITIONAL_PROPERTY": "anything"
      },
      "files": [
        {
          "ANY_ADDITIONAL_PROPERTY": "anything"
        }
      ],
      "parent_id": 1,
      "order": 1
    }
  ],
  "count": 1
}

Read checkpoint

post
/task/checkpoint/read

Return one checkpoint by ID.

Also accepts GET with the same parameters as query-string values.

Authorizations
AuthorizationstringRequired

Either a user session hash or an API key, with the "NVX " prefix, for example "NVX 22eac1c27af4be7b9d04da2ce1af111b". Obtain a session hash from the userAuth operation, or create an API key from the API keys operations. A small number of operations accept a session hash only and reject an API key with error code 4; each says so in its description.

Body
checkpoint_idinteger · min: 1Required

ID of the checkpoint.

Responses
200

The checkpoint

application/json
successbooleanRead-onlyOptional

true if request finished successfully.

Example: true
post/task/checkpoint/read
POST /v2/task/checkpoint/read HTTP/1.1
Host: api.eu.navixy.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 19

{
  "checkpoint_id": 1
}
{
  "success": true,
  "value": {
    "id": 1,
    "user_id": 1,
    "tracker_id": null,
    "location": {
      "lat": 1,
      "lng": 1,
      "address": "text",
      "radius": 1
    },
    "label": "text",
    "description": "text",
    "creation_date": "text",
    "from": "2026-08-24 09:00:00",
    "to": "2026-08-24 09:00:00",
    "external_id": null,
    "status": "unassigned",
    "status_change_date": "text",
    "max_delay": 1,
    "min_stay_duration": 1,
    "min_arrival_duration": 1,
    "arrival_date": null,
    "stay_duration": 1,
    "origin": "manual",
    "tags": [
      1
    ],
    "type": "task",
    "form": {
      "id": 1,
      "label": "text",
      "description": "text",
      "fields": [
        {
          "ANY_ADDITIONAL_PROPERTY": "anything"
        }
      ],
      "created": "text",
      "submit_in_zone": true,
      "task_id": null,
      "checkin_id": null,
      "tracker_id": null,
      "template_id": null,
      "template_version": null,
      "values": null,
      "submitted": null,
      "submit_location": {
        "lat": 1,
        "lng": 1,
        "address": "text"
      }
    },
    "form_template_id": 1,
    "fields": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "files": [
      {
        "ANY_ADDITIONAL_PROPERTY": "anything"
      }
    ],
    "parent_id": 1,
    "order": 1
  }
}

Errors

These errors come in addition to the general error codes:

  • 201 - Not found in the database - if there is no checkpoint with such an ID.


If the converted checkpoint was the only one in its route, the route is deleted.

Required sub-user rights: task_update.

Convert checkpoint to task

post
/task/checkpoint/transmute

Convert a checkpoint back into a standalone task, detaching it from its route.

Only a task in unassigned or assigned state can be changed. Anything else returns error 255. Every checkpoint on the route is checked, not just this one.

Also accepts GET with the same parameters as query-string values.

Requires the task_update right.

Authorizations
AuthorizationstringRequired

Either a user session hash or an API key, with the "NVX " prefix, for example "NVX 22eac1c27af4be7b9d04da2ce1af111b". Obtain a session hash from the userAuth operation, or create an API key from the API keys operations. A small number of operations accept a session hash only and reject an API key with error code 4; each says so in its description.

Body
checkpoint_idinteger · min: 1Required

ID of the checkpoint to convert.

Responses
200

Checkpoint converted

application/json
successbooleanRead-onlyOptional

true if request finished successfully.

Example: true
post/task/checkpoint/transmute
POST /v2/task/checkpoint/transmute HTTP/1.1
Host: api.eu.navixy.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 19

{
  "checkpoint_id": 1
}
{
  "success": true
}

Errors

These errors come in addition to the general error codes:

  • 201 - Not found in the database - if there is no checkpoint with such an ID, or tracker to which checkpoint assigned is unavailable to current sub-user.

  • 255 - Invalid task state - if any of checkpoints are not in unassigned or assigned state.


Changing order reorders all other checkpoints.

For the external_id_counts field in the response, see the task/route/create method description.

Required sub-user rights: task_update.

Update checkpoint

post
/task/checkpoint/update

Update a checkpoint. Pass a full checkpoint object including its id.

tracker_id is ignored: a checkpoint inherits its performer from its route.

to is required and cannot be in the past, and from cannot be after to. Both rules are checked before anything else and report task.to or task.from rather than a top-level parameter.

Only a task in unassigned or assigned state can be changed. Anything else returns error 255.

Requires the task_update right.

Authorizations
AuthorizationstringRequired

Either a user session hash or an API key, with the "NVX " prefix, for example "NVX 22eac1c27af4be7b9d04da2ce1af111b". Obtain a session hash from the userAuth operation, or create an API key from the API keys operations. A small number of operations accept a session hash only and reject an API key with error code 4; each says so in its description.

Body
create_formbooleanOptional

Optional. Default false. When true, the form_template_id inside checkpoint is read and the form is created, replaced or deleted to match it.

Responses
200

Checkpoint updated

application/json
successbooleanRead-onlyOptional

true if request finished successfully.

Example: true
post/task/checkpoint/update
POST /v2/task/checkpoint/update HTTP/1.1
Host: api.eu.navixy.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 777

{
  "checkpoint": {
    "id": 1,
    "tracker_id": null,
    "location": {
      "lat": 1,
      "lng": 1,
      "address": "text",
      "radius": 1
    },
    "label": "text",
    "description": "text",
    "from": "2026-08-24 09:00:00",
    "to": "2026-08-24 09:00:00",
    "external_id": null,
    "status": "unassigned",
    "status_change_date": "text",
    "max_delay": 1,
    "min_stay_duration": 1,
    "min_arrival_duration": 1,
    "origin": "manual",
    "tags": [
      1
    ],
    "type": "task",
    "form": {
      "id": 1,
      "label": "text",
      "description": "text",
      "fields": [
        {
          "ANY_ADDITIONAL_PROPERTY": "anything"
        }
      ],
      "submit_in_zone": true,
      "task_id": null,
      "checkin_id": null,
      "tracker_id": null,
      "template_id": null,
      "template_version": null,
      "values": null,
      "submitted": null,
      "submit_location": {
        "lat": 1,
        "lng": 1,
        "address": "text"
      }
    },
    "form_template_id": 1,
    "fields": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    },
    "parent_id": 1,
    "order": 1
  },
  "create_form": true
}
{
  "success": true,
  "external_id_counts": [
    {
      "external_id": "text",
      "count": 1
    }
  ]
}

Errors

These errors come in addition to the general error codes:

  • 201 - Not found in the database - if there is no task with such an ID.

  • 255 - Invalid task state - if current task state is not "unassigned" or "assigned".

Last updated

Was this helpful?