# Engine status and success rates

`GET https://api.answerline.dev/v1/engines`

Lists each engine this API serves, whether it is down now, and the share of its newest finished requests that answered: everyone's (successRate) and your own (yourSuccessRate). windowRequests says how many requests each rate reads. A rate with no request behind it is 100, since nothing failed. A request that failed because of the request itself, such as an invalid payload or a task that waited too long in your own queue, is not counted. status follows the same condition as the outage emails and the engine.down and engine.up webhooks. Free. See https://answerline.dev/docs/coverage#status

## Returns

- `windowRequests` (integer, required): How many of an engine's newest finished requests each rate reads
- `engines` (object[], required)

## Responses

- 200: Each engine this API serves, with its status and success rates.
- 401: Unauthorized - authentication failed
- 429: Too Many Requests - the service dropped the request because it was overloaded (`SERVICE_OVERLOADED`), which returns `Retry-After` without any limit headers, or one address presented too many unknown keys (`RATE_LIMIT_EXCEEDED`, with `Retry-After`)
- 500: Internal Server Error

## Request

curl:

```bash
curl -X GET "https://api.answerline.dev/v1/engines" \
  -H "Authorization: Bearer $API_KEY"
```


## Example responses

200:

```json
{
  "windowRequests": 30,
  "engines": [
    {
      "taskType": "CHATGPT",
      "name": "ChatGPT",
      "status": "up",
      "successRate": 96.7,
      "yourSuccessRate": 100,
      "yourRequests": 12
    }
  ]
}
```

