Crediti, risultati sconosciuti e utilizzo
Un risultato riuscito con gender null viene addebitato secondo la tariffa della modalità scelta. La convalida del telefono costa 1 credito anche quando valid è false. Gli errori di convalida precedenti all'addebito e le previsioni non riuscite non consumano crediti dopo un rimborso confermato.
Un saldo iniziale positivo basta per avviare un'operazione singola o batch. L'addebito finale può rendere il saldo negativo: 1 credito iniziale meno un'operazione IA da 2 crediti lascia -1. Un saldo pari a zero o negativo blocca nuove operazioni a pagamento. I rimborsi restano possibili.
Leggi meta.usage.billing_status: not_charged indica che non c'è stato alcun addebito (charged_credits: 0); confirmed indica che l'addebito netto è noto; unconfirmed indica che charged_credits è null e che l'esito va verificato. remaining_credits può essere negativo, oppure null se non disponibile. È un'istantanea al momento del completamento e può cambiare a causa di richieste simultanee.
GET /usage è gratuito. Restituisce remaining_credits ed expires_at e, per la prova IP, anche resets_at, limit e period_seconds. Il limite della prova è 10 e period_seconds è 86400; per gli account con chiave API questi campi sono null. resets_at non è la scadenza di un abbonamento.
V1 e V2 condividono lo stesso saldo. Gli aggiornamenti del saldo già eseguiti da V1 possono entrare in concorrenza con V2; non fare affidamento su una garanzia di addebito esattamente una volta tra le due versioni.
{
"data": {
"remaining_credits": 9,
"expires_at": "2026-09-26T12:00:00.000Z",
"resets_at": "2026-09-26T12:00:00.000Z",
"limit": 10,
"period_seconds": 86400
},
"meta": {
"request_id": "11111111-1111-4111-8111-111111111111",
"duration_ms": 12,
"access": {
"mode": "ip_trial",
"reason": "api_key_missing"
},
"usage": {
"charged_credits": 0,
"remaining_credits": 9,
"billing_status": "not_charged",
"resets_at": "2026-09-26T12:00:00.000Z",
"limit": 10,
"period_seconds": 86400
}
}
}Controllare il saldo attuale
GET /api/v2/usage è gratuito, usa l'autenticazione Bearer e non ha parametri di query. Senza chiave viene letta la quota attuale della prova IP.
Scegli un linguaggio di programmazione. Configura la tua chiave API, poi esegui l'esempio sul tuo server.
Questa lettura del saldo non costa crediti, ma rientra comunque nei limiti delle richieste.
Prima dell'esecuzione: accesso e gestione degli errori
Esegui questi esempi sul tuo server. Imposta GENDERAPI_API_KEY nell'ambiente del processo con la tua chiave API esistente. Verifica che meta.access.mode sia api_key: una chiave non riconosciuta può portare alla prova IP.
Per le risposte JSON con HTTP 4xx e 5xx, il corpo dell'errore viene conservato e l'esempio termina con un codice di uscita diverso da zero. Controlla code, action e meta.usage.billing_status prima di riprovare.
Guida a errori e nuovi tentativi →cURL 7.76+ in una shell POSIX. Esegui nel terminale. Documentazione del runtime
Node.js 22+; fetch integrato. Salva come example.mjs ed esegui node example.mjs. Documentazione del runtime
Python 3.10+; libreria standard. Salva come example.py ed esegui python3 example.py. Documentazione del runtime
PHP 8+ con l'estensione cURL. Salva come example.php ed esegui php example.php. Documentazione del runtime
Java 17+; client HTTP standard. Salva come GenderApiExample.java ed esegui java GenderApiExample.java. Documentazione del runtime
Applicazione console .NET 8+. Usalo come Program.cs in un progetto console, poi esegui dotnet run. Documentazione del runtime
Go 1.22+; libreria standard. Salva come main.go ed esegui go run main.go. Documentazione del runtime
Campi della risposta sul saldo
| Campo | Tipo | Può essere null | Esempio | Descrizione |
|---|---|---|---|---|
data.remaining_credits | integer | No | 99 | Saldo attuale dell'account o della prova IP; può essere negativo. |
data.expires_at | string | Sì | null | Scadenza dell'account o della prova in UTC (ISO 8601), se disponibile. |
data.resets_at | string | Sì | "2026-09-27T12:00:00.000Z" | Momento del ripristino della prova IP in UTC (ISO 8601); null per gli account con chiave API o se sconosciuto. |
data.limit | integer | Sì | 10 | Quota della prova IP; null per gli account con chiave API. |
data.period_seconds | integer | Sì | 86400 | Durata del periodo della prova IP in secondi; null per gli account con chiave API. |
Metadati di accesso, addebito e richiesta
| Campo | Tipo | Può essere null | Esempio | Descrizione |
|---|---|---|---|---|
meta.request_id | string | No | "550e8400-e29b-41d4-a716-446655440000" | Identificatore univoco di questo tentativo HTTP; inviato anche in X-Request-ID. |
meta.duration_ms | integer | No | 42 | Tempo di elaborazione della richiesta in millisecondi. |
meta.access.mode | string | No | "api_key" | api_key, ip_trial o unauthenticated. Con un account a pagamento verifica che venga riportato api_key. |
meta.access.reason | string | Sì | null | Motivo del passaggio alla prova IP: api_key_missing, api_key_invalid o api_key_not_found; altrimenti null. |
meta.usage.charged_credits | integer | Sì | 1 | Crediti netti addebitati. Zero prima dell'addebito o dopo un rimborso completo confermato; null se l'addebito non è confermato. |
meta.usage.remaining_credits | integer | Sì | 99 | Saldo al termine dell'operazione. Può essere negativo; null se non disponibile o se l'addebito non è confermato. |
meta.usage.billing_status | string | No | "confirmed" | not_charged, confirmed o unconfirmed. Controllalo prima di ripetere una previsione non riuscita. |
meta.usage.resets_at | string | Sì | "2026-09-27T12:00:00.000Z" | Momento del ripristino della prova IP in UTC (ISO 8601); null per gli account con chiave API o se sconosciuto. |
meta.usage.limit | integer | Sì | 10 | Quota della prova IP; null per gli account con chiave API. |
meta.usage.period_seconds | integer | Sì | 86400 | Durata del periodo della prova IP in secondi; null per gli account con chiave API. |