# zxn.uk Chat > Website live chat with an AI assistant, native iOS and Android inbox apps, and an agent surface (REST, webhooks, MCP, A2A). ## Machine interfaces - REST API (OpenAPI 3.1): https://chat.zxn.uk/openapi.json (human docs: https://chat.zxn.uk/docs) - MCP server (Streamable HTTP): https://chat.zxn.uk/mcp with header "Authorization: Bearer zxc_live_..." (API key from the app: Settings, Developers) - A2A agent per site: https://chat.zxn.uk/a2a/{site_public_key} (agent card: https://chat.zxn.uk/a2a/{site_public_key}/.well-known/agent-card.json), JSON-RPC methods message/send, message/stream, tasks/get, tasks/cancel - Webhooks: Standard Webhooks signatures (webhook-id, webhook-timestamp, webhook-signature); events conversation.created, conversation.assigned, conversation.closed, message.created ## Auth - Agents and integrations: "Authorization: Bearer zxc_live_..." (scoped: conversations:read, conversations:write, sites:read, sites:write, knowledge:write). Keys are workspace-bound. - Visitors (widget API, /v1/widget): anonymous, X-Visitor-Token header issued by POST /v1/widget/session. ## Conventions - JSON, snake_case, ISO-8601 UTC timestamps. Errors: {"error":{"code","message","fields?"}}. Pagination: ?limit&cursor -> {items,next_cursor}. - Message creation is idempotent on client_id. Realtime: WebSocket /v1/workspaces/{ws}/socket?token=...&since=seq, or poll /v1/workspaces/{ws}/events?since=seq. ## Install the widget