API Integracija
Programiškai siųskite duomenis į savo AI SmartTalk žinių bazę naudodami mūsų REST API. Puikiai tinka pritaikytoms integracijoms, automatizuotoms duomenų srautams ir bet kokiam duomenų šaltiniui, kuris nėra padengtas mūsų natūraliais jungikliais.
Apžvalga
API integracija leidžia jums:
- Siųsti dokumentus tiesiai į savo žinių bazę
- Atnaujinti turinį programiškai
- Ištrinti pasenusius įrašus
- Kurti pritaikytus duomenų srautus
- Integruotis su bet kuria sistema, kuri gali siųsti HTTP užklausas
Reikalavimai
Prieš pradėdami, įsitikinkite, kad turite:
- Aktyvią AI SmartTalk paskyrą
- Įgalintą API prieigą (patikrinkite savo planą)
- Pagrindines žinias apie REST API
- Įrankį HTTP užklausoms siųsti (curl, Postman arba jūsų programos kodas)
API Kredencialų Gavimo Procesas
1 Žingsnis: Pasiekite API Nustatymus
- Prisijunkite prie savo AI SmartTalk paskyros
- Eikite į Nustatymai → Integracijos
- Suraskite API ir spustelėkite Konfigūruoti
2 Žingsnis: Sugeneruokite API Raktą
- Spustelėkite Sugeneruoti naują raktą
- Nukopijuokite savo Chat Model ID ir API raktą
- Laikykite juos saugiai – raktas rodomas tik vieną kartą!
⚠️ Saugumo įspėjimas: Niekada neatskleiskite savo API rakto kliento pusėje esančiame kode ar viešose saugyklose.
API Pabaigos Taškai
Pagrindinis URL
https://api.aismarttalk.tech/v1
Autentifikacija
Visoms užklausoms reikalingas jūsų API raktas antraštėje:
Authorization: Bearer YOUR_API_TOKEN
API Pabaigos
Pagrindinis URL
https://api.aismarttalk.tech/v1
Autentifikacija
Visiems užklausoms reikalingas jūsų API žetonas antraštėje:
Authorization: Bearer YOUR_API_TOKEN
Importuoti Dokumentus
Pabaiga
POST /documents/import
Užklausos Kūnas
{
"chatModelId": "your-chat-model-id",
"documents": [
{
"title": "Produkto Dokumentacija",
"content": "Visas jūsų dokumento turinys čia...",
"url": "https://example.com/docs/product",
"metadata": {
"category": "documentation",
"language": "en"
}
}
]
}
Parametrai
| Laukas | Tipas | Privalomas | Aprašymas |
|---|---|---|---|
chatModelId | string | ✅ | Jūsų unikalus pokalbių modelio identifikatorius |
documents | array | ✅ | Dokumentų objektų masyvas |
documents[].title | string | ✅ | Dokumento pavadinimas identifikavimui |
documents[].content | string | ✅ | Pilnas teksto turinys |
documents[].url | string | ❌ | Šaltinio URL (nuorodai) |
documents[].metadata | object | ❌ | Pasirinktiniai raktų-vertės poros |
Atsakymas
{
"success": true,
"imported": 1,
"documents": [
{
"id": "doc_abc123",
"title": "Produkto Dokumentacija",
"status": "processing"
}
]
}
Pavyzdys: cURL
curl -X POST https://api.aismarttalk.tech/v1/documents/import \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"chatModelId": "your-chat-model-id",
"documents": [
{
"title": "Pradžios Vadovas",
"content": "Sveiki atvykę į mūsų platformą. Štai kaip pradėti...",
"url": "https://docs.example.com/getting-started"
}
]
}'
Užklausti Dokumentus
Užduokite klausimus savo žinių bazei programiškai.
Pabaiga
POST /chat/query
Užklausos Kūnas
{
"chatModelId": "your-chat-model-id",
"query": "Kaip atnaujinti savo slaptažodį?",
"options": {
"maxTokens": 500,
"temperature": 0.7
}
}
Atsakymas
{
"success": true,
"response": "Norėdami atnaujinti savo slaptažodį, eikite į Nustatymai > Saugumas > Keisti slaptažodį...",
"sources": [
{
"documentId": "doc_abc123",
"title": "Saugumo Vadovas",
"relevance": 0.95
}
]
}
Gauti Dokumentus
Gaukite dokumentus, atitinkančius užklausą (be AI atsakymo).
Pabaiga
POST /documents/search
Užklausos Kūnas
{
"chatModelId": "your-chat-model-id",
"query": "slaptažodžio saugumas",
"limit": 10
}
Atsakymas
{
"success": true,
"documents": [
{
"id": "doc_abc123",
"title": "Saugumo Geriausios Praktikos",
"content": "...",
"relevance": 0.92
}
]
}
Kodo Pavyzdžiai
Python
import requests
API_TOKEN = "your-api-token"
CHAT_MODEL_ID = "your-chat-model-id"
def import_document(title: str, content: str, url: str = None):
response = requests.post(
"https://api.aismarttalk.tech/v1/documents/import",
headers={
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
},
json={
"chatModelId": CHAT_MODEL_ID,
"documents": [{
"title": title,
"content": content,
"url": url
}]
}
)
return response.json()
# Importuoti dokumentą
result = import_document(
title="DUK: Pristatymas",
content="Siūlome nemokamą pristatymą užsakymams virš 50 $...",
url="https://shop.example.com/faq/shipping"
)
print(result)
JavaScript / Node.js
const API_TOKEN = 'your-api-token';
const CHAT_MODEL_ID = 'your-chat-model-id';
async function importDocument(title, content, url = null) {
const response = await fetch('https://api.aismarttalk.tech/v1/documents/import', {
method: 'POST',
headers: {
'Authorization': `Bearer ${API_TOKEN}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
chatModelId: CHAT_MODEL_ID,
documents: [{
title,
content,
url
}]
})
});
return response.json();
}
// Importuoti dokumentą
importDocument(
'DUK: Grąžinimai',
'Galite grąžinti prekes per 30 dienų nuo pirkimo...',
'https://shop.example.com/faq/returns'
).then(console.log);
PHP
<?php
$apiToken = 'your-api-token';
$chatModelId = 'your-chat-model-id';
$data = [
'chatModelId' => $chatModelId,
'documents' => [
[
'title' => 'Produkto specifikacijos',
'content' => 'Mūsų įrenginys turi šias specifikacijas...',
'url' => 'https://example.com/products/widget'
]
]
];
$ch = curl_init('https://api.aismarttalk.tech/v1/documents/import');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiToken,
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
print_r(json_decode($response, true));
Naudojimo Atvejai
Pasirinktinis CMS Integravimas
Sinchronizuoti turinį iš nuosavo CMS:
- Prisijungti prie CMS publikavimo įvykių
- Siųsti naują/atnaujintą turinį į AI SmartTalk
- Pašalinti ištrintą turinį
Duomenų Pipeline
Importuoti iš duomenų sandėlių:
- Eksportuoti atitinkamus duomenis į JSON
- Grupinis importas per API
- Planuoti reguliarius atnaujinimus
E. prekybos Produktai
Sinchronizuoti produktų duomenis iš pasirinktinių sistemų:
- Produktų aprašymai
- Specifikacijos
- Kainų informacija
Vidaus Sistemos
Prijungti vidaus įrankius, kurie nėra palaikomi natūraliai:
- Pasirinktini vikiai
- Paveldimos duomenų bazės
- Nuosavos programos
Greičio Apribojimai
| Pabaiga | Greičio Apribojimas |
|---|---|
| Dokumentų Importavimas | 100 užklausų/minutę |
| Užklausa | 60 užklausų/minutę |
| Paieška | 60 užklausų/minutę |
Pastaba: Greičio apribojimai skiriasi priklausomai nuo plano. Susisiekite su palaikymo tarnyba dėl didesnių apribojimų.
Klaidos Tvarkymas
Klaidos Atsakymo Format
{
"success": false,
"error": {
"code": "INVALID_TOKEN",
"message": "The provided API token is invalid or expired"
}
}
Dažnos Klaidos Kodo
| Kodas | Aprašymas | Sprendimas |
|---|---|---|
INVALID_TOKEN | Neteisingas arba pasibaigęs tokenas | Regeneruokite API tokeną |
INVALID_MODEL_ID | Nežinomas pokalbių modelio ID | Patikrinkite savo pokalbių modelio ID |
RATE_LIMITED | Per daug užklausų | Įgyvendinkite atidėjimą, bandykite vėliau |
INVALID_REQUEST | Neteisinga užklausos struktūra | Patikrinkite JSON struktūrą |
DOCUMENT_TOO_LARGE | Turinys viršija limitą | Padalinkite į mažesnius dokumentus |
QUOTA_EXCEEDED | Plano limitai pasiekti | Atnaujinkite arba susisiekite su palaikymo tarnyba |
Problemos Sprendimas
Autentifikacija Nepavyksta
| Problema | Sprendimas |
|---|---|
| 401 Neautorizuota | Patikrinkite, ar tokenas teisingas ir aktyvus |
| Tokenas neveikia | Regeneruokite tokeną nustatymuose |
| Pasibaigęs tokenas | Tokenai nesibaigia, tačiau gali būti atšaukti |
Importavimo Problemos
| Problema | Sprendimas |
|---|---|
| Tuščias atsakymas | Patikrinkite, ar Content-Type yra application/json |
| Dokumentas nepasirodo | Palaukite apdorojimo; patikrinkite Žinių skyrių |
| Dalinis importavimas | Kai kurie dokumentai gali turėti validacijos klaidų |
Veikimo Problemos
| Problema | Sprendimas |
|---|---|
| Lėti importai | Grupiuokite dokumentus (maksimaliai 100 užklausai) |
| Laiko limitai | Sumažinkite grupės dydį, bandykite su atidėjimu |
| Greičio apribojimai | Įgyvendinkite eksponentinį atidėjimą |
Geriausios Praktikos
- Grupinis importavimas: Siųskite kelis dokumentus per užklausą (iki 100)
- Unikalūs pavadinimai: Naudokite aprašomuosius, unikalius pavadinimus kiekvienam dokumentui
- Struktūrizuotas turinys: Gerai suformatuotas turinys gerina AI atsakymus
- Metaduomenų žymėjimas: Naudokite metaduomenis kategorijoms ir filtravimui
- Saugūs tokenai: Laikykite tokenus aplinkos kintamuosiuose
- Tvarkykite klaidas: Įgyvendinkite pakartojimo logiką su eksponentiniu atidėjimu
- Stebėkite naudojimą: Sekite API užklausas pagal savo plano limitus