Skip to Content
SimulatorsJiraVersions and components

Simulators

Versions and components

A version is a release a project’s issues are fixed in, and a component is a part of the product that issues belong to. On the default scenario, add a version, release it, swap an issue onto it and add a component:

curl -s "$RYSTIC_URL/rest/api/3/project/PLAT/versions" -u me@example.com:token | jq -c '[.[] | {name, released}]'
# -> [{"name":"2026.1","released":true},{"name":"2026.2","released":false}]
curl -s "$RYSTIC_URL/rest/api/3/version" -u me@example.com:token -H 'Content-Type: application/json' -d '{"name":"2026.3","projectId":10100,"releaseDate":"2026-04-01"}' | jq -c '{id, name, released}'
# -> {"id":"10202","name":"2026.3","released":false}
curl -s -X PUT "$RYSTIC_URL/rest/api/3/version/10202" -u me@example.com:token -H 'Content-Type: application/json' -d '{"released":true,"releaseDate":"2026-03-30"}' | jq -c '{id, released, releaseDate}'
# -> {"id":"10202","released":true,"releaseDate":"2026-03-30"}
curl -s "$RYSTIC_URL/rest/api/3/issue" -u me@example.com:token -H 'Content-Type: application/json' -d '{"fields":{"project":{"key":"PLAT"},"issuetype":{"name":"Task"},"summary":"Retry failed webhooks","fixVersions":[{"id":"10201"}]}}' | jq -c '{key}'
# -> {"key":"PLAT-7"}
curl -s -o /dev/null -w '%{http_code}\n' "$RYSTIC_URL/rest/api/3/version/10201/removeAndSwap" -u me@example.com:token -H 'Content-Type: application/json' -d '{"moveFixIssuesTo":"10202"}'
# -> 204
curl -s "$RYSTIC_URL/rest/api/3/issue/PLAT-7?fields=fixVersions" -u me@example.com:token | jq -c '[.fields.fixVersions[].name]'
# -> ["2026.3"]
curl -s "$RYSTIC_URL/rest/api/3/component" -u me@example.com:token -H 'Content-Type: application/json' -d '{"name":"Webhooks","project":"PLAT","description":"Delivery and retries"}' | jq -c '{id, name, project}'
# -> {"id":"10302","name":"Webhooks","project":"PLAT"}

Versions

POST /rest/api/3/version creates a version in the project named by projectId and answers 400 when projectId is missing or the name is already used in the project, and 404 when projectId names no project. PUT /rest/api/3/version/{id} releases it (released with a releaseDate) or archives it (archived). GET /rest/api/3/project/{projectIdOrKey}/versions lists a project’s versions and GET /rest/api/3/project/{projectIdOrKey}/version pages through them. POST /rest/api/3/version/{id}/removeAndSwap deletes a version and moves the issues fixed in it to the version named by moveFixIssuesTo.

Components

POST /rest/api/3/component adds a component to the project named by project, and PUT and DELETE on /rest/api/3/component/{id} rename and remove it. Two components of one project cannot share a name: the second answers 400. A removed component reads 404 afterwards. GET /rest/api/3/project/{projectIdOrKey}/components lists a project’s components.

Last updated on