Which workspace an issue is in, for a link that names no workspace
For an old link (`/tasks/issue/<id>`, an email from before workspace URLs), so the app can send the tab to `/tasks/w/<slug>/issue/<id>`. It works across the caller's workspaces: the token may be for any of them. It answers only when Tasks would let the caller open the issue in its own workspace: they are a member with a product seat, Tasks is on there, and they can read the issue's team (they are on it, or they hold data.read_all there, or it is their personal workspace). Deleted issues are not located. Every other case gets the same 404, byte for byte: no such issue, someone else's issue, a team the caller isn't on, Tasks turned off there, a malformed id, or a request made with an API key or an OAuth grant (those are bound to one workspace by consent). Both answers are `Cache-Control: no-store`. Rate-limited per user and per client IP (the edge's CF-Connecting-IP).
View as MarkdownAuthorization
bearer In: header
Path Parameters
uuidResponse Body
application/json
application/json
application/json
curl -X GET "https://example.com/v1/issues/497f6eca-6276-4993-bfeb-53cbbbba6f08/locate"{ "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9", "slug": "string"}Which of the caller's workspaces an issue key opens in, for an old link
For an old link that names an issue by key (`/tasks/issue/ENG-12`), so the app can send the tab to `/tasks/w/<slug>/issue/<id>`. A key is unique only within one workspace, so it can match in several of the caller's workspaces: every match is listed (sorted by slug), and the app offers a choice when there is more than one. It looks only in workspaces the caller is a member of, at most 25. A match is listed only when Tasks would let the caller open the issue in its own workspace, by the same rules as `locateIssue`. When nothing matches the answer is the same 404 as every other miss, never an empty list: a malformed key, a request made with an API key or an OAuth grant. Both answers are `Cache-Control: no-store`. Rate-limited per user and per client IP, together with `locateIssue`.
Get an issue
The issue with state, assignee, and labels embedded.