Przejdź do treści

Raporty – E-mail – raport pojedynczej wiadomości

Ta metoda zwraca metryki dostarczalności i zaangażowania dla pojedynczej wysłanej wiadomości e-mail. Dzięki niej możesz sprawdzić najważniejsze wyniki, takie jak liczba dostarczonych wiadomości, otwarcia i kliknięcia, razem z ich wartościami procentowymi.

Statystyki są dostępne dla całej wiadomości, ale możesz też zobaczyć je w podziale na domenę odbiorcy, rodzinę domen lub adres IP, z którego została wysłana wiadomość. W razie potrzeby metoda zwraca również podstawowe informacje o wiadomości, takie jak temat, parametry UTM czy data wysyłki.

Endpoint

GET /reports/email/singleMessage/{id}

Host: https://api.ecdp.app

Parametry zapytania

ParametrTypWymaganyOpisDozwolone wartości / Uwagi
x-api-keystringtakKlucz API do uwierzytelnianiaKlucz API do uwierzytelniania
idintegertakIdentyfikator wiadomości w ECDPParametr ścieżki. Nie może być pusty
startDatestringwarunkowyPoczątek zakresu dat raportuYYYY-MM-DD. Wymagany dla Scenario i Confirmation. Niedozwolony dla Newsletter
endDatestringwarunkowyKoniec zakresu dat raportuYYYY-MM-DD. Wymagany dla Scenario i Confirmation. Niedozwolony dla Newsletter. endDate musi być późniejszy niż startDate
groupingenumniePoziom agregacji danych w odpowiedziMessage (domyślnie), Domain, DomainFamily, IP
domainstringnieFiltruje wyniki do określonej domeny odbiorcyPojedyncza wartość, np. gmail.com. Nie można łączyć z innymi filtrami
domainFamilystringnieFiltruje wyniki do rodziny domenPojedyncza wartość, np. gmail. Nie można łączyć z innymi filtrami
ipstringnieFiltruje wyniki do określonego IP nadawcy lub jego typuPojedyncza wartość: Premium, Shared lub konkretny adres IP, np. 1.2.3.4. Nie można łączyć z innymi filtrami
includeDetailsbooleannieCzy uwzględnić metadane wiadomości w odpowiedzitrue lub false (domyślnie: false). Akceptuje też 1 lub 0

Filtry

W jednym zapytaniu dozwolony jest tylko jeden typ filtra, a każdy filtr przyjmuje dokładnie jedną wartość. Podanie kilku filtrów lub kilku wartości zwraca błąd 400 Bad Request.

FiltrTypOpis
domainstringUwzględnia tylko zdarzenia dla podanej domeny odbiorcy, np. gmail.com
domainFamilystringUwzględnia tylko zdarzenia dla podanej rodziny domen, np. gmail
ipstringUwzględnia tylko zdarzenia wysłane z podanego adresu IP lub typu IP: Premium, Shared lub konkretny adres

Opcje grupowania

W jednym zapytaniu dozwolona jest dokładnie jedna wartość grupowania. Grupowanie określa, która kolumna pojawi się w każdym wierszu tablicy data[].

Domyślnie: grouping=Message

Wartość grupowaniaKolumna grupowania w odpowiedzi
MessagemessageId, messageSubject
Domaindomain
DomainFamilydomainFamily
IPip

Odpowiedź

Email report data

Każdy obiekt w tablicy data zawiera dokładnie jedną kolumnę grupowania (określoną przez parametr grouping), po której następują pola KPI opisane poniżej.

PoleTypOpis
messageIdstringObecne gdy grouping=Message
messageSubjectstringTemat wiadomości. Obecne gdy grouping=Message
domainstringObecne gdy grouping=Domain
domainFamilystringObecne gdy grouping=DomainFamily
ipstringObecne gdy grouping=IP
bouncedintegerLiczba odbitych wiadomości
bouncedPercentnumberUdział odbitych wiadomości w łącznej liczbie wysłanych
deliveredintegerLiczba skutecznie dostarczonych wiadomości
deliveredPercentnumberUdział dostarczonych wiadomości w łącznej liczbie wysłanych
opensintegerŁączna liczba otwarć (wliczając wielokrotne otwarcia)
opensPercentnumberUdział otwarć w liczbie dostarczonych wiadomości
uniqueOpensintegerLiczba odbiorców, którzy otworzyli wiadomość co najmniej raz
clicksintegerŁączna liczba kliknięć w linki
clicksPercentnumberUdział kliknięć w liczbie dostarczonych wiadomości.
uniqueClicksintegerLiczba odbiorców, którzy kliknęli co najmniej raz
clicksToOpensPercentnumberUdział kliknięć w liczbie otwarć
unsubscribesintegerLiczba wypisań
complaintsintegerLiczba zgłoszeń spamu
revenuenumberPrzychód przypisany do tej wiadomości
currencystringKod waluty dla wartości przychodu (ISO 4217)

