# Texa API

Texa AI as a service. Open conversations from your app, website or backend, send customers' messages and get Texa AI's replies as events.


```text
https://api.texadesk.com/v1
```

Every request carries a Texa API key:

```http
Authorization: Bearer texa_test_...
```

Make keys in Texa Desk under **Texa AI → Developers → API keys**. A `texa_test_…` key reaches your
[sandbox](/guides/sandbox); `texa_live_…` your live account. Keep keys on your server: a page or an
app uses a [widget session](/guides/website-and-app) instead, and the **widgets** routes below take
that session's `wst_…` token.

## The shape of it

1. `POST /v1/conversations` opens a conversation for your `customer_ref`.
2. `POST /v1/conversations/{id}/messages` sends what the customer said. The answer's `events` hold
   Texa AI's `reply`, any `action_request`, a `handover` or a `close`.
3. Answer an action you run with `POST …/action-results`.
4. Hear about everything later on `GET /v1/events` and your [webhooks](/guides/webhooks).

Start with the [quickstart](/quickstart). The reference below is generated from the
[OpenAPI document](https://api.texadesk.com/v1/openapi.json), so it is always the API as it is.

## Groups

| Group | Routes for |
|---|---|
| Conversations | opening, messages, action results, handover, handback, closing, assist |
| Voice | single-use voice session tokens |
| Records | transcripts, exports, quality scores |
| Customers | what Texa AI remembers; merge; forget |
| Events | the feed of every event |
| Media | voice notes, photos, documents, video |
| Agent | the agent your customers meet; the kill switch |
| Actions | the actions Texa AI can ask for |
| Knowledge | documents, with a person's approval |
| Reports | support and quality reports |
| Sandbox | fixtures for actions (test keys only) |
| Widgets | sessions and the routes the website widget and app components call |
| Account | the key in use; this month's usage |
