> ## Documentation Index
> Fetch the complete documentation index at: https://docs.boxpressd.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Boxpressd API

> Build catalog and connected-user experiences with the Boxpressd REST and GraphQL APIs.

The Boxpressd API gives your application access to an approved, stable view of Boxpressd data.

Use REST for cigar search, record lookup, text resolution, and barcode lookup. Use GraphQL when you need related catalog data or OAuth-scoped data for a connected Boxpressd user.

| Service             | Production URL                      |
| ------------------- | ----------------------------------- |
| REST                | `https://api.boxpressd.com/v1`      |
| GraphQL             | `https://api.boxpressd.com/graphql` |
| OAuth issuer        | `https://oauth.boxpressd.io`        |
| Developer dashboard | `https://developers.boxpressd.com`  |

Every functional API request requires a developer application key in the `x-boxpressd-key` header. User-specific requests also require an OAuth access token.

<CardGroup cols={2}>
  <Card title="Get started" icon="rocket" href="/developer-api/quickstart">
    Create an application and make your first request.
  </Card>

  <Card title="Authentication" icon="key" href="/developer-api/authentication">
    Understand developer keys and user access tokens.
  </Card>

  <Card title="REST API" icon="arrows-left-right" href="/developer-api/rest">
    Review stable versioned endpoints and response conventions.
  </Card>

  <Card title="GraphQL" icon="diagram-project" href="/developer-api/graphql">
    Query curated catalog and connected-user data.
  </Card>
</CardGroup>

## Public contract

Public IDs are opaque, type-prefixed values such as `cigar_k9P4m`. The same ID identifies a resource in REST and GraphQL. Do not decode IDs or depend on their internal representation.

The API is deny-by-default. Database fields do not become public automatically. The initial GraphQL release is read-only and has no mutation root.

<Info>
  Write operations for connected users are coming soon. The currently documented API is read-only, except for reserved endpoints that explicitly return `501 Not Implemented`.
</Info>
