Comprueba si los números indicados están en el blacklist. Devuelve un mapa de número → `true`/`false`.

## URL de la API

URL utilizada para enviar las solicitudes HTTP:

```url
https://portal.bulkgate.com/api/1.0/black-list/is-black-listed
```

> [!NOTE]
> Si la solicitud no llega a su destino, repítala en el [servidor de respaldo](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/servidor-de-respaldo/) `backup1.bulkgate.com`.

## Métodos HTTP compatibles

- `POST` - `application/json`

```http
POST /api/1.0/black-list/is-black-listed HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json
```

> [!NOTE]
> La API tiene una cuota de `20` solicitudes por minuto.

## Tabla de parámetros

| NOMBRE DEL PARÁMETRO | VALOR | OBLIGATORIO | VALOR PREDETERMINADO |
|:------------------|:---------------------------------------------------------|:----------|:---------------|
| application_id | [Application ID](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/administracion-api/) | **Sí** | - |
| application_token | [Token de autenticación de la aplicación](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/tokens-de-api/) | **Sí** | - |
| numbers | Números que se van a comprobar: un array o una cadena separada por comas | **Sí** | - |
| wallet | Monedero en el que se comprueban los números | No | Monedero predeterminado |
| route | La ruta para la que se evalúa el bloqueo: `promotional`, `transactional` o `all` | No | `promotional` |

## Ejemplo de solicitud

```http-json
POST /api/1.0/black-list/is-black-listed HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json

{
  "application_id": 451,
  "application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj",
  "numbers": ["420123456789", "420987654321"],
  "wallet": "bg1905014138000023"
}
```

## Respuesta

**En caso de éxito:**

```json
{
    "data": {
        "420123456789": true,
        "420987654321": false
    }
}
```

Donde:

- la **clave** es el número de teléfono que ha enviado
- el **valor** es `true` si el número está en el blacklist y `false` en caso contrario

Los números no válidos no devuelven ningún error: aparecen en la respuesta con el valor `false`.

**En caso de error:**

```json
{
    "type": "invalid_wallet",
    "code": 400,
    "error": "Invalid wallet",
    "detail": null
}
```

```json
{
    "type": "minute_quota_exceeded",
    "code": 400,
    "error": "Minute quota exceeded",
    "detail": null
}
```

Donde:

- **type** y **error** (descripción del error) se encuentran en la [tabla de tipos de error](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/tipos-de-error/)
- **code** es el código de error HTTP
- **detail** es información adicional sobre el error

### Tipos de error de la Blacklist API

Además de los [tipos generales](https://www.bulkgate.com/es/documentacion/administracion-de-la-api/tipos-de-error/), la Blacklist API devuelve los suyos propios:

| TIPO | CUÁNDO OCURRE |
|:------------------------|:--------------------------------------------------------|
| `invalid_wallet` | El monedero indicado no existe o no tiene acceso a él. |
| `minute_quota_exceeded` | Se ha agotado la cuota de 20 solicitudes por minuto. |
