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

# API Reference

> The generated public REST API contract for workspaces, campaigns, leads, inbox, quotas, credits, and sourcing.

The public REST API is served at **`https://api.sendpilot.ai/v1`**. Its 23 operations use workspace API keys. Dashboard session endpoints are not part of this public contract.

```bash theme={null}
curl https://api.sendpilot.ai/v1/me \
  -H "X-API-Key: $SENDPILOT_API_KEY"
```

Start by verifying the workspace and effective permissions, then inspect senders and credit balance before performing outreach or paid sourcing.

| Area | Available operations |
| - | - |
| Workspace | [Calling workspace, key, scopes and subscription](https://docs.sendler.ai/api-reference/endpoint/get-me.md) |
| Campaigns | List, inspect, pause, and resume existing campaigns |
| Leads | List, inspect, import profiles, and update outcomes |
| Inbox | List conversations, read messages, send messages, and request connections |
| Senders | Active sender list and [daily quota details](https://docs.sendler.ai/api-reference/endpoint/get-sender-quotas.md) |
| Credits | Unified available, subscription, purchased and used credit balance |
| Lead database | Start a search, poll status, and page through results |
| Lead extraction | Start an extraction job, poll status, and page through results |

Campaign creation and sequence editing stay in the dashboard. Webhook subscription management is a dashboard/session API, not an undocumented `/v1` endpoint.

## Use the generated contract

Request fields, response shapes, enum values, and limits on endpoint pages come from the controller-generated [OpenAPI specification](https://docs.sendler.ai/api-reference/openapi.yaml). Its `x-sp-scopes` and `x-sp-costs-credits` extensions identify permission and spending requirements. The compatibility copy at `/public/schemas/sendpilot.yaml` contains the same contract.

Read [authentication and permissions](https://docs.sendler.ai/api-reference/authentication.md) and [limits, pagination, errors, and retries](https://docs.sendler.ai/api-reference/behavior.md) before implementing writes. Use an `Idempotency-Key` for retryable POST/PATCH requests.

## REST versus MCP

| | REST API | MCP |
| - | - | - |
| Address | `https://api.sendpilot.ai/v1` | `https://mcp.sendpilot.ai`, or a specific OAuth connection URL |
| Authentication | Workspace API key | Shared API key or workspace-bound Clerk OAuth |
| Fields | Endpoint-specific, often camelCase | Tool-specific snake\_case |
| Pagination | `page`, `offset`, or `continuationToken` depending on endpoint | Opaque `cursor` / `next_cursor` |
| Writes | Execute when a valid request is accepted | Some tools first return a confirmation preview |
| Access policy | Public REST entitlement rules | Workspace-owner MCP access and tool-specific restrictions |

Do not send MCP fields such as `confirm` or `confirmation_token` to REST endpoints. See the [MCP guide](https://docs.sendler.ai/ai/mcp.md) for assistant setup and approval rules.

## Webhooks

Workspace webhooks include `message.sent`, `reply.received`, `connection_request.sent`, `connection_request.accepted`, `lead.updated`, `lead.tag.updated`, campaign lifecycle events, and sourcing completion events. See the [event catalog and delivery guide](https://docs.sendler.ai/webhooks/overview.md) for exact names and signature verification.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.