# Python (REST)

> Es gibt kein Python SDK: Rufen Sie die REST-API direkt mit requests auf. Senden Sie per POST einen JSON-Body an /sms/sendSms mit einem Bearer-Token, oder generieren Sie mit openapi-generator einen typisierten Client aus der OpenAPI-3.1-Spezifikation.

- Kanonische URL: https://www.broadnet.me/de/developers/python
- Sprache: de
- Zuletzt aktualisiert: 2026-10-21
- Herausgeber: BroadNet (https://www.broadnet.me)

Rufen Sie die BroadNet REST API von Python aus mit den Bibliotheken requests oder httpx auf. Es gibt kein BroadNet Python Paket: Das einzige offizielle SDK ist für TypeScript und Node.js, nicht für Python. Wenn Sie einen typisierten Python Client benötigen, generieren Sie einen anhand der OpenAPI-Spezifikation mit openapi-generator. Andernfalls genügen die unten aufgeführten einfachen HTTP Aufrufe.

> **Basis-URL in der Konfiguration halten** Die Beispiele rufen https://api.broadnet.me auf. Lesen Sie die Basis-URL und das Access Token (BROADNET_TOKEN) aus den Umgebungsvariablen aus, nicht direkt aus dem Code. Test-Zugangsdaten und die Angabe, wohin Sie Testverkehr senden, erhalten Sie mit Ihrem Testzugang: Fordern Sie ihn unter /signup an, wir antworten innerhalb eines Werktags.

## Fehlerbehandlung

Fehler liefern einen HTTP Statuscode und einen JSON Body vom Typ ExceptionResponse (status, error, message, errorCode, requestUri). Mit resp.raise_for_status() werden diese zu Ausnahmen. Ein erneuter Versuch ist nur bei Netzwerkfehlern und 5xx-Antworten mit Backoff-Prinzip durchzuführen. Sobald eine Anfrage eine Nachrichten-ID zurückgegeben hat, wurde die Anfrage akzeptiert; daher sollte sie nicht ohne Grund erneut gesendet werden.

## Anforderungen

Jede unterstützte Python 3-Version. Das synchrone Beispiel verwendet requests, das asynchrone httpx; installieren Sie die Version, die Sie verwenden.

## Beispiele

### terminal

```bash
pip install requests httpx
```

Einfache HTTP Bibliotheken. Es wird kein BroadNet -Paket benötigt.

### send.py

```python
import os, requests

r = requests.post(
    "https://api.broadnet.me/sms/sendSms",
    headers={"Authorization": f"Bearer {os.environ['BROADNET_TOKEN']}"},
    json={
        "senderId": "BroadNet",
        "destinationNumber": "447700900123",
        "message": "Your verification code is 482913",
        "messageType": "TEXT",
    },
)

print(r.status_code, r.text)  # message ID
```

200 OK · Der Antworttext enthält die Nachrichten-ID.

### async.py

```python
import asyncio
import os

import httpx

URL = "https://api.broadnet.me/sms/sendSms"
HEADERS = {"Authorization": f"Bearer {os.environ['BROADNET_TOKEN']}"}

async def send(client: httpx.AsyncClient, number: str, text: str) -> str:
    resp = await client.post(
        URL,
        headers=HEADERS,
        json={
            "senderId": "BroadNet",
            "destinationNumber": number,
            "message": text,
            "messageType": "TEXT",
        },
    )
    resp.raise_for_status()
    return resp.text  # message ID

async def main() -> None:
    recipients = ["447700900123", "447700900124", "447700900125"]
    async with httpx.AsyncClient(timeout=10) as client:
        ids = await asyncio.gather(
            *(send(client, n, "Your code is 482913") for n in recipients)
        )
    print(ids)

if __name__ == "__main__":
    asyncio.run(main())
```

Bei großen Listen verwenden Sie POST /sms/sendbulk mit einem Datei-Upload anstelle vieler einzelner Sendungen.

### terminal

```bash
# Optional: generate a typed Python client from the OpenAPI spec
curl -O https://www.broadnet.me/developers/openapi.yaml
npx @openapitools/openapi-generator-cli generate \
  -i openapi.yaml -g python -o broadnet-python
```

## Verwandte Seiten

- [API-Referenz](https://www.broadnet.me/de/developers/api-reference)
- [Schnellstart](https://www.broadnet.me/de/developers/quickstart)
- [Webhooks](https://www.broadnet.me/de/developers/webhooks)
