Skip to content

Rest API

Publish the help center

POST
/api/v1/help-center/publish

Start a help center publish. This builds the help center from the current FAQs, categories and settings and deploys it to the live help center site. Publishing runs asynchronously and only one publish can run per website at a time.

Use cases

  • Content release: Publish after adding or changing FAQs so the changes go live
  • Partial updates: Publish only specific FAQs with a partial scope, or only structure and settings with a structural scope

Notes

  • Returns 202 with the created job, poll the publish status endpoint to follow progress
  • Returns 409 when a publish is already running for the website
  • Omit the body for a full publish
x-api-key
required
string

Your API key from account settings.

x-user-email
required
string

The email address of your user.

x-account-id
required
string

The ID of your account. You can find this in the account settings.

x-website-id
required
string

The ID of the workspace you want to use.

object
scope

What to publish. Defaults to a full publish.

object
type

full rebuilds everything, partial republishes only the FAQs in faqIds, structural republishes structure and settings without regenerating articles.

string
Allowed values: full partial structural
faqIds

FAQ IDs to republish, only used with the partial type.

Array<string>

The publish was accepted and is running in the background.

object
job
object
jobId

Unique identifier for this publish job.

string
accountId
string
websiteId
string
status

Current status of the job, e.g. queued, running, succeeded or failed.

string
scope

What was published, see the publish endpoint for the scope shape.

object
triggeredBy

Email address of the user (or API caller) that started the publish.

string
createdAt

Unix timestamp (ms) when the job was created.

number
startedAt

Unix timestamp (ms) when the job started.

number
finishedAt

Unix timestamp (ms) when the job finished, absent while running.

number
nullable
error

Error message when the job failed.

string
nullable
failedFaqIds

FAQ IDs that failed to publish, if any.

Array<string>
Example
{
"job": {
"jobId": "20260101T120000-abcd",
"accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"websiteId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "queued",
"scope": {
"type": "full"
},
"triggeredBy": "user@example.com",
"createdAt": 1641081600000,
"startedAt": 1641081600000,
"failedFaqIds": []
}
}

Bad request - missing websiteId.

Unauthorized - invalid API key.

A publish is already in progress for this website.