Ferndesk

Tasks

Get a task

Retrieve a task with its outputs: the articles, collections, and sections the task proposed or applied, including operation, status, and target IDs. Requires the content:write scope.

Required scope: content:write

GET /tasks/{id}

Get a task

curl --request GET \
  --url 'https://api.ferndesk.com/v1/tasks/{ID}' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
  "id": "<string>",
  "title": "<string>",
  "status": "<string>",
  "outputs": [
    {
      "id": "<string>",
      "kind": "<string>",
      "operation": "<string>",
      "status": "<string>",
      "title": "<string>",
      "targetArticleId": "<string>",
      "targetCollectionId": "<string>",
      "targetSectionId": "<string>",
      "appliedAt": "<string>"
    }
  ]
}

Task with outputs

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

Path Parameters

  • id string required

    Resource ID for the requested entity. Example: art_01JXY9AZK4KV

Response

application/json
  • id string

    Task ID (tsk_...).

  • title string | null

    Task title. If omitted on create, Fern generates one after task creation.

  • status string

    Task processing status.

  • outputs[] object array

    Content changes this task produced. A single task output (proposed or applied change).

    + Show Child Attributes
    • id string
    • kind string
    • operation string
    • status string
    • title string
    • targetArticleId string | null
    • targetCollectionId string | null
    • targetSectionId string | null
    • appliedAt string | null