# Overview

> Interact with Menace Voice programmatically via the REST API

## Base URL

All API requests are made to:

```text
https://your-menace-voice-instance/api/v1
```

If you are using the hosted version, the base URL is `https://voice.menaceui.com/api/v1`.

## Versioning

The current API version is `v1`. The version is included in the URL path.

## Request format

All request bodies must be sent as JSON with the `Content-Type: application/json` header.

```bash
curl https://voice.menaceui.com/api/v1/workflow/fetch \
  -H "X-API-Key: $MENACE_VOICE_API_KEY"
```

## Response format

Most resource responses are JSON. Download, report, streaming, and audio endpoints use the response content type specified in the API reference. Successful resource responses return the relevant object. Error responses follow a consistent shape:

```json
{
  "detail": "Error message describing what went wrong"
}
```

For validation errors (422), the detail may be a list:

```json
{
  "detail": [
    {
      "loc": ["body", "name"],
      "msg": "field required",
      "type": "value_error.missing"
    }
  ]
}
```

## Health check

Verify your instance is reachable before making API calls.

```bash
curl https://your-menace-voice-instance/api/v1/health
```

A successful response establishes API reachability. It does not verify model credentials, call media, queue processing, or a completed conversation.
