Browse the docs
Developers
Developer platform overview
Work with ASDK from your own code and AI tools: the REST API with API keys, signed webhooks, the MCP server for AI assistants and the @asdk/js SDK.
Last updated
On this page
ASDK runs agents on your website from one knowledge base per site. The developer platform lets your own servers, automations and AI assistants use the same knowledge and data:
- REST API. Read sites, knowledge sources, Q&A pairs, conversations, leads, insights and knowledge gaps; add Q&A pairs, sync sources, change lead statuses and ask a site's agent a question from your server. Every endpoint is in the API reference.
- Webhooks. ASDK sends signed events to your endpoints when a visitor leaves their details, a lead changes, a conversation ends, visitors ask something your knowledge base can't answer, or a source finishes syncing.
- MCP server. Connect Claude, Claude Code or another MCP client to your workspace: list sites, search knowledge, ask questions, read leads and knowledge gaps, and add answers.
- @asdk/js. Typed helpers for the widget's
asdk()API in the browser, a typed REST client and webhook verification.
Start here
Create an API key
In the dashboard, open Settings → API and create a key. Choose Read for reporting and exports, or Read and write when your code also makes changes. The key is shown once. See authentication and scopes.
Make a request
Send the key as a bearer token. This lists the sites of the key's workspace:
curl https://api.asdk.com/v1/workspaces/$WORKSPACE_ID/sites \
-H "Authorization: Bearer $ASDK_API_KEY"The workspace id (wsp_…) is in the dashboard's address bar and on the API settings page.
Listen for events
Add a webhook endpoint under Settings → Webhooks, send a test event, and verify the signature in your handler.
Conventions
- Base URL:
https://api.asdk.com. Every endpoint is under/v1. - Format: JSON with camelCase field names; times are RFC 3339 in UTC.
- Ids: a prefix and 20 letters or digits:
site_…,src_…,lead_…,conv_…,whk_…. - Errors: problem details (
application/problem+json) with a stabletype, such asnot-found,validation(with thefieldthat is wrong),insufficient-scopeorrate-limited. - Pages: list endpoints return a
nextCursor; pass it ascursorto get the next page. - Limits: see rate limits.