# Clay docs > Developer documentation for using Clay from agents, CLIs, APIs, and internal systems. ## Docs - [Get the authenticated user](https://developers.clay.com/api-reference/me/get-the-authenticated-user.md): Returns the Clay user and workspace associated with the API key. - [Execute a routine against 1-100 items](https://developers.clay.com/api-reference/routines/execute-a-routine-against-1-100-items.md): Starts an asynchronous routine run for up to 100 input items. - [Fetch progress and results for a batch run](https://developers.clay.com/api-reference/routines/fetch-progress-and-results-for-a-batch-run.md): Returns current status and results for an asynchronous batch routine run. - [Fetch progress and results for a routine run](https://developers.clay.com/api-reference/routines/fetch-progress-and-results-for-a-routine-run.md): Returns current status and paginated results for an asynchronous routine run. - [Issue a presigned PUT URL for uploading a batch input JSONL](https://developers.clay.com/api-reference/routines/issue-a-presigned-put-url-for-uploading-a-batch-input-jsonl.md): Creates a presigned URL for uploading a JSONL file used by a batch routine run. - [Start an async routine run-batch over an uploaded JSONL file](https://developers.clay.com/api-reference/routines/start-an-async-routine-run-batch-over-an-uploaded-jsonl-file.md): Starts an asynchronous batch routine run over a previously uploaded JSONL file. - [Advance the search iterator and return the next page of results](https://developers.clay.com/api-reference/searches/advance-the-search-iterator-and-return-the-next-page-of-results.md): Returns the next page of records for an existing search. - [Create a search from natural language text](https://developers.clay.com/api-reference/searches/create-a-search-from-natural-language-text.md): Starts a new Clay search from a natural language query and source type. - [Run a structured query across one or more tables](https://developers.clay.com/api-reference/tables/run-a-structured-query-across-one-or-more-tables.md): Runs a structured query against Clay table data and returns records with field metadata. - [Clay plugin quickstart](https://developers.clay.com/cli/quickstart.md): Install the Clay plugin or CLI, configure your API key, and run your first command. - [login](https://developers.clay.com/cli/reference/login.md): Save a Clay API key to the local config file. - [logout](https://developers.clay.com/cli/reference/logout.md): Remove the saved Clay API key from the config file. - [routines get](https://developers.clay.com/cli/reference/routines-get.md): Fetch a routine by id with full config, integrations, and input schema. - [routines list](https://developers.clay.com/cli/reference/routines-list.md): List routines in the workspace pinned to your API key. - [routines runs get](https://developers.clay.com/cli/reference/routines-runs-get.md): Fetch status and results for an inline or bulk routine run. - [routines runs list](https://developers.clay.com/cli/reference/routines-runs-list.md): List recent async routine runs and their statuses. - [routines runs start](https://developers.clay.com/cli/reference/routines-runs-start.md): Start an async routine run. - [routines update](https://developers.clay.com/cli/reference/routines-update.md): Update a routine — name, description, entity type, or integrations. - [webhooks](https://developers.clay.com/cli/reference/webhooks.md): Create, list, delete, test, and handle Clay webhook deliveries. - [whoami](https://developers.clay.com/cli/reference/whoami.md): Print the authenticated user and their workspace as JSON. - [Execution model](https://developers.clay.com/concepts/execution-model.md): Understand the primitives behind Clay routines, searches, tables, runs, and batch jobs. - [Overview](https://developers.clay.com/index.md): Use Clay from agents, terminals, backend services, internal tools, and custom apps. - [Authentication](https://developers.clay.com/public-api/authentication.md): Authenticate requests with a Clay API key. - [Errors](https://developers.clay.com/public-api/errors.md): Understand Clay Public API error responses. - [Pagination](https://developers.clay.com/public-api/pagination.md): Handle paginated collections and stateful result iterators. - [Public API quickstart](https://developers.clay.com/public-api/quickstart.md): Make your first Clay Public API request. - [Give an agent access to a Clay function](https://developers.clay.com/recipes/agent-function-access.md): Let an agent call Clay-managed or custom functions from its normal workflow. - [Build a Workflow (Alpha)](https://developers.clay.com/recipes/build-workflow-alpha.md): Use the Clay plugin and CLI to create, edit, run, and inspect a Workflow. - [Encode Clay functions into business systems](https://developers.clay.com/recipes/business-systems.md): Call Clay functions from backend jobs, internal tools, queues, and product workflows. - [Run a search, then enrich with a function](https://developers.clay.com/recipes/search-and-enrich.md): Use Searches to find records, then run Clay-managed functions on the results. - [Routines API](https://developers.clay.com/routines/api.md): Run Clay-managed functions and custom functions through the Public API. - [Batch runs](https://developers.clay.com/routines/batch-runs.md): Run routines across many records. - [Clay-managed functions](https://developers.clay.com/routines/clay-managed-functions.md): Use Clay-provided functions for common enrichment and research jobs. - [Custom functions](https://developers.clay.com/routines/custom-functions.md): Run your own reusable Clay logic from agents, the CLI, MCP, or the API. - [Functions vs. Workflows](https://developers.clay.com/routines/functions-vs-workflows.md): Choose between custom functions and Workflows for reusable Clay logic. - [Routines overview](https://developers.clay.com/routines/index.md): Understand the routine types: Clay-managed functions, custom functions, and Workflows. - [Workflows (Alpha)](https://developers.clay.com/routines/workflows-alpha.md): Build, edit, run, inspect, and batch-run Clay Workflows from the plugin and CLI. - [Searches](https://developers.clay.com/searches.md): Create natural-language searches over Clay's proprietary GTM database and fetch structured records. - [Tables (Enterprise)](https://developers.clay.com/tables.md): Query known Clay tables with structured filters, selected fields, ordering, and pagination. - [Agent workflows](https://developers.clay.com/use-cases/agent-workflows.md): Use Clay with coding agents, MCP clients, local scripts, and JSON-first automations. - [Use Clay tables as a database](https://developers.clay.com/use-cases/build-on-tables.md): Build dashboards, internal tools, and interactive apps on top of data that exists in Clay tables. - [Enrich leads and accounts](https://developers.clay.com/use-cases/enrich-leads-and-accounts.md): Use Clay to enrich records with contact, company, technology, hiring, funding, and firmographic data. - [Use cases](https://developers.clay.com/use-cases/index.md): See the GTM workflows you can run with Clay from a CLI, API, service, or agent. - [Run GTM workflows](https://developers.clay.com/use-cases/run-gtm-workflows.md): Embed Clay scoring, routing, research, enrichment waterfalls, and other GTM logic in your systems. - [Search Clay's GTM database](https://developers.clay.com/use-cases/search-gtm-database.md): Use natural language to search Clay's proprietary database of companies, people, and jobs. ## OpenAPI Specs - [openapi](https://developers.clay.com/openapi.json)