Everything you can click in the cockpit, you can also automate: through a REST API or straight from Claude, via MCP. That's handy if you manage many clients, want to build your own reporting, or already run your workflows with AI tools anyway.
Creating an API key
In Settings, under "API keys & Claude (MCP)", you create a key. It's shown to you exactly once, so copy it straight to a safe place, such as your team's password manager. Afterwards the list only shows the key's prefix, when it was last used, and a revoke button.
A key has the same permissions you have in the cockpit. Treat it like a password:
- Don't commit it to code repositories, don't send it by email.
- One key per application, so you can revoke individually.
- Revoke keys you no longer use. Revocation takes effect immediately.
Driving the cockpit from Claude (MCP)
With an API key you can add the cockpit as a tool in Claude. From then on you handle agency tasks in chat: "Show me the bakery's visitor numbers for this month", "Send Mrs. Meier a review request", "What appointments are coming up next week?". Claude calls the same functions the cockpit itself uses — with the same permissions.
The connection details for the setup are shown in the cockpit right next to the API key.
What Claude can do with it
The tools cover your cockpit work:
- Overview and numbers: list clients and websites, visitor numbers (7/30/90 days), uptime and performance, a website's change history.
- Operating modules: set up the chatbot and read its conversations, manage the newsletter including subscribers and campaigns, draft and send issues, send review requests and see incoming reviews, configure appointment booking and list appointments, adjust the monthly report.
- Connecting clients: generate pairing codes for WhatsApp, Telegram and email, invite clients to the client portal.
- Domain and hosting: connect and check custom domains, manage environment variables, switch a site to external hosting including the push-to-deploy check.
- Website knowledge: fetch a website's design profile, trigger re-indexing, restore an earlier version.
Claude also knows this documentation and answers questions about how things work straight from it. For anything that costs money or can't be undone — booking modules, switching hosting, sending newsletters, restoring versions — Claude asks you first.
REST API
For your own scripts and integrations, you talk to the API directly. The key is sent as a bearer token in the Authorization header. The available endpoints cover the same areas as the cockpit: clients, websites, modules, analytics, hosting.
Widget API: integrating modules natively into the client website
Chatbot, bookings and newsletter sign-up don't have to be embedded as ready-made widgets — every module has a public JSON API so you can build the feature natively into the end-customer site (your own markup, your own behaviour). Authentication uses the module's public_token (the value from the embed code, e.g. data-pagora-booking="…"); CORS is open, so calls work straight from the browser. Base URL: https://api.pagoras.de.
- Chatbot:
GET /api/chat/{token}/config(name, greeting, colours) ·POST /api/chat/{token}/messagewith{ "text": "…", "conversationId": "…" }→{ "conversationId", "reply" }. Pass theconversationIdfrom the first response with follow-up messages. Note: with a custom integration you are responsible for the AI disclosure in the UI (the ready-made widget has it built in). - Bookings:
GET /api/booking/{token}/config(services, mode, texts) ·GET /api/booking/{token}/slots?from=YYYY-MM-DD&days=7&service={id}→ free slots per day plusnextFree·POST /api/booking/{token}/bookwith{ "service_id", "starts_at", "name", "email", "phone?", "note?", "party?" }· rescheduling viaPOST /api/booking/{token}/reschedule. - Newsletter:
GET /api/newsletter/{token}/config·POST /api/newsletter/{token}/subscribewith{ "email", "name?" }— the platform handles the double opt-in (confirmation email). Don't forget the double opt-in note in your own form.
The same limits apply as in the widgets (e.g. chatbot messages per minute/day). The ready-made widgets remain the easiest path — the API is for cases where the module should blend seamlessly into the website's design and behaviour.