# SMS API

#### Automatyzacja i krytyczne powiadomienia

Sekcja SMS API umożliwia pełną integrację Twojego oprogramowania z infrastrukturą MessageFlow. To rozwiązanie dedykowane do obsługi ruchu transakcyjnego (kody OTP, statusy zamówień) oraz realizacji automatycznych scenariuszy komunikacji bezpośrednio z poziomu kodu.

## Kluczowe możliwości API

* **Pełna widoczność w Panelu**: Wszystkie operacje API nie są "czarną skrzynką". Wiadomości wychodzące oraz przychodzące realizowane przez integrację są widoczne w interfejsie panelu, identycznie jak kampanie.
  * Korzyść: Twój dział Obsługi Klienta może samodzielnie sprawdzić, czy SMS z kodem dotarł do użytkownika, bez konieczności angażowania programistów i przeszukiwania logów serwera.
* **Direct Connections (Jakość Enterprise)**: Korzystamy z bezpośrednich, certyfikowanych połączeń z operatorami komórkowymi. Gwarantuje to najwyższą dostarczalność i eliminuje ryzyko tzw. *grey routingu* (gubienia wiadomości przez tanich pośredników).
* **MessageFlow Priority (Add-on)**: Dla wiadomości krytycznych czasowo (np. kody 2FA, alerty bankowe, reset haseł) oferujemy dodatkową, wydzieloną infrastrukturę.
  * Twoje powiadomienia są przetwarzane poza standardową kolejką wysyłek masowych (marketingowych).
  * *Uwaga: Usługa dostępna jako dodatkowo płatny moduł. Więcej informacji:* [MessageFlow Priority](/pl/zaawansowane-funkcjonalnosci/messageflow-priority.md)
* **Webhooks & Raportowanie (DLR)**: Twój system otrzymuje informacje zwrotne w czasie rzeczywistym. Skonfiguruj `webhookUrl`, aby automatycznie odbierać statusy doręczenia (Delivered, Undelivered, Expired) bezpośrednio do swojej bazy danych.
* **Wysyłka Dwukierunkowa (2-Way)**: API obsługuje odbieranie wiadomości przychodzących na dedykowane numery (Short Code/Long Number), co pozwala na budowanie interaktywnych botów SMS.

### Developer Experience (DX)

Naszym celem jest maksymalne skrócenie czasu integracji ("Time-to-Hello-World").

* Standard: RESTful API oparte o przejrzysty format JSON.
* Gotowe biblioteki (Snippets): Nie musisz pisać kodu od zera. W dokumentacji znajdziesz gotowe fragmenty "Copy-paste" dla najpopularniejszych języków: **Shell (cURL), Python, PHP, Java, C#, Node.js, Go, Ruby, Swift** i innych.

#### Jak to działa?

Komunikacja odbywa się poprzez bezpieczne żądania HTTPS.

* **Metoda**: `POST`
* **Endpoint**: `https://api.messageflow.com/v2.1/sms`
* **Uwierzytelnianie**: Wymagane nagłówki `Application-Key` oraz `Authorization` (tokeny wygenerujesz w zakładce Konto -> API).

Przykładowy Payload (JSON): W żądaniu przesyłasz treść, odbiorców oraz opcjonalne parametry (np. datę wysyłki).

```json
{
  "sender": "TwojaFirma",
  "message": "Twój kod autoryzacyjny to: 1234",
  "phoneNumbers": [
    "48111222333"
  ],
  "priority": true
}
```

\[*Powyższy kod jest uproszczonym przykładem. Pełną strukturę znajdziesz w* [*dokumentacji API*](https://dev.messageflow.com/#/operations/SendSmsV2_1)]

{% hint style="info" %}
**Best Practice: Kody OTP**&#x20;

Wysyłasz hasła jednorazowe? Zalecamy skorzystanie z dodatku [MessageFlow Priority](/pl/zaawansowane-funkcjonalnosci/messageflow-priority.md). Zapewnia to natychmiastowe przetworzenie żądania przez naszą platformę, bez oczekiwania w kolejce komunikatów marketingowych.
{% endhint %}

### Dokumentacja Deweloperska

Szczegółowy opis wszystkich metod, kodów błędów oraz pełną listę parametrów znajdziesz w naszym portalu dla programistów:&#x20;

[Przejdź do MessageFlow API Docs >>](https://dev.messageflow.com/#/operations/SendSmsV2)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.messageflow.com/pl/sms/sms-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
