Fügt Nummern zur Blacklist hinzu. Eine Nummer auf der Blacklist erhält weder Werbenachrichten noch transaktionale Nachrichten.

## API-URL

Die URL, an die die HTTP-Anfragen gesendet werden:

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

> [!NOTE]
> Erreicht die Anfrage ihr Ziel nicht, wiederholen Sie sie auf dem [Backup-Server](https://www.bulkgate.com/de/dokumentation/api-verwaltung-und-tokens/backup-server/) `backup1.bulkgate.com`.

## Unterstützte HTTP-Methoden

- `POST` - `application/json`

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

## Parametertabelle

| PARAMETERNAME     | WERT                                                     | PFLICHT   | STANDARDWERT   |
|:------------------|:---------------------------------------------------------|:----------|:---------------|
| application_id    | [Application ID](https://www.bulkgate.com/de/dokumentation/api-verwaltung-und-tokens/api-verwaltung/)           | **Ja**    | -              | 
| application_token | [Authentifizierungstoken der Anwendung](https://www.bulkgate.com/de/dokumentation/api-verwaltung-und-tokens/api-tokens/)	 | **Ja**    | -              |
| numbers           | Nummern für die Blacklist — ein Array oder eine durch Kommas getrennte Zeichenkette | **Ja** | -              |
| wallet            | Wallet, auf der die Nummern auf die Blacklist gesetzt werden | Nein  | Standard-Wallet |
| source_id         | Kennung der Gruppe von Nummern auf der Blacklist	         | Nein      | `api-<random string>` |
| reason            | Grund, warum die Nummer auf der Blacklist steht	         | Nein      | -              |
| type              | Die Liste, in die die Nummern aufgenommen werden — `black-list` oder `opt-out` | Nein | `black-list`   |

## Beispiel einer Anfrage

```http-json
POST /api/1.0/black-list/add 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",
  "source_id": "api-my-import",
  "reason": "Ich möchte keine Werbenachrichten erhalten."
}
```

## Antwort

**Bei Erfolg:**

```json
{
    "data": {
        "message": "contacts have been blacklisted"
    }
}
```

**Bei einem Fehler:**

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

```json
{
    "type": "no_valid_numbers",
    "code": 400,
    "error": "No valid numbers",
    "detail": null
}
```

```json
{
    "type": "number_already_exists",
    "code": 400,
    "error": "Number already exists",
    "detail": null
}
```

Dabei gilt:

- **type** und **error** (Beschreibung des Fehlers) finden Sie in der [Tabelle der Fehlertypen](https://www.bulkgate.com/de/dokumentation/api-verwaltung-und-tokens/api-fehlertypen/)
- **code** ist der HTTP-Fehlercode
- **detail** sind zusätzliche Informationen zum Fehler

### Fehlertypen der Blacklist API

Neben den [allgemeinen Typen](https://www.bulkgate.com/de/dokumentation/api-verwaltung-und-tokens/api-fehlertypen/) gibt die Blacklist API eigene zurück:

| TYP                     | WANN ER AUFTRITT                                                    |
|:------------------------|:--------------------------------------------------------------------|
| `invalid_wallet`        | Die angegebene Wallet existiert nicht oder Sie haben keinen Zugriff darauf. |
| `no_valid_numbers`      | Der Parameter `numbers` enthält keine gültige Nummer.               |
| `number_already_exists` | Sie senden eine einzelne Nummer und diese steht bereits auf der Blacklist. |