Message details

Obecne tylko gdy includeDetails=true.

PoleTypOpis
messageIdstringIdentyfikator wiadomości
typestringTyp wiadomości: Newsletter, Scenario lub Confirmation
subjectstringTemat wiadomości e-mail
utms[]arrayTablica obiektów parametrów UTM, każdy z polami name i value
sentDatestring (ISO-8601 UTC)Data i godzina wysłania wiadomości. Obecne tylko dla wiadomości typu Newsletter

Przykładowe zapytania i odpowiedzi

Newsletter z domyślnym grupowaniem i szczegółami wiadomości

GET /reports/email/singleMessage/12345?includeDetails=true

Odpowiedź: OK 200

{
  "messageDetails": {
    "messageId": "12345",
    "type": "Newsletter",
    "subject": "Wiosenna promocja",
    "utms": [
      { "name": "utm_source", "value": "newsletter" },
      { "name": "utm_campaign", "value": "marzec" }
    ],
    "sentDate": "2025-02-14T10:05:00Z"
  },
  "data": [
    {
      "messageId": "12345",
      "messageSubject": "Wiosenna promocja",
      "bounced": 20,
      "bouncedPercent": 0.002,
      "delivered": 9980,
      "deliveredPercent": 0.998,
      "opens": 5400,
      "opensPercent": 0.541,
      "uniqueOpens": 4200,
      "clicks": 1200,
      "clicksPercent": 0.120,
      "uniqueClicks": 950,
      "clicksToOpensPercent": 0.222,
      "unsubscribes": 10,
      "complaints": 3,
      "revenue": 3500.45,
      "currency": "PLN"
    }
  ]
}

Wiadomość e-mail użyta w scenariuszu, zgrupowana według domeny, z filtrem do gmail.com

GET /reports/email/singleMessage/123?startDate=2025-03-01&endDate=2025-03-07&grouping=Domain&domain=gmail.com

Odpowiedź: OK 200

{
  "data": [
    {
      "domain": "gmail.com",
      "bounced": 5,
      "bouncedPercent": 0.001,
      "delivered": 4995,
      "deliveredPercent": 0.999,
      "opens": 3200,
      "opensPercent": 0.640,
      "uniqueOpens": 2500,
      "clicks": 650,
      "clicksPercent": 0.130,
      "uniqueClicks": 500,
      "clicksToOpensPercent": 0.203,
      "unsubscribes": 4,
      "complaints": 1,
      "revenue": 1780.25,
      "currency": "PLN"
    }
  ]
}

Kody odpowiedzi#

KodStatusOpis
200OKZapytanie przetworzone pomyślnie. Odpowiedź zawiera statystyki wiadomości
400Bad RequestNieprawidłowe lub brakujące parametry. Sprawdź ograniczenia filtrów i grupowania, reguły zakresu dat oraz pola wymagane
401UnauthorizedKlucz API jest brakujący, nieprawidłowy lub wygasły. Zweryfikuj klucz w Ustawienia > API
404Not foundWiadomość o podanym ID nie istnieje

Reguły walidacji i działania#

  • Dla wiadomości Newsletter: parametry startDate i endDate są niedozwolone. Ich podanie zwraca błąd 400 Bad Request.
  • Dla wiadomości Scenario i Confirmation: oba parametry startDate i endDate są wymagane. Pominięcie któregokolwiek z nich zwraca błąd 400 Bad Request.
  • W jednym żądaniu dozwolona jest dokładnie jedna wartość grupowania. Podanie kilku wartości zwraca błąd 400 Bad Request.
  • W jednym żądaniu dozwolony jest dokładnie jeden typ filtra z dokładnie jedną wartością. Podanie kilku filtrów lub kilku wartości zwraca błąd 400 Bad Request.

Dokumentacja referencyjna

Swagger — Reports email

https://api.ecdp.app/swagger/index.html