API-integratie
Stuur gegevens programmatisch naar uw AI SmartTalk-kennisbank met behulp van onze REST API. Ideaal voor aangepaste integraties, geautomatiseerde pijplijnen en elke gegevensbron die niet wordt gedekt door onze native connectors.
Overzicht
De API-integratie stelt u in staat om:
- Documenten rechtstreeks naar uw kennisbank te sturen
- Inhoud programmatisch bij te werken
- Verouderde vermeldingen te verwijderen
- Aangepaste gegevenspijplijnen te bouwen
- Integreren met elk systeem dat HTTP-verzoeken kan doen
Vereisten
Voordat u begint, zorg ervoor dat u:
- Een actief AI SmartTalk-account heeft
- API-toegang is ingeschakeld (controleer uw plan)
- Basiskennis van REST API's heeft
- Een tool heeft voor het maken van HTTP-verzoeken (curl, Postman of uw applicatiecode)
Uw API-inloggegevens verkrijgen
Stap 1: Toegang tot API-instellingen
- Log in op uw AI SmartTalk-account
- Navigeer naar Instellingen → Integraties
- Zoek API en klik op Configureren
Stap 2: Genereer API-token
- Klik op Genereer nieuw token
- Kopieer uw Chat Model ID en API-token
- Bewaar deze op een veilige plaats—het token wordt slechts één keer weergegeven!
⚠️ Beveiligingswaarschuwing: Stel uw API-token nooit bloot in client-side code of openbare repositories.
API-eindpunten
Basis-URL
https://api.aismarttalk.tech/v1
Authenticatie
Alle verzoeken vereisen uw API-token in de header:
Authorization: Bearer YOUR_API_TOKEN
API Eindpunten
Basis URL
https://api.aismarttalk.tech/v1
Authenticatie
Alle verzoeken vereisen uw API-token in de header:
Authorization: Bearer YOUR_API_TOKEN
Documenten Importeren
Eindpunt
POST /documents/import
Verzoek Lichaam
{
"chatModelId": "your-chat-model-id",
"documents": [
{
"title": "Productdocumentatie",
"content": "Volledige inhoud van uw document gaat hier...",
"url": "https://example.com/docs/product",
"metadata": {
"category": "documentatie",
"language": "en"
}
}
]
}
Parameters
| Veld | Type | Vereist | Beschrijving |
|---|---|---|---|
chatModelId | string | ✅ | Uw unieke chatmodel identificatie |
documents | array | ✅ | Array van documentobjecten |
documents[].title | string | ✅ | Documenttitel voor identificatie |
documents[].content | string | ✅ | Volledige tekstinhoud |
documents[].url | string | ❌ | Bron-URL (ter referentie) |
documents[].metadata | object | ❌ | Aangepaste sleutel-waarde paren |
Antwoord
{
"success": true,
"imported": 1,
"documents": [
{
"id": "doc_abc123",
"title": "Productdocumentatie",
"status": "verwerken"
}
]
}
Voorbeeld: 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": "Handleiding voor Beginners",
"content": "Welkom op ons platform. Hier is hoe u aan de slag kunt...",
"url": "https://docs.example.com/getting-started"
}
]
}'
Documenten Opvragen
Stel vragen aan uw kennisbasis programmatisch.
Eindpunt
POST /chat/query
Verzoek Lichaam
{
"chatModelId": "your-chat-model-id",
"query": "Hoe reset ik mijn wachtwoord?",
"options": {
"maxTokens": 500,
"temperature": 0.7
}
}
Antwoord
{
"success": true,
"response": "Om uw wachtwoord te resetten, navigeert u naar Instellingen > Beveiliging > Wachtwoord Wijzigen...",
"sources": [
{
"documentId": "doc_abc123",
"title": "Beveiligingsgids",
"relevance": 0.95
}
]
}
Documenten Ophalen
Krijg documenten die overeenkomen met een query (zonder AI-antwoord).
Eindpunt
POST /documents/search
Verzoek Lichaam
{
"chatModelId": "your-chat-model-id",
"query": "wachtwoordbeveiliging",
"limit": 10
}
Antwoord
{
"success": true,
"documents": [
{
"id": "doc_abc123",
"title": "Beveiligings Beste Praktijken",
"content": "...",
"relevance": 0.92
}
]
}
Code Voorbeelden
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()
# Importeer een document
result = import_document(
title="FAQ: Verzending",
content="Wij bieden gratis verzending op bestellingen boven de $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();
}
// Importeer een document
importDocument(
'FAQ: Retouren',
'U kunt artikelen binnen 30 dagen na aankoop retourneren...',
'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' => 'Product Specificaties',
'content' => 'Onze widget heeft de volgende specificaties...',
'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));
Gebruikscases
Aangepaste CMS Integratie
Synchroniseer inhoud van een eigen CMS:
- Haak in op CMS publiceer evenementen
- Push nieuwe/bijgewerkte inhoud naar AI SmartTalk
- Verwijder verwijderde inhoud
Gegevenspijplijn
Importeer uit datawarehouses:
- Exporteer relevante gegevens naar JSON
- Batch import via API
- Plan regelmatige updates
E-commerce Producten
Synchroniseer productgegevens van aangepaste systemen:
- Productbeschrijvingen
- Specificaties
- Prijsinformatie
Interne Systemen
Verbind interne tools die niet native worden ondersteund:
- Aangepaste wiki's
- Legacy databases
- Eigen applicaties
Rate Limieten
| Eindpunt | Rate Limiet |
|---|---|
| Document Import | 100 verzoeken/minuut |
| Query | 60 verzoeken/minuut |
| Zoekopdracht | 60 verzoeken/minuut |
Opmerking: Rate limieten variëren per plan. Neem contact op met de ondersteuning voor hogere limieten.
Foutafhandeling
Foutresponsformaat
{
"success": false,
"error": {
"code": "INVALID_TOKEN",
"message": "De opgegeven API-token is ongeldig of verlopen"
}
}
Veelvoorkomende Foutcodes
| Code | Beschrijving | Oplossing |
|---|---|---|
INVALID_TOKEN | Slechte of verlopen token | Genereer API-token opnieuw |
INVALID_MODEL_ID | Onbekende chatmodel-ID | Controleer uw Chat Model ID |
RATE_LIMITED | Te veel verzoeken | Implementeer backoff, probeer later opnieuw |
INVALID_REQUEST | Ongeldig verzoeklichaam | Controleer JSON-structuur |
DOCUMENT_TOO_LARGE | Inhoud overschrijdt limiet | Splits in kleinere documenten |
QUOTA_EXCEEDED | Planlimieten bereikt | Upgrade of neem contact op met ondersteuning |
Probleemoplossing
Authenticatie mislukt
| Probleem | Oplossing |
|---|---|
| 401 Niet gemachtigd | Controleer of de token correct en actief is |
| Token werkt niet | Genereer token opnieuw in instellingen |
| Verlopen token | Tokens verlopen niet, maar kunnen worden ingetrokken |
Importproblemen
| Probleem | Oplossing |
|---|---|
| Lege respons | Controleer of Content-Type application/json is |
| Document verschijnt niet | Wacht op verwerking; controleer de Kennissectie |
| Gedeeltelijke import | Sommige documenten kunnen validatiefouten hebben |
Prestatieproblemen
| Probleem | Oplossing |
|---|---|
| Langzame imports | Batch documenten (maximaal 100 per verzoek) |
| Time-outs | Verklein de batchgrootte, probeer opnieuw met backoff |
| Rate limited | Implementeer exponentiële backoff |
Beste Praktijken
- Batch imports: Stuur meerdere documenten per verzoek (tot 100)
- Unieke titels: Gebruik beschrijvende, unieke titels voor elk document
- Gestructureerde inhoud: Goed geformatteerde inhoud verbetert AI-responses
- Metadata tagging: Gebruik metadata voor categorisatie en filtering
- Veilige tokens: Bewaar tokens in omgevingsvariabelen
- Fouten afhandelen: Implementeer retry-logica met exponentiële backoff
- Gebruik monitoren: Volg API-aanroepen ten opzichte van uw planlimieten
Gerelateerde Documentatie
- Integraties Overzicht
- Volledige API Documentatie
- Kennisbankbeheer
- SmartFlow Webhooks — Ontvang evenementen