# Faucet de testnet de Robinhood Chain

> Source: https://docs.blockvectra.com/es/guides/robinhood-testnet-faucet/

Use el faucet para obtener test ETH para transacciones en la testnet de Robinhood Chain (`robinhood_testnet`, chain ID `46630`). La solicitud es gratuita y no consume CU; las llamadas RPC posteriores en testnet utilizan la facturación habitual de CU.

## Antes de solicitar

Registre una cuenta en BlockVectra y utilice una de sus propias API keys. Cree una clave en la [consola](https://console.blockvectra.com/login/?next=%2Fkeys%2F) o siga la [guía de registro programático](https://docs.blockvectra.com/en/guides/programmatic-signup/).

Utilice `0x` seguido de 40 caracteres hexadecimales, ya sea en minúsculas o con mayúsculas y minúsculas con una suma de comprobación EIP-55 válida. Las respuestas utilizan direcciones en minúsculas; diferentes grafías de la misma dirección comparten el mismo límite de solicitud.

## Enviar una solicitud

Llame a `POST https://api.blockvectra.com/v1/faucet/robinhood_testnet` con `Content-Type: application/json` y su clave en `x-api-key`. Este endpoint no lee una clave de la ruta de la URL ni de `Authorization`.

Reemplace `{api_key}` con su clave y la dirección de ejemplo con su dirección de destinatario:

```bash
curl -i "https://api.blockvectra.com/v1/faucet/robinhood_testnet" \
  -H "Content-Type: application/json" \
  -H "x-api-key: {api_key}" \
  -d '{"address":"0x1111111111111111111111111111111111111111"}'
```

El cuerpo JSON contiene únicamente `address` y debe caber dentro de 64 KiB. Campos desconocidos o JSON no válido devuelven `400 invalid_request`. Utilice el endpoint exacto sin parámetros de consulta.

## Ventana y límites de solicitud

* Cada solicitud aceptada envía **0.001 test ETH** (`1000000000000000` wei).
* Cada cuenta y cada dirección de destinatario pueden tener **una nueva solicitud por período móvil de 24 horas**. Usar otra clave en la misma cuenta no incrementa el límite.
* El faucet acepta como máximo **1,000 nuevas solicitudes por día UTC** entre todos los usuarios.
* Las solicitudes comparten un límite de **5 solicitudes por segundo por clave** con `/v1/account`.

`next_eligible_at` es la hora de aceptación más 24 horas, expresada como una marca temporal UTC RFC 3339. Las ventanas de cuenta y dirección no se restablecen a la medianoche UTC. Un error `429` por límite de solicitud incluye `error.data.scope` (`account`, `address` o `global`) y `error.data.next_eligible_at`; para `global`, la marca temporal es el inicio del siguiente día UTC. Un error `429` por frecuencia de solicitudes no tiene `scope`.

## Aceptado no significa confirmado

HTTP **202 significa aceptado, no incluido con éxito on-chain**. La respuesta JSON contiene:

| Campo                | Significado                                          |
| -------------------- | ---------------------------------------------------- |
| `chain` / `chain_id` | `robinhood_testnet` / `46630`                        |
| `address`            | Dirección de destinatario en minúsculas              |
| `amount_wei`         | Monto de la solicitud como una cadena entera decimal |
| `tx_hash`            | Hash estable de la transacción aceptada              |
| `next_eligible_at`   | Próxima hora de elegibilidad para la ventana móvil   |

Reintentar la misma dirección normalizada desde la misma cuenta dentro de las 24 horas devuelve la respuesta `202` original y el mismo `tx_hash`, incluso al usar otra clave válida de esa cuenta. No envía otro pago. Si se pierde una respuesta, reintente la misma dirección con la misma cuenta.

Verifique la transacción utilizando el endpoint RPC de testnet existente. Reemplace `{tx_hash}` con el hash de la respuesta aceptada; esta consulta RPC utiliza la facturación habitual de CU:

```bash
curl -s "https://api.blockvectra.com/v1/robinhood_testnet" \
  -H "Content-Type: application/json" \
  -H "x-api-key: {api_key}" \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_getTransactionReceipt","params":["{tx_hash}"]}'
```

## Errores y reintentos

La estructura de respuesta de error contiene `error.code`, `error.message` y `error.data`. `error.data.reason` es igual a `error.code`; `docs_url`, `retryable` y `request_id` proporcionan la referencia del error, la política de reintentos y el identificador de la solicitud. Para cada `429` o `503`, espere la cantidad de segundos indicada en el encabezado de respuesta **`Retry-After`** antes de reintentar. Sin una respuesta aceptada, no asuma que se ha enviado test ETH.

| HTTP | Código de error                             | Qué hacer                                                                                                                                   |
| ---- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| 400  | `invalid_address`                           | Corrija el formato de la dirección o la suma de comprobación EIP-55; `error.data.field` es `/address`.                                      |
| 400  | `invalid_request`                           | Envíe un JSON válido que contenga únicamente `address`.                                                                                     |
| 401  | `missing_api_key` / `invalid_api_key`       | Proporcione una clave válida en `x-api-key`.                                                                                                |
| 403  | `key_expired`                               | Cree una nueva API key.                                                                                                                     |
| 404  | `not_found`                                 | Verifique la ruta, la cadena, el método POST y la ausencia de parámetros de consulta; el faucet puede no estar disponible.                  |
| 413  | `request_too_large`                         | Reduzca el cuerpo para que quepa dentro de 64 KiB.                                                                                          |
| 429  | `rate_limited`                              | Espere según `Retry-After`; inspeccione `scope` y `next_eligible_at` cuando estén presentes.                                                |
| 503  | `faucet_empty`                              | El faucet no tiene fondos suficientes para la solicitud y las tarifas. Espere según `Retry-After`.                                          |
| 503  | `service_unavailable`                       | El procesamiento de solicitudes no está disponible temporalmente, o una solicitud anterior aún no tiene recibo. Espere según `Retry-After`. |
| 503  | `auth_unavailable` / `upstream_unavailable` | Espere según `Retry-After`, luego reintente.                                                                                                |

Consulte la [referencia de errores](https://docs.blockvectra.com/en/errors/) o [/errors.json](https://docs.blockvectra.com/errors.json) para obtener orientación legible por máquina, y la [guía de Robinhood Chain](https://docs.blockvectra.com/en/guides/robinhood-chain/) para el acceso a RPC.

Continúe con el [inicio rápido de RPC de testnet de Robinhood Chain](https://docs.blockvectra.com/en/guides/robinhood-testnet-starter/) para lecturas sin clave y logs de WebSocket. Encuentre la URL del RPC público y los métodos compatibles en la [página de la cadena de testnet](https://blockvectra.com/en/chains/robinhood_testnet/).
