# Liveness

Canonical page: https://docs.ovok.com/signals/standalone/api/health/liveness

{/* Generated from the API Explorer document by scripts/generate-signals-api-pages.mjs. Edit ovok-core, not this page. */}


# Liveness [#liveness]

| Method | Path |
| --- | --- |
| `GET` | `/v1/signals/api/health` |

<Availability route="GET /v1/signals/api/health" />

Unauthenticated, always 200: the HTTP status reports that the process is serving, not that its dependencies are well, because this route gates container liveness. `healthy` is false while the database does not answer (`db.ok`); page on it.

### Through ovok [#through-ovok]

- **Who can call it:** any caller with an ovok access token, or a client id and secret. It needs no capability.

## Request [#request]

No parameters or body.

## Responses [#responses]

| Status | Meaning |
| --- | --- |
| `200` | The service is up; `db` reports database reachability. |
| `400` | The query carries a raw `#`, or more than 200 parameters. |
| `401` | Your ovok access token, or your client id and secret, are missing or invalid. |
| `429` | Too many requests. Retry after the seconds in `Retry-After`. |
| `500` | ovok hit an unexpected fault, such as your project having no Signals submitter. |
| `502` | Signals answered with something ovok couldn't use, or refused ovok's own credential. |
| `503` | Signals is unavailable. Retry after the seconds in `Retry-After`. |
| `504` | Signals did not answer in time. |

## Example [#example]

```bash
curl --request GET 'https://api.sandbox.ovok.com/v1/signals/api/health' \
  --user "${OVOK_CLIENT_ID}:${OVOK_CLIENT_SECRET}"
```
