Story Agent — Push to tracker failed
You validated a backlog in the Story Agent and triggered the push to Jira Cloud, Azure DevOps, or Slack, but the push reported a failure. This page walks through the most common causes.
What it looks like
After clicking Validate & push, the Story Agent reports one of :
- "Push to Jira failed. Some stories could not be created."
- "Push to Azure DevOps failed. Authentication error."
- "Push to Slack failed. The channel does not exist or the bot is not a member."
- A partial success message : "12 of 18 stories were pushed. 6 failed -- see details."
Common causes
Authentication / activation expired
The most common cause is that your tracker activation expired or was revoked.
- Jira / ADO -- the activation code linking aprity to your Jira site or ADO organization was disconnected or the Forge / Marketplace app was uninstalled. Re-connect from the tracker side : see Jira Cloud — Story Agent or Azure DevOps — Story Agent.
- Slack -- the Slack workspace binding expired or was revoked. Re-install the aprity Slack app and re-bind the channel.
If you see an authentication error and the activation appears to be in place, see Story Agent activation code expired for the recovery steps.
Permissions on the tracker side
Even with a valid activation, the integration needs the right permissions on the tracker side :
- Jira -- aprity needs
read:jira-workandwrite:jira-workon the project where stories are pushed. If your Jira admin restricted the project recently, the push fails. - Azure DevOps -- the personal access token bound to the activation needs Work Items (Read & Write) scope. If your ADO admin rotated the token or restricted PAT scopes, the push fails.
- Slack -- the aprity bot user needs to be a member of the destination channel. Add the bot via
/invite @aprityin the channel.
Tracker rate limits
Pushing a large backlog (50+ stories) in one go can hit the tracker's rate limit. The exact thresholds vary by tracker and by your tracker plan -- Jira, Azure DevOps and Slack each enforce different per-API and per-channel limits, sometimes shared with other tools installed in the same tracker.
If the failure mentions "rate limit" or returns HTTP 429, wait a few minutes and retry the push. Re-running the push is safe -- already-pushed stories are skipped on retry (see Partial backlog already pushed below) so you will not create duplicates.
Partial backlog already pushed
If 12 of 18 stories were pushed and 6 failed, retriggering the push retries only the 6 missing stories. Stories already created in the tracker are matched by their stable reference (EPIC-001, FEAT-001, US-001-A) and skipped on subsequent runs, so re-running the push does not produce duplicates.
Required fields on the tracker side
Some tracker configurations require fields aprity does not populate by default :
- Jira -- a custom required field on the project (e.g. Component, Epic Link with a non-default behaviour) can reject the create call.
- ADO -- required custom fields on the Work Item template, or required parents for User Story type, can reject the create call.
If the failure message names a specific field (e.g. "customfield_12345 is required"), open the tracker, mark the field as optional or set a default value for it on the project, then retry the push.
Fix sequence
- Re-run the push without changing anything. Transient errors (rate limits, network blips) usually clear on retry.
- Reconnect the tracker activation if the failure mentions authentication or "code expired". See the per-tracker integration page.
- Check the tracker permissions : ask your tracker admin whether the aprity app or activation has the right scopes on the target project / channel.
- Inspect required fields if the failure names a specific field, and adjust the tracker configuration.
- Open a support ticket if none of the above resolves it.
When opening a support ticket, include :
- Your aprity tenant id.
- The Story Agent conversation id (visible in the Story Agent tab URL).
- The tracker (Jira site, ADO organization, Slack workspace).
- The exact error message returned by the push.
Verify after the fix
Re-trigger the push from the Story Agent. The result should be either a clean success ("18 of 18 stories pushed") or a smaller failure subset to investigate further.
The pushed items in the tracker carry a stable link back to the aprity conversation -- use it to navigate between aprity and the tracker without re-typing references.
For anything else, contact support@aprity.ai.