Ferndesk

Collections

Create a collection

Creates a collection within a section. Requires the content:write scope.

Required scope: content:write

POST /collections

Create a collection

curl --request POST \
  --url 'https://api.ferndesk.com/v1/collections' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "key": "value"
}'
{
  "id": "<string>",
  "helpdeskId": "<string>",
  "sectionId": "<string>",
  "parentCollectionId": "<string>",
  "title": "<string>",
  "subtitle": "<string>",
  "shortId": "<string>",
  "createdAt": "<string>",
  "updatedAt": "<string>",
  "translations": []
}

Created collection

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.

    Keys can be restricted to any subset of these scopes (each endpoint lists the scope it requires via x-required-scopes):

    • content:read: Read and search help center articles, collections, sections, and translations
    • content:write: Create and edit article drafts, users, tasks; move articles and collections
    • content:publish: Publish, unpublish, restore, and trash content (make changes live)
    • analytics:read: Read help center reporting, analytics, and article feedback
    • conversations:read: Read AI assistant conversations and transcripts
    • webhooks:manage: Create and manage outbound webhook subscriptions

    Granting content:write or content:publish implies content:read. Keys minted before scoping have null scopes = full access (legacy mode).

Request Body

application/json
  • title string required

    Collection title.

  • subtitle string | null

    Optional subtitle.

  • sectionId string required

    Parent section ID.

  • parentCollectionId string | null

    Parent collection ID for nesting.

Response

application/json
  • id string

    Ferndesk collection ID (col_...).

  • helpdeskId string

    Ferndesk helpdesk ID (help_...).

  • sectionId string | null

    Parent section ID for this collection.

  • parentCollectionId string | null

    Parent collection ID if this is nested.

  • title string

    Collection title.

  • subtitle string | null

    Optional collection subtitle.

  • shortId string

    Short human-friendly identifier.

  • createdAt string

    ISO 8601 timestamp in UTC.

  • updatedAt string

    ISO 8601 timestamp in UTC.

  • translations[] object arraydefault

    Localized collection translations. Default: [].

    + Show Child Attributes
    • id string

      Collection translation record ID.

    • collectionId string

      Ferndesk collection ID (col_...).

    • language string

      Language code for this translation.

    • title string

      Localized collection title.

    • subtitle string | null

      Localized collection subtitle.

    • status string

      Translation status.

    • createdAt string

      ISO 8601 timestamp in UTC.

    • updatedAt string

      ISO 8601 timestamp in UTC.