API version: 2024-10 and later

The create_webhook mutation now returns InvalidArgumentException errors when:

  • the board ID is not found
  • a subitem board ID is passed

Check out the sample error responses below:

{
  "data": {
    "create_webhook": null
  },
  "errors": [
    {
      "message": "Board not found",
      "locations": [
        {
          "line": 1,
          "column": 10
        }
      ],
      "path": [
        "create_webhook"
      ],
      "extensions": {
        "code": "InvalidArgumentException",
        "status_code": 200,
        "error_data": {
          "board_id": 1186075578
        }
      }
    }
  ]
}
{
  "data": {
    "create_webhook": null
  },
  "errors": [
    {
      "message": "Creating webhook on subitems board isn't allowed",
      "locations": [
        {
          "line": 1,
          "column": 10
        }
      ],
      "path": [
        "create_webhook"
      ],
      "extensions": {
        "code": "InvalidArgumentException",
        "status_code": 200,
        "error_data": {
          "board_id": 118607557
        }
      }
    }
  ]
}
API version: 2025-04

The new end_date field on the app subscription details object allows you to query the date an inactive subscription ended. It returns null for any subscriptions with an active status.

query {
  app_subscriptions (app_id: 1234567890) {
    cursor
    total_count 
    subscriptions {
      account_id
      monthly_price
      currency
      status
      end_date
    }
  }
}

To improve error consistency, we've released a bug fix that impacts the error response format for complexity budget exhausted errors. This fix applies to versions 2025-01 and later.

Now, errors are returned in the following format when the complexity budget is exhausted:

{
    "errors": [
        {
            "message": "Complexity budget exhausted",
            "extensions": {
                "code": "COMPLEXITY_BUDGET_EXHAUSTED",
                "complexity": 6182,
                "complexity_budget_left": 100,
                "complexity_budget_limit": 5000000,
                "retry_in_seconds": 60,
                "status_code": 429
            }
        }
    ]
}

In API versions 2025-04 and later, you can create page break blocks using the create_doc_block mutation.

mutation {
  create_doc_block (type: page_break, doc_id: 1234567, after_block_id: "a3f6b7c9-ee2f-5b10-8921-cc47e7d745d3", content: "{\"alignment\":\"left\",\"direction\":\"ltr\"}") {
    id
  }
}

In API versions 2025-01 and later, the updates query will return a maximum of 100 updates per page. To retrieve all updates, you'll need to paginate through the subsequent pages.

For example, the following query will return the first page of 100 updates. You can modify the page argument to return additional pages.

query {
  updates (page: 1) {
    id
    text_body
  }
}

In 2025-01, we added the following fields to the timeline_item endpoint:

  • content: Returns the content of the timeline item
  • created_at: Returns the creation date of the timeline item
query {
  timeline_item (id: 1234567890) {
    board {
      id
    }
    item {
      name
    }
    id
    user {
      id
      name
    }
    title
    type
    content
    created_at
  }
}

Starting in API version 2025-01, the account_id will no longer be returned in all responses by default. If you need the ID, you can still retrieve it through an account query.

Sample responses

2025-01 and later

{
  "data": {
    "boards": [
      {
        "id": "9876543210"
      }
    ]
  }
}

2024-10 and earlier

{
  "data": {
    "boards": [
      {
        "id": "9876543210"
      }
    ]
  },
  "account_id": 12345678
}