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

# API reference

> Complete reference for all Hrizn Public API endpoints

## Base URL

| Environment | URL                                  |
| ----------- | ------------------------------------ |
| Production  | `https://api.app.hrizn.io/v1/public` |

## Authentication

All endpoints (except `/health`) require an API key in the `X-API-Key` header.

<Note>
  The `/health` endpoint is the only endpoint that does not require authentication. Use it to verify the API is operational.
</Note>

## API Architecture

The API is organized into endpoint groups that work together to power the full content lifecycle:

```mermaid theme={"theme":{"light":"github-light","dark":"github-dark"}}
flowchart TD
    subgraph research [Research]
        IC["IdeaClouds"]
    end
    subgraph intelligence [Intelligence]
        CI["Content Intelligence"]
    end
    subgraph content [Content Creation]
        CT["Content"]
        Types["Content Types"]
    end
    subgraph quality [Quality]
        Comp["Compliance"]
        Tools["Content Tools"]
    end
    subgraph data [Data]
        Inv["Inventory"]
        Site["Site Config"]
    end
    subgraph infra [Infrastructure]
        WH["Webhooks"]
        Ref["Reference"]
    end
    IC -->|"feeds into"| CI
    CI -->|"recommends"| CT
    CT -->|"checked by"| Comp
    CT -->|"enhanced by"| Tools
    Inv -->|"enriches"| Types
    Inv -->|"analyzed by"| CI
    WH -->|"notifies on"| CT
    WH -->|"notifies on"| IC
```

## Endpoint groups

<CardGroup cols={2}>
  <Card title="IdeaClouds" icon="cloud" href="/api-reference/ideaclouds/create">
    Create and manage AI-powered keyword research. Start here to build content.
  </Card>

  <Card title="Content Intelligence" icon="lightbulb" href="/api-reference/content-intelligence/list">
    AI-powered content gap analysis and recommendations. Identifies what to create next based on inventory, search data, and competitive analysis.
  </Card>

  <Card title="Content" icon="file-lines" href="/api-reference/content/create">
    Generate content from IdeaClouds. Retrieve HTML, components, and metadata.
  </Card>

  <Card title="Content Types" icon="layer-group" href="/api-reference/content-types/create-comparison">
    Create specialized content: comparisons, model landing pages, and sales events.
  </Card>

  <Card title="Compliance" icon="shield-check" href="/api-reference/compliance/trigger">
    Run OEM-specific compliance checks on content.
  </Card>

  <Card title="Content Tools" icon="wrench" href="/api-reference/content-tools/generate">
    Generate SEO metadata, JSON-LD schemas, and social snippets.
  </Card>

  <Card title="Inventory" icon="car" href="/api-reference/inventory/list">
    Access vehicle data, AI descriptions, and inventory feeds.
  </Card>

  <Card title="Site" icon="building" href="/api-reference/site/get">
    Read dealership details, categories, brand voices, and elements.
  </Card>

  <Card title="Webhooks" icon="bell" href="/api-reference/webhooks/create">
    Manage webhook subscriptions for real-time event delivery.
  </Card>

  <Card title="Reference" icon="book" href="/api-reference/reference/content-types">
    Look up content types, component types, webhook events, and scopes.
  </Card>
</CardGroup>

## Common headers

| Header              | Required       | Description                                                    |
| ------------------- | -------------- | -------------------------------------------------------------- |
| `X-API-Key`         | Yes            | Your API key                                                   |
| `Content-Type`      | For POST/PATCH | `application/json`                                             |
| `X-Idempotency-Key` | No             | Prevent duplicate POST operations                              |
| `Accept`            | No             | `application/json` (default) or `text/html` for HTML endpoints |

<Tip>
  Use the `X-Idempotency-Key` header on all write operations to safely retry failed requests without creating duplicates. See [Idempotency](/concepts/idempotency) for details.
</Tip>
