REST API · v1
Documentazione API
Invia ritratti tramite un’API asincrona, condividi il saldo crediti esistente e monitora ogni attività e addebito.
Centro sviluppatoriCollega la tua app con una guida AI
Copia questo prompt in ChatGPT, Claude, Cursor o nel tuo assistente di programmazione. Ti chiederà quale tecnologia usi, poi ti guiderà nella configurazione delle credenziali, nella verifica del saldo, nell’invio di un’attività e nel controllo dei risultati.
Non devi inviare la tua chiave API all’AI. Il prompt ti guiderà nella configurazione sul tuo server.
Leggi il prompt completo / copia manualmente
Addebito
API: 1 credito per ogni test riuscito. Sito web: 10 crediti per test. Entrambi usano lo stesso saldo. La creazione tramite API prenota 1 credito; un insuccesso definitivo lo rimborsa una sola volta.
Invia Authorization: Bearer con l’autorizzazione richiesta. Usa lo stesso Idempotency-Key per ripetere l’invio degli stessi byte dell’immagine. Se lo riutilizzi con dati diversi, riceverai HTTP 409. Le richieste di consultazione non consumano crediti.
Endpoint
| HTTP | Autorizzazioni |
|---|---|
| POST /api/v1/face-age/jobs | face-age:write |
| GET /api/v1/face-age/jobs/{id} | face-age:read |
| GET /api/v1/credits | credits:read |
| GET /api/v1/usage?page=1&pageSize=20 | usage:read |
Crea un’attività
Usa multipart/form-data con un solo file immagine (JPEG, PNG o WebP, fino a 5 MB) e il campo di consenso qui sotto. Questo endpoint può essere usato solo da adulti che inviano una propria foto con il proprio consenso. Gli URL remoti e i parametri aggiuntivi vengono rifiutati. Genera una nuova chiave idempotente solo per un nuovo test distinto.
# Genera e salva la chiave una sola volta per ogni nuovo test; per riprovare, esegui solo il comando curl qui sotto usando la chiave e l’immagine originali.
IDEMPOTENCY_KEY="$(uuidgen)"
curl -X POST 'https://fahrface.org/api/v1/face-age/jobs' \
-H "Authorization: Bearer $FAHRFACE_API_KEY" \
-H "Idempotency-Key: $IDEMPOTENCY_KEY" \
-F 'image=@portrait.jpg' \
-F 'consent=appearance-age-2026-10-21'{
"code": 0,
"message": "ok",
"data": {
"id": "JOB_ID",
"status": "queued",
"age": null,
"creditsCost": 1,
"billingStatus": "reserved"
}
}Richiedi i risultati
La creazione restituisce HTTP 202 e un ID attività. Invia una richiesta ogni 10–15 secondi. queued, processing e retrying sono stati non definitivi; succeeded e failed sono stati definitivi. La riattivazione di HF può richiedere diversi minuti. Le attività hanno una scadenza di 20 minuti; una sessione di lavoro attiva può ritardare fino a quattro minuti il recupero definitivo.
curl 'https://fahrface.org/api/v1/face-age/jobs/JOB_ID' \
-H "Authorization: Bearer $FAHRFACE_API_KEY"Errori e limiti
Le risposte usano code/message/data. HTTP 400: richiesta o consenso non validi; 401: chiave non valida o scaduta; 403: autorizzazione mancante; 402: crediti insufficienti; 404: attività inesistente o non di tua proprietà; 409: dati modificati; 413/415: dimensioni o tipo di immagine non validi; 429: limite di richieste, concorrenza o budget raggiunto; 503: servizio non disponibile. Rispetta Retry-After, riutilizza la stessa chiave idempotente e controlla message prima di riprovare.
Le chiavi scadono entro un anno. I budget includono i crediti prenotati e quelli usati per le operazioni riuscite; i rimborsi ripristinano il budget. L’account consente 60 richieste al minuto e un massimo di due attività API simultanee.
I ritratti vengono archiviati temporaneamente in un bucket privato ed eliminati al termine dell’elaborazione, con un’ulteriore cancellazione automatica dopo 24 ore. HF elabora la foto; le stime non costituiscono un parere medico, una verifica dell’identità o una prova dell’età.