Statistics API V2 (REST)
REST API
Ez a szolgáltatás jelenleg csak REST API-n keresztül elérhető.
Init statistics
Beütemezi a statisztika kezdeti számolását végző job-ot, ami feltölti a statisztika táblát.
REST API
Kérés
GET hammy/json/statistics/v2/init
| Paraméter | Típus | Leírás |
|---|---|---|
| fromDate | Date | Intervallum kezdete. |
| toDate | Date | Intervallum vége. |
| statisticType | String | Statisztika típusa szűrő (event vagy status). Ha nincs megadva, akkor az event és status típusú statisztikát is számolja. |
Válasz
| Név | Típus | Leírás |
|---|---|---|
| meta | JMeta1 | Metaadatok. |
Minta
GET /hammy/json/statistics/v2/init
Authorization: JWT {{jwtToken}}
X-Client-Hash-Key: {{clientHashKey}}
X-User-Name: {{userName}}
Query params:
-------------------------
fromDate={{YYYY-MM-DD}}
toDate={{YYYY-MM-DD}}
statisticType={{}}
/hammy/json/statistics/v2/init?fromDate=2020-10-27&statisticType=event
HTTP/1.1 200 OK
Content-Type: application/vnd.api+json
{
"data": {
"type": "emptyResponse",
"id": "5b24ac33-61d4-4b81-8a0b-87e1def4311f",
"attributes": {}
},
"meta": {
"params": [],
"responseStatus": {
"code": 0,
"messages": []
}
}
}
Get statistics interval
Kiszámolja, hogy a kérésben beküldött feltételeknek megfelelően mi a legtágabb időintervallum, amiben léteznek statisztika rekordok.
REST API
Kérés
GET hammy/json/statistics/v2/statisticInterval
POST hammy/json/statistics/v2/statisticInterval
GET esetén query paraméterként lehet megadni a mezőket, POST esetén a body-ban.
| Paraméter/Név | Típus | Leírás |
|---|---|---|
| statisticType | String | Statisztika típusa szűrő (event vagy status). |
| messageTypes | String [ ] | Üzenettípus szűrő lista. |
| statisticCodes | String [ ] | Statisztika kód lista, státusz esetén a státusz neve, esemény esetén annak a kódja. |
| scenarioDefIds | String [ ] | Szcenárió szűrő lista. |
| campaignIds | String [ ] | Kampány azonosító szűrő lista. |
| campaignPartIds | String [ ] | Kampány rész azonosító szűrő lista. |
| templateVersionIds | String [ ] | Sablon verzió szűrő lista. |
| channels | String [ ] | Csatorna szűrő lista. |
| clientDeviceClasses | String [ ] | Eszköz osztály szűrő lista. |
| clientOsNames | String [ ] | Eszköz operációs rendszer szűrő lista. |
| clientAgentNames | String [ ] | Böngésző szűrő lista. |
Válasz
| Név | Típus | Leírás |
|---|---|---|
| meta | JMeta1 | Metaadatok. |
| fromDate | Date | Intervallum kezdete. |
| toDate | Date | Intervallum vége. |
| requestParameters | Az eredeti kérés paraméterei. |
Minta
GET /hammy/json/statistics/v2/statisticInterval
Authorization: JWT {{jwtToken}}
X-Client-Hash-Key: {{clientHashKey}}
X-User-Name: {{userName}}
Query params:
-------------------------
statisticType={{}}
statisticCodes={{}}
messageTypes={{message type lista}}
campaignIds={{kampány id lista}}
campaignPartIds={{kampány rész id lista}}
scenarioDefIds={{szcenárió definíció id lista}}
channels={{csatorna lista}}
clientDeviceClasses={{eszköz osztály lista}}
clientOsNames={{eszköz operációs rendszer lista}}
clientAgentNames={{eszköz böngésző lista}}
/hammy/json/statistics/v2/statisticInterval?messageTypes%5B%5D=TEST.SECURE&messageTypes%5B%5D=GENERALI-KGFB-KOTVENY
HTTP/1.1 200 OK
Content-Type: application/vnd.api+json
{
"meta": {
"responseStatus": {
"code": 0,
"messages": []
},
"params": []
},
"fromDate": "2020-06-16T12:00:00.000+0200",
"toDate": "2020-11-04T14:00:00.000+0100",
"requestParameters": {
"messageTypes": [
"TEST.SECURE",
"GENERALI-KGFB-KOTVENY"
]
}
}
Get statistics
A feladott tételekről vagy eseményekről ad vissza statisztikát. A lekérdezést csak meghatározott időintervallumra (fromDate - todate) lehet indítani. Az aggregationLevel mezővel szabályozhatjuk, hogy az eredményeket milyen időintervallumra szeretnénk aggregálni.
REST API
Kérés
GET hammy/json/statistics/v2/statistics
POST hammy/json/statistics/v2/statistics
GET esetén query paraméterként lehet megadni a mezőket, POST esetén a body-ban.
| Paraméter/Név | Típus | Leírás |
|---|---|---|
| fromDate | Date | A lekérdezési intervallum kezdete (inclusive). |
| toDate | Date | A lekérdezési intervallum vége (inclusive). |
| statisticType | String | Statisztika típusa (event vagy status). |
| aggregationLevel | String | Az eredményeket milyen granularitásban kérjük. |
| messageTypes | String [ ] | Üzenettípus szűrő. |
| templateVersionIds | String | Sablon verzió szűrő. |
| statisticCodes | String [ ] | Statisztika kód lista, státusz esetén a státusz neve, esemény esetén annak a kódja. |
| scenarioDefIds | String [ ] | Szcenárió szűrő. |
| campaignIds | String [ ] | Kampány azonosító szűrő. |
| campaignPartIds | String [ ] | Kampány rész azonosító szűrő. |
| channels | String [ ] | Csatorna szűrő. |
| clientDeviceClasses | String [ ] | Eszköz osztály szűrő. |
| clientOsNames | String [ ] | Eszköz operációs rendszer szűrő. |
| clientAgentNames | String [ ] | Böngésző szűrő. |
aggregationLevel
T- (TOTAL) Teljes időszakra aggregál.H- Óra eleje.D- Adott dátum.W- Adott hét hétfő, csak dátum.M- Hónap elseje, csak dátum.Y- Évszám.HOD(hour of day) - 0-23DOW(day of week) - 1-7
Válasz
| Név | Típus | Leírás |
|---|---|---|
| meta | JMeta1 | Metaadatok. |
| statistics | JStatistic2 [ ] | A kért statisztikák. |
| requestParameters | Az eredeti kérés paraméterei. |
Minta
GET /hammy/json/statistics/v2/statistics
Authorization: JWT {{jwtToken}}
X-Client-Hash-Key: {{clientHashKey}}
X-User-Name: {{userName}}
Query params:
-------------------------
fromDate={{YYYY-MM-DD}}
toDate={{YYYY-MM-DD}}
statisticType={{}}
statisticCodes={{}}
aggregationLevel={{T|H|D|HOD|W|DOW|M|Y}}
messageTypes={{message type lista}}
campaignIds={{}}
campaignPartIds={{}}
scenarioDefIds={{}}
channels={{}}
/hammy/json/statistics/v2/statistics?fromDate=2020-10-16&toDate=2020-10-27&aggregationLevel=DOW&messageTypes%5B%5D=MESSAGE_TYPE1&messageTypes%5B%5D=GENERALI-KGFB-KOTVENY&statisticType=status
HTTP/1.1 200 OK
Content-Type: application/vnd.api+json
{
"meta": {
"responseStatus": {
"code": 0,
"messages": []
},
"params": []
},
"statistics": [
{
"uuid": "892d4b5f-bcbb-4dcb-b875-de61bfa65fd1",
"aggregatedTime": "7",
"aggregatedLevel": "DOW",
"messageType": "GENERALI-KGFB-KOTVENY",
"statisticType": "status",
"statisticCode": "NEW",
"measurement": 100
},
{
"uuid": "d8b0b41b-93ed-442c-9a77-c6e94547e1bc",
"aggregatedTime": "5",
"aggregatedLevel": "DOW",
"messageType": "GENERALI-KGFB-KOTVENY",
"statisticType": "status",
"statisticCode": "NEW",
"measurement": 2
}
],
"requestParameters": {
"messageTypes": [
"MESSAGE_TYPE1",
"GENERALI-KGFB-KOTVENY"
],
"fromDate": "2020-10-16T00:00:00.000+0200",
"toDate": "2020-10-27T00:00:00.000+0100",
"aggregationLevel": "DOW"
}
}
GET /hammy/json/statistics/v2/statistics
Authorization: JWT {{jwtToken}}
X-Client-Hash-Key: {{clientHashKey}}
X-User-Name: {{userName}}
Query params:
-------------------------
fromDate={{YYYY-MM-DD}}
toDate={{YYYY-MM-DD}}
statisticType={{}}
statisticCodes={{}}
aggregationLevel={{T|H|D|HOD|W|DOW|M|Y}}
messageTypes={{message type lista}}
campaignIds={{}}
campaignPartIds={{}}
scenarioDefIds={{}}
channels={{}}
clientDeviceClasses={{}}
clientOsNames={{}}
clientAgentNames={{}}
/hammy/json/statistics/v2/statistics?toDate=2020-10-27&aggregationLevel=T&messageTypes%5B%5D=TEST.SECURE&statisticType=event
HTTP/1.1 200 OK
Content-Type: application/json
{
"meta": {
"responseStatus": {
"code": 0,
"messages": []
},
"params": []
},
"statistics": [
{
"uuid": "3cd4cf99-18d5-4e4e-8097-1a44b16bbd23",
"statisticType": "event",
"statisticCode": "HAMMY_MAIL_FIRST_CLICKED",
"statisticParam": "https://ncore.cc/",
"messageType": "TEST.SECURE",
"aggregationLevel": "T",
"measurement": 11
},
{
"uuid": "dbdb80f1-0322-4266-bfc3-aee8a60de119",
"statisticType": "event",
"statisticCode": "HAMMY_MAIL_FIRST_OPENED",
"messageType": "TEST.SECURE",
"aggregationLevel": "T",
"measurement": 15
},
{
"uuid": "085c838a-2b29-4bad-a215-fa0150c3d773",
"statisticType": "event",
"statisticCode": "HAMMY_MAIL_OTHER_CLICKED",
"statisticParam": "https://ncore.cc/",
"messageType": "TEST.SECURE",
"aggregationLevel": "T",
"measurement": 3
}
],
"requestParameters": {
"messageTypes": [
"TEST.SECURE"
],
"toDate": "2020-10-27T00:00:00.000+0100",
"statisticType": "event",
"aggregationLevel": "T"
}
}
Get statistic message types
Visszaadja a listát azokról a messageType-okról, amik érintettek a statisztika lekérdezésben.
REST API
Kérés
GET hammy/json/statistics/v2/statisticMessageTypes
POST hammy/json/statistics/v2/statisticMessageTypes
GET esetén query paraméterként lehet megadni a mezőket, POST esetén a body-ban.
| Paraméter/Név | Típus | Leírás |
|---|---|---|
| scenarioDefIds | String [ ] | Szcenárió szűrő. |
| campaignIds | String [ ] | Kampány azonosító szűrő. |
| campaignPartIds | String [ ] | Kampány rész azonosító szűrő. |
| messageTypes | String [ ] | Üzenet típus szűrő. |
| fromDate | Date | Intervallum kezdete. |
| toDate | Date | Intervallum vége. |
Válasz
| Név | Típus | Leírás |
|---|---|---|
| meta | JMeta1 | Metaadatok. |
| statistics | JStatisticMessageTypeItem1 [ ] | Az üzenettípusok. |
| requestParameters | Az eredeti kérés paraméterei. |
Minta
GET /hammy/json/statistics/v2/statisticMessageTypes
Authorization: JWT {{jwtToken}}
X-Client-Hash-Key: {{clientHashKey}}
X-User-Name: {{userName}}
Query params:
-------------------------
campaignIds={{kampány id lista}}
campaignPartIds={{kampány rész id lista}}
scenarioDefIds={{szcenárió definíció id lista}}
/hammy/json/statistics/v2/statisticMessageTypes?campaignIds%5B%5D=4a1b63c4-c1b6-4d88-b305-f6aefdb332f3&campaignPartIds%5B%5D=8344039a-50a4-48ed-b016-f6a5ea6bd7ba&campaignPartIds%5B%5D=fc351a23-7749-4213-a1ab-52e20c206260
HTTP/1.1 200 OK
Content-Type: application/vnd.api+json
{
"meta": {
"responseStatus": {
"code": 0,
"messages": []
},
"params": []
},
"elements": [
{
"messageTypes": [
{
"messageType": "VERSION_INFO_CHANGED_EMAIL",
"version": 1,
"subject": "levél tárgya 2"
}],
"campaignId": "4a1b63c4-c1b6-4d88-b305-f6aefdb332f3"
},
{
"messageTypes": [{
"messageType": "GENERALI-KGFB-KOTVENY",
"version": 1,
"subject": "levél tárgya x"
}],
"campaignId": "4a1b63c4-c1b6-4d88-b305-f6aefdb332f3",
"campaignPartId": "8344039a-50a4-48ed-b016-f6a5ea6bd7ba"
},
{
"messageTypes": [{
"messageType": "KEPES_SABLON",
"version": 3,
"subject": "levél tárgya"
}, {
"messageType": "KEPES_SABLON",
"version": 4,
"subject": "levél tárgya"
}],
"campaignId": "7e9252f9-a912-47ce-9838-2c225bba4a75",
"campaignPartId": "fc351a23-7749-4213-a1ab-52e20c206260"
}
],
"requestParameters": {
"scenarioDefIds": [],
"campaignIds": [
"4a1b63c4-c1b6-4d88-b305-f6aefdb332f3"
],
"campaignPartIds": [
"8344039a-50a4-48ed-b016-f6a5ea6bd7ba",
"fc351a23-7749-4213-a1ab-52e20c206260"
]
}
}