---
title: "API overview"
description: "The Lookio REST API at api.lookio.app/v1 lets you add resources, manage assistants and ask questions from your own code, with JSON, scopes and safe retries."
canonical: "https://lookio.app/docs/developers/api"
updated: "2026-11-08"
---

# API overview

The REST API does everything the app does: add resources, build assistants, ask questions and manage the workspace. It applies the same rules as the app.

## Base URL

```text
https://api.lookio.app/v1
```

Responses are JSON, except a [streamed answer](/docs/developers/streaming), which is a server-sent event stream.

## Start with `GET /v1/account`

[`GET /v1/account`](/docs/api/account/get-account) returns the workspace of a credential and its scopes. Call it first to check the credential.

```bash
curl https://api.lookio.app/v1/account \
  -H "Authorization: Bearer $LOOKIO_API_KEY"
```

## What the API covers

```mermaid title="The objects of the API"
flowchart LR
  R["/v1/resources<br/>texts, files, pages, sites"] --> A["/v1/assistants<br/>.../query to ask"]
  T["/v1/tags"] -.-> R
  A --> W["/v1/widgets"]
  A --> AC["/v1/accesses"]
  A --> C["/v1/conversations"]
  C --> LG["/v1/logs"]
  U["/v1/account, /v1/credits, /v1/usage"]
```

| Area              | What you do                                                                         | Reference                                                                       |
| ----------------- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| Account and usage | Read the workspace, the credit balance and the usage over time.                     | [Get account](/docs/api/account/get-account)                                    |
| Resources         | Add texts, files, web pages and sites, read their status, re-index and delete them. | [List resources](/docs/api/resources/list-resources)                            |
| Sites             | Preview a site and tune the rules of an imported one.                               | [Preview a site](/docs/api/sites/preview-site)                                  |
| Tags              | List, rename and delete tags.                                                       | [List tags](/docs/api/tags/list-tags)                                           |
| Assistants        | Create, change and delete assistants, and ask them questions.                       | [Ask an assistant](/docs/api/assistants/query-assistant)                        |
| Conversations     | List, read, rename and delete your conversations, and send your users' thumbs.      | [List conversations](/docs/api/conversations/list-conversations)                |
| Logs              | Read the four logs: conversations, answers, indexing and activity.                  | [List the workspace's conversation logs](/docs/api/logs/list-log-conversations) |
| Widgets           | Put an assistant on a website, and read what visitors asked.                        | [List widgets](/docs/api/widgets/list-widgets)                                  |
| Members           | List members and change their permissions.                                          | [List members](/docs/api/members/list-members)                                  |
| Feedback          | Tell Lookio what did not work as expected.                                          | [Submit feedback](/docs/api/feedback/submit-feedback)                           |

## The rules in short

- **JSON in, JSON out**, with `snake_case` field names. See [Conventions](/docs/developers/conventions).
- **Bearer authentication** with an API key or an OAuth token. See [Authentication](/docs/developers/authentication).
- **Only questions and passage searches spend credits.** They need the `query` scope.
- **Every POST accepts an `Idempotency-Key`**, so a retry does not run twice.
- **One error format** with stable codes. See [Errors](/docs/developers/errors).
- **Rate limits** per credential. See [Rate limits](/docs/developers/rate-limits).

## The OpenAPI document

An OpenAPI 3.1 document describes every request and response.

- On this site: [`/docs/openapi.json`](/docs/openapi.json).
- From the API: `https://api.lookio.app/openapi.json`.
- For AI agents: `https://api.lookio.app/llms.txt` and [`/docs/llms.txt`](/docs/llms.txt).
