---
title: "List the unauthenticated API endpoints"
method: GET
path: "/discovery"
tags: ["Discovery"]
---

# List the unauthenticated API endpoints

`GET /discovery`

Public, no-auth entry point for arriving agents. Returns the API base URL, the authentication lifecycle (register/claim/revoke), and the list of operations callable without credentials — the agent/CLI signup + login flows and the no-account `POST /send-mail/demo`. Fetch this first to discover how to obtain credentials, then call the authenticated operations with `Authorization: Bearer prim_<key>`.

## Response `200`

Discovery document listing the unauthenticated endpoints and how to obtain credentials.

- object
  - `service` string, required
  - `description` string
  - `base_url` string, uri, required
  - `documentation` string, uri
  - `openapi` string, uri
  - `authentication` object, required
    - `guide` string, uri, required
    - `register_uri` string, uri, required
    - `claim_uri` string, uri, required
    - `revocation_uri` string, uri, required
  - `public_endpoints` object[], required
    - `method` string, required
    - `path` string, required
    - `url` string, uri, required
    - `summary` string, required
    - `authentication` 'none', required

---

[API](https://skmtc.dev/primitive/apis/primitive-api.md) · [All operations](https://skmtc.dev/primitive/apis/primitive-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/primitive/primitive-api/revisions/c2299d28022c/schema)
