improved

Upgrading GraphQL parser to be more compliant

❗️

This post is no longer up-to-date. You can find updated info here.

We're upgrading our GraphQL query parser to strictly follow official GraphQL specification. This upgrade impacts API versions 2024-10 and later.

There have been no changes to the API schema.

This upgrade will provide a more reliable and consistent API experience. It also simplifies integrations with other GraphQL-compliant tools.

Queries that don't meet these standards may fail, so please update any non-compliant queries according to the documented schema. It has been released to all AU and EU servers and will be fully released in the US next week.

Example

With the old parser, the following query worked:

query {
  boards (ids: 1234567890) {
    items_page (limit: 1, query_params: {
      rules: [
        {column_id: "checkbox", compare_value: [null], operator: is_not_empty}
      ]
    }) {
      items {
        id
        name
      }
    }
  }
}

This query would fail with the new parser since the compare_value is non-nullable. This updated query would work:

query {
  boards (ids: 1234567890) {
    items_page (limit: 1, query_params: {
      rules: [
        {column_id: "checkbox", compare_value: [], operator: is_not_empty}
      ]
    }) {
      items {
        id
        name
      }
    }
  }
}