Hoppa till innehåll

Prata med din AI Agent programmatiskt via realtids-endpointen Chat — perfekt för att bygga ett eget chattgränssnitt.

Realtids-endpointen Chat skickar ett besökarmeddelande till din AI Agent och returnerar AI-svaret i en enda round-trip. Det här är endpointen du vill använda när du bygger ett eget chattgränssnitt ovanpå Quickchat AI.

Den skiljer sig från de andra endpointsen på två sätt: den ligger på app.quickchat.ai/chat, utanför bas-sökvägarna /v1/api/ och /v1/api_core/, och den läser scenario_id från request-bodyn i stället för från token. Den använder samma Bearer-tokenautentisering som resten av detta API.

POST https://app.quickchat.ai/chat

Request Body

ParameterDescription
scenario_id
string, required
ID för din AI Agent. Måste matcha det scenario_id som Bearer-token är kopplad till
text
string, required
Användarens inmatade meddelande
conv_id
string
Konversations-ID. Utelämna i den första requesten för att starta en ny konversation, skicka sedan tillbaka det returnerade conv_id i efterföljande requests för att fortsätta den
client_metadata
object
Anpassade nyckel-värde-par (vi rekommenderar högst 5 nycklar) som kopplas till varje meddelande. Visas som datakolumner i konversationsexporten i Inbox

En request utan conv_id startar en ny konversation, och det genererade conv_id returneras i svaret. Lagra det conv_id och skicka tillbaka det i senare requests för att bibehålla konversationskontexten över flera användarinteraktioner.

Terminal window
# Start a new conversation by omitting conv_id
curl -X POST https://app.quickchat.ai/chat \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"scenario_id": "<SCENARIO_ID>",
"text": "Hello!"
}'

Response 200 OK

{
"conv_id": "conv-uuid-1234",
"reply": "Hi there! How can I help you today?",
"ord_number": 3,
"src": 0
}
FieldDescription
conv_id
string
Konversationsidentifierare. Returneras alltid. Skicka tillbaka det i body-fältet conv_id för att fortsätta konversationen
reply
string
AI Agentens svar. Kan innehålla HTML som <br>-radbrytningar
ord_number
integer
Sekventiellt meddelandenummer inom konversationen
src
integer
Intern källindikator. API-klienter kan ignorera detta fält

För att fortsätta en befintlig konversation skickar du tillbaka det conv_id du fick:

Terminal window
curl -X POST https://app.quickchat.ai/chat \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"scenario_id": "<SCENARIO_ID>",
"conv_id": "conv-uuid-1234",
"text": "What is your return policy?"
}'

Chat-endpointen accepterar en valfri client_metadata-parameter: anpassade attribut som tilldelas varje nytt meddelande och visas som datakolumner i konversationsexporten i Inbox. Du kan koppla samma attribut via widgeten. Vi rekommenderar att du skickar högst 5 nycklar åt gången, till exempel {"userId": 12, "website": "mywebsite.com"}. Detta är en riktlinje, inte en gräns som API:et tvingar fram.

Terminal window
curl -X POST https://app.quickchat.ai/chat \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"scenario_id": "<SCENARIO_ID>",
"conv_id": "conv-uuid-1234",
"text": "Hello!",
"client_metadata": {"userId": 12, "website": "mywebsite.com"}
}'

Du kan lägga till taggar på Knowledge Base-artiklar och använda dem för att begränsa vilka artiklar AI:n utgår från, så att den svarar baserat på endast en delmängd av Knowledge Base. Denna filtrering stöds för närvarande endast via API:et.

För att filtrera efter tagg lägger du till en kb_topic-nyckel i client_metadata. Nyckeln kb_topic måste finnas med i varje request i konversationen, inklusive den request som startar den. Värdet kan ändras mellan requests, men själva nyckeln måste finnas med genom hela konversationen för att filtret ska gälla.

I exemplet nedan inkluderas varje artikel som är taggad your-topic, eller helt saknar tagg, i kandidatpoolen av kunskap för svaret.

json={
"scenario_id": "<SCENARIO_ID>",
"conv_id": "conv-uuid-1234",
"text": "Hello!",
"client_metadata": {"kb_topic": "your-topic"},
}

Chat-endpointen returnerar ett felmeddelande i klartext med en lämplig HTTP-statuskod.

StatusDescriptionAction
400Saknat scenario_id eller inga autentiseringsuppgifter angivnaInkludera scenario_id i bodyn och en giltig Authorization: Bearer <API_TOKEN>-header
400Ogiltigt conv_id (Conversation conv_id <id> is not valid.)Utelämna conv_id för att starta en ny konversation, eller skicka ett conv_id som returnerats av ett tidigare svar
401Ogiltiga autentiseringsuppgifter (Unauthorized.)Kontrollera att din Bearer-token eller API-nyckel är giltig för detta scenario_id
404Okänt scenario_id (No implementation found for scenario_id <id>)Verifiera scenario_id och att din Bearer-token är kopplad till det
500Internt serverfelEtt problem på vår sida. Vänligen kontakta supporten
503Service unavailableServrarna är tillfälligt överbelastade eller under underhåll. Om problemet kvarstår, vänligen kontakta supporten