# Extraer un nombre y una señal de género de un email

> Extrae el posible nombre de una dirección de correo y añade la estimación y sus campos de origen a tu flujo de Excel, Google Sheets o API, sin sustituir los datos que facilitó la persona.

Canonical HTML: https://www.genderapi.io/es/blog/extraer-nombres-de-direcciones-de-email

Last reviewed: 2026-09-28

## Datos de publicación

Primera publicación: 2025-06-14T12:00:00.000Z

Última revisión: 2026-09-28T00:00:00.000Z

## ¿GenderAPI puede extraer un nombre de un email?

Sí. En direcciones personales compatibles puede extraer un posible nombre de la parte anterior a @ y devolver para ese candidato señales de género, contexto de país y confianza. Es una inferencia, no una verificación de identidad, y las direcciones genéricas o aleatorias pueden quedar sin resultado.

- [Demo V2 en directo y sus opciones](https://www.genderapi.io/es/blog/extraer-nombres-de-direcciones-de-email#prueba)

## Analiza un correo electrónico

Envía un valor y revisa la respuesta completa, incluidos los resultados desconocidos y los créditos utilizados.

IA siempre (predeterminado): 2 créditos, incluido unknown. Respaldo: 1 crédito, incluidos el respaldo de IA y los resultados unknown. Desactivado, solo conjunto de datos (sin IA): 1 crédito por consulta completada, incluido unknown. Con el análisis de alias activado: 1 crédito si el conjunto de datos resuelve la consulta, o 2 en total si se utiliza IA, incluido unknown.

El valor enviado (correo electrónico completo) se transmite a GenderAPI.io y se envía al servicio de IA configurado en el modo IA siempre (predeterminado) o si se necesita respaldo, pero no en el modo Desactivado. [Detalles del tratamiento de datos](https://www.genderapi.io/es/data-provenance).

Esta respuesta real se obtuvo el 1 de octubre de 2026; solo se ha sustituido el saldo de la cuenta. Los valores en directo pueden ser distintos. Una estimación no es una identidad verificada.

**Respuesta V2 real; obtenida el 1 de octubre de 2026**

```json
{
  "data": {
    "input": {
      "type": "email",
      "value": "pablo.garcia@example.com",
      "country": null
    },
    "name": "pablo",
    "gender": "male",
    "country": null,
    "confidence": 0.98,
    "confidence_kind": "model_reported",
    "sample_count": null,
    "source": "ai",
    "result_status": "identified",
    "reason": null,
    "country_source": null,
    "match": {
      "name": null,
      "method": "model_inference",
      "scope": null,
      "country": null
    }
  },
  "meta": {
    "request_id": "9b35ca46-3b02-4b63-888d-9dc3f408d194",
    "duration_ms": 381,
    "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 una cuenta](https://app.genderapi.io/user/register)

## Del email a datos estructurados

- Entrada: emilyblack@email.com
- Extracción: Emily
- Enriquecimiento: Género + confianza

## Elige dónde procesar tus datos de email

- [Microsoft Excel Instalar el complemento →](https://appsource.microsoft.com/en-us/product/office/WA200008555)
- [Google Sheets Abrir Marketplace →](https://workspace.google.com/marketplace/app/gender_api_determines_gender_of_name_or/712811575775)
- [Shopify Ver aplicación →](https://apps.shopify.com/gender-api)
- [Excel / CSV por lotes Abrir herramienta →](https://app.genderapi.io/csv)
- [Airtable Ver extensión →](https://airtable.com/marketplace/blkqCasjQIqmmBrmb/gender-api-io-determine-gender)
- [REST API Consultar endpoint →](https://www.genderapi.io/es/docs/v2/gender-from-email)

## Procesa columnas de email con el complemento de Excel

Selecciona el método de email y asigna la columna de origen y los campos de salida. Usa GENDER.FROM_EMAIL para consultas dinámicas en celdas o el panel lateral para resultados permanentes.

- [Ver el tutorial de Excel](https://youtu.be/6j4w-3oMZnA)
- [Complemento GenderAPI para Excel](https://www.genderapi.io/es/blog/genderize-excel-names-using-genderapi-excel-add-in)
- [Fórmulas GENDER para Excel](https://www.genderapi.io/es/blog/formula-genero-para-microsoft-excel)

## Analiza emails mediante el complemento o una fórmula

Utiliza el complemento para las filas existentes, el flujo compatible para filas nuevas o la fórmula GENDER para consultas por celda.

- [Guía del complemento](https://www.genderapi.io/es/blog/como-determinar-el-genero-en-google-sheets-usando-gender-api-add-on)
- [Fórmula GENDER en Google Sheets](https://www.genderapi.io/es/blog/formula-genero-google-sheets-identificar-genero-por-nombres)

## Añade el análisis de email desde tu backend

Llama al endpoint autenticado de email desde el servidor, sin exponer la clave API en el navegador ni en código público. Gestiona explícitamente el esquema de respuesta, los códigos de error y el consumo de créditos.

Imagen de la salida de una integración anterior; no representa el contrato de respuesta actual de V2.

- [Consulta individual de email](https://www.genderapi.io/es/docs/v2/gender-from-email)
- [Consulta de varios emails](https://www.genderapi.io/es/docs/v2/batch)

## No fuerces resultados cuando la dirección no contiene un nombre

Las direcciones funcionales, los identificadores aleatorios y los buzones compartidos pueden no aportar una señal fiable. Guarda data.result_status, data.reason y data.confidence, y trata por separado los resultados inciertos.

Una coincidencia en el email no verifica la identidad ni el nombre del titular. Mide la calidad en tu propio conjunto de datos y no bases decisiones individuales de alto impacto únicamente en esta estimación.

## Guarda por separado los datos de origen y la estimación

Conserva el identificador original del registro. La API no abre perfiles, no comprueba la titularidad de una cuenta ni verifica la identidad de nadie. Envía contexto de país solo si tienes información fiable; no lo deduzcas del dominio ni del idioma de la página.

La búsqueda en el conjunto de datos procesa la parte anterior a @, elimina el sufijo que empieza por + y evalúa candidatos a nombre. La consulta estándar también puede añadir candidatos limitados de prefijo y sufijo en partes unidas. Si coinciden varios registros, se selecciona el que tiene el mayor recuento almacenado; ese candidato puede no ser el nombre real de la persona. Si envías un país, se prefiere el registro de ese país para cada candidato y, si no existe, puede usarse el registro global. Revisa data.match.scope y country_source.

| Registro | Campo | Cómo interpretarlo |
| --- | --- | --- |
| Registro de origen | contact_id / original_email | Conserva los datos originales en tu aplicación y no sustituyas el nombre que facilitó la persona por una estimación. No son campos de la respuesta de la API. |
| Candidato a nombre | data.name / data.match | El nombre seleccionado puede ser null. No existe un campo de apellido verificado y la coincidencia no demuestra quién es el titular del buzón. |
| Estimación | data.gender / data.result_status / data.reason | Conserva el resultado desconocido como null de JSON. Un registro del conjunto de datos con empate puede incluir un candidato a nombre aunque no haya género. |
| Evidencia | data.source / data.confidence_kind / data.confidence / data.sample_count | confidence va de 0 a 1. La frecuencia del conjunto de datos y la puntuación de IA no son la misma medida; con IA, sample_count es null. |
| Registro de la operación | meta.request_id / meta.usage | Guarda la referencia y el estado de facturación; una respuesta perdida no significa que la operación fuera gratuita o fallida. |

### Elige el modo de procesamiento y su coste en créditos

En una consulta individual el valor predeterminado es fallback; en los elementos de un lote, off. forceToGenderize es opcional para nombres, correos y nombres de usuario; en ese caso omite ai_mode o usa fallback, porque es incompatible con off y always. Los resultados unknown completados también se cobran. Basta con un saldo inicial positivo para empezar; al terminar la operación el saldo puede quedar por debajo de cero.

Si interviene la IA, recibe el correo enviado completo, incluidos el dominio y el sufijo +, aunque se le indica que ignore esas partes. forceToGenderize puede devolver una asociación de género sin encontrar un nombre real; eso no significa que se haya extraído un nombre verificado para tu CRM.

| Opción | Procesamiento | Coste por elemento completado |
| --- | --- | --- |
| options.ai_mode: off | Solo el conjunto de datos | 1 crédito |
| options.ai_mode: fallback | Primero el conjunto de datos; si no se resuelve, IA estándar | 1 crédito en total, IA incluida |
| options.ai_mode: always | Directamente con IA | 2 créditos |
| forceToGenderize: true | Primero el conjunto de datos; si no se resuelve, interpretación del alias sin exigir un nombre real | 1 si lo resuelve el conjunto de datos; 2 en total si se utiliza IA |

### Revisa primero una consulta de correo solo con el conjunto de datos

Las entradas de ejemplo no garantizan ninguna estimación concreta. Configura GENDERAPI_API_KEY en el entorno del servidor y no incluyas la clave en código público del cliente. V1 y V2 comparten la misma clave de cuenta y el mismo saldo. Comprueba la clave con /api/v2/usage y confirma que meta.access.mode es api_key.

Elige un lenguaje de programación. [Configura tu clave API](https://www.genderapi.io/es/docs/v2/authentication#environment-setup), luego ejecuta el ejemplo en tu servidor.

Cada solicitud de predicción es una nueva operación facturable, incluidos los reintentos. Estos ejemplos no se reintentan automáticamente. Comprueba el estado de facturación antes de enviar otra solicitud.

### Antes de ejecutar: acceso y manejo de errores

Ejecuta estos ejemplos en tu servidor. Configura GENDERAPI_API_KEY en el entorno de proceso con tu clave API existente. Confirma que meta.access.mode es api_key: una clave no reconocida puede recurrir a la prueba IP.

Las respuestas HTTP 4xx y 5xx JSON conservan el cuerpo del error y devuelven un estado de salida distinto de cero. Comprueba code, action y meta.usage.billing_status antes de volver a intentarlo.

**cURL**

cURL 7.76+ en un shell POSIX. Ejecuta en tu terminal. [Documentación del entorno de ejecución](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 integrado. Guarda como example.mjs y ejecuta node example.mjs. [Documentación del entorno de ejecución](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+; biblioteca estándar. Guarda como example.py y ejecuta python3 example.py. [Documentación del entorno de ejecución](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 la extensión cURL. Guarda como example.php y ejecuta php example.php. [Documentación del entorno de ejecución](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+; cliente estándar HTTP. Guarda como GenderApiExample.java y ejecuta java GenderApiExample.java. [Documentación del entorno de ejecución](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**

Aplicación de consola .NET 8+. Úsalo como Program.cs en un proyecto de consola, luego ejecuta dotnet run. [Documentación del entorno de ejecución](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+; biblioteca estándar. Guarda como main.go y ejecuta go run main.go. [Documentación del entorno de ejecución](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)
    }
}
```

- [Guía de errores y reintentos →](https://www.genderapi.io/es/docs/v2/errors-and-retries)

### Gestiona los resultados de la lista y los reintentos

POST /api/v2/gender/batch acepta hasta 50 elementos con clave API y 10 en la prueba compartida por IP. Asigna a cada elemento sus propios type, value y options. Si quieres el respaldo estándar de IA, indica fallback explícitamente en cada elemento. El id debe ser único dentro de cada lote; index empieza en cero dentro del lote enviado. Guarda aparte tus propios identificadores de trabajo y de fila de origen.

Un HTTP 200 no significa que todos los elementos se hayan completado. Trata por separado los resultados identified, unknown y error; meta.summary.succeeded incluye tanto identified como unknown. Evalúa juntos data.gender, source, confidence_kind, confidence, match y reason. No consideres equivalentes la puntuación de IA y la frecuencia del conjunto de datos.

Si meta.usage.billing_status está confirmado, reenvía solo los errores operativos que admitan un nuevo intento. Si el estado es unconfirmed o se pierde la respuesta, detente y concilia la facturación. Reenviar el mismo registro, incluido un unknown completado, crea una nueva operación facturable; no reenvíes toda la lista a ciegas.

[Contrato de solicitudes por lotes](https://www.genderapi.io/es/docs/v2/batch) · [Campos de la respuesta](https://www.genderapi.io/es/docs/v2/responses) · [Opciones de IA](https://www.genderapi.io/es/docs/v2/ai-options) · [Evaluación de precisión y confianza](https://www.genderapi.io/es/accuracy-methodology) · [Política de tratamiento de datos](https://www.genderapi.io/es/privacy-policy)

Los complementos de Excel y Google Sheets y otras integraciones ya preparadas pueden usar su propia conexión y su propio formato de salida. No des por hecho que su resultado sigue este esquema JSON de V2; consulta la guía actualizada de cada integración.

## Extraer nombre y género desde un email

### ¿Se puede extraer un nombre de una dirección de email?

GenderAPI puede extraer un posible candidato a nombre de la parte anterior a @ en direcciones personales compatibles y devolver, cuando existan, señales de género, país y confianza. El candidato es una inferencia, no el nombre verificado del titular del buzón.

### ¿Se obtiene un nombre de cualquier email?

No. Las direcciones funcionales, los identificadores aleatorios y las partes locales sin un nombre real pueden no ofrecer una señal fiable. En la respuesta V2 comprueba data.result_status, data.reason, data.confidence y data.confidence_kind.

### ¿Se guardan las consultas por email?

Según la política publicada, las consultas por email no se almacenan como registros de consulta reutilizables. Los registros técnicos y de seguridad independientes siguen los plazos de la Política de privacidad. No introduzcas datos personales sensibles en la demo pública.

### ¿Puedo utilizarlo en Excel y Google Sheets?

Sí. Puedes procesar columnas de email con el complemento de Excel, el complemento de Google Sheets o la herramienta de carga de archivos Excel y CSV. Esas integraciones tienen su propio formato de salida, distinto del JSON de V2.

### ¿Qué campos devuelve la API?

V2 devuelve data.name, data.gender, data.match y los campos de origen y confianza, y en meta la referencia de la operación y el uso de créditos. El candidato a nombre o el género pueden ser null. No existe un campo de apellido verificado.

### ¿Cuándo interviene la IA?

En una consulta individual V2 el respaldo estándar de IA está activado de forma predeterminada. En esta demo puedes usar la consulta estándar o forceToGenderize; off y always se configuran en la solicitud a la API. El respaldo estándar cuesta 1 crédito en total y always, 2. Con forceToGenderize se cobra 1 crédito si el conjunto de datos resuelve la consulta, o 2 en total si se utiliza IA; el resultado puede seguir siendo unknown.

### ¿Puedo probarlo gratis?

Las cuentas incluyen 200 créditos gratuitos al día y la prueba compartida por IP, 10 créditos diarios. Una clave ausente o no reconocida puede pasar a la prueba por IP; comprueba el campo meta.access.mode de la respuesta. Son créditos, no número de solicitudes.
