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

# Help Hub

> Public customer-facing help page built from a genie's public knowledge base

The Help Hub is a customer-facing support page built automatically from a genie's public knowledge base. Both actions are public — no authentication required.

***

## Get Support Hub

Returns the full Support Hub data for a genie by URL slug: branding, topics, published guides, featured questions, contact info, links, and downloads.

<Note>
  Returns 404 if the genie is private, inactive, or has disabled its hub.
</Note>

<ParamField body="resource" type="string" required>
  Must be `"help-hub"`
</ParamField>

<ParamField body="action" type="string" required>
  Must be `"public-get"`
</ParamField>

<ParamField body="data" type="object" required>
  <Expandable title="properties">
    <ParamField body="url_name" type="string" required>
      The genie's URL slug.
    </ParamField>
  </Expandable>
</ParamField>

<ResponseField name="success" type="boolean" />

<ResponseField name="data" type="object">
  <Expandable title="properties">
    <ResponseField name="branding" type="object">Brand colours and logo.</ResponseField>
    <ResponseField name="genie" type="object">Genie metadata (name, description, welcome message).</ResponseField>
    <ResponseField name="topics" type="object[]">Help topic categories.</ResponseField>
    <ResponseField name="guides" type="object[]">Published knowledge base guides.</ResponseField>
    <ResponseField name="featuredQuestions" type="string[]">Pre-loaded questions shown to visitors.</ResponseField>
    <ResponseField name="contactInfo" type="object | null">Contact details if configured.</ResponseField>
    <ResponseField name="links" type="object[]">Informational links on the hub.</ResponseField>
    <ResponseField name="downloads" type="object[]">Downloadable files on the hub.</ResponseField>
  </Expandable>
</ResponseField>

<CodeGroup>
  ```typescript Request theme={null}
  const response = await fetch("https://api.helpgenie.ai/v1", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      resource: "help-hub",
      action: "public-get",
      data: { url_name: "acme-support" },
    }),
  });
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.helpgenie.ai/v1/help-hub \
    -H "Content-Type: application/json" \
    -d '{
      "resource": "help-hub",
      "action": "public-get",
      "data": {
        "url_name": "acme-support"
      }
    }'
  ```
</CodeGroup>

***

## Get published guide

Fetches the full content of one published guide (knowledge base document) from a Support Hub.

<ParamField body="resource" type="string" required>
  Must be `"help-hub"`
</ParamField>

<ParamField body="action" type="string" required>
  Must be `"public-guide"`
</ParamField>

<ParamField body="data" type="object" required>
  <Expandable title="properties">
    <ParamField body="url_name" type="string" required>
      The hub's URL slug.
    </ParamField>

    <ParamField body="document_id" type="string" required>
      Knowledge base document ID. May also be passed as the request `id`.
    </ParamField>
  </Expandable>
</ParamField>

<ResponseField name="success" type="boolean" />

<ResponseField name="data" type="object">
  <Expandable title="properties">
    <ResponseField name="document" type="object">
      Full document content including name, body, and metadata.
    </ResponseField>
  </Expandable>
</ResponseField>

<CodeGroup>
  ```typescript Request theme={null}
  const response = await fetch("https://api.helpgenie.ai/v1", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      resource: "help-hub",
      action: "public-guide",
      data: {
        url_name: "acme-support",
        document_id: "doc-uuid",
      },
    }),
  });
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.helpgenie.ai/v1/help-hub \
    -H "Content-Type: application/json" \
    -d '{
      "resource": "help-hub",
      "action": "public-guide",
      "data": {
        "url_name": "acme-support",
        "document_id": "doc-uuid"
      }
    }'
  ```
</CodeGroup>

***

## Error codes

| Code             | Meaning                                   |
| ---------------- | ----------------------------------------- |
| `NOT_FOUND`      | Genie hub not found, private, or inactive |
| `INTERNAL_ERROR` | Unexpected server error                   |
