Ferndesk

Articles

Create article

Creates a new help center article and publishes it immediately. You can optionally assign it to a collection, set SEO metadata, and provide a custom slug.

Rate limit: 60 requests per hour per API key.

POST /articles

Create article

curl --request POST \
  --url 'https://api.ferndesk.com/v1/articles' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "key": "value"
}'
{
  "id": "<string>",
  "title": "<string>",
  "contentHtml": "<string>",
  "url": "<url>",
  "sectionId": "<string>",
  "collectionId": "<string>",
  "status": "<string>",
  "publishedAt": "<string>",
  "createdAt": "<string>",
  "updatedAt": "<string>"
}

Created article

Authorizations

  • Authorization string required header

    All requests require a Bearer token in the Authorization header. API keys are prefixed with fdsk_ and should be kept secret. You can generate and manage keys from the Developer settings page.

Request Body

application/json
  • title string required

    Article title.

  • subtitle string | null

    Optional article subtitle.

  • content any

    Article content payload. If omitted, an empty draft body is used.

  • sectionId string required

    Section ID where the article should be created.

  • collectionId string | null

    Optional collection ID to group this article.

  • keywords string

    SEO keywords.

  • metaDescription string

    SEO meta description.

  • ogImage string

    Open Graph image URL.

  • slug string

    Custom URL slug. Providing a new slug automatically enables custom slug mode.

Response

application/json
  • id string

    Ferndesk article ID (art_...).

  • title string

    Primary article title.

  • contentHtml string

    Article content rendered as HTML.

  • url string (uri) | null

    Canonical public URL for this article.

  • sectionId string | null

    Section ID containing the article.

  • collectionId string | null

    Optional collection grouping ID for the article.

  • status string | null

    Article publish status.

  • publishedAt string | null

    Timestamp when the article was published.

  • createdAt string

    ISO 8601 timestamp in UTC.

  • updatedAt string

    ISO 8601 timestamp in UTC.