v1

latestOpenAPI 3.0.32026-07-22238629559.2 KB
TicketingService

Create Jira tickets

Create Jira tickets for your findings. You can create tickets by passing in a list of issue_ids or by passing in filter query parameters to dynamically select findings. If passing in filters, Semgrep will skip already ticketed findings. This endpoint is synchronous, so it may take some time for your request to resolve. Unlike creating tickets in-app, if ticket creation fails we won't automatically retry. This endpoint accepts a limit parameter (defaulting to 20) to limit the number of tickets created per request. If you specify a list of issue_ids greater than this limit, or your selected filters match on a number of issues greater than this limit, issues that were not ticketed are included in the Failed part of the response object. You can send another request to create tickets for these skipped issues. By default, findings belonging to the same repository and the same rule will be grouped together into a single Jira ticket. You can override this using the group_issues query parameter. Up to 50 issues can be grouped into a single ticket. You can optionally override the Jira project you create tickets in by passing in a Jira project ID as jira_project_id (the numeric ID rather than the project key). You can fetch this ID using the Jira API.

post/api/v1/deployments/{deploymentSlug}/tickets

Path parameters

deploymentSlugstring required

Deployment slug. Can be found at /deployments, or in your Settings in the web UI.

Request body

autotriage_verdict'true_positive' | 'false_positive'

The autotriage verdict to filter by

categoriesstring[]

List of categories to filter by

component_tagsstring[]

List of component tags to filter by

confidence'low' | 'medium' | 'high'

List of confidence levels to filter by

dependenciesstring[]

Filter by dependency name. Only applies for sca findings.

deploymentSlugstring

Deployment slug. Can be found at /deployments, or in your Settings in the web UI.

epss_probabilitystring[]

Filter by EPSS probability (likelihood of exploit). Only applies for sca findings.

exposuresstring[]

Filter by exposure (reachability type). Only applies for sca findings. Reachability is the ability of an attacker to access a vulnerability in a system.

group_issuesboolean

Whether or not to group findings from the same rule and repository into a single ticket. Defaults to true.

include_historicalboolean

Whether to include historical findings. Only applies for secrets findings. Defaults to true.

issue_idsstring[]

An array of issue IDs to act on. If this is not provided, an issue filter should be provided.

issue_type'sast' | 'sca' | 'secrets' required

Type of findings to create tickets for.

jira_project_idstring

Optional numeric Jira project ID to associate with the created tickets. If not specified, defaults to the project configured in your integration settings. You can fetch this ID using the Jira API.

limitinteger

Max number of tickets to create. Must be an integer between 1 and 20. Defaults to 20

policiesstring[]

List of policy modes to filter by

policy_modestring[]

List of policy modes to filter by

pro_onlyboolean

Filter by whether a finding is only available with Semgrep Pro features. Only applies for sast findings.

project_tagsstring[]

List of project tags to filter by

refstring

Branch reference to filter by

reposstring[]

List of repository names to filter by

repository_visibilitystring[]

Filter by repository visibility. Only applies for secrets findings.

rulesstring[]

List of rule names to filter by

rulesetstring[]

List of Semgrep Registry rulesets to filter by

secret_typesstring[]

Filter by type of secret (typically provider-related). Only applies for secrets findings.

severitiesstring[]

List of severities to filter by

sincestring

Epoch timestamp in seconds. Filters using the relevant_since field: the timestamp when this finding was detected by Semgrep (the first time, or when reintroduced).

status'open' | 'fixed' | 'ignored' | 'reviewing' | 'fixing' | 'provisionally_ignored'

The status to filter by

transitivitiesstring[]

Filter by transitivity of a dependency. Only applies for sca findings.

triage_reasonsstring[]

List of triage reasons to filter by

validation_statestring[]

Filter by whether a secret could be validated. Only applies for secrets findings.

Example request

{
  "autotriage_verdict": "true_positive",
  "categories": [
    "security",
    "performance"
  ],
  "component_tags": [
    "user authentication",
    "user data"
  ],
  "confidence": "high",
  "dependencies": [
    "lodash",
    "express"
  ],
  "epss_probability": [
    "high",
    "medium"
  ],
  "exposures": [
    "reachable",
    "always_reachable"
  ],
  "group_issues": true,
  "include_historical": true,
  "issue_ids": [
    123,
    456
  ],
  "issue_type": "sca",
  "limit": 20,
  "policies": [
    "rule-board-block",
    "rule-board-pr-comments",
    "rule-board-audit"
  ],
  "policy_mode": [
    "monitor",
    "block"
  ],
  "pro_only": true,
  "project_tags": [
    "my_project_tag_1",
    "my_project_tag_2"
  ],
  "ref": "refs/pull/1234/merge",
  "repos": [
    "myorg/repo1",
    "myorg/repo2"
  ],
  "repository_visibility": [
    "public",
    "private"
  ],
  "rules": [
    "typescript.react.security.audit.react-no-refs.react-no-refs",
    "ajinabraham.njsscan.hardcoded_secrets.node_username"
  ],
  "ruleset": [
    "owasp-top-ten",
    "default"
  ],
  "secret_types": [
    "Github",
    "Heroku",
    "AWS"
  ],
  "severities": [
    "low",
    "high"
  ],
  "status": "open",
  "transitivities": [
    "transitive",
    "direct"
  ],
  "triage_reasons": [
    "acceptable_risk",
    "false_positive"
  ],
  "validation_state": [
    "valid",
    "invalid"
  ]
}

Response

OK