# Estrarre un nome e un'indicazione di genere da un indirizzo email

> Estrai un nome candidato da un indirizzo email e completa il tuo flusso in Excel, Google Sheets o nell'API con la previsione e i relativi campi di origine, senza sostituire i dati forniti dalla persona stessa.

Canonical HTML: https://www.genderapi.io/it/blog/estrarre-nomi-da-indirizzi-email

Last reviewed: 2026-09-28

## Dati di pubblicazione

Prima pubblicazione: 2025-06-14T12:00:00.000Z

Ultima revisione: 2026-09-28T00:00:00.000Z

## GenderAPI può estrarre un nome da un indirizzo email?

Sì. Per gli indirizzi personali supportati GenderAPI può estrarre un nome candidato dalla parte prima di @ e restituire un'indicazione di genere, il contesto del paese e la confidenza. È una deduzione, non una verifica dell'identità, e gli indirizzi generici o casuali possono restare senza risultato.

- [Demo dal vivo della V2 e delle sue opzioni](https://www.genderapi.io/it/blog/estrarre-nomi-da-indirizzi-email#demo)

## Analizza un indirizzo email

Invia un valore ed esamina la risposta completa, inclusi i risultati sconosciuti e i crediti utilizzati.

Sempre IA (predefinita): 2 crediti, anche quando il risultato è sconosciuto. Fallback: 1 credito, inclusi il fallback IA e i risultati sconosciuti. Disattivata, solo set di dati (senza IA): 1 credito per ogni richiesta completata, anche quando il risultato è sconosciuto. Con l'interpretazione dei nickname: 1 credito se il risultato viene dal set di dati, oppure 2 in totale se viene usata l'IA, anche quando il risultato è sconosciuto.

Il valore inviato (l'intero indirizzo email) viene trasmesso a GenderAPI.io e inoltrato al servizio IA configurato in modalità Sempre IA (predefinita) o quando serve il fallback IA, ma non in modalità Disattivata. [Maggiori informazioni sul trattamento dei dati](https://www.genderapi.io/it/data-provenance).

Questa risposta reale è stata acquisita il 1° ottobre 2026; è stato sostituito solo il saldo dell'account. I valori in tempo reale possono essere diversi. Una previsione non è un'identità confermata.

**Risposta V2 reale; acquisita il 1° ottobre 2026**

```json
{
  "data": {
    "input": {
      "type": "email",
      "value": "marco.rossi@example.com",
      "country": null
    },
    "name": "marco",
    "gender": "male",
    "country": "IT",
    "confidence": 0.98,
    "confidence_kind": "model_reported",
    "sample_count": null,
    "source": "ai",
    "result_status": "identified",
    "reason": null,
    "country_source": "ai_association",
    "match": {
      "name": null,
      "method": "model_inference",
      "scope": null,
      "country": null
    }
  },
  "meta": {
    "request_id": "43b71d85-7264-4a90-bebf-26e04746773b",
    "duration_ms": 380,
    "access": {
      "mode": "api_key",
      "reason": null
    },
    "usage": {
      "charged_credits": 2,
      "remaining_credits": 49999,
      "billing_status": "confirmed",
      "resets_at": null,
      "limit": null,
      "period_seconds": null
    }
  }
}
```

- [crea un account](https://app.genderapi.io/user/register)

## Dall'indirizzo email ai dati strutturati

- Input: emilyblack@email.com
- Estrazione: Emily
- Arricchimento: Genere + confidenza

## Scegli dove elaborare i dati email

- [Microsoft Excel Installa il componente aggiuntivo →](https://appsource.microsoft.com/en-us/product/office/WA200008555)
- [Google Sheets Apri il Marketplace →](https://workspace.google.com/marketplace/app/gender_api_determines_gender_of_name_or/712811575775)
- [Shopify Visualizza l'app →](https://apps.shopify.com/gender-api)
- [Excel / CSV in batch Apri lo strumento →](https://app.genderapi.io/csv)
- [Airtable Visualizza l'estensione →](https://airtable.com/marketplace/blkqCasjQIqmmBrmb/gender-api-io-determine-gender)
- [REST API Visualizza l'endpoint →](https://www.genderapi.io/it/docs/v2/gender-from-email)

## Elabora colonne di indirizzi con il componente aggiuntivo per Excel

Scegli il metodo per gli indirizzi email, quindi collega la colonna di origine e i campi dei risultati. Usa GENDER.FROM_EMAIL per ricerche dinamiche nelle celle oppure il pannello laterale per risultati permanenti.

- [Guarda il video tutorial per Excel](https://youtu.be/6j4w-3oMZnA)
- [Componente aggiuntivo GenderAPI per Excel](https://www.genderapi.io/it/blog/genderize-excel-names-using-genderapi-excel-add-in)
- [Formule GENDER in Excel](https://www.genderapi.io/it/blog/formula-genere-per-microsoft-excel)

## Analizza gli indirizzi email con il componente aggiuntivo o una formula

Usa il componente aggiuntivo per le righe esistenti, un flusso supportato per le nuove righe oppure la formula GENDER per ricerche in singole celle.

- [Guida al componente aggiuntivo](https://www.genderapi.io/it/blog/come-determinare-il-genere-in-google-sheets-utilizzando-gender-api-add-on)
- [La formula GENDER in Google Sheets](https://www.genderapi.io/it/blog/formula-genere-google-sheets-rileva-genere-da-nomi-email)

## Integra l'analisi degli indirizzi email nel tuo backend

Chiama l'endpoint autenticato per gli indirizzi email dal server, senza esporre la chiave API nel browser o in codice pubblico. Gestisci esplicitamente lo schema della risposta, i codici di errore e il consumo di crediti.

Schermata dei risultati di un'integrazione precedente; non mostra il contratto di risposta V2 attuale.

- [Richiesta singola per un indirizzo email](https://www.genderapi.io/it/docs/v2/gender-from-email)
- [Richiesta per più indirizzi email](https://www.genderapi.io/it/docs/v2/batch)

## Non forzare un risultato quando l'indirizzo non contiene un nome

Indirizzi funzionali, identificativi casuali e caselle condivise possono non offrire un segnale affidabile. Conserva data.result_status, data.reason e data.confidence e gestisci separatamente i risultati incerti.

Una corrispondenza in un indirizzo email non conferma né l'identità né il nome del titolare della casella di posta. Misura la qualità con i tuoi dati e non basare su questa sola previsione alcuna decisione ad alto impatto per una singola persona.

## Salva separatamente i dati di origine e la previsione

Conserva l'identificativo originale del record. L'API non apre alcun profilo, non verifica chi sia il titolare di un account e non conferma alcuna identità. Invia un contesto del paese solo quando disponi di un dato affidabile; non ricavarlo dal dominio o dalla lingua del sito.

La ricerca nel set di dati analizza la parte prima di @, rimuove un suffisso che inizia con + e valuta i nomi candidati. Una richiesta standard può inoltre aggiungere un numero limitato di candidati per prefisso e suffisso nelle parti composte. Se più voci corrispondono, viene scelta quella con il numero di occorrenze registrate più alto; quel candidato non è necessariamente il nome reale della persona. Se invii un paese, per ogni candidato viene preferita la voce del paese; se manca, può essere usata una voce globale. Controlla data.match.scope e country_source.

| Record | Campo | Interpretazione |
| --- | --- | --- |
| Record di origine | contact_id / original_email | Conserva i dati di origine nel tuo sistema e non sostituire con la previsione un nome indicato dalla persona stessa. Questi non sono campi della risposta dell'API. |
| Nome candidato | data.name / data.match | Il nome selezionato può essere null. Non esiste un campo per un cognome verificato e una corrispondenza non dimostra l'identità del titolare della casella di posta. |
| Previsione | data.gender / data.result_status / data.reason | Salva un risultato sconosciuto come null nativo del JSON. Una voce del set di dati in parità può contenere un nome candidato senza genere. |
| Evidenze | data.source / data.confidence_kind / data.confidence / data.sample_count | confidence è compreso tra 0 e 1. La frequenza nel set di dati e un punteggio dell'IA sono misure diverse; per l'IA sample_count è null. |
| Registro dell'operazione | meta.request_id / meta.usage | Conserva l'id e lo stato dell'addebito; una risposta persa non significa né che l'operazione sia stata gratuita né che non sia riuscita. |

### Scegli la modalità di elaborazione e il costo in crediti

Per una richiesta singola il valore predefinito è fallback, per gli elementi di un batch off. forceToGenderize è facoltativo per nomi, indirizzi email e nomi utente; in questo caso ometti ai_mode o usa fallback, perché l'opzione non può essere combinata con off e always. Anche i risultati unknown riusciti vengono addebitati. Per iniziare basta un saldo iniziale positivo; al termine dell'operazione il saldo può diventare negativo.

Quando viene usata, l'IA riceve l'intero indirizzo inviato, compresi il dominio e il suffisso +, anche se le viene chiesto di ignorare queste parti. forceToGenderize può produrre un'associazione a un genere senza che venga trovato un nome reale; non significa che nel tuo CRM sia stato estratto un nome verificato.

| Opzione | Elaborazione | Costo per elemento riuscito |
| --- | --- | --- |
| options.ai_mode: off | Solo set di dati | 1 credito |
| options.ai_mode: fallback | Prima il set di dati; se non viene determinato alcun genere, normale fallback IA | 1 credito in totale, IA inclusa |
| options.ai_mode: always | Direttamente all'IA | 2 crediti |
| forceToGenderize: true | Prima il set di dati, poi l'interpretazione del nickname senza richiedere un nome reale | 1 se basta il set di dati; 2 in totale se viene usata l'IA |

### Prova prima una richiesta email che usa solo il set di dati

Gli input di esempio non garantiscono una determinata previsione. Imposta GENDERAPI_API_KEY nell'ambiente del server e non inserire la chiave in codice pubblico lato client. V1 e V2 usano la stessa chiave dell'account e lo stesso saldo. Verifica la chiave con /api/v2/usage e controlla che meta.access.mode abbia il valore api_key.

Scegli un linguaggio di programmazione. [Configura la tua chiave API](https://www.genderapi.io/it/docs/v2/authentication#environment-setup), poi esegui l'esempio sul tuo server.

Ogni richiesta di previsione è una nuova operazione a pagamento, anche quando è un nuovo tentativo. Questi esempi non riprovano automaticamente. Controlla lo stato dell'addebito prima di inviare un'altra richiesta.

### 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.

**cURL**

cURL 7.76+ in una shell POSIX. Esegui nel terminale. [Documentazione del runtime](https://curl.se/docs/manpage.html)

```bash
curl --silent --show-error --fail-with-body --max-time 30 \
  --request POST 'https://api.genderapi.io/api/v2/gender' \
  --header "Authorization: Bearer ${GENDERAPI_API_KEY:?Set GENDERAPI_API_KEY}" \
  --header 'Content-Type: application/json' \
  --data '{
  "type": "email",
  "value": "alice.smith@example.com",
  "options": {
    "ai_mode": "off"
  }
}'
```

**JavaScript / Node.js**

Node.js 22+; fetch integrato. Salva come example.mjs ed esegui node example.mjs. [Documentazione del runtime](https://nodejs.org/api/globals.html#fetch)

```javascript
// Server-side Node.js. Save as example.mjs.
const apiKey = process.env.GENDERAPI_API_KEY;
if (!apiKey) throw new Error("Set GENDERAPI_API_KEY");
const body = {
  "type": "email",
  "value": "alice.smith@example.com",
  "options": {
    "ai_mode": "off"
  }
};

const response = await fetch("https://api.genderapi.io/api/v2/gender", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify(body),
  signal: AbortSignal.timeout(30_000),
  redirect: "error",
});
const raw = await response.text();
if (!(response.headers.get("content-type") ?? "").includes("json")) {
  throw new Error(`HTTP ${response.status}: expected JSON; request ID ${response.headers.get("x-request-id")}`);
}
const result = JSON.parse(raw); // Also accepts application/problem+json.
if (!response.ok) {
  console.error(`HTTP ${response.status}`, result);
  process.exitCode = 1; // A retry is a new operation; inspect billing first.
} else {
  console.log(JSON.stringify(result, null, 2));
  // For batches, inspect every item: HTTP 200 may contain item errors.
}
```

**Python**

Python 3.10+; libreria standard. Salva come example.py ed esegui python3 example.py. [Documentazione del runtime](https://docs.python.org/3/library/urllib.request.html)

```python
import json
import os
import sys
import urllib.error
import urllib.request

api_key = os.environ.get("GENDERAPI_API_KEY")
if not api_key:
    raise RuntimeError("Set GENDERAPI_API_KEY")
body = json.loads("{\"type\":\"email\",\"value\":\"alice.smith@example.com\",\"options\":{\"ai_mode\":\"off\"}}")

class NoRedirect(urllib.request.HTTPRedirectHandler):
    def redirect_request(self, req, fp, code, msg, headers, newurl):
        return None

request = urllib.request.Request(
    "https://api.genderapi.io/api/v2/gender",
    method="POST",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": "Bearer " + api_key,
        "Content-Type": "application/json",
    },
)
opener = urllib.request.build_opener(NoRedirect())
try:
    response = opener.open(request, timeout=30)
except urllib.error.HTTPError as error:
    response = error  # Keep the Problem Details body on non-2xx responses.
with response:
    status = response.status
    raw = response.read().decode("utf-8")
    if "json" not in response.headers.get("Content-Type", ""):
        raise RuntimeError(f"HTTP {status}: expected a JSON response")
    result = json.loads(raw)
print(json.dumps(result, indent=2), file=sys.stderr if status >= 300 else sys.stdout)
if not 200 <= status < 300:
    sys.exit(1)  # Inspect code, action and billing before retrying.
# For batches, inspect every item even when HTTP status is 200.
```

**PHP**

PHP 8+ con l'estensione cURL. Salva come example.php ed esegui php example.php. [Documentazione del runtime](https://www.php.net/manual/en/book.curl.php)

```php
<?php
$apiKey = getenv('GENDERAPI_API_KEY');
if (!$apiKey) {
    throw new RuntimeException('Set GENDERAPI_API_KEY');
}
$body = json_decode('{"type":"email","value":"alice.smith@example.com","options":{"ai_mode":"off"}}', true, 512, JSON_THROW_ON_ERROR);

$ch = curl_init('https://api.genderapi.io/api/v2/gender');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer ' . $apiKey,
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode($body, JSON_THROW_ON_ERROR),
]);
$raw = curl_exec($ch);
if ($raw === false) {
    throw new RuntimeException(curl_error($ch));
}
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$contentType = curl_getinfo($ch, CURLINFO_CONTENT_TYPE) ?: '';
curl_close($ch);
if (strpos($contentType, 'json') === false) {
    throw new RuntimeException("HTTP $status: expected a JSON response");
}
$result = json_decode($raw, true, 512, JSON_THROW_ON_ERROR);
$output = json_encode($result, JSON_PRETTY_PRINT | JSON_THROW_ON_ERROR) . PHP_EOL;
if ($status < 200 || $status >= 300) {
    fwrite(STDERR, $output); // Preserve the Problem Details body.
    exit(1);
}
echo $output;
// For batches, inspect every item; HTTP 200 can contain item errors.
```

**Java**

Java 17+; client HTTP standard. Salva come GenderApiExample.java ed esegui java GenderApiExample.java. [Documentazione del runtime](https://docs.oracle.com/en/java/javase/17/docs/api/java.net.http/java/net/http/HttpClient.html)

```java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.nio.charset.StandardCharsets;
import java.time.Duration;

public class GenderApiExample {
    private static String requiredEnv(String name) {
        String value = System.getenv(name);
        if (value == null || value.isBlank()) throw new IllegalStateException("Set " + name);
        return value;
    }

    public static void main(String[] args) throws Exception {
        String apiKey = requiredEnv("GENDERAPI_API_KEY");
        String body = "{\"type\":\"email\",\"value\":\"alice.smith@example.com\",\"options\":{\"ai_mode\":\"off\"}}";
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .followRedirects(HttpClient.Redirect.NEVER)
            .build();
        HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.genderapi.io/api/v2/gender"))
            .timeout(Duration.ofSeconds(30))
            .header("Authorization", "Bearer " + apiKey)
            .header("Content-Type", "application/json")
            .POST(HttpRequest.BodyPublishers.ofString(body, StandardCharsets.UTF_8))
            .build();
        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8));
        if (!response.headers().firstValue("content-type").orElse("").contains("json")) {
            throw new IllegalStateException("HTTP " + response.statusCode() + ": expected JSON");
        }
        // JSON text; parse with your application's JSON library when integrating.
        if (response.statusCode() < 200 || response.statusCode() >= 300) {
            System.err.println(response.body()); // Includes Problem Details.
            System.exit(1);
        }
        System.out.println(response.body());
        // For batches, inspect each item's data or error, including on HTTP 200.
    }
}
```

**C# / .NET**

Applicazione console .NET 8+. Usalo come Program.cs in un progetto console, poi esegui dotnet run. [Documentazione del runtime](https://learn.microsoft.com/en-us/dotnet/fundamentals/networking/http/httpclient)

```csharp
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Text.Json;

string RequiredEnv(string name) =>
    !string.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable(name))
        ? Environment.GetEnvironmentVariable(name)!
        : throw new InvalidOperationException($"Set {name}");

var apiKey = RequiredEnv("GENDERAPI_API_KEY");
using var handler = new HttpClientHandler { AllowAutoRedirect = false };
using var client = new HttpClient(handler) { Timeout = TimeSpan.FromSeconds(30) };
using var request = new HttpRequestMessage(HttpMethod.Post, "https://api.genderapi.io/api/v2/gender");
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
request.Content = new StringContent("{\"type\":\"email\",\"value\":\"alice.smith@example.com\",\"options\":{\"ai_mode\":\"off\"}}", Encoding.UTF8, "application/json");

using var response = await client.SendAsync(request);
var raw = await response.Content.ReadAsStringAsync();
if (!(response.Content.Headers.ContentType?.MediaType?.Contains("json") ?? false))
    throw new InvalidOperationException($"HTTP {(int)response.StatusCode}: expected JSON");
using var result = JsonDocument.Parse(raw);
if (!response.IsSuccessStatusCode)
{
    Console.Error.WriteLine(result.RootElement); // Preserve Problem Details.
    Environment.ExitCode = 1;
}
else
{
    Console.WriteLine(result.RootElement);
    // For batches, inspect every item even on HTTP 200.
}
```

**Go**

Go 1.22+; libreria standard. Salva come main.go ed esegui go run main.go. [Documentazione del runtime](https://pkg.go.dev/net/http)

```go
package main

import (
    "encoding/json"
    "fmt"
    "io"
    "net/http"
    "os"
    "strings"
    "time"
)

func requiredEnv(name string) string {
    value := os.Getenv(name)
    if value == "" { panic("Set " + name) }
    return value
}

func run() error {
    apiKey := requiredEnv("GENDERAPI_API_KEY")
    body := "{\"type\":\"email\",\"value\":\"alice.smith@example.com\",\"options\":{\"ai_mode\":\"off\"}}"
    request, err := http.NewRequest("POST", "https://api.genderapi.io/api/v2/gender", strings.NewReader(body))
    if err != nil { return err }
    request.Header.Set("Authorization", "Bearer " + apiKey)
    request.Header.Set("Content-Type", "application/json")
    client := &http.Client{
        Timeout: 30 * time.Second,
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
            return http.ErrUseLastResponse
        },
    }
    response, err := client.Do(request)
    if err != nil { return err }
    defer response.Body.Close()
    raw, err := io.ReadAll(response.Body)
    if err != nil { return err }
    if !strings.Contains(response.Header.Get("Content-Type"), "json") || !json.Valid(raw) {
        return fmt.Errorf("HTTP %d: expected a JSON response", response.StatusCode)
    }
    if response.StatusCode < 200 || response.StatusCode >= 300 {
        return fmt.Errorf("HTTP %d: %s", response.StatusCode, raw)
    }
    fmt.Println(string(raw))
    // For batches, inspect every item even on HTTP 200.
    return nil
}

func main() {
    if err := run(); err != nil {
        fmt.Fprintln(os.Stderr, err) // Keep Problem Details for error handling.
        os.Exit(1)
    }
}
```

- [Guida a errori e nuovi tentativi →](https://www.genderapi.io/it/docs/v2/errors-and-retries)

### Gestisci i risultati degli elenchi e le richieste ripetute

POST /api/v2/gender/batch accetta fino a 50 elementi con una chiave API e 10 con la prova IP. Assegna a ogni elemento valori propri per type, value e options. Se vuoi usare il normale fallback IA, indica fallback esplicitamente in ogni elemento. id deve essere univoco all'interno del batch; index parte da zero all'interno del batch inviato. Salva separatamente i tuoi identificativi di lavoro e di riga di origine.

HTTP 200 non significa che tutti gli elementi siano riusciti. Gestisci separatamente i risultati identified, unknown ed error; meta.summary.succeeded conta sia identified sia unknown. Valuta insieme data.gender, source, confidence_kind, confidence, match e reason. Non trattare come equivalenti un punteggio dell'IA e una frequenza nel set di dati.

Se meta.usage.billing_status ha il valore confirmed, ripeti solo gli errori operativi che consentono una nuova richiesta. Se lo stato è unconfirmed o la risposta è andata persa, fermati e verifica l'addebito. Inviare di nuovo lo stesso elemento, anche un risultato unknown riuscito, crea una nuova operazione a pagamento; non inviare mai di nuovo l'intero elenco alla cieca.

[Contratto delle richieste batch](https://www.genderapi.io/it/docs/v2/batch) · [Campi della risposta](https://www.genderapi.io/it/docs/v2/responses) · [Opzioni IA](https://www.genderapi.io/it/docs/v2/ai-options) · [Valutare accuratezza e confidenza](https://www.genderapi.io/it/accuracy-methodology) · [Informativa sulla privacy](https://www.genderapi.io/it/privacy-policy)

I componenti aggiuntivi per Excel e Google Sheets e le altre integrazioni pronte all'uso possono usare una propria connessione e un proprio formato dei risultati. Non dare per scontato che il loro output segua questo schema JSON V2; consulta la guida aggiornata della rispettiva integrazione.

## Nome e genere dagli indirizzi email

### È possibile estrarre un nome da un indirizzo email?

GenderAPI può estrarre un nome candidato dalla parte prima di @ negli indirizzi personali supportati e, quando disponibili, restituire indicazioni su genere, paese e confidenza. Il candidato è una deduzione e non un nome verificato del titolare della casella di posta.

### Ogni indirizzo restituisce un nome?

No. Indirizzi funzionali, identificativi casuali e parti locali senza un nome reale possono non offrire un segnale affidabile. Controlla data.result_status, data.reason, data.confidence e data.confidence_kind nella risposta V2.

### Le richieste email vengono salvate?

Secondo l'informativa pubblicata, le richieste email non vengono conservate come record di richiesta riutilizzabili. Per i log tecnici e di sicurezza separati valgono i periodi indicati nell'informativa sulla privacy. Non usare dati personali sensibili nella demo pubblica.

### Posso usare la funzione in Excel e Google Sheets?

Sì. Le colonne di indirizzi possono essere elaborate con il componente aggiuntivo per Excel, con il componente aggiuntivo per Google Sheets o con lo strumento di importazione per file Excel e CSV. Queste integrazioni hanno un proprio formato dei risultati, diverso dal JSON V2.

### Quali campi restituisce l'API?

La V2 restituisce data.name, data.gender, data.match e i campi di origine e confidenza, e in meta anche l'id dell'operazione e il consumo di crediti. Il nome candidato o il genere possono essere null. Non esiste un campo per un cognome verificato.

### Quando viene usata l'IA?

Per una richiesta singola V2 il normale fallback IA è attivo per impostazione predefinita. In questa demo puoi usare una richiesta standard o forceToGenderize; off e always si impostano nella richiesta API. Il normale fallback IA costa 1 credito in totale, always 2. Con forceToGenderize viene addebitato 1 credito se il set di dati risolve la richiesta, oppure 2 in totale se viene usata l'IA; il risultato può restare unknown.

### Posso provare il servizio gratuitamente?

Gli account includono 200 crediti gratuiti al giorno e la prova IP condivisa offre 10 crediti per indirizzo IP pubblico nell'arco di 24 ore. Una chiave mancante o non riconosciuta può far passare alla prova IP; controlla il campo meta.access.mode nella risposta. Si tratta di crediti, non di un numero di richieste.
