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

# Knowledge Base Help Center Embed and Public API

> Embed a Simple AI help center on your site and fetch published help center content through the public API.

Use the public help center API when you want to render published knowledge base content outside the Simple AI dashboard.

This guide covers:

* Embedding the Simple AI help center on your website
* Fetching published help center configuration and article data over HTTP
* Deep-linking into specific articles

## Publish Requirements

The public endpoints only return content when:

* The help center is published
* The article is published

Draft help centers and draft articles are intentionally excluded from the public API.

## Embed the Help Center

Add the hosted script to your site and pass your help center token:

```html theme={null}
<script
  src="https://cdn.usesimple.ai/help-center/latest/help-center.js"
  data-token="YOUR_HELP_CENTER_TOKEN"
></script>
```

### Optional Script Attributes

* `data-target="#selector"`: Render into a specific element instead of appending to `body`
* `data-api-base="https://..."`: Override the API base URL, mainly for development environments

### Render Into a Specific Container

```html theme={null}
<div id="docs-root"></div>

<script
  src="https://cdn.usesimple.ai/help-center/latest/help-center.js"
  data-token="YOUR_HELP_CENTER_TOKEN"
  data-target="#docs-root"
></script>
```

## Embed Behavior

The hosted help center embed:

* Loads the published help center config and article tree
* Supports article search when search is enabled
* Opens articles by slug
* Syncs the selected section into the browser URL as `?hc_section={slug}`
* Syncs the selected article into the browser URL as `?hc_article={slug}`
* Uses Shadow DOM so embedded styles stay isolated from the host page

## Public API Base

All public help center endpoints are rooted at:

```text theme={null}
https://api.usesimple.ai/api/public/help-center
```

## Get a Published Help Center

Fetch the published help center configuration, section tree, and uncategorized article list.

```bash theme={null}
curl https://api.usesimple.ai/api/public/help-center/YOUR_HELP_CENTER_TOKEN
```

### Response Shape

```json theme={null}
{
  "config": {
    "name": "Acme Help Center",
    "slug": "acme-help-center",
    "logo_url": "https://...",
    "welcome_title": "How can we help?",
    "search_enabled": true
  },
  "sections": [
    {
      "uuid": "section_uuid",
      "name": "Billing",
      "slug": "billing",
      "description": "Billing and invoices",
      "position": 0,
      "children": [],
      "articles": [
        {
          "uuid": "article_uuid",
          "name": "How refunds work",
          "slug": "how-refunds-work",
          "description": "Refund policy overview",
          "summary": "Refund timing, eligibility, and processing details.",
          "position": 0
        }
      ]
    }
  ],
  "uncategorized_articles": []
}
```

## Get a Published Article

Fetch a single published article by slug.

```bash theme={null}
curl https://api.usesimple.ai/api/public/help-center/YOUR_HELP_CENTER_TOKEN/article/how-refunds-work
```

### JSON Response

```json theme={null}
{
  "uuid": "article_uuid",
  "name": "How refunds work",
  "slug": "how-refunds-work",
  "description": "Refund policy overview",
  "summary": "Refund timing, eligibility, and processing details.",
  "content": "# Refunds\n\nYour original markdown...",
  "html": "<h1>Refunds</h1><p>Your rendered HTML...</p>",
  "section": {
    "uuid": "section_uuid",
    "name": "Billing",
    "slug": "billing"
  },
  "updated_at": "2026-04-11T12:34:56.000Z"
}
```

### Request Article HTML Directly

If you only need the rendered article body, request HTML output instead of JSON:

```bash theme={null}
curl "https://api.usesimple.ai/api/public/help-center/YOUR_HELP_CENTER_TOKEN/article/how-refunds-work?format=html"
```

## Search Published Articles

Search published articles in a published help center.

```bash theme={null}
curl "https://api.usesimple.ai/api/public/help-center/YOUR_HELP_CENTER_TOKEN/search?q=refund&limit=10"
```

### Query Parameters

* `q` required: Search query string
* `limit` optional: Number of results to return, from `1` to `50`

### Search Response

```json theme={null}
{
  "results": [
    {
      "uuid": "article_uuid",
      "name": "How refunds work",
      "slug": "how-refunds-work",
      "description": "Refund policy overview",
      "summary": "Refund timing, eligibility, and processing details.",
      "section": {
        "uuid": "section_uuid",
        "name": "Billing",
        "slug": "billing"
      },
      "score": 12.34
    }
  ],
  "total": 1
}
```

## Common Implementation Notes

* Public article routes are slug-based, so article slugs should be treated as the stable public identifier
* Public search only returns published articles
* Public article fetches return both raw Markdown (`content`) and rendered HTML (`html`)
* The embed uses the same public API described above

## When To Use the Public API vs the Embed

Use the hosted embed when you want the fastest setup and the default Simple AI help center experience.

Use the public API when you want to:

* Render the help center inside your own frontend
* Fully control layout and branding in your application
* Combine help center content with other product surfaces
