Skip to content

Atlassian: Sanitize JQL queries

Atlassian jql.sanitiseJqlQueries: arguments, response, policy and SDK examples.

← Jql operations · Get started

Operation atlassian.sanitisejqlqueries

Provider route: POST /{cloudId}/rest/api/3/jql/sanitize. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/atlassian with npm, or alter-sdk-atlassian with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { AtlassianIntegration } from "@alter-ai/atlassian";
async function execute(input: Parameters<AtlassianIntegration["jql"]["sanitiseJqlQueries"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new AtlassianIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.jql.sanitiseJqlQueries(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_atlassian import AtlassianIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = AtlassianIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.jql.sanitise_jql_queries(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
pathobjectRequired within parentAdditional keys: not allowed
path.cloudIdstringRequired within parentPattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
bodyModelRequired within parentExpand Sanitize JQL queries — request body — body

Referenced models: Sanitize JQL queries — request body — body

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$ModelRootExpand Sanitize JQL queries — response body

Referenced models: Sanitize JQL queries — response body

Sanitize JQL queries — request body — body
FieldTypePresenceDescription and constraints
$objectRootThe list of JQL queries to sanitize for the given account IDs.
write Only: true
Additional keys: not allowed
queriesarrayRequired within parentThe list of JQL queries to sanitize. Must contain unique values. Maximum of 20 queries.
queries[]ModelEach itemExpand Sanitize JQL queries — request body — body queries item

Referenced models: Sanitize JQL queries — request body — body queries item

Sanitize JQL queries — response body
FieldTypePresenceDescription and constraints
$objectRootThe sanitized JQL queries for the given account IDs.
queriesJSONOptional
queries (anyOf 1)arrayAlternativeThe list of sanitized JQL queries.
queries (anyOf 1)[]ModelEach itemExpand Sanitize JQL queries — response body — queries The list of sanitized JQL queries item
queries (anyOf 2)nullAlternative

Referenced models: Sanitize JQL queries — response body — queries The list of sanitized JQL queries item

Sanitize JQL queries — request body — body queries item
FieldTypePresenceDescription and constraints
$objectRootThe JQL query to sanitize for the account ID. If the account ID is null, sanitizing is performed for an anonymous user.
write Only: true
Additional keys: not allowed
accountIdJSONOptional
accountId (anyOf 1)stringAlternativeThe account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.
Maximum length: 128
accountId (anyOf 2)nullAlternative
querystringRequired within parentThe query to sanitize.
Sanitize JQL queries — response body — queries The list of sanitized JQL queries item
FieldTypePresenceDescription and constraints
$objectRootDetails of the sanitized JQL query.
accountIdJSONOptional
accountId (anyOf 1)JSONAlternative
accountId (anyOf 1) (anyOf 1)stringAlternativeThe account ID of the user for whom sanitization was performed.
Maximum length: 128
accountId (anyOf 1) (anyOf 2)nullAlternative
accountId (anyOf 2)nullAlternative
errorsJSONOptional
errors (anyOf 1)ModelAlternativeExpand Validate project key — response body
The list of errors.
errors (anyOf 2)nullAlternative
initialQueryJSONOptional
initialQuery (anyOf 1)stringAlternativeThe initial query.
initialQuery (anyOf 2)nullAlternative
sanitizedQueryJSONOptional
sanitizedQuery (anyOf 1)JSONAlternative
sanitizedQuery (anyOf 1) (anyOf 1)stringAlternativeThe sanitized query, if there were no errors.
sanitizedQuery (anyOf 1) (anyOf 2)nullAlternative
sanitizedQuery (anyOf 2)nullAlternative

Referenced models: Validate project key — response body

Validate project key — response body
FieldTypePresenceDescription and constraints
$objectRootError messages from an operation.
errorMessagesJSONOptional
errorMessages (anyOf 1)arrayAlternativeThe list of error messages produced by this operation. For example, "input parameter 'key' must be provided"
errorMessages (anyOf 1)[]stringEach item
errorMessages (anyOf 2)nullAlternative
errorsJSONOptional
errors (anyOf 1)objectAlternativeThe list of errors by parameter returned by the operation. For example,"projectKey": "Project keys must start with an uppercase letter, followed by one or more uppercase alphanumeric characters."
Additional keys: see wildcard field
errors (anyOf 1).*stringAdditional keys
errors (anyOf 2)nullAlternative
statusJSONOptional
status (anyOf 1)JSONAlternative
status (anyOf 1) (anyOf 1)integerAlternativeFormat: int32
status (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
status (anyOf 2)nullAlternative

SDK function policy ID: atlassian.sanitisejqlqueries. Catalog operation: sanitisejqlqueries. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Required provider scopes: ["manage:jira-configuration"]

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.