Hello Team,
We are integrating with both the Jira Search APIs and the OAuth 2.0 dynamic webhook registration flow. Recently, we began receiving the following error from the /search/jql endpoints: Unbounded JQL queries are not allowed here. Please add a search restriction to your query.
To comply with this requirement, we introduced a harmless global restriction using the JQL: project is not EMPTY
This works correctly across Jira Cloud, Jira Data Center, and all Search API endpoints.
However, after switching to OAuth 2.0 dynamic webhooks, webhook registration now fails with:
{
"webhookRegistrationResult": [
{
"errors": [
"Operator is not is unsupported"
]
}
]
}
It appears that the dynamic webhook JQL parser does not support the is not operator, even though it is valid in the standard JQL engine.
This puts us in a difficult position because:
-
Search APIs require a bounded query
-
Dynamic webhooks reject
project is not EMPTY -
Other fields such as
created >= "1900-01-01"are also rejected with
Clause created is unsupportedin dynamic webhook JQL -
We need a universal dummy restriction that works in:
-
Jira Cloud
-
Jira Data Center
-
OAuth 1.0
-
OAuth 2.0 dynamic webhooks
-
All Search APIs
-
Could you please provide:
-
A recommended dummy/neutral JQL clause that works with:
-
Search APIs (Cloud/DC)
-
OAuth2 dynamic webhooks
-
“All projects” selection scenario
-
-
Or, if no such clause currently exists, a workaround or best-practice guidance for supporting both bounded Search API queries and dynamic webhook registration.
We need an approach that is supported and stable across both Jira Cloud and Data Center.
Thank you for your assistance.