Ferndesk

Sections

List sections

Returns sections in your help center ordered by display position, cursor-paginated. Requires the content:read scope.

Required scope: content:read

GET /sections

List sections

curl --request GET \
  --url 'https://api.ferndesk.com/v1/sections' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
  "results": [
    {
      "id": "<string>",
      "helpdeskId": "<string>",
      "name": "<string>",
      "isDefault": true,
      "position": 1,
      "createdAt": "<string>",
      "updatedAt": "<string>",
      "translations": []
    }
  ],
  "has_more": true,
  "next_cursor": "<string>"
}

Cursor-paginated sections

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).

Query Parameters

  • page_size integer

    Number of items to return per page (1-100). Example: 20

  • start_cursor string

    Opaque pagination cursor. Pass the next_cursor from a previous response to fetch the next page. Example: eyJ2IjoxLCJrIjpbIjIwMjYtMDEtMDEiLCJhcnRfMSJdfQ

Response

application/json
  • results[] object array

    Items in this page. Section payload.

    + Show Child Attributes
    • id string

      Ferndesk section ID (sect_...).

    • helpdeskId string

      Ferndesk helpdesk ID (help_...).

    • name string

      Section display name.

    • isDefault boolean

      Whether this section is the default section in the help center.

    • position integer

      Sort position used for section ordering.

    • createdAt string

      ISO 8601 timestamp in UTC.

    • updatedAt string

      ISO 8601 timestamp in UTC.

    • translations[] object arraydefault

      Localized section translations. Default: [].

      + Show Child Attributes
      • id string

        Section translation record ID.

      • sectionId string

        Ferndesk section ID (sect_...).

      • language string

        Language code for this translation.

      • name string

        Localized section name.

      • status string

        Translation status.

      • createdAt string

        ISO 8601 timestamp in UTC.

      • updatedAt string

        ISO 8601 timestamp in UTC.

  • has_more boolean

    Whether more items are available after this page.

  • next_cursor string | null

    Cursor to pass as start_cursor for the next page, or null on the last page.