Przejdź do głównej treści
Railmail Public API pozwala programistycznie zarządzać subskrybentami, tematami, zgodami, kampaniami, segmentami, automatyzacjami i innymi zasobami. To REST API, które komunikuje się w formacie JSON, używa standardowych metod HTTP i zwraca konwencjonalne kody statusu.

Adres bazowy

Wszystkie endpointy są serwowane spod jednego adresu bazowego:
https://api.railmail.app
Każda ścieżka w tej dokumentacji jest względna wobec tego adresu i poprzedzona prefiksem /api/v1. Na przykład listowanie subskrybentów to GET https://api.railmail.app/api/v1/subscribers.

Uwierzytelnianie w jednej linii

Każde zapytanie musi zawierać klucz API przypisany do projektu w nagłówku X-API-Key:
curl https://api.railmail.app/api/v1/subscribers \
  -H "X-API-Key: rm_live_twoj_klucz"
Zobacz Uwierzytelnianie, aby poznać formaty kluczy, zakresy oraz alternatywę Authorization: Bearer.

Izolacja projektu

Klucz odpowiada dokładnie jednemu projektowi. Wszystkie odczyty i zapisy są automatycznie izolowane do tego projektu i jego tenanta — klucz nigdy nie odczyta ani nie zmodyfikuje danych innego projektu. Nie przekazujesz identyfikatora projektu ani tenanta; określa je klucz.

Konwencje

Wszędzie JSON

Treść zapytań i odpowiedzi to application/json. Błędy używają application/problem+json (RFC 7807).

Standardowe metody

GET odczytuje, POST tworzy, PATCH aktualizuje, DELETE usuwa. Metody działają zgodnie z oczekiwaniami.

Klucze z zakresami

Każda operacja wymaga określonego zakresu, podanego w jej opisie. Brak zakresu zwraca 403.

Limity zapytań

60 zapytań na minutę na klucz. Zobacz Limity zapytań.

Typowy przepływ: dodaj użytkowników do swoich tematów

Częsta pierwsza integracja — zapisz użytkowników do tematu:
1

Sprawdź klucze tematów

Wywołaj GET /api/v1/topics, aby wylistować tematy w projekcie i odczytać ich wartości topicKey.
2

Utwórz i zapisz w jednym wywołaniu

Wywołaj POST /api/v1/subscribers z topicKeys + consent, aby utworzyć subskrybenta i od razu go zapisać — albo POST /api/v1/subscribers/{email}/consents, aby zapisać istniejącego subskrybenta.
3

Obsłuż double opt-in

Jeśli temat korzysta z double opt-in, zgoda jest tworzona jako PENDING_CONFIRMATION. Subskrybent musi ją potwierdzić przez otrzymaną wiadomość, zanim zostanie policzony jako zapisany.

Testuj endpointy

Każda strona endpointu w tej dokumentacji zawiera interaktywny playground. Wprowadź klucz API raz i wysyłaj prawdziwe zapytania wprost z dokumentacji.