resource: "help-hub" and require no API key. They are intended for consumer-facing surfaces — the public Help Hub page (/help/:url_name) and individual guide pages (/help/:url_name/:documentId).
Only Genies with is_public: true (or is_marketplace_genie: true) are served. A Help Hub can additionally be disabled per-Genie without making the Genie itself private.
Only documents the owner has explicitly marked is_public are included in any response from these endpoints.
Get Help Hub
Returns the full public data for a Genie’s Help Hub: branding, contact details, published guides grouped by topic, featured questions, downloadable resources, and quick-links.string
required
help-hubstring
required
public-getobject
required
Show properties
Show properties
string
required
The Genie’s URL slug (e.g.
"acme-support"). Also accepted as a query parameter.object
Show properties
Show properties
string
Genie UUID.
string
Genie URL slug.
string
Genie display name.
string | null
Genie description.
string | null
Welcome message shown at the top of the hub.
object
Hub branding derived from the Genie’s configuration.
string | null
Live phone number for the Genie, or
null if no active number is provisioned.string | null
Provisioned support email address, or
null if a mailbox is not active.array
array
Published guides grouped by folder topic, sorted by folder position then name. Empty when the owner has disabled the guide section. Unfoldered guides appear in a final topic named
"Everything else".Show item properties
Show item properties
string
Topic (folder) ID, or
"unsorted" for unfoldered guides.string
Topic display name.
array
Guides in this topic, sorted alphabetically by name.
number
Total number of published guides.
0 when the guide section is disabled.string | null
Optional custom headline for the hub page.
string | null
Optional subheadline.
string | null
Custom placeholder text for the chat input.
array
Featured questions shown on the hub. Curated by the owner when configured; otherwise derived from the questions declared by published guides. Maximum 24. Empty when the owner has disabled the FAQ section.
array
object | null
boolean
Whether this hub has opted into search-engine indexing.
true only when the owner enabled indexing and the hub has at least 3 published guides.boolean
Whether the “Get the app” band should be shown on the hub page. Defaults to
true; the owner can disable it without affecting the rest of the hub.const response = await ApiService.invoke({
resource: "help-hub",
action: "public-get",
data: { url_name: "acme-support" },
});
curl -X POST https://api.helpgenie.ai/v1 \
-H "Content-Type: application/json" \
-d '{
"resource": "help-hub",
"action": "public-get",
"data": { "url_name": "acme-support" }
}'
{
"success": true,
"data": {
"hub": {
"genieId": "550e8400-e29b-41d4-a716-446655440000",
"urlName": "acme-support",
"name": "Acme Support",
"description": "Get answers fast.",
"branding": {
"primaryColor": "#4E9CFF",
"secondaryColor": null,
"logoUrl": "https://example.com/logo.png",
"brandName": "Acme Corp"
},
"phoneNumber": "+15551234567",
"emailAddress": "support@acme.helpgenie.ai",
"topics": [
{
"id": "folder-uuid",
"name": "Getting Started",
"guides": [
{
"id": "doc-uuid",
"name": "How to create your first account",
"summary": "A step-by-step guide for new users.",
"updatedAt": "2024-06-26T10:00:00.000Z",
"answers": ["How do I sign up?", "What do I need to get started?"]
}
]
}
],
"guideCount": 1,
"questions": [
{
"id": "doc-uuid:How do I sign up?",
"question": "How do I sign up?",
"topic": "Getting Started",
"documentId": "doc-uuid"
}
],
"downloads": [],
"links": [],
"contact": null,
"searchEngineVisible": false,
"showApp": true
}
}
}
Get guide
Returns the full content of a single published guide attached to a Genie’s Help Hub. Both the Genie and the document must be public.string
required
help-hubstring
required
public-guideobject
required
object
Show properties
Show properties
string
Document UUID.
string
Guide title.
string | null
One-line description.
object | null
string
Full guide text as plain prose. Sections are separated by blank lines. Truncated to 60,000 characters.
boolean
true when the content exceeded 60,000 characters and was trimmed.string | null
ISO 8601 last-updated timestamp.
string | null
Display name of the Genie this guide belongs to.
object | null
Structured branded document. Present only for guides authored with a branded template (FAQ, how-to, or one-pager).
null for all other guide types.Show properties
Show properties
const response = await ApiService.invoke({
resource: "help-hub",
action: "public-guide",
data: {
url_name: "acme-support",
document_id: "770e8400-e29b-41d4-a716-446655440002",
},
});
curl -X POST https://api.helpgenie.ai/v1 \
-H "Content-Type: application/json" \
-d '{
"resource": "help-hub",
"action": "public-guide",
"data": {
"url_name": "acme-support",
"document_id": "770e8400-e29b-41d4-a716-446655440002"
}
}'
{
"success": true,
"data": {
"guide": {
"id": "770e8400-e29b-41d4-a716-446655440002",
"name": "How to create your first account",
"summary": "A step-by-step guide for new users.",
"topic": { "id": "folder-uuid", "name": "Getting Started" },
"content": "Visit our website and click Sign up.\n\nEnter your business details and follow the setup wizard.\n\nYou will receive a confirmation email within a few minutes.",
"truncated": false,
"updatedAt": "2024-06-26T10:00:00.000Z",
"genieName": "Acme Support",
"genieDocument": null
}
}
}
Error responses
| Status | Code | Description |
|---|---|---|
| 400 | VALIDATION_ERROR | url_name or document_id missing from the request |
| 404 | NOT_FOUND | Genie not found or not public; hub disabled by the owner; document not found, not public, or not attached to this Genie; guide content still being prepared |
| 500 | INTERNAL_ERROR | Server error |

