---
title: "List accesses"
description: "List accesses. Needs the admin scope. Request and response shapes come from the OpenAPI description."
canonical: "https://lookio.app/docs/api/accesses/list-accesses"
updated: "2026-10-29"
---

# List accesses



```http
GET https://api.lookio.app/v1/accesses
```

## Authorizations

- `Authorization` (bearer, in header, required)

## Response

**200**: List accesses

- `data` (`object[]`, required)
- `data.id` (`string`, required, pattern: `^acc_[abcdefghjkmnpqrstuvwxyz23456789]{12}$`)
- `data.name` (`string`, required)
- `data.description` (`string`, required): What callers read about the access as a whole.
- `data.protection` (`enum<string>`, required, one of: `public, keys`): `public`: anyone with the address may call it. `keys`: every call needs one of its access keys (Pro plan).
- `data.status` (`enum<string>`, required, one of: `live, paused`)
- `data.capabilities` (`object`, required)
- `data.capabilities.modes` (`enum<string>[]`, required): The query modes callers may ask in, at their usual prices. Empty turns answers off.
- `data.capabilities.passages` (`boolean`, required): Whether callers may search the passages without an answer (1 credit a search).
- `data.daily_credits` (`integer | null`, required): Credits the whole access, per UTC day, may spend; null is no ceiling. A call whose price does not fit is refused with `rate_limited` until the window resets.
- `data.monthly_credits` (`integer | null`, required): Credits the whole access, per UTC month, may spend; null is no ceiling. A call whose price does not fit is refused with `rate_limited` until the window resets.
- `data.assistants` (`object[]`, required)
- `data.assistants.id` (`string`, required, pattern: `^ast_[abcdefghjkmnpqrstuvwxyz23456789]{12}$`)
- `data.assistants.name` (`string`, required)
- `data.assistants.description` (`string`, required): What callers read about it. Its context, guidelines and resources are never shown to them.
- `data.assistants.reads_nothing` (`boolean`, required): It reads no searchable resource, so callers asking it are refused (for free).
- `data.key_count` (`integer`, required)
- `data.stats` (`object`, required)
- `data.stats.today_credits` (`integer`, required)
- `data.stats.month_credits` (`integer`, required)
- `data.stats.month_requests` (`integer`, required)
- `data.blocked` (`enum<string> | null`, required): Why it does not answer, when it does not: `paused`; `keys_need_plan` (protected, and the plan has no keys); `no_keys` (protected, no key yet); `no_assistants` (none of its assistants reads anything). Null: it answers.
- `data.urls` (`object`, required)
- `data.urls.help` (`string`, required): Its help, for people and agents: what it holds and how to call it (`GET`).
- `data.urls.mcp` (`string`, required): Its MCP server (Streamable HTTP).
- `data.urls.assistants` (`string`, required)
- `data.urls.ask` (`string`, required)
- `data.urls.search` (`string`, required)
- `data.keys` (`object[]`): Its access keys, on a single access (not in the list).
- `data.keys.id` (`string`, required, pattern: `^aky_[abcdefghjkmnpqrstuvwxyz23456789]{12}$`)
- `data.keys.name` (`string`, required): Who the key is for.
- `data.keys.prefix` (`string`, required): The start of the key (`ak_live_<key id>`), to recognise it. The whole key is shown once, at creation.
- `data.keys.daily_credits` (`integer | null`, required)
- `data.keys.monthly_credits` (`integer | null`, required)
- `data.keys.spent` (`object`, required): Credits spent with this key, this UTC day and month.
- `data.keys.spent.today` (`integer`, required)
- `data.keys.spent.month` (`integer`, required)
- `data.keys.last_used_at` (`string,null`, required)
- `data.keys.created_at` (`string`, required)
- `data.created_at` (`string`, required)
- `data.updated_at` (`string`, required)
- `has_more` (`boolean`, required): True when another page follows: pass `next_cursor` back as `cursor`.
- `next_cursor` (`string,null`, required): Pass it back unchanged as `cursor`. Null on the last page.
- `request_id` (`string`, required)

```json
{
  "data": [
    {
      "id": "acc_k7m3x9p2w8qr",
      "name": "Acme docs",
      "description": "Acme's product documentation, changelog and support answers.",
      "protection": "keys",
      "status": "live",
      "capabilities": {
        "modes": [
          "flash",
          "deep"
        ],
        "passages": true
      },
      "daily_credits": null,
      "monthly_credits": 200000,
      "assistants": [
        {
          "id": "ast_66xcnwtzj8vt",
          "name": "Acme docs",
          "description": "Answers from the product documentation and the changelog.",
          "reads_nothing": false
        }
      ],
      "key_count": 2,
      "stats": {
        "today_credits": 120,
        "month_credits": 5400,
        "month_requests": 180
      },
      "blocked": null,
      "urls": {
        "help": "https://api.lookio.app/a/acc_k7m3x9p2w8qr",
        "mcp": "https://mcp.lookio.app/a/acc_k7m3x9p2w8qr/mcp",
        "assistants": "https://api.lookio.app/a/acc_k7m3x9p2w8qr/assistants",
        "ask": "https://api.lookio.app/a/acc_k7m3x9p2w8qr/ask",
        "search": "https://api.lookio.app/a/acc_k7m3x9p2w8qr/search"
      },
      "created_at": "2026-10-29T10:00:00.000Z",
      "updated_at": "2026-10-29T10:00:00.000Z"
    }
  ],
  "has_more": false,
  "next_cursor": null,
  "request_id": "req_01K9X7M2Q4"
}
```

**401**: Possible codes: authentication_required, invalid_api_key, api_key_expired, api_key_revoked, invalid_access_key

- `error` (`object`, required)
- `error.type` (`string`, required)
- `error.code` (`string`, required)
- `error.message` (`string`, required)
- `error.param` (`string`)
- `error.docs_url` (`string`, required)
- `error.action_url` (`string<uri>`)
- `request_id` (`string`, required)

```json
{
  "error": {
    "type": "<string>",
    "code": "<string>",
    "message": "<string>",
    "param": "<string>",
    "docs_url": "<string>",
    "action_url": "<string>"
  },
  "request_id": "<string>"
}
```

**403**: Possible codes: insufficient_scope, feature_not_available, admin_required, permission_denied

- `error` (`object`, required)
- `error.type` (`string`, required)
- `error.code` (`string`, required)
- `error.message` (`string`, required)
- `error.param` (`string`)
- `error.docs_url` (`string`, required)
- `error.action_url` (`string<uri>`)
- `request_id` (`string`, required)

```json
{
  "error": {
    "type": "<string>",
    "code": "<string>",
    "message": "<string>",
    "param": "<string>",
    "docs_url": "<string>",
    "action_url": "<string>"
  },
  "request_id": "<string>"
}
```

**404**: Possible codes: resource_not_found

- `error` (`object`, required)
- `error.type` (`string`, required)
- `error.code` (`string`, required)
- `error.message` (`string`, required)
- `error.param` (`string`)
- `error.docs_url` (`string`, required)
- `error.action_url` (`string<uri>`)
- `request_id` (`string`, required)

```json
{
  "error": {
    "type": "<string>",
    "code": "<string>",
    "message": "<string>",
    "param": "<string>",
    "docs_url": "<string>",
    "action_url": "<string>"
  },
  "request_id": "<string>"
}
```

**429**: Possible codes: rate_limited

- `error` (`object`, required)
- `error.type` (`string`, required)
- `error.code` (`string`, required)
- `error.message` (`string`, required)
- `error.param` (`string`)
- `error.docs_url` (`string`, required)
- `error.action_url` (`string<uri>`)
- `request_id` (`string`, required)

```json
{
  "error": {
    "type": "<string>",
    "code": "<string>",
    "message": "<string>",
    "param": "<string>",
    "docs_url": "<string>",
    "action_url": "<string>"
  },
  "request_id": "<string>"
}
```

**500**: Possible codes: internal_error

- `error` (`object`, required)
- `error.type` (`string`, required)
- `error.code` (`string`, required)
- `error.message` (`string`, required)
- `error.param` (`string`)
- `error.docs_url` (`string`, required)
- `error.action_url` (`string<uri>`)
- `request_id` (`string`, required)

```json
{
  "error": {
    "type": "<string>",
    "code": "<string>",
    "message": "<string>",
    "param": "<string>",
    "docs_url": "<string>",
    "action_url": "<string>"
  },
  "request_id": "<string>"
}
```

**Example request**

```bash
curl --request GET \
  --url 'https://api.lookio.app/v1/accesses' \
  --header 'Authorization: <api-key>'
```
