> For the complete documentation index, see [llms.txt](https://navixy.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://navixy.com/docs/navixy-api/user-api/resources/tracking/status.md).

# Status

The individual activity states, such as busy or not busy, that a tracker can be set to.

A working status records what an employee is currently doing, tracked through the device they carry. The simplest case is a pair, "busy" and "not busy", and an employee's device is set to one of them at any moment.

Statuses do not stand alone. Each belongs to a [working status list](/docs/navixy-api/user-api/resources/tracking/status/listing.md), and a tracker can only be set to a status from the list assigned to it. Different trackers can carry different lists, so create the list first and add statuses to it with the operations here.

Working statuses are a tariff feature. An account with no tracker whose plan includes `statuses` gets error 236 from every operation on this page. For the task-management side of the same feature, see [how statuses change task states](/docs/navixy-api/user-api/guides/field-service-management/change-task-statuses.md).

## Working status object

## The WorkingStatus object

```json
{"openapi":"3.1.0","info":{"title":"Navixy Platform API","version":"1.0.0"},"components":{"schemas":{"WorkingStatus":{"type":"object","description":"One entry in a status list: an activity a tracker can be marked as being in, such as busy or on a break.","properties":{"id":{"type":"integer","description":"Working status ID. Read-only, assigned on creation, and required when updating.","minimum":1},"label":{"type":"string","description":"Human-readable label. 1 to 200 printable characters, trimmed, and cannot be blank.","minLength":1,"maxLength":200},"color":{"type":"string","description":"Display colour as six hexadecimal digits, **without a leading `#`**, for example `E57373`.","pattern":"^[0-9a-fA-F]{6}$"}}}}}}
```

## API actions

API base path: `/status`.

***

*Required sub-user rights:* `tracker_update`.

## Create working status

> Add a working status to a status list.\
> \
> Pass the status object without \`id\`. An \`id\` that is sent anyway is ignored rather than rejected.\
> \
> Requires the \`tracker\_update\` right. Requires the \`statuses\` tariff feature on at least one tracker. Without it the call returns error 236.

```json
{"openapi":"3.1.0","info":{"title":"Navixy Platform API","version":"1.0.0"},"tags":[{"name":"Working statuses","description":"Working statuses, the activity a tracker is marked as being in, the lists they are grouped into, and the assignment of a status to a tracker. All resources under the /status/ path."}],"servers":[{"url":"https://api.eu.navixy.com/v2","description":"Navixy production server on European platform"},{"url":"https://api.us.navixy.com/v2","description":"Navixy production server on American platform"},{"url":"https://api.me.navixy.com/v2","description":"Navixy production server on Middle East platform"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","description":"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.","name":"Authorization","in":"header"}},"schemas":{"WorkingStatus":{"type":"object","description":"One entry in a status list: an activity a tracker can be marked as being in, such as busy or on a break.","properties":{"id":{"type":"integer","description":"Working status ID. Read-only, assigned on creation, and required when updating.","minimum":1},"label":{"type":"string","description":"Human-readable label. 1 to 200 printable characters, trimmed, and cannot be blank.","minLength":1,"maxLength":200},"color":{"type":"string","description":"Display colour as six hexadecimal digits, **without a leading `#`**, for example `E57373`.","pattern":"^[0-9a-fA-F]{6}$"}}}},"responses":{"ResponseError":{"description":"Error response object","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false."},"status":{"type":"object","description":"Error status. Present only when an error occurred.","properties":{"code":{"type":"integer","description":"An error code in this API, not an HTTP code."},"description":{"type":"string","description":"An error description."}}},"errors":{"type":"array","description":"Per-parameter detail, returned with validation failures such as error code 7. A parameter name here may be an internal field name rather than the documented parameter name.","items":{"type":"object","properties":{"parameter":{"type":"string","description":"Name of the parameter that failed validation."},"error":{"type":"string","description":"What was wrong with it."}}}}}}}}}}},"paths":{"/status/create":{"post":{"tags":["Working statuses"],"summary":"Create working status","description":"Add a working status to a status list.\n\nPass the status object without `id`. An `id` that is sent anyway is ignored rather than rejected.\n\nRequires the `tracker_update` right. Requires the `statuses` tariff feature on at least one tracker. Without it the call returns error 236.","operationId":"statusCreate","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"listing_id":{"type":"integer","description":"ID of the status list to add to.","minimum":1},"status":{"allOf":[{"$ref":"#/components/schemas/WorkingStatus"}],"description":"The working status to create, without `id`."}},"required":["listing_id","status"]}}}},"responses":{"200":{"description":"The created working status","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"`true` if request finished successfully.","readOnly":true},"id":{"type":"integer","description":"ID of the new working status."}}}}}},"400":{"description":"Bad request. The response body carries the API-level error code in `status.code`. Validation failures also include an `errors` array naming each offending parameter.","$ref":"#/components/responses/ResponseError"},"402":{"description":"Error 236: no tracker on the account has the `statuses` feature. Error 268: the account's quota for working statuses is exhausted.","$ref":"#/components/responses/ResponseError"},"default":{"$ref":"#/components/responses/ResponseError"}}}}}}
```

#### Errors

These errors come in addition to the [general error codes](/docs/navixy-api/general/errors.md#error-codes):

* 201 - Not found in the database, when no list has the given ID.
* 236 - Feature unavailable due to tariff restrictions, when no tracker on the account has the `statuses` tariff feature.
* 268 - Over quota, when the user's quota for working statuses is exceeded.

***

*Required sub-user rights:* `tracker_update`.

## Delete working status

> Delete a working status.\
> \
> Requires the \`tracker\_update\` right. Requires the \`statuses\` tariff feature on at least one tracker. Without it the call returns error 236.\
> \
> Also accepts GET with the same parameters as query-string values.

```json
{"openapi":"3.1.0","info":{"title":"Navixy Platform API","version":"1.0.0"},"tags":[{"name":"Working statuses","description":"Working statuses, the activity a tracker is marked as being in, the lists they are grouped into, and the assignment of a status to a tracker. All resources under the /status/ path."}],"servers":[{"url":"https://api.eu.navixy.com/v2","description":"Navixy production server on European platform"},{"url":"https://api.us.navixy.com/v2","description":"Navixy production server on American platform"},{"url":"https://api.me.navixy.com/v2","description":"Navixy production server on Middle East platform"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","description":"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.","name":"Authorization","in":"header"}},"responses":{"OK":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"`true` if request finished successfully.","readOnly":true}}}}}},"ResponseError":{"description":"Error response object","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false."},"status":{"type":"object","description":"Error status. Present only when an error occurred.","properties":{"code":{"type":"integer","description":"An error code in this API, not an HTTP code."},"description":{"type":"string","description":"An error description."}}},"errors":{"type":"array","description":"Per-parameter detail, returned with validation failures such as error code 7. A parameter name here may be an internal field name rather than the documented parameter name.","items":{"type":"object","properties":{"parameter":{"type":"string","description":"Name of the parameter that failed validation."},"error":{"type":"string","description":"What was wrong with it."}}}}}}}}}}},"paths":{"/status/delete":{"post":{"tags":["Working statuses"],"summary":"Delete working status","description":"Delete a working status.\n\nRequires the `tracker_update` right. Requires the `statuses` tariff feature on at least one tracker. Without it the call returns error 236.\n\nAlso accepts GET with the same parameters as query-string values.","operationId":"statusDelete","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status_id":{"type":"integer","description":"ID of the working status. Must belong to the current account.","minimum":1}},"required":["status_id"]}}}},"responses":{"200":{"description":"Working status deleted","$ref":"#/components/responses/OK"},"400":{"description":"Bad request. The response body carries the API-level error code in `status.code`. Validation failures also include an `errors` array naming each offending parameter.","$ref":"#/components/responses/ResponseError"},"402":{"description":"Error 236: no tracker on the account has the `statuses` feature.","$ref":"#/components/responses/ResponseError"},"default":{"$ref":"#/components/responses/ResponseError"}}}}}}
```

#### Errors

These errors come in addition to the [general error codes](/docs/navixy-api/general/errors.md#error-codes):

* 201 - Not found in the database, when no working status has the given ID.
* 236 - Feature unavailable due to tariff restrictions, when no tracker on the account has the `statuses` tariff feature.

***

## List working statuses

> Return the working statuses of one status list, in display order.\
> \
> A list ID belonging to another account returns an empty array rather than an error.\
> \
> Requires the \`statuses\` tariff feature on at least one tracker. Without it the call returns error 236.\
> \
> Also accepts GET with the same parameters as query-string values.

```json
{"openapi":"3.1.0","info":{"title":"Navixy Platform API","version":"1.0.0"},"tags":[{"name":"Working statuses","description":"Working statuses, the activity a tracker is marked as being in, the lists they are grouped into, and the assignment of a status to a tracker. All resources under the /status/ path."}],"servers":[{"url":"https://api.eu.navixy.com/v2","description":"Navixy production server on European platform"},{"url":"https://api.us.navixy.com/v2","description":"Navixy production server on American platform"},{"url":"https://api.me.navixy.com/v2","description":"Navixy production server on Middle East platform"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","description":"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.","name":"Authorization","in":"header"}},"schemas":{"WorkingStatus":{"type":"object","description":"One entry in a status list: an activity a tracker can be marked as being in, such as busy or on a break.","properties":{"id":{"type":"integer","description":"Working status ID. Read-only, assigned on creation, and required when updating.","minimum":1},"label":{"type":"string","description":"Human-readable label. 1 to 200 printable characters, trimmed, and cannot be blank.","minLength":1,"maxLength":200},"color":{"type":"string","description":"Display colour as six hexadecimal digits, **without a leading `#`**, for example `E57373`.","pattern":"^[0-9a-fA-F]{6}$"}}}},"responses":{"ResponseError":{"description":"Error response object","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false."},"status":{"type":"object","description":"Error status. Present only when an error occurred.","properties":{"code":{"type":"integer","description":"An error code in this API, not an HTTP code."},"description":{"type":"string","description":"An error description."}}},"errors":{"type":"array","description":"Per-parameter detail, returned with validation failures such as error code 7. A parameter name here may be an internal field name rather than the documented parameter name.","items":{"type":"object","properties":{"parameter":{"type":"string","description":"Name of the parameter that failed validation."},"error":{"type":"string","description":"What was wrong with it."}}}}}}}}}}},"paths":{"/status/list":{"post":{"tags":["Working statuses"],"summary":"List working statuses","description":"Return the working statuses of one status list, in display order.\n\nA list ID belonging to another account returns an empty array rather than an error.\n\nRequires the `statuses` tariff feature on at least one tracker. Without it the call returns error 236.\n\nAlso accepts GET with the same parameters as query-string values.","operationId":"statusList","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"listing_id":{"type":"integer","description":"ID of the status list.","minimum":1}},"required":["listing_id"]}}}},"responses":{"200":{"description":"The working statuses","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"`true` if request finished successfully.","readOnly":true},"list":{"type":"array","items":{"$ref":"#/components/schemas/WorkingStatus"}}}}}}},"400":{"description":"Bad request. The response body carries the API-level error code in `status.code`. Validation failures also include an `errors` array naming each offending parameter.","$ref":"#/components/responses/ResponseError"},"402":{"description":"Error 236: no tracker on the account has the `statuses` feature.","$ref":"#/components/responses/ResponseError"},"default":{"$ref":"#/components/responses/ResponseError"}}}}}}
```

#### Errors

These errors come in addition to the [general error codes](/docs/navixy-api/general/errors.md#error-codes):

* 236 - Feature unavailable due to tariff restrictions, when no tracker on the account has the `statuses` tariff feature.

***

*Required sub-user rights:* `tracker_update`.

## Update working status

> Change a working status's label or colour.\
> \
> \*\*\`id\` is required inside the object.\*\* Omitting it currently returns error 6 rather than a validation error.\
> \
> A working status cannot be moved between lists; delete it and create it again.\
> \
> Requires the \`tracker\_update\` right. Requires the \`statuses\` tariff feature on at least one tracker. Without it the call returns error 236.

```json
{"openapi":"3.1.0","info":{"title":"Navixy Platform API","version":"1.0.0"},"tags":[{"name":"Working statuses","description":"Working statuses, the activity a tracker is marked as being in, the lists they are grouped into, and the assignment of a status to a tracker. All resources under the /status/ path."}],"servers":[{"url":"https://api.eu.navixy.com/v2","description":"Navixy production server on European platform"},{"url":"https://api.us.navixy.com/v2","description":"Navixy production server on American platform"},{"url":"https://api.me.navixy.com/v2","description":"Navixy production server on Middle East platform"}],"security":[{"api_key":[]}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","description":"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.","name":"Authorization","in":"header"}},"schemas":{"WorkingStatus":{"type":"object","description":"One entry in a status list: an activity a tracker can be marked as being in, such as busy or on a break.","properties":{"id":{"type":"integer","description":"Working status ID. Read-only, assigned on creation, and required when updating.","minimum":1},"label":{"type":"string","description":"Human-readable label. 1 to 200 printable characters, trimmed, and cannot be blank.","minLength":1,"maxLength":200},"color":{"type":"string","description":"Display colour as six hexadecimal digits, **without a leading `#`**, for example `E57373`.","pattern":"^[0-9a-fA-F]{6}$"}}}},"responses":{"OK":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"`true` if request finished successfully.","readOnly":true}}}}}},"ResponseError":{"description":"Error response object","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Always false."},"status":{"type":"object","description":"Error status. Present only when an error occurred.","properties":{"code":{"type":"integer","description":"An error code in this API, not an HTTP code."},"description":{"type":"string","description":"An error description."}}},"errors":{"type":"array","description":"Per-parameter detail, returned with validation failures such as error code 7. A parameter name here may be an internal field name rather than the documented parameter name.","items":{"type":"object","properties":{"parameter":{"type":"string","description":"Name of the parameter that failed validation."},"error":{"type":"string","description":"What was wrong with it."}}}}}}}}}}},"paths":{"/status/update":{"post":{"tags":["Working statuses"],"summary":"Update working status","description":"Change a working status's label or colour.\n\n**`id` is required inside the object.** Omitting it currently returns error 6 rather than a validation error.\n\nA working status cannot be moved between lists; delete it and create it again.\n\nRequires the `tracker_update` right. Requires the `statuses` tariff feature on at least one tracker. Without it the call returns error 236.","operationId":"statusUpdate","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"allOf":[{"$ref":"#/components/schemas/WorkingStatus"}],"description":"The working status to update, including `id`."}},"required":["status"]}}}},"responses":{"200":{"description":"Working status updated","$ref":"#/components/responses/OK"},"400":{"description":"Bad request. The response body carries the API-level error code in `status.code`. Validation failures also include an `errors` array naming each offending parameter.","$ref":"#/components/responses/ResponseError"},"402":{"description":"Error 236: no tracker on the account has the `statuses` feature.","$ref":"#/components/responses/ResponseError"},"default":{"$ref":"#/components/responses/ResponseError"}}}}}}
```

#### Errors

These errors come in addition to the [general error codes](/docs/navixy-api/general/errors.md#error-codes):

* 201 - Not found in the database, when no working status has the given ID.
* 236 - Feature unavailable due to tariff restrictions, when no tracker on the account has the `statuses` tariff feature.

## More in this section

#### Tracker's working status

| Endpoint                                                                                                              | Method | What it does                     |
| --------------------------------------------------------------------------------------------------------------------- | ------ | -------------------------------- |
| [`/status/tracker/assign`](/docs/navixy-api/user-api/resources/tracking/status/tracker.md#post-status-tracker-assign) | POST   | Assign working status to tracker |
| [`/status/tracker/list`](/docs/navixy-api/user-api/resources/tracking/status/tracker.md#post-status-tracker-list)     | POST   | List trackers' working statuses  |
| [`/status/tracker/read`](/docs/navixy-api/user-api/resources/tracking/status/tracker.md#post-status-tracker-read)     | POST   | Read tracker's working status    |

#### Listing

| Endpoint                                                                                                              | Method | What it does               |
| --------------------------------------------------------------------------------------------------------------------- | ------ | -------------------------- |
| [`/status/listing/create`](/docs/navixy-api/user-api/resources/tracking/status/listing.md#post-status-listing-create) | POST   | Create working status list |
| [`/status/listing/delete`](/docs/navixy-api/user-api/resources/tracking/status/listing.md#post-status-listing-delete) | POST   | Delete working status list |
| [`/status/listing/list`](/docs/navixy-api/user-api/resources/tracking/status/listing.md#post-status-listing-list)     | POST   | List working status lists  |
| [`/status/listing/update`](/docs/navixy-api/user-api/resources/tracking/status/listing.md#post-status-listing-update) | POST   | Update working status list |

#### Tracker's working status list

| Endpoint                                                                                                                                      | Method | What it does                          |
| --------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ------------------------------------- |
| [`/status/listing/tracker/assign`](/docs/navixy-api/user-api/resources/tracking/status/listing/tracker.md#post-status-listing-tracker-assign) | POST   | Assign working status list to tracker |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://navixy.com/docs/navixy-api/user-api/resources/tracking/status.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
