---
title: "Discover the API"
method: GET
path: "/api/agent"
tags: ["Discovery"]
---

# Discover the API

`GET /api/agent`

## Request

- Base URL: `https://preuve.ai`
- URL: `https://preuve.ai/api/agent`
- Auth: none required

Unauthenticated discovery document: base URL, where the OpenAPI spec and the docs live, how authentication works, what a call costs, the rate limits and the full endpoint list. Read this first when you know nothing else about the API.

## Response `200`

The discovery document.

- ApiDiscovery: The unauthenticated GET /api/agent document.
  - `name` string, required
  - `description` string
  - `version` string, required
  - `baseUrl` string, uri, required
  - `openapi` object, required
    - `json` string, uri
    - `yaml` string, uri
  - `apiCatalog` string, uri: RFC 9727 api-catalog Linkset.
  - `docs` object
  - `authentication` object, required
    - `type` 'apiKey'
    - `header` string
    - `keyPrefix` string
    - `selfServe` string, uri
    - `oauth` string, uri
    - `note` string
  - `pricing` object
  - `rateLimits` object
  - `errors` object
  - `endpoints` object[], required
    - `method` string, required
    - `path` string, required
    - `operationId` string, required
  - `mcp` object

## Other responses

- `500`: Unexpected server error (INTERNAL_ERROR, or TRIGGER_DISPATCH_FAILED when a deep scan could not be handed to the job runner). Never tell the user their quota is safe: on a deep scan the spend can already have happened when the failure hit, and an ambiguous dispatch deliberately keeps the report and its funding because the job may have been accepted before its response was lost. Treat consumption as unknown and retry with backoff. On an operation that takes a clientRunId, retry with the SAME one - that reconciles the original run, whatever state it reached, instead of starting and charging for a second one. On every other operation there is nothing to reconcile: the read or export simply failed, so a plain backed-off retry is the whole recovery.

---

[API](https://skmtc.dev/preuve/apis/preuve-agent-api.md) · [All operations](https://skmtc.dev/preuve/apis/preuve-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/preuve/apis/preuve-agent-api/revisions/b8e99c2a4fc7?raw)
