API di Rilevamento Audio AI
Documentazione completa per integrare l'API di rilevamento audio AI di TruthScan nelle tue applicazioni.
Provalo senza codice visitando il nostro endpoint FastAPI: https://detect-audio.truthscan.com/docs
Autenticazione
TruthScan usa chiavi API per consentire l'accesso all'API. Puoi ottenere la tua chiave API al in alto nella pagina del nostro portale sviluppatori.
TruthScan si aspetta che la chiave API sia inclusa in tutte le richieste API al server in un corpo richiesta che assomiglia al seguente:
{
"key": "YOUR API KEY GOES HERE"
}Devi sostituire LA TUA CHIAVE API VA QUI con la tua chiave API personale.
Rilevatore Audio AI
Rileva (Processo in 3 Passaggi)
Il flusso di lavoro di Rilevamento Audio AI consiste nei seguenti passaggi:
- Ottieni un URL di Upload Pre-signed
- Carica l'Audio
- Invia l'Audio per il Rilevamento
1. Ottieni un URL di Upload Pre-signed
Inizia richiedendo un URL pre-signed dall'API. Questo URL ti permette di caricare in modo sicuro il tuo file audio sul server di archiviazione.
Formati File Supportati
MP3, WAV, M4A, FLAC, OGG, MP4
Nota Importante
È necessario rimuovere gli spazi dal nome del file audio quando si richiede un URL pre-signed.
GET https://detect-audio.truthscan.com/get-presigned-url?file_name=example.mp3Richiesta di Esempio
curl -X GET 'https://detect-audio.truthscan.com/get-presigned-url?file_name=example.mp3' \
--header 'apikey: YOUR API KEY GOES HERE'Risposta di Esempio
{
"status": "success",
"presigned_url": "https://audio-presigned-upload.ai-assets-cdn.com?file_name=581d47c7-3ef4-42af-88d9-6dab6bf69389_20250611-121955_example.mp3...",
"file_path": "/uploads/581d47c7-3ef4-42af-88d9-6dab6bf69389_20250901-090201_example.mp3"
}2. Carica l'Audio
Usa il 'presigned_url' fornito per caricare il tuo audio tramite una richiesta PUT. Assicurati che il tipo di contenuto corretto sia impostato in base al tuo formato audio.
Nota Importante
È necessario rimuovere gli spazi dal nome del file audio quando si carica l'audio.
Richiesta di Esempio
curl -X PUT 'https://audio-presigned-upload.ai-assets-cdn.com?file_name=581d47c7-3ef4-42af-88d9-6dab6bf69389_20250611-121955_example.mp3...' \
--header 'Content-Type: audio/<FILE_FORMAT - mp3, wav, m4a, flac, ogg, mp4>' \
--header 'x-amz-acl: private' \
--data-binary '@example.mp3' # AttachmentLimiti Dimensione File
- Dimensione file minima: 1KB
- Dimensione file massima: 100MB
Assicurati che il formato del file rimanga coerente durante il processo di upload. Un upload riuscito restituirà un codice di stato 200.
3. Invia Audio per Rilevamento AI
Dopo il caricamento, invia l'audio per il rilevamento AI facendo riferimento al 'file_path' dal passaggio precedente.
POST https://detect-audio.truthscan.com/detectRichiesta di Esempio
curl -X 'POST' \
'https://detect-audio.truthscan.com/detect' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"key": "YOUR-API-KEY-GOES-HERE",
"url": "<FILE_PATH>",
"document_type": "Audio",
"analyzeUpToSeconds": 60
}'Il 'FILE_PATH' si riferisce al percorso ottenuto dalla risposta nel passaggio iniziale, 'Ottieni un URL di Upload Pre-signed'.
Parametri Opzionali
analyzeUpToSeconds: Analizza fino a N secondi dall'inizio (default: 60)document_type: Tipo di documento (default: 'Audio')email: Email opzionale per l'elaborazione
Risposta di Esempio
{
"id": "77565038-9e3d-4e6a-8c80-e20785be5ee9",
"status": "pending"
}La risposta include un ID unico per tracciare lo stato del rilevamento.
Interroga Stato e Risultati del Rilevamento
Per controllare lo stato e recuperare i risultati, usa l'endpoint /query con l'ID.
POST https://detect-audio.truthscan.com/queryRichiesta di Esempio
curl -X 'POST' \
'https://detect-audio.truthscan.com/query' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"id": "ID-GOES-HERE"
}'Risposta di Esempio
{
"id": "00fee5ff-a55b-42fb-b7c7-d14f05ae0769",
"status": "done",
"result": 0.873,
"result_details": {
"is_valid": true,
"message": "processed",
"original_duration": 123.45,
"is_truncated": true,
"truncated_duration": 60.0,
"mean_ai_prob": 0.873,
"individual_chunks_ai_prob": [0.81, 0.90, 0.91]
}
}Dettagli Risultato
is_valid: Indica se il file audio è valido (true/false)message: Messaggio di elaborazioneoriginal_duration: Durata in secondi dell'audio originaleis_truncated: Se l'audio è stato troncato per l'analisitruncated_duration: Durata analizzata se troncatomean_ai_prob: Punteggio di probabilità AI complessivoindividual_chunks_ai_prob: Punteggi di probabilità AI per chunk
Il campo "status" sarà uno di: "pending" (elaborazione in coda), "analyzing" (rilevamento AI in corso), "done" (risultati disponibili) o "failed" (elaborazione fallita).
Controlla Crediti Utente
Questo endpoint accetta l'apikey degli utenti tramite l'header. E restituisce i dettagli dei crediti degli utenti.
GET https://detect-audio.truthscan.com/check-user-creditsRichiesta di Esempio
curl -X 'GET' \
'https://detect-audio.truthscan.com/check-user-credits' \
-H 'apikey: YOUR API KEY GOES HERE' \
-H 'accept: application/json' \
-H 'Content-Type: application/json'Risposta di Esempio
{
"baseCredits": 10000,
"boostCredits": 1000,
"credits": 11000
}Verifica Integrità
Verifica lo stato di integrità del server API.
GET https://detect-audio.truthscan.com/healthRichiesta di Esempio
curl -X 'GET' \
'https://detect-audio.truthscan.com/health' \
-H 'accept: application/json'Risposta di Esempio
{
"status": "healthy"
}Errori
La maggior parte degli errori saranno da parametri incorretti inviati all'API. Ricontrolla i parametri di ogni chiamata API per assicurarti che sia formattata correttamente e prova a eseguire il codice di esempio fornito.
I codici di errore generici che usiamo sono conformi allo standard REST:
| Codice Errore | Significato |
|---|---|
| 400 | Bad Request -- La tua richiesta non è valida. |
| 403 | Forbidden -- La chiave API non è valida o non ci sono crediti sufficienti per l'elaborazione audio. |
| 404 | Not Found -- La risorsa specificata non esiste. |
| 405 | Method Not Allowed -- Hai provato ad accedere a una risorsa con un metodo non valido. |
| 406 | Not Acceptable -- Hai richiesto un formato che non è JSON. |
| 410 | Gone -- La risorsa a questo endpoint è stata rimossa. |
| 422 | Invalid Request Body -- Il tuo corpo richiesta è formattato in modo errato o non valido o ha parametri mancanti. |
| 429 | Too Many Requests -- Stai inviando troppe richieste! Rallenta! |
| 500 | Internal Server Error -- Abbiamo avuto un problema con il nostro server. Riprova più tardi. |
| 503 | Service Unavailable -- Siamo temporaneamente offline per manutenzione. Riprova più tardi. |
Problemi Comuni e Soluzioni
Problemi di Autenticazione
"User verification failed" (403)
Causa: Chiave API non valida o scaduta
Soluzione:
- Verifica che la tua chiave API sia corretta
- Controlla se la tua chiave API è attiva nel tuo account
- Prova a rigenerare la tua chiave API
"Not enough credits" (403)
Causa: Crediti insufficienti per l'elaborazione audio
Soluzione:
- Controlla i tuoi crediti rimanenti usando /check-user-credits
- Acquista crediti aggiuntivi se necessario
- Usa analyzeUpToSeconds per analizzare meno audio e consumare meno crediti
Problemi di Validazione Input
"Unsupported file format" (400)
Causa: Formato audio non supportato o invalido inviato
Soluzione:
- Verifica che il formato audio sia supportato (MP3, WAV, M4A, FLAC, OGG, MP4)
- Assicurati che il file non sia corrotto
- Controlla che l'header Content-Type sia corretto quando carichi
"File too large" (400)
Causa: La dimensione del file supera il limite di 100MB
Soluzione:
- Comprimi o converti l'audio a meno di 100MB
- Controlla la dimensione del file prima di caricare
- Usa formati più efficienti come MP3 quando possibile
Problemi di Elaborazione
"Audio processing took too long"
Causa: L'elaborazione audio ha richiesto troppo tempo o si è verificato un timeout
Soluzione:
- Prova con un file audio più piccolo o durata più breve
- Usa analyzeUpToSeconds per analizzare solo i primi secondi
- Controlla se il servizio sta sperimentando alto carico
- Riprova la richiesta dopo alcuni minuti
Stato "failed" nella risposta /query
Causa: Elaborazione fallita per vari motivi
Soluzione:
- Controlla se l'audio soddisfa i requisiti minimi (1KB - 100MB)
- Verifica che l'audio sia in un formato supportato
- Verifica che l'upload sia completato con successo prima di inviare per il rilevamento
- Contatta il supporto se il problema persiste
Problemi di Upload
"Audio upload failed" (403/400)
Causa: URL pre-signed non valido o scaduto, o problemi con il server di archiviazione
Soluzione:
- Assicurati di usare l'URL pre-signed immediatamente dopo averlo ricevuto (può scadere)
- Verifica che l'header Content-Type sia corretto per il formato audio
- Rimuovi gli spazi dal nome del file prima di caricare
- Prova a generare un nuovo URL pre-signed se quello corrente è scaduto
"Invalid pre-signed URL" (400)
Causa: Nome file con spazi o URL pre-signed scaduto/corrotto
Soluzione:
- Rimuovi tutti gli spazi dal nome del file prima di richiedere l'URL pre-signed
- Usa solo caratteri alfanumerici, trattini e underscore nel nome del file
- Genera un nuovo URL pre-signed se necessario
Hai Bisogno di Aiuto?
Per maggiori informazioni sull'uso della nostra API o per supporto tecnico, contattaci.
Domande Frequenti API
Trova risposte alle domande più comuni sulla nostra API di rilevamento audio AI.