Przejdź do treści

Raporty – E-mail – raport zbiorczy

Ta metoda zwraca podsumowanie najważniejszych statystyk dla całego kanału e-mail w wybranym przedziale czasu.

Endpoint

GET reports/email/channelSummary

Host: https://api.ecdp.app

Parametry zapytania

ParametrLokalizacjaTypWymaganyOpisDozwolone wartości / uwagi
x-api-keyheaderstringtakKlucz API do uwierzytelnieniaDostępny w Ustawienia > API
startDatequerystringtakData początkowa raportuFormat: YYYY-MM-DD
endDatequerystringtakData końcowa raportuFormat: YYYY-MM-DD
groupingquerystringnieSposób agregacji zwracanych danychJedna z wartości: Date (domyślna), Month, Message, Domain, DomainFamily, IP, MessageType
domainquerystringnieFiltruje według domeny e-mail odbiorcy (np. gmail.com)Pojedyncza wartość
domainFamilyquerystringnieFiltruje według rodziny domen (np. Google, Microsoft)Pojedyncza wartość
messageTypequerystringnieFiltruje według typu wiadomościPojedyncza wartość

Filtry

Dodatkowy parametr. Który służy do zawężenia wyników. W jednym zapytniu można zastosować tylko jeden filtr. Każdy filtr przyjmuje dokładnie jedną wartość. Podanie wielu filtrów lub wielu wartości zwraca błąd 400 Bad Request.

FiltrTypOpis
domainstringZawęża wyniki do wskazanej domeny e-mail odbiorcy (np. gmail.com)
domainFamilystringZawęża wyniki do wskazanej rodziny domen (np. Google, Microsoft)
messageTypestringZawęża wyniki do wskazanego typu wiadomości

Opcje grupowania

W jednym zapytaniu dozwolona jest dokładnie jedna wartość grupowania. Domyślne grupowanie: Date. Podanie wielu wartości grupowania zwraca błąd 400 Bad Request.

Wartość grupowaniaKolumna grupowania w odpowiedzi
Date (domyślna)date
Monthmonth
Messagemessage
Domaindomain
DomainFamilydomainFamily
IPip
MessageTypemessageType

Odpowiedź

Każdy obiekt zawiera następujące pola:

PoleTypOpis
datestringData kalendarzowa dla danego wiersza (YYYY-MM-DD). Obecne gdy grouping=Date
domainstringDomena e-mail odbiorcy. Obecne gdy grouping=Domain
sentintegerŁączna liczba wysłanych wiadomości e-mail
bouncedintegerLiczba wiadomości, które nie zostały dostarczone
bouncedPercentnumberWspółczynnik odrzuceń jako procent wysłanych
deliveredintegerLiczba skutecznie dostarczonych wiadomości
deliveredPercentnumberWspółczynnik dostarczalności jako procent wysłanych
opensintegerŁączna liczba otwarć wiadomości (wliczając wielokrotne otwarcia przez tego samego odbiorcę)
opensPercentnumberWspółczynnik otwarć jako procent dostarczonych
uniqueOpensintegerLiczba unikalnych odbiorców, którzy otworzyli wiadomość co najmniej raz
clicksintegerŁączna liczba kliknięć w linki (wliczając wielokrotne kliknięcia przez tego samego odbiorcę)
clicksPercentnumberWspółczynnik kliknięć jako procent dostarczonych
uniqueClicksintegerLiczba unikalnych odbiorców, którzy kliknęli co najmniej jeden link
clicksToOpensPercentnumberWspółczynnik kliknięć do otwarć (CTOR)
unsubscribesintegerLiczba odbiorców, którzy wypisali się z listy za pośrednictwem np. linku wypisania
complaintsintegerLiczba otrzymanych zgłoszeń spamu
revenuenumberŁączny przychód przypisany do wiadomości e-mail w danym okresie
currencystringKod waluty

Przykładowe zapytania i odpowiedzi

Dzienny raport zbiorczy

GET /reports/email/channelSummary?startDate=2025-09-01&endDate=2025-09-07

Odpowiedź: 200 OK

{
  "data": [
    {
      "date": "2025-09-01",
      "sent": 52000,
      "bounced": 520,
      "bouncedPercent": 1.0,
      "delivered": 51480,
      "deliveredPercent": 99.0,
      "opens": 90500,
      "opensPercent": 175.8,
      "uniqueOpens": 23800,
      "clicks": 20592,
      "clicksPercent": 40.0,
      "uniqueClicks": 9800,
      "clicksToOpensPercent": 41.2,
      "unsubscribes": 62,
      "complaints": 9,
      "revenue": 6840.25,
      "currency": "PLN"
    },
    {
      "date": "2025-09-02",
      "sent": 48000,
      "bounced": 480,
      "bouncedPercent": 1.0,
      "delivered": 47520,
      "deliveredPercent": 99.0,
      "opens": 86000,
      "opensPercent": 181.0,
      "uniqueOpens": 21050,
      "clicks": 16632,
      "clicksPercent": 35.0,
      "uniqueClicks": 8200,
      "clicksToOpensPercent": 39.0,
      "unsubscribes": 55,
      "complaints": 8,
      "revenue": 5720.00,
      "currency": "PLN"
    }
  ]
}

Raport zbiorczy pogrupowany według domen z filtrem

GET /reports/email/channelSummary?startDate=2025-09-01&endDate=2025-09-30&grouping=Domain&domain=gmail.com&messageType=Newsletter&ip=192.0.2.15

Odpowiedź: 200 OK

{
  "data": [
    {
      "domain": "gmail.com",
      "sent": 90000,
      "bounced": 720,
      "bouncedPercent": 0.8,
      "delivered": 89280,
      "deliveredPercent": 99.2,
      "opens": 178560,
      "opensPercent": 200.0,
      "uniqueOpens": 40200,
      "clicks": 31248,
      "clicksPercent": 35.0,
      "uniqueClicks": 15100,
      "clicksToOpensPercent": 37.6,
      "unsubscribes": 120,
      "complaints": 18,
      "revenue": 12900.50,
      "currency": "PLN"
    }
  ]
}

Kody odpowiedzi#

KodStatusOpis
200OKZapytanie zakończone sukcesem. Dane zwrócone w treści odpowiedzi
400Bad RequestNieprawidłowe parametry, brakujące wymagane pola, wiele filtrów lub nieprawidłowy zakres dat
401UnauthorizedBrakujący lub nieprawidłowy klucz API

Reguły walidacji i zachowania#

  • W jednym żądaniu dozwolone jest tylko jedno grupowanie. Podanie wielu grupowań zwraca błąd 400 Bad Request.
  • W jednym zapytaniu dozwolony jest tylko jeden typ filtra z jedną wartością. Łączenie wielu filtrów (np. domain i domainFamily) lub podanie wielu wartości zwraca błąd 400 Bad Request.
  • Pusty zestaw wyników (prawidłowe żądanie bez pasujących danych) zwraca 200 OK z pustą tablicą data lub 204 No Content.

Dokumentacja referencyjna#

Swagger — Raporty e-mail

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