---
title: "Describe API v1"
method: GET
path: "/api/v1"
tags: ["meta"]
---

# Describe API v1

`GET /api/v1`

## Request

- Base URL: `https://justidea.agency`
- URL: `https://justidea.agency/api/v1`
- Auth: one of:
  - none
  - OAuth 2 (authorization code, authorization URL `https://justidea.agency/oauth/authorize/`, token URL `https://justidea.agency/oauth/token/`, scopes: `site:read`)

Entry point of API v1: what the API covers and the full URL of every endpoint.

## Response `200`

API description.

- ApiRoot
  - `name` string, required
  - `version` string, required
  - `apiVersion` string, required
  - `description` string
  - `openapi` string, uri, required
  - `openapiYaml` string, uri
  - `documentation` string, uri
  - `mcp` string, uri
  - `mcpRegistry` string, uri
  - `authentication` string
  - `endpoints` object, required

## Other responses

- `401`: The bearer token is invalid or expired (code invalid-token). Call without a token or get a new one.
- `429`: Rate limit exceeded (code rate-limited). Wait Retry-After seconds.
- `500`: Unexpected error (code internal-error). Retry later.

---

[API](https://skmtc.dev/justidea/apis/justidea-agency-public-api.md) · [All operations](https://skmtc.dev/justidea/apis/justidea-agency-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/justidea/apis/justidea-agency-public-api/revisions/83c8195ed800?raw)
