Subject: Cursor Automations webhook returns 401 ERROR_NOT_LOGGED_IN (curl and Jira)
Description:
Hello,
I’m having trouble with Cursor Automations using a Webhook trigger. Outbound POST requests to the webhook URL fail with HTTP 401 and the following JSON body:
{
“code”: “unauthenticated”,
“message”: “[unauthenticated] Error”,
“details”: [
{
"type": "aiserver.v1.ErrorDetails",
"debug": {
"error": "ERROR_NOT_LOGGED_IN",
"details": {
"title": "Authentication error",
"detail": "If you are logged in, try logging out and back in.",
"isRetryable": false
},
"isExpected": true
}
}
]
}
What works
•Running the automation from the Cursor UI with JSON input completes successfully (release note / PR path behaves as expected).
What fails
•Calling the same webhook URL from Jira Automation (“Send web request”) → 401 with the error above (confirmed in Jira audit log).
•Calling the same webhook URL from curl on my machine with headers:
•Content-Type: application/json
•Authorization: Bearer <webhook API key copied from this automation’s Webhook settings> also returns 401 with the same error.
So the failure reproduces without Jira, using only curl + the documented Bearer token.
What I’ve already tried
•Confirmed header value is exactly Bearer crsr\_<token> (single Bearer, no Authorization: prefix in the value, no duplicate Bearer).
•Regenerated the webhook credential and updated Jira; duplicated the automation to get a new URL and token; issue persists.
•Verified URL and token are taken from the same automation in one session.
Request
Please help determine why the webhook endpoint rejects valid-looking Bearer authentication (ERROR_NOT_LOGGED_IN), or advise if there is a known issue, required header, account/plan requirement, or regional constraint for automation webhooks.
Details for your logs
•Cursor account email: [email protected]
•Automation page (ID only, no secrets): https://cursor.com/automations/f6e396e2-9436-4e55-b323-b91f6b77ba59
•Approximate test times (UTC): \[e.g. 2026-04-06 09:57 UTC, 2026-04-06 14:00 UTC\]
•Sample request: POST to webhook URL, JSON body \~{"issue_key":"TEST-1","issue_summary":"test","epic_key":"TEST-EPIC"}
I am not including the webhook URL or API key in this message for security; I can provide a redacted URL host/path or automation ID if you need a specific lookup.
Thank you.
Arjun