> ## Documentation Index
> Fetch the complete documentation index at: https://developers.clay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Execution model

> Understand the primitives behind Clay routines, searches, tables, runs, and batch jobs.

Clay's stable developer surface is focused on execution and data access. It lets you run Clay logic and retrieve Clay data from outside the Clay UI.

Workflows are the Alpha building surface. Use them when you want to create, edit, validate, run, inspect, or batch-run Clay logic from the plugin or CLI.

## Core primitives

| Primitive  | What it does                                                        |
| ---------- | ------------------------------------------------------------------- |
| Routines   | Run Clay functions and Workflows from the plugin, CLI, API, or MCP  |
| Searches   | Access Clay's proprietary database of companies, people, and jobs   |
| Tables     | Query known Clay tables with structured filters and selected fields |
| Runs       | Track asynchronous routine execution and poll for results           |
| Batch jobs | Run the same routine across larger JSONL inputs                     |

## How teams use it

Most integrations start with a routine. A Clay function packages the workflow, input schema, provider choices, prompts, and output shape. Your system passes inputs to the routine and receives structured results.

Searches and tables are data access paths. Use searches to discover people, companies, and jobs from natural language. Use tables when you already know the table and want structured query results.

<Card title="Routines" href="/routines">
  Learn how to expose and run Clay functions.
</Card>
