REST API
ChatReact REST API v1 ger er programmatisk åtkomst till stödda operationer i instrumentpanelen: chatbottar, kunskapsbas och crawling, strukturerade priser, vanliga frågor, chatgranskning och Improvement Agent, leads, kontaktformulär, livechatt, företag och team, Email Assistant, analys och aviseringar. Åtgärder som kräver webbläsaren (betalningar, mailbox-auktorisation, passkeys, kontoborttagning och API-nyckelhantering) sker fortfarande i instrumentpanelen.
Föredrar ni att prata med en AI-assistent? Samma funktioner finns som MCP-verktyg — se MCP Server Integration. Den interaktiva API-explorern med request- och response-scheman finns på /api-reference, där ni också kan ladda ner OpenAPI 3.0-specifikationen.
Autentisering
- Gå till Översikt → Företag → API-fliken och klicka Skapa API-nyckel
- Välj ett namn och de behörighetsscopes nyckeln behöver (se nedan)
- Kopiera nyckeln — den börjar med
cr_och visas endast en gång
Skicka nyckeln med varje förfrågan:
curl https://www.chatreact.ai/api/v1/chatbots \
-H "Authorization: Bearer cr_your_api_key"
En X-API-Key: cr_your_api_key-header accepteras också. API-nycklar tillhör ett företag och utförs med företagsägarens behörigheter; planbegränsningar och feature-gates gäller exakt som i instrumentpanelen.
API-åtkomst finns på betalplaner — se Pricing page. Nycklar kan återkallas när som helst från instrumentpanelen.
Scopes
Varje nyckel bär en eller flera scopes. En endpoint returnerar 403 när nyckeln saknar det erforderliga scopet.
| Scope | Ger |
|---|---|
chatbots:read / chatbots:write | Chatbot-konfiguration: persona, språk, widget, beteende, begränsningar, kärninstruktioner, embed-kod, inlärningsfas, chatbot-mallar, FAQ-widget-inställningar |
knowledge:read / knowledge:write | Kunskapsbas: dokument, webbplats-crawling, crawlad innehåll |
faqs:read / faqs:write | FAQ, FAQ-kategorier, förslag, översättningar |
chats:read / chats:write | Chathistorik, chatbetyg, confidence-kategorier, livechatt (agentåtgärder kräver chats:write) |
leads:read / leads:write | Leads, lead-kategorier, inställningar för lead capture, export |
forms:read / forms:write | Kontaktformulär och inskickade formulär |
analytics:read | Statistik, tidsserier för aktivitet, funnels, confidence-status |
company:read / company:write | Företagsprofil och inställningar, teammedlemmar, inbjudningar |
email:read / email:write | Email Assistant-anslutningar, kategorier, kontakter, aktivitet |
prices:read | Läs strukturerade prisposter, revisioner, eligibility och förslag |
prices:write | Skapa och redigera priskonton, importera CSV och tillämpa ett förslag som utkast; kräver företagsägaren |
prices:approve | Godkänn exakta versioner eller arkivera poster; kräver företagsägaren |
blog:read / blog:write | Plattformens blogginnehåll (ChatReact internt) |
| any valid key | /v1/me, kontobruk, era aviseringar |
Konventioner
- Base URL:
https://www.chatreact.ai/api/v1, JSON in och ut (Content-Type: application/json). - Svar:
{ "success": true, "data": … }; listor lägger till"pagination": { "total", "page", "pageSize", "totalPages" }. AnvändpageochpageSize(max 100) på lista-endpoints; vissa endpoints erbjuder cursor-paginering (cursor/nextCursor). - Fel:
{ "success": false, "error": "message", "code": "BAD_REQUEST" }med valfridetailsför valideringsfel. Statuskoder:400ogiltig input,401saknad eller ogiltig nyckel,403saknat scope, planfunktion ej inkluderad eller otillräcklig roll,404resurs hittades inte (även för resurser tillhörande andra företag),409konflikt,429hastighetsbegränsning överskriden. - Partiella uppdateringar:
PATCH-endpoints ändrar endast de fält ni skickar; okända fält avvisas. - Rate limit: 30 förfrågningar per minut per IP-adress.
- Långkörande operationer (crawls, AI-generering, översättningar) returnerar snabbt med ett jobb eller resultat som ni kan poll:a; de förbrukar token- och crawl-budgeten i er plan.
Endpoints
Prices & services
Att spara, redigera, importera och tillämpa ett förslag skapar utkast utan godkännande. Godkännande- och arkiveringsoperationer granskar exakta versioner; en föråldrad version returnerar konflikt. Befintliga nycklar får inte prisbehörigheter automatiskt. Endast företagsägaren kan bevilja skriv- eller godkännanderättigheter. För kundflödet, se Prices & services.
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/chatbots/{id}/prices | Lista prisposter och eligibility | prices:read |
POST | /api/v1/chatbots/{id}/prices | Skapa ett utkast | prices:write |
GET | /api/v1/chatbots/{id}/prices/{itemId} | Läs detaljer och paginerad historik | prices:read |
PATCH | /api/v1/chatbots/{id}/prices/{itemId} | Skapa ett redigerat utkast från en förväntad version | prices:write |
GET | /api/v1/chatbots/{id}/prices/{itemId}/state | Läs fullständig item-status | prices:read |
POST | /api/v1/chatbots/{id}/prices/{itemId}/approve | Godkänn en exakt version | prices:approve |
POST | /api/v1/chatbots/{id}/prices/{itemId}/archive | Arkivera en exakt version | prices:approve |
POST | /api/v1/chatbots/{id}/prices/approve-many | Godkänn ett explicit versionsval atomiskt | prices:approve |
POST | /api/v1/chatbots/{id}/prices/import | Importera CSV-utkast med ett stabilt import-ID | prices:write |
GET | /api/v1/chatbots/{id}/prices/suggestions | Lista prisförslag | prices:read |
POST | /api/v1/chatbots/{id}/prices/suggestions/{suggestionId}/apply | Tillämpa ett valt förslag som utkast | prices:write |
Chatbots
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/chatbots | Lista chatbottar | chatbots:read |
POST | /api/v1/chatbots | Skapa chatbot | chatbots:write |
GET | /api/v1/chatbots/{id} | Hämta chatbot | chatbots:read |
PATCH | /api/v1/chatbots/{id} | Uppdatera chatbot | chatbots:write |
DELETE | /api/v1/chatbots/{id} | Radera chatbot | chatbots:write |
GET | /api/v1/chatbots/{id}/personality | Hämta chatbot-personlighet | chatbots:read |
PATCH | /api/v1/chatbots/{id}/personality | Uppdatera chatbot-personlighet | chatbots:write |
GET | /api/v1/chatbots/{id}/widget | Hämta widget-inställningar | chatbots:read |
PATCH | /api/v1/chatbots/{id}/widget | Uppdatera widget-inställningar | chatbots:write |
GET | /api/v1/chatbots/{id}/widget/translations | Hämta widget-översättningar | chatbots:read |
PUT | /api/v1/chatbots/{id}/widget/translations | Ersätt widget-översättningar | chatbots:write |
GET | /api/v1/chatbots/{id}/embed | Hämta embed-kod | chatbots:read |
POST | /api/v1/chatbots/{id}/embed/confirm | Bekräfta embed | chatbots:write |
GET | /api/v1/chatbots/{id}/learning-phase | Hämta inlärningsfas-inställningar | chatbots:read |
PATCH | /api/v1/chatbots/{id}/learning-phase | Uppdatera inlärningsfas-inställningar | chatbots:write |
POST | /api/v1/chatbots/{id}/learning-phase/end | Avsluta inlärningsfas | chatbots:write |
GET | /api/v1/chatbots/{id}/instructions | Lista kärninstruktioner | chatbots:read |
POST | /api/v1/chatbots/{id}/instructions | Lägg till kärninstruktion | chatbots:write |
PUT | /api/v1/chatbots/{id}/instructions/reorder | Omdisponera kärninstruktioner | chatbots:write |
POST | /api/v1/chatbots/{id}/instructions/improve | Förbättra instruktioner med AI | chatbots:write |
GET | /api/v1/instructions/{id} | Hämta kärninstruktion | chatbots:read |
PATCH | /api/v1/instructions/{id} | Uppdatera kärninstruktion | chatbots:write |
DELETE | /api/v1/instructions/{id} | Radera kärninstruktion | chatbots:write |
GET | /api/v1/chatbot-templates | Lista chatbot-mallar | chatbots:read |
Kunskapsbas
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/chatbots/{id}/knowledge | Översikt av kunskapsbas | knowledge:read |
GET | /api/v1/chatbots/{id}/documents | Lista dokument för chatbot | knowledge:read |
POST | /api/v1/chatbots/{id}/documents | Ladda upp dokument | knowledge:write |
POST | /api/v1/chatbots/{id}/documents/presign | Presignera dokumentuppladdning | knowledge:write |
GET | /api/v1/documents/{id} | Hämta dokument | knowledge:read |
DELETE | /api/v1/documents/{id} | Radera dokument | knowledge:write |
POST | /api/v1/documents/{id}/confirm | Bekräfta presignerad uppladdning | knowledge:write |
GET | /api/v1/chatbots/{id}/crawl/limits | Crawl-gränser | knowledge:read |
POST | /api/v1/chatbots/{id}/crawl/preview | Förhandsgranska webbplatsgenomsökning | knowledge:write |
GET | /api/v1/chatbots/{id}/crawl | Lista crawl-jobb | knowledge:read |
POST | /api/v1/chatbots/{id}/crawl | Starta crawl | knowledge:write |
GET | /api/v1/crawl-jobs/{jobId} | Hämta crawl-jobb | knowledge:read |
POST | /api/v1/crawl-jobs/{jobId}/cancel | Avbryt crawl-jobb | knowledge:write |
GET | /api/v1/chatbots/{id}/pages | Lista crawlade sidor | knowledge:read |
POST | /api/v1/chatbots/{id}/pages | Lägg till enstaka URL | knowledge:write |
POST | /api/v1/chatbots/{id}/pages/bulk-delete | Massradera crawlade sidor | knowledge:write |
GET | /api/v1/pages/{id} | Hämta crawlad sida | knowledge:read |
DELETE | /api/v1/pages/{id} | Radera crawlad sida | knowledge:write |
POST | /api/v1/pages/{id}/recrawl | Recrawl sida | knowledge:write |
GET | /api/v1/chatbots/{id}/websites | Lista crawlade webbplatser | knowledge:read |
DELETE | /api/v1/chatbots/{id}/websites/{domain} | Radera webbplats | knowledge:write |
POST | /api/v1/chatbots/{id}/websites/{domain}/recrawl | Recrawl webbplats | knowledge:write |
POST | /api/v1/chatbots/{id}/websites/{domain}/recrawl/cancel | Avbryt webbplats-recrawl | knowledge:write |
FAQs
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/chatbots/{id}/faqs | Lista FAQ för chatbot | faqs:read |
POST | /api/v1/chatbots/{id}/faqs | Skapa FAQ | faqs:write |
POST | /api/v1/chatbots/{id}/faqs/bulk | Massimportera FAQ | faqs:write |
POST | /api/v1/chatbots/{id}/faqs/reorder | Omdisponera FAQ | faqs:write |
GET | /api/v1/chatbots/{id}/faqs/embed | Hämta FAQ-widget embed-kod | chatbots:read |
POST | /api/v1/chatbots/{id}/faqs/purge-cache | Rensa fjärr-cache för FAQ | faqs:write |
GET | /api/v1/faqs/{id} | Hämta FAQ | faqs:read |
PATCH | /api/v1/faqs/{id} | Uppdatera FAQ | faqs:write |
DELETE | /api/v1/faqs/{id} | Radera FAQ | faqs:write |
PUT | /api/v1/faqs/{id}/translations | Uppdatera FAQ-översättningar | faqs:write |
POST | /api/v1/faqs/{id}/translate | AI-översätt FAQ | faqs:write |
GET | /api/v1/chatbots/{id}/faq-suggestions | Lista FAQ-förslag | faqs:read |
POST | /api/v1/chatbots/{id}/faq-suggestions/generate | Generera FAQ-förslag från kunskapsbas | faqs:write |
GET | /api/v1/faq-suggestions/{id} | Hämta FAQ-förslag | faqs:read |
POST | /api/v1/faq-suggestions/{id}/approve | Godkänn FAQ-förslag | faqs:write |
POST | /api/v1/faq-suggestions/{id}/reject | Avvisa FAQ-förslag | faqs:write |
GET | /api/v1/chatbots/{id}/faq-categories | Lista FAQ-kategorier | faqs:read |
POST | /api/v1/chatbots/{id}/faq-categories | Skapa FAQ-kategori | faqs:write |
POST | /api/v1/chatbots/{id}/faq-categories/reorder | Omdisponera FAQ-kategorier | faqs:write |
GET | /api/v1/faq-categories/{id} | Hämta FAQ-kategori | faqs:read |
PATCH | /api/v1/faq-categories/{id} | Uppdatera FAQ-kategori | faqs:write |
DELETE | /api/v1/faq-categories/{id} | Radera FAQ-kategori | faqs:write |
PUT | /api/v1/faq-categories/{id}/translations | Uppdatera FAQ-kategori-översättningar | faqs:write |
GET | /api/v1/chatbots/{id}/faq-widget-settings | Hämta FAQ-widget-inställningar | chatbots:read |
PATCH | /api/v1/chatbots/{id}/faq-widget-settings | Uppdatera FAQ-widget-inställningar | chatbots:write |
Chattar, feedback & Improvement Agent
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/chats | Lista chatt-sessioner | chats:read |
GET | /api/v1/chats/{sessionId} | Hämta chatt-session | chats:read |
PATCH | /api/v1/chats/{sessionId} | Sätt chat confidence-kategori | chats:write |
POST | /api/v1/chats/{sessionId}/feedback | Betygsätt chatt (Bra / Behöver arbete) | chats:write |
POST | /api/v1/chats/{sessionId}/feedback/dismiss | Avfärda chattgranskning | chats:write |
POST | /api/v1/chats/{sessionId}/improve | Starta Improvement Agent för chatt | chatbots:write |
GET | /api/v1/chatbots/{id}/feedback | Lista chattgranskningar för en chatbot | chats:read |
GET | /api/v1/chatbots/{id}/feedback/stats | Stat-kort för chattgranskning | chats:read |
GET | /api/v1/feedback/{id} | Hämta chattgranskning | chats:read |
PATCH | /api/v1/feedback/{id} | Överstyr granskningsallvarlighet | chats:write |
POST | /api/v1/feedback/{id}/improvement-session | Starta Improvement Agent för granskning | chatbots:write |
GET | /api/v1/chatbots/{id}/confidence | Hämta confidence-status | analytics:read |
GET | /api/v1/chatbots/{id}/confidence-categories | Lista confidence-kategorier | chats:read |
POST | /api/v1/chatbots/{id}/confidence-categories | Skapa confidence-kategori | chatbots:write |
PATCH | /api/v1/confidence-categories/{id} | Uppdatera confidence-kategori | chatbots:write |
DELETE | /api/v1/confidence-categories/{id} | Radera confidence-kategori | chatbots:write |
POST | /api/v1/confidence-categories/{id}/merge | Slå ihop confidence-kategorier | chatbots:write |
GET | /api/v1/chatbots/{id}/improvement-sessions | Lista förbättringssessioner | chatbots:read |
GET | /api/v1/improvement-sessions/{id} | Hämta förbättringssession | chatbots:read |
POST | /api/v1/improvement-sessions/{id}/messages | Skicka meddelande till Improvement Agent | chatbots:write |
POST | /api/v1/improvement-sessions/{id}/complete | Avsluta förbättringssession | chatbots:write |
POST | /api/v1/improvement-sessions/{id}/reset | Återställ förbättringssession | chatbots:write |
POST | /api/v1/improvement-proposals/{id}/apply | Tillämpa förbättringsförslag | chatbots:write |
POST | /api/v1/improvement-proposals/{id}/reject | Avvisa förbättringsförslag | chatbots:write |
POST | /api/v1/improvement-proposals/{id}/simulations | Simulera förbättringsförslag | chatbots:write |
POST | /api/v1/improvement-simulations/{id}/assessment | Betygsätt simuleringsresultat | chatbots:write |
Leads
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/leads | Lista leads | leads:read |
POST | /api/v1/leads | Skapa lead | leads:write |
GET | /api/v1/leads/{id} | Hämta lead | leads:read |
PATCH | /api/v1/leads/{id} | Uppdatera lead | leads:write |
DELETE | /api/v1/leads/{id} | Radera lead | leads:write |
POST | /api/v1/leads/{id}/assign | Tilldela lead | leads:write |
POST | /api/v1/leads/bulk-status | Massuppdatera lead-status | leads:write |
GET | /api/v1/leads/stats | Lead-statistik | leads:read |
GET | /api/v1/leads/export | Exportera leads | leads:read |
GET | /api/v1/chatbots/{id}/lead-config | Hämta lead capture-konfiguration | leads:read |
PUT | /api/v1/chatbots/{id}/lead-config | Uppdatera lead capture-konfiguration | leads:write |
GET | /api/v1/chatbots/{id}/lead-categories | Lista lead-kategorier | leads:read |
POST | /api/v1/chatbots/{id}/lead-categories | Skapa lead-kategori | leads:write |
GET | /api/v1/lead-categories/{id} | Hämta lead-kategori | leads:read |
PATCH | /api/v1/lead-categories/{id} | Uppdatera lead-kategori | leads:write |
DELETE | /api/v1/lead-categories/{id} | Radera lead-kategori | leads:write |
PUT | /api/v1/lead-categories/{id}/users/{userId} | Tilldela medlem till lead-kategori | leads:write |
DELETE | /api/v1/lead-categories/{id}/users/{userId} | Ta bort medlem från lead-kategori | leads:write |
Kontaktformulär
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/chatbots/{id}/forms | Lista kontaktformulär | forms:read |
POST | /api/v1/chatbots/{id}/forms | Skapa kontaktformulär | forms:write |
GET | /api/v1/forms/{id} | Hämta kontaktformulär | forms:read |
PATCH | /api/v1/forms/{id} | Uppdatera kontaktformulär | forms:write |
DELETE | /api/v1/forms/{id} | Radera kontaktformulär | forms:write |
GET | /api/v1/forms/{id}/submissions | Lista formulärinskick | forms:read |
GET | /api/v1/forms/{id}/stats | Statistik för formulärinskick | forms:read |
GET | /api/v1/submissions/{id} | Hämta formulärinskick | forms:read |
PATCH | /api/v1/submissions/{id} | Granska formulärinskick | forms:write |
DELETE | /api/v1/submissions/{id} | Radera formulärinskick | forms:write |
Live chat
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/live-chat/availability | Hämta egen livechat-tillgänglighet | chats:read |
PUT | /api/v1/live-chat/availability | Sätt egen livechat-tillgänglighet | chats:write |
POST | /api/v1/live-chat/heartbeat | Skicka närvaropuls (heartbeat) | chats:write |
GET | /api/v1/live-chat/agents | Lista tillgängliga livechat-agenter | chats:read |
GET | /api/v1/live-chat/sessions | Lista livechat-sessioner | chats:read |
GET | /api/v1/live-chat/sessions/{sessionId} | Hämta livechat-session | chats:read |
POST | /api/v1/live-chat/sessions/{sessionId}/assign | Ta över livechat (tilldela till nyckelägare) | chats:write |
POST | /api/v1/live-chat/sessions/{sessionId}/messages | Skicka meddelande som agent | chats:write |
POST | /api/v1/live-chat/sessions/{sessionId}/close | Avsluta livechat | chats:write |
Analys
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/analytics | Hämta analysöversikt | analytics:read |
GET | /api/v1/analytics/activity | Hämta chattaktivitets-tidsserier | analytics:read |
GET | /api/v1/analytics/chatbots | Lista per-chatbot prestandastatistik | analytics:read |
GET | /api/v1/analytics/chatbots/{id} | Hämta chatbot-analys | analytics:read |
GET | /api/v1/analytics/leads | Hämta lead-funnel | analytics:read |
GET | /api/v1/analytics/forms | Hämta statistik för formulärinskick | analytics:read |
GET | /api/v1/activity | Hämta uppmärksamhetssammanfattning | analytics:read |
Företag & team
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/company | Hämta företag | any key |
PATCH | /api/v1/company | Uppdatera företag | company:write |
GET | /api/v1/company/settings | Hämta företagsinställningar | company:read |
PATCH | /api/v1/company/settings | Uppdatera företagsinställningar | company:write |
DELETE | /api/v1/company/logo | Ta bort företagslogotyp | company:write |
GET | /api/v1/company/members | Lista teammedlemmar | company:read |
PATCH | /api/v1/company/members/{userId} | Ändra medlems roll | company:write |
DELETE | /api/v1/company/members/{userId} | Ta bort teammedlem | company:write |
GET | /api/v1/company/invites | Lista inbjudningar | company:read |
POST | /api/v1/company/invites | Bjuda in teammedlem | company:write |
DELETE | /api/v1/company/invites/{id} | Avbryt inbjudan | company:write |
POST | /api/v1/company/invites/{id}/resend | Skicka om inbjudan | company:write |
Email Assistant
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/email/connections | Lista mailbox-anslutningar | email:read |
GET | /api/v1/email/connections/{id} | Hämta mailbox-anslutning | email:read |
PATCH | /api/v1/email/connections/{id} | Uppdatera mailbox-anslutning | email:write |
DELETE | /api/v1/email/connections/{id} | Koppla bort mailbox | email:write |
GET | /api/v1/email/connections/{id}/categories | Lista email-kategorier | email:read |
POST | /api/v1/email/connections/{id}/categories | Skapa email-kategori | email:write |
GET | /api/v1/email/connections/{id}/folders | Lista mailmappar | email:read |
POST | /api/v1/email/connections/{id}/folders | Skapa mailmapp | email:write |
GET | /api/v1/email/connections/{id}/activity | Lista email-aktivitetlogg | email:read |
GET | /api/v1/email/categories/{id} | Hämta email-kategori | email:read |
PATCH | /api/v1/email/categories/{id} | Uppdatera email-kategori | email:write |
DELETE | /api/v1/email/categories/{id} | Radera email-kategori | email:write |
GET | /api/v1/email/contacts | Lista email-kontakter | email:read |
GET | /api/v1/email/contacts/{id} | Hämta email-kontakt | email:read |
PATCH | /api/v1/email/contacts/{id} | Uppdatera email-kontakt | email:write |
DELETE | /api/v1/email/contacts/{id} | Radera email-kontakt | email:write |
Konto & aviseringar
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/me | Hämta nyckelkontext (whoami) | any key |
GET | /api/v1/account/usage | Hämta plan och användning | any key |
GET | /api/v1/notifications | Lista aviseringar | any key |
DELETE | /api/v1/notifications | Radera gamla lästa aviseringar | any key |
GET | /api/v1/notifications/unread-count | Hämta antal olästa aviseringar | any key |
POST | /api/v1/notifications/mark-all-read | Markera alla aviseringar som lästa | any key |
GET | /api/v1/notifications/{id} | Hämta avisering | any key |
PATCH | /api/v1/notifications/{id} | Markera avisering som läst | any key |
Blogg (plattform)
| Method | Path | Description | Scope |
|---|---|---|---|
GET | /api/v1/blog | Lista blogginlägg | any key |
POST | /api/v1/blog | Skapa blogginlägg | any key |
POST | /api/v1/blog/assets | Ladda upp blogg-resurs | any key |
GET | /api/v1/blog/{id} | Hämta blogginlägg | any key |
PATCH | /api/v1/blog/{id} | Uppdatera blogginlägg | any key |
DELETE | /api/v1/blog/{id} | Radera blogginlägg | any key |
POST | /api/v1/blog/{id}/translations | Köa bloggöversättningar | any key |
Behöver ni hjälp? Kontakta vårt supportteam →