# Shelv ## Docs - [Register a new account](https://docs.shelv.dev/api-reference/auth/register-a-new-account.md): Create a new Shelv account with email and password. Sends a verification code for new accounts, or an informational email if the address is already registered. - [Verify email and get API key](https://docs.shelv.dev/api-reference/auth/verify-email-and-get-api-key.md): Verify your email address with the 6-digit code sent during registration. Returns an API key on success. - [Approve a shelf](https://docs.shelv.dev/api-reference/shelves/approve-a-shelf.md): Transition a shelf from review to ready status. Optionally apply file operations (rename, delete, mkdir, write) before finalizing. - [Compare two versions](https://docs.shelv.dev/api-reference/shelves/compare-two-versions.md): Compute per-file unified diffs between two versions of a shelf. - [Create a shelf](https://docs.shelv.dev/api-reference/shelves/create-a-shelf.md): Upload a PDF document to create a new shelf. Processing runs asynchronously. - [Delete a shelf](https://docs.shelv.dev/api-reference/shelves/delete-a-shelf.md): Permanently delete a shelf and all its associated storage objects. - [Get a shelf](https://docs.shelv.dev/api-reference/shelves/get-a-shelf.md): Get detailed information about a single shelf. - [Get a single file](https://docs.shelv.dev/api-reference/shelves/get-a-single-file.md): Get the content of a single file by its relative path within the shelf. The filePath may contain slashes for nested files (e.g. `chapter-1/section-1.md`). Content-Type is `text/markdown` for `.md` files, `application/json` for `.json` files, or `text/plain` otherwise. - [Get a single file from a version](https://docs.shelv.dev/api-reference/shelves/get-a-single-file-from-a-version.md): Get the content of a single file from a specific version by its relative path. Content-Type is `text/markdown` for `.md` files, `application/json` for `.json` files, or `text/plain` otherwise. - [Get presigned archive URL](https://docs.shelv.dev/api-reference/shelves/get-presigned-archive-url.md): Get a presigned URL for a .tar.gz archive of the shelf's filesystem. Returns 202 if the archive is being generated. - [Get shelf file listing](https://docs.shelv.dev/api-reference/shelves/get-shelf-file-listing.md): Get the list of file paths in a shelf without content. Only available when the shelf is in ready or review status. - [Get shelf file tree](https://docs.shelv.dev/api-reference/shelves/get-shelf-file-tree.md): Get the complete file tree with contents for a shelf. Only available when the shelf is in ready or review status. - [Get version file tree](https://docs.shelv.dev/api-reference/shelves/get-version-file-tree.md): Get the complete file tree with contents for a specific version. - [List shelf versions](https://docs.shelv.dev/api-reference/shelves/list-shelf-versions.md): List all versions for a shelf, ordered by version number descending. - [List shelves](https://docs.shelv.dev/api-reference/shelves/list-shelves.md): List all shelves with pagination. - [Regenerate shelf structure](https://docs.shelv.dev/api-reference/shelves/regenerate-shelf-structure.md): Re-run structuring and verification for a shelf in review status. - [Retry failed shelf](https://docs.shelv.dev/api-reference/shelves/retry-failed-shelf.md): Re-trigger the processing pipeline for a shelf that failed. Only available for shelves in failed status. - [Upload new PDF](https://docs.shelv.dev/api-reference/shelves/upload-new-pdf.md): Upload a new PDF to an existing shelf, re-parse and re-structure it. Creates a new version with source 'upload'. Requires an active subscription. - [Create a webhook](https://docs.shelv.dev/api-reference/webhooks/create-a-webhook.md): Register a webhook endpoint for shelf lifecycle events. - [Delete a webhook](https://docs.shelv.dev/api-reference/webhooks/delete-a-webhook.md): Remove a webhook endpoint. - [List delivery attempts](https://docs.shelv.dev/api-reference/webhooks/list-delivery-attempts.md): List attempt history for a delivery job. - [List webhook deliveries](https://docs.shelv.dev/api-reference/webhooks/list-webhook-deliveries.md): List delivery jobs for a webhook endpoint. - [List webhooks](https://docs.shelv.dev/api-reference/webhooks/list-webhooks.md): List all webhook endpoints for the authenticated user. - [Redeliver failed webhook](https://docs.shelv.dev/api-reference/webhooks/redeliver-failed-webhook.md): Requeue a failed, canceled, or dead-letter delivery job. - [Rotate webhook signing secret](https://docs.shelv.dev/api-reference/webhooks/rotate-webhook-signing-secret.md): Generate a new signing secret for a webhook. The old secret is invalidated immediately. - [Send test webhook](https://docs.shelv.dev/api-reference/webhooks/send-test-webhook.md): Queue a test `webhook.ping` delivery for this endpoint. - [Processing Pipeline](https://docs.shelv.dev/concepts/pipeline.md): User-visible processing behavior from upload to terminal shelf state. - [Shelves](https://docs.shelv.dev/concepts/shelves.md): Shelf lifecycle, review mode behavior, and endpoint availability by status. - [Templates](https://docs.shelv.dev/concepts/templates.md): Guide structuring behavior with predefined templates. - [Versions](https://docs.shelv.dev/concepts/versions.md): Immutable snapshots of a shelf's file tree. - [Archive Download](https://docs.shelv.dev/guides/archive-download.md): Download a shelf as a portable .tar.gz snapshot. - [Authentication](https://docs.shelv.dev/guides/authentication.md): API key and session authentication, route coverage, and common auth failures. - [JSON File Tree](https://docs.shelv.dev/guides/json-tree.md): Retrieve a shelf as a flat JSON map of path to file content. - [MCP Server](https://docs.shelv.dev/guides/mcp-server.md): Connect any MCP-compatible agent to Shelv with @shelv/mcp — browse, read, and search shelves directly from Claude Code, Cursor, or any MCP client. - [OpenClaw Skill](https://docs.shelv.dev/guides/openclaw.md): Use Shelv as an OpenClaw skill to upload PDFs, poll for processing, and hydrate structured Markdown into your agent's workspace. - [Proof & Trust](https://docs.shelv.dev/guides/proof-trust.md): How Shelv ensures structured output quality, delivery reliability, and secure integrations. - [Sandbox Adapters](https://docs.shelv.dev/guides/sandbox-adapters.md): Hydrate shelf files into sandbox runtimes and snapshot provider state. - [Webhooks](https://docs.shelv.dev/guides/webhooks.md): Receive signed lifecycle events without polling. - [Introduction](https://docs.shelv.dev/introduction.md): Shelv converts documents into structured Markdown filesystems. Your agents navigate them with standard Unix tools — no parsing code, no embeddings, no retrieval pipeline. - [Quickstart](https://docs.shelv.dev/quickstart.md): Upload a document, get a structured Markdown filesystem, and give your agent file access in minutes. ## OpenAPI Specs - [openapi](https://docs.shelv.dev/openapi.yaml)