Passa al contenuto principale

Integrazione API

Invia dati programmaticamente alla tua base di conoscenza AI SmartTalk utilizzando la nostra REST API. Ideale per integrazioni personalizzate, pipeline automatizzate e qualsiasi fonte di dati non coperta dai nostri connettori nativi.


Panoramica​

L'integrazione API ti consente di:

  • Inviare documenti direttamente alla tua base di conoscenza
  • Aggiornare contenuti programmaticamente
  • Eliminare voci obsolete
  • Costruire pipeline di dati personalizzate
  • Integrare con qualsiasi sistema in grado di effettuare richieste HTTP

Requisiti​

Prima di iniziare, assicurati di avere:

  • Un account AI SmartTalk attivo
  • Accesso API abilitato (controlla il tuo piano)
  • Conoscenze di base sulle API REST
  • Uno strumento per effettuare richieste HTTP (curl, Postman o il codice della tua applicazione)

Ottenere le tue credenziali API​

Passo 1: Accedi alle impostazioni API​

  1. Accedi al tuo account AI SmartTalk
  2. Naviga su Impostazioni → Integrazioni
  3. Trova API e clicca su Configura

Passo 2: Genera il token API​

  1. Clicca su Genera nuovo token
  2. Copia il tuo ID modello chat e token API
  3. Conserva questi dati in modo sicuro: il token viene mostrato solo una volta!

⚠️ Avviso di sicurezza: Non esporre mai il tuo token API nel codice lato client o in repository pubblici.


Endpoint API​

URL di base​

https://api.aismarttalk.tech/v1

Autenticazione​

Tutte le richieste richiedono il tuo token API nell'intestazione:

Authorization: Bearer YOUR_API_TOKEN

Importa Documenti​

Endpoint​

POST /documents/import

Corpo della Richiesta​

{
"chatModelId": "your-chat-model-id",
"documents": [
{
"title": "Documentazione del Prodotto",
"content": "Il contenuto completo del tuo documento va qui...",
"url": "https://example.com/docs/product",
"metadata": {
"category": "documentazione",
"language": "it"
}
}
]
}

Parametri​

CampoTipoRichiestoDescrizione
chatModelIdstring✅Il tuo identificatore unico del modello chat
documentsarray✅Array di oggetti documento
documents[].titlestring✅Titolo del documento per identificazione
documents[].contentstring✅Contenuto testuale completo
documents[].urlstring❌URL di origine (per riferimento)
documents[].metadataobject❌Coppie chiave-valore personalizzate

Risposta​

{
"success": true,
"imported": 1,
"documents": [
{
"id": "doc_abc123",
"title": "Documentazione del Prodotto",
"status": "processing"
}
]
}

Esempio: 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": "Guida per Iniziare",
"content": "Benvenuto sulla nostra piattaforma. Ecco come iniziare...",
"url": "https://docs.example.com/getting-started"
}
]
}'

Interroga Documenti​

Fai domande contro la tua base di conoscenza programmaticamente.

Endpoint​

POST /chat/query

Corpo della Richiesta​

{
"chatModelId": "your-chat-model-id",
"query": "Come posso reimpostare la mia password?",
"options": {
"maxTokens": 500,
"temperature": 0.7
}
}

Risposta​

{
"success": true,
"response": "Per reimpostare la tua password, vai su Impostazioni > Sicurezza > Cambia Password...",
"sources": [
{
"documentId": "doc_abc123",
"title": "Guida alla Sicurezza",
"relevance": 0.95
}
]
}

Recupera Documenti​

Ottieni documenti che corrispondono a una query (senza risposta AI).

Endpoint​

POST /documents/search

Corpo della Richiesta​

{
"chatModelId": "your-chat-model-id",
"query": "sicurezza password",
"limit": 10
}

Risposta​

{
"success": true,
"documents": [
{
"id": "doc_abc123",
"title": "Migliori Pratiche di Sicurezza",
"content": "...",
"relevance": 0.92
}
]
}

Esempi di Codice​

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()

# Importa un documento
result = import_document(
title="FAQ: Spedizione",
content="Offriamo spedizione gratuita per ordini superiori a $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();
}

// Importa un documento
importDocument(
'FAQ: Resi',
'Puoi restituire articoli entro 30 giorni dall\'acquisto...',
'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' => 'Specifiche del Prodotto',
'content' => 'Il nostro widget ha le seguenti specifiche...',
'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));

Casi d'Uso​

Integrazione CMS Personalizzato​

Sincronizza contenuti da un CMS proprietario:

  • Collega agli eventi di pubblicazione del CMS
  • Invia contenuti nuovi/aggiornati a AI SmartTalk
  • Rimuovi contenuti eliminati

Pipeline di Dati​

Importa da magazzini di dati:

  • Esporta dati rilevanti in JSON
  • Importazione batch tramite API
  • Pianifica aggiornamenti regolari

Prodotti E-commerce​

Sincronizza i dati dei prodotti da sistemi personalizzati:

  • Descrizioni dei prodotti
  • Specifiche
  • Informazioni sui prezzi

Sistemi Interni​

Collega strumenti interni non supportati nativamente:

  • Wiki personalizzati
  • Database legacy
  • Applicazioni proprietarie

Limiti di Richiesta​

EndpointLimite di Richiesta
Importazione Documenti100 richieste/minuto
Interrogazione60 richieste/minuto
Ricerca60 richieste/minuto

Nota: I limiti di richiesta variano in base al piano. Contatta il supporto per limiti superiori.


Gestione degli Errori​

Formato della Risposta di Errore​

{
"success": false,
"error": {
"code": "INVALID_TOKEN",
"message": "Il token API fornito è non valido o scaduto"
}
}

Codici di Errore Comuni​

CodiceDescrizioneSoluzione
INVALID_TOKENToken non valido o scadutoRigenera il token API
INVALID_MODEL_IDID del modello di chat sconosciutoControlla il tuo ID del Modello di Chat
RATE_LIMITEDTroppi richiesteImplementa un backoff, riprova più tardi
INVALID_REQUESTCorpo della richiesta malformatoControlla la struttura JSON
DOCUMENT_TOO_LARGEIl contenuto supera il limiteDividi in documenti più piccoli
QUOTA_EXCEEDEDLimiti del piano raggiuntiAggiorna o contatta il supporto

Risoluzione dei Problemi​

Autenticazione Fallita​

ProblemaSoluzione
401 Non autorizzatoControlla che il token sia corretto e attivo
Token non funzionanteRigenera il token nelle impostazioni
Token scadutoI token non scadono, ma possono essere revocati

Problemi di Importazione​

ProblemaSoluzione
Risposta vuotaControlla che il Content-Type sia application/json
Documento non appareAttendi l'elaborazione; controlla la sezione Conoscenza
Importazione parzialeAlcuni documenti potrebbero avere errori di validazione

Problemi di Prestazioni​

ProblemaSoluzione
Importazioni lenteBatch di documenti (max 100 per richiesta)
TimeoutRiduci la dimensione del batch, riprova con backoff
Limitato da rateImplementa un backoff esponenziale

Migliori Pratiche​

  1. Importazioni batch: Invia più documenti per richiesta (fino a 100)
  2. Titoli unici: Usa titoli descrittivi e unici per ogni documento
  3. Contenuto strutturato: Contenuti ben formattati migliorano le risposte dell'AI
  4. Tagging dei metadati: Usa metadati per categorizzazione e filtraggio
  5. Token sicuri: Conserva i token in variabili d'ambiente
  6. Gestisci gli errori: Implementa la logica di riprova con backoff esponenziale
  7. Monitora l'uso: Tieni traccia delle chiamate API rispetto ai limiti del tuo piano

Documentazione Correlata​

Pronto a elevare la tua
esperienza utente?

Distribuisci assistenti IA che deliziano i clienti e scalano con la tua azienda.

Conforme al GDPR