API (Legacy)
Senast uppdaterad:
I den har guiden gar vi igenom stegen som kravs for att integrera din anpassade Quickchat AI-assistent med din produkt via ett API-endpoint.
Autentisering
Section titled “Autentisering”Inkludera din API Key och scenario_id i varje begaran.
For att fa din API-nyckel, uppgradera din prenumeration till att inkludera API-atkomst.
Initiera ny konversation / ny anvandarhistorik
Section titled “Initiera ny konversation / ny anvandarhistorik”curl https://chat.quickchat.ai/chat \ -H 'Content-Type: application/json' \ -d '{ "api_key": "<API_KEY>", "scenario_id": "<SCENARIO_ID>", "text": "Hello!"}'import requests, jsonresponse = requests.post( url="https://chat.quickchat.ai/chat", json={ "api_key": "<API_KEY>", "scenario_id": "<SCENARIO_ID>", "text": "Hello!" })if response.status_code == 200: data = json.loads(response.content)else: raise ValueError( "Error code {}: {}".format( response.status_code, response.content.decode('utf-8')))Kommandot ovan returnerar JSON med foljande struktur:
{ "ord_number": 2, "conv_id": "abcd1234", "reply": "Hey there! 🙂"}conv_id ar en valfri parameter. En begaran utan conv_id startar en ny konversation och ett nytt conv_id returneras.
Koppla conv_id till din specifika anvandare for att bevara konversationskontext over tid och flera interaktioner.
Detta endpoint utfor ett enskilt konversationsutbyte.
HTTP-begaran
POST https://chat.quickchat.ai/chat
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| api_key | string | Skapa ett konto och prenumerera for att fa din API-nyckel |
| scenario_id | Text | ID kopplat till din Quickchat API-implementation |
| text | string | Anvandarens meddelande |
Skicka meddelande till AI-assistenten
Section titled “Skicka meddelande till AI-assistenten”curl https://chat.quickchat.ai/chat \ -H 'Content-Type: application/json' \ -d '{ "api_key": "<API_KEY>", "scenario_id": "<SCENARIO_ID>", "conv_id": "abcd1234", "text": "Hello!",}'import requests, jsonresponse = requests.post( url="https://chat.quickchat.ai/chat", json={ "api_key": "<API_KEY>", "scenario_id": "<SCENARIO_ID>", "conv_id": "abcd1234", "text": "Hello!", })if response.status_code == 200: data = json.loads(response.content)else: raise ValueError( "Error code {}: {}".format( response.status_code, response.content.decode('utf-8')))Kommandot ovan returnerar JSON med foljande struktur:
{ "ord_number": 236, "reply": "Hey, great to hear from you again! 😉"}HTTP-begaran
POST https://chat.quickchat.ai/chat
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| api_key | string | Skapa ett konto och prenumerera for att fa din API-nyckel |
| scenario_id | string | ID kopplat till din Quickchat API-implementation. |
| conv_id | string (Valfri) | Identifierar en specifik konversation/anvandare. |
| text | string | Anvandarens meddelande. |
| message_context | string (Valfri) | Extra kontext per meddelande som skickas till AI:n tillsammans med meddelandet. |
| client_metadata | dict (Valfri) | Till exempel {userId: 12, website: mywebsite.com}. Max 5 nycklar at gangen. Dessa parametrar kopplas till varje nytt meddelande och visas som datakolumner i konversationsexporten i Inbox. |
Meddelanden med anpassad kontext och metadata
Section titled “Meddelanden med anpassad kontext och metadata”Som beskrivet i tabellen ovan tillater endpointet https://chat.quickchat.ai/chat tva valfria parametrar: message_context och client_metadata.
Client metadata representerar anpassade attribut som kopplas till varje nytt meddelande och visas som datakolumner i konversationsexporten i Inbox. Du kan aven lagga till anpassade attribut till meddelanden via Widget med samma resultat.
Message context gor det mojligt att tillhandahalla exempelvis anvandardspecifik kontext till varje meddelande for att ge en mer personlig kansla i varje konversation.
curl https://chat.quickchat.ai/chat \ -H 'Content-Type: application/json' \ -d '{ "api_key": "<API_KEY>", "scenario_id": "<SCENARIO_ID>", "conv_id": "abcd1234", "text": "Hello!", "message_context": "The users name is John.", "client_metadata": {userId: 12, website: mywebsite.com}}'import requests, jsonresponse = requests.post( url="https://chat.quickchat.ai/chat", json={ "api_key": "<API_KEY>", "scenario_id": "<SCENARIO_ID>", "conv_id": "abcd1234", "text": "Hello!", "message_context": "The users name is John.", "client_metadata": {'userId': 12, 'website': 'mywebsite.com'} })if response.status_code == 200: data = json.loads(response.content)else: raise ValueError( "Error code {}: {}".format( response.status_code, response.content.decode('utf-8')))Filtrera pa kunskapsbastaggar via API
Section titled “Filtrera pa kunskapsbastaggar via API”I Quickchat AI-appen kan du lagga till taggar for varje artikel. Dessa kan anvandas for att filtrera kunskapsbasen sa att AI:n bara svarar baserat pa en delmangd av artiklarna i kunskapsbasen. Observera att denna funktion for narvarande bara stods via API.
For att filtrera efter kunskapsbastaggar bor du lagga till kb_topic i din client_metadata i API-anropen.
Viktigt: se till att nyckeln kb_topic finns med i varje anrop till API:et, inklusive initiering av konversationen. Vardet av kb_topic kan andras mellan anrop,
men sjalva parametern maste finnas med konstant under hela konversationen for att beaktas av vart system.
Exemplet nedan visar hur du lagger till kb_topic i client_metadata. I exemplet valjs alla artiklar med taggen your-topic eller utan nagon tagg alls som kandidater for kunskapsunderlag for svaret.
json={ "api_key": "<API_KEY>", "scenario_id": "<SCENARIO_ID>", "conv_id": "abcd1234", "text": "Hello!", "message_context": "The users name is John.", "client_metadata": {'kb_topic': 'your-topic'} }Nedan har vi samlat felkoderna som kan returneras av API:et, tillsammans med deras beskrivning och mojliga losningar.
| Code | Description | Action |
|---|---|---|
| 400 | Foljande parametrar maste anges: api_key, scenario_id, text | Se till att alla obligatoriska parametrar anges. |
| 400 | conv_id abcd1234 finns inte | Kontrollera att conv_id du hanvisar till ar korrekt. |
| 400 | Gransen for message context ar 1000 tecken. | Korta ned message context till 1000 tecken inklusive blanksteg. |
| 401 | Obehörig | Kontrollera att din api_key och scenario_id ar korrekta (se Integrations - API i appen). |
| 500 | Internt serverfel | Det ar ett problem pa var sida. Vänligen kontakta support. |
| 503 | Tjansten otillganglig | Vara servrar ar overbelastade eller tillfalligt otillgangliga pa grund av underhall. Om problemet kvarstar, kontakta support. |