# API Reference

> REST APIs for ingesting content and serving published articles.

URL: https://docs.reaktly.com/docs/api-reference

The Reaktly REST API speaks JSON over HTTPS and authenticates with API keys in the `x-api-key` header.

## Base URL

```
https://api.reaktly.com
```

## Public APIs

- [Authentication](/docs/api-reference/authentication): API keys, scopes, rotation, and security
- [Ingestion API](/docs/api-reference/ingestion): Push content into a knowledge base
- [Articles API](/docs/api-reference/articles): Serve published articles and questions

| API | Scope | What it is for |
|---|---|---|
| [Ingestion API](/docs/api-reference/ingestion) | `iq:import` | Send content from your CMS, shop, or database into a knowledge base |
| [Articles API](/docs/api-reference/articles) | `articles:read` | Read published articles, categories, and entry-point questions for your own help centre |
| [Authentication](/docs/api-reference/authentication) | — | Creating keys, scopes, and error codes |

## Conventions

- **Authentication** — every request carries `x-api-key`. The tenant is derived from the key, not from the request body.
- **Ingestion is asynchronous** — an accepted item is queued for processing; `jobId`s let you correlate a submission with your own records.
- **Backoff on `429`** — see [Error handling](/docs/integrations/error-handling).
- **Errors** are standard HTTP status codes with a JSON body describing the problem (`400` invalid payload, `401` missing key, `403` missing scope, `404` unknown resource).

## Not in the public API

Dashboard features — conversations, analytics, widget configuration, team management — are served by private session-authenticated endpoints. They are not documented here and are not covered by API keys.

The API-key scope model already names reserved scopes for future public surface (`iq:read`, `iq:embed`, `iq:enrich`, `iq:diagnostics`). They stay inert until the corresponding endpoints ship.