# Stream an attachment (share link or bearer)

Streams the file for a caller holding a live share token for the
attachment's page (share, used by share pages) or a bearer that can
see the page. Anything else is 404, so a URL on its own (an id, or a
retired exp+sig signed URL) opens nothing. Never redirects to a
storage URL. Raster images (png, jpeg, gif, webp, avif) are served
inline; anything else as application/octet-stream to download. Every
response is Cache-Control private, no-store, Referrer-Policy
no-referrer, X-Content-Type-Options nosniff. Streams are bounded: a
deadline sized to the file, and a cap on concurrent downloads per
caller and overall (429 past it).


Canonical: https://easerix.com/docs/developers/api/notes/sharing/getAttachment

{/* 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="notes" operations={[{"path":"/v1/attachments/{id}","method":"get"}]} />
    </>
  );
}
