# 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).


Canonical: https://easerix.com/docs/developers/api/tasks/issues/locateIssue

{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}

export default function Layout(props) {
  const { APIPage, OpenAPIPage } = props.components ?? {};
  // "APIPage" is the old name from v10, this allows both for backward compatibility
  const Comp = OpenAPIPage ?? APIPage;
  return (
    <>
      {props.children}
      <Comp document="tasks" operations={[{"path":"/v1/issues/{id}/locate","method":"get"}]} />
    </>
  );
}
