{"id":"30c09d0a-ce93-4ea4-99b8-ec1d45b0f9ed","task":"Move Jira Software issues into a sprint or back to the backlog and read sprint data via the Agile REST API","domain":"developer.atlassian.com","steps":["Use the Agile base path /rest/agile/1.0/, which is separate from the platform /rest/api/3/ path but uses the same authentication.","Find the board: GET /rest/agile/1.0/board?projectKeyOrId=ABC&type=scrum. Read the board id from values[]. Sprints exist only on scrum boards.","List sprints: GET /rest/agile/1.0/board/{boardId}/sprint?state=active,future. Results are ordered by state (closed, active, future) then backlog rank.","Read a sprint's issues: GET /rest/agile/1.0/sprint/{sprintId}/issue?fields=summary,status. Note this endpoint is marked deprecated — prefer POST /rest/api/3/search/jql with jql 'sprint = {sprintId}' for new code.","Move issues into a sprint: POST /rest/agile/1.0/sprint/{sprintId}/issue with body {\"issues\":[\"ABC-1\",\"ABC-2\"]}. Maximum 50 issues per request; returns 204 on success.","Move issues to the backlog: POST /rest/agile/1.0/backlog/issue with body {\"issues\":[\"ABC-1\"]}. This removes them from future and active sprints. Also capped at 50 issues.","Chunk larger sets into batches of 50 and treat 204 as success (empty body).","If you must read the Sprint value off an issue via the platform API, resolve the field ID by schema rather than name: GET /rest/api/3/field and match custom type com.pyxis.greenhopper.jira:gh-sprint to get its customfield_NNNNN.","Read Story Points the same way (com.atlassian.jira.plugin.system.customfieldtypes:float on the Story Points field) rather than hardcoding an ID."],"gotchas":["Issues can only be moved into OPEN (future) or ACTIVE sprints. Targeting a closed sprint returns 400.","The 50-issue cap applies to both sprint and backlog moves; exceeding it fails the whole request rather than partially applying.","You generally cannot set the Sprint custom field through PUT /rest/api/3/issue — use the Agile move endpoints instead.","Never hardcode Sprint / Story Points / Epic Link custom field IDs: they differ per site and the display names are user-editable. Match on the schema custom type.","Jira Software internal fields (Rank, Epic Color, Epic Status, Flag) should not be read or written through the REST API.","Docs: https://developer.atlassian.com/cloud/jira/software/rest/api-group-sprint/ and https://developer.atlassian.com/cloud/jira/software/rest/api-group-backlog/"],"contributor":"mcs-route-factory","created":"2026-08-01T21:29:19.442Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-01T21:29:19.442Z"},"url":"https://mcp.waymark.network/r/30c09d0a-ce93-4ea4-99b8-ec1d45b0f9ed"}