@pushwoosh/rpc-gateway-statistics-api 1.3.759 → 1.3.761

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/data.js CHANGED
@@ -219,6 +219,18 @@ export const data = {
219
219
  "method": "post",
220
220
  "path": "/api/v2/statistics/audience/getEmailCategoryPerformance"
221
221
  },
222
+ "GetEmailFrequencyCappingCP": {
223
+ "request": "pushwoosh.statistics.statistics.v1.GetEmailFrequencyCappingCPRequest",
224
+ "response": "pushwoosh.statistics.statistics.v1.GetEmailFrequencyCappingCPResponse",
225
+ "method": "post",
226
+ "path": "/api/v2/statistics/audience/getEmailFrequencyCapping"
227
+ },
228
+ "GetEmailUnsubscribeByFrequencyCP": {
229
+ "request": "pushwoosh.statistics.statistics.v1.GetEmailUnsubscribeByFrequencyCPRequest",
230
+ "response": "pushwoosh.statistics.statistics.v1.GetEmailUnsubscribeByFrequencyCPResponse",
231
+ "method": "post",
232
+ "path": "/api/v2/statistics/audience/getEmailUnsubscribeByFrequency"
233
+ },
222
234
  "GetRetentionTotalStatisticsCP": {
223
235
  "request": "pushwoosh.statistics.statistics.v1.GetRetentionTotalStatisticsCPRequest",
224
236
  "response": "pushwoosh.statistics.statistics.v1.GetRetentionTotalStatisticsCPResponse",
@@ -1322,6 +1334,101 @@ export const data = {
1322
1334
  }
1323
1335
  }
1324
1336
  },
1337
+ "pushwoosh.statistics.statistics.v1.GetEmailFrequencyCappingCPRequest": {
1338
+ "type": "I",
1339
+ "fields": {
1340
+ "applicationCode": {
1341
+ "type": "string"
1342
+ },
1343
+ "timestampFrom": {
1344
+ "type": "string"
1345
+ },
1346
+ "timestampTo": {
1347
+ "type": "string"
1348
+ }
1349
+ }
1350
+ },
1351
+ "pushwoosh.statistics.statistics.v1.EmailFrequencyCappingMetricWithTimestamp": {
1352
+ "type": "I",
1353
+ "fields": {
1354
+ "timestamp": {
1355
+ "type": "string"
1356
+ },
1357
+ "suppressions": {
1358
+ "type": "number"
1359
+ },
1360
+ "uniqueUsers": {
1361
+ "type": "number"
1362
+ }
1363
+ }
1364
+ },
1365
+ "pushwoosh.statistics.statistics.v1.GetEmailFrequencyCappingCPResponse": {
1366
+ "type": "I",
1367
+ "fields": {
1368
+ "suppressions": {
1369
+ "type": "number"
1370
+ },
1371
+ "uniqueUsers": {
1372
+ "type": "number"
1373
+ },
1374
+ "rows": {
1375
+ "type": "pushwoosh.statistics.statistics.v1.EmailFrequencyCappingMetricWithTimestamp",
1376
+ "array": true
1377
+ },
1378
+ "windowFrom": {
1379
+ "type": "string"
1380
+ },
1381
+ "windowTo": {
1382
+ "type": "string"
1383
+ }
1384
+ }
1385
+ },
1386
+ "pushwoosh.statistics.statistics.v1.GetEmailUnsubscribeByFrequencyCPRequest": {
1387
+ "type": "I",
1388
+ "fields": {
1389
+ "applicationCode": {
1390
+ "type": "string"
1391
+ },
1392
+ "timestampFrom": {
1393
+ "type": "string"
1394
+ },
1395
+ "timestampTo": {
1396
+ "type": "string"
1397
+ }
1398
+ }
1399
+ },
1400
+ "pushwoosh.statistics.statistics.v1.EmailUnsubscribeFrequencyBucket": {
1401
+ "type": "I",
1402
+ "fields": {
1403
+ "from": {
1404
+ "type": "number"
1405
+ },
1406
+ "to": {
1407
+ "type": "number"
1408
+ },
1409
+ "recipients": {
1410
+ "type": "number"
1411
+ },
1412
+ "unsubscribed": {
1413
+ "type": "number"
1414
+ }
1415
+ }
1416
+ },
1417
+ "pushwoosh.statistics.statistics.v1.GetEmailUnsubscribeByFrequencyCPResponse": {
1418
+ "type": "I",
1419
+ "fields": {
1420
+ "buckets": {
1421
+ "type": "pushwoosh.statistics.statistics.v1.EmailUnsubscribeFrequencyBucket",
1422
+ "array": true
1423
+ },
1424
+ "windowFrom": {
1425
+ "type": "string"
1426
+ },
1427
+ "windowTo": {
1428
+ "type": "string"
1429
+ }
1430
+ }
1431
+ },
1325
1432
  "pushwoosh.statistics.statistics.v1.GetRetentionTotalStatisticsCPRequest": {
1326
1433
  "type": "I",
1327
1434
  "fields": {
@@ -3415,6 +3522,200 @@ export const data = {
3415
3522
  }
3416
3523
  }
3417
3524
  },
3525
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetOverviewKPIRequest": {
3526
+ "type": "I",
3527
+ "fields": {
3528
+ "applicationCode": {
3529
+ "type": "string"
3530
+ },
3531
+ "day": {
3532
+ "type": "Date"
3533
+ },
3534
+ "growthPeriodDays": {
3535
+ "type": "number"
3536
+ }
3537
+ }
3538
+ },
3539
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetOverviewKPIResponse": {
3540
+ "type": "I",
3541
+ "fields": {
3542
+ "day": {
3543
+ "type": "Date"
3544
+ },
3545
+ "reachable": {
3546
+ "type": "number"
3547
+ },
3548
+ "netReachableGrowthPercent": {
3549
+ "type": "number"
3550
+ },
3551
+ "dau": {
3552
+ "type": "number"
3553
+ },
3554
+ "mau30": {
3555
+ "type": "number"
3556
+ },
3557
+ "stickinessPercent": {
3558
+ "type": "number"
3559
+ },
3560
+ "unifiedMau30": {
3561
+ "type": "number"
3562
+ },
3563
+ "windowMetricsAvailable": {
3564
+ "type": "boolean"
3565
+ },
3566
+ "netReachableGrowthAvailable": {
3567
+ "type": "boolean"
3568
+ }
3569
+ }
3570
+ },
3571
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetAudienceFunnelRequest": {
3572
+ "type": "I",
3573
+ "fields": {
3574
+ "applicationCode": {
3575
+ "type": "string"
3576
+ },
3577
+ "day": {
3578
+ "type": "Date"
3579
+ }
3580
+ }
3581
+ },
3582
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetAudienceFunnelResponse": {
3583
+ "type": "I",
3584
+ "fields": {
3585
+ "day": {
3586
+ "type": "Date"
3587
+ },
3588
+ "totalUsers": {
3589
+ "type": "number"
3590
+ },
3591
+ "subscribers": {
3592
+ "type": "number"
3593
+ },
3594
+ "reachable": {
3595
+ "type": "number"
3596
+ },
3597
+ "activeReachable": {
3598
+ "type": "number"
3599
+ },
3600
+ "activeReachableWindowDays": {
3601
+ "type": "number"
3602
+ },
3603
+ "activeReachableIsApproximate": {
3604
+ "type": "boolean"
3605
+ }
3606
+ }
3607
+ },
3608
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetReachByPlatformRequest": {
3609
+ "type": "I",
3610
+ "fields": {
3611
+ "applicationCode": {
3612
+ "type": "string"
3613
+ },
3614
+ "day": {
3615
+ "type": "Date"
3616
+ }
3617
+ }
3618
+ },
3619
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetReachByPlatformResponse.Platform": {
3620
+ "type": "I",
3621
+ "fields": {
3622
+ "platformId": {
3623
+ "type": "number"
3624
+ },
3625
+ "reachable": {
3626
+ "type": "number"
3627
+ }
3628
+ }
3629
+ },
3630
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetReachByPlatformResponse": {
3631
+ "type": "I",
3632
+ "fields": {
3633
+ "day": {
3634
+ "type": "Date"
3635
+ },
3636
+ "platforms": {
3637
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.GetReachByPlatformResponse.Platform",
3638
+ "array": true
3639
+ }
3640
+ }
3641
+ },
3642
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetActiveTrendRequest": {
3643
+ "type": "I",
3644
+ "fields": {
3645
+ "applicationCode": {
3646
+ "type": "string"
3647
+ },
3648
+ "dayFrom": {
3649
+ "type": "Date"
3650
+ },
3651
+ "dayTo": {
3652
+ "type": "Date"
3653
+ }
3654
+ }
3655
+ },
3656
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetActiveTrendResponse.Point": {
3657
+ "type": "I",
3658
+ "fields": {
3659
+ "day": {
3660
+ "type": "Date"
3661
+ },
3662
+ "dau": {
3663
+ "type": "number"
3664
+ },
3665
+ "mau30": {
3666
+ "type": "number"
3667
+ }
3668
+ }
3669
+ },
3670
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetActiveTrendResponse": {
3671
+ "type": "I",
3672
+ "fields": {
3673
+ "points": {
3674
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.GetActiveTrendResponse.Point",
3675
+ "array": true
3676
+ }
3677
+ }
3678
+ },
3679
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetRetentionCurveRequest": {
3680
+ "type": "I",
3681
+ "fields": {
3682
+ "applicationCode": {
3683
+ "type": "string"
3684
+ },
3685
+ "cohortDate": {
3686
+ "type": "Date"
3687
+ }
3688
+ }
3689
+ },
3690
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetRetentionCurveResponse.Point": {
3691
+ "type": "I",
3692
+ "fields": {
3693
+ "dayN": {
3694
+ "type": "number"
3695
+ },
3696
+ "cohortSize": {
3697
+ "type": "number"
3698
+ },
3699
+ "retained": {
3700
+ "type": "number"
3701
+ },
3702
+ "retentionPercent": {
3703
+ "type": "number"
3704
+ }
3705
+ }
3706
+ },
3707
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetRetentionCurveResponse": {
3708
+ "type": "I",
3709
+ "fields": {
3710
+ "cohortDate": {
3711
+ "type": "Date"
3712
+ },
3713
+ "points": {
3714
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.GetRetentionCurveResponse.Point",
3715
+ "array": true
3716
+ }
3717
+ }
3718
+ },
3418
3719
  "pushwoosh.statistics.statistics.v2.statistics.StatisticsService": {
3419
3720
  "type": "S",
3420
3721
  "key": "statisticsV2",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pushwoosh/rpc-gateway-statistics-api",
3
- "version": "1.3.759",
3
+ "version": "1.3.761",
4
4
  "description": "Statistics API gateway HTTP API Types and Data",
5
5
  "main": "index.js",
6
6
  "module": "index.js",
@@ -24,6 +24,8 @@ export type StatisticsService_GetSubscribersDailyStatisticsCP = RpcMethod<GetSub
24
24
  export type StatisticsService_GetEmailActivityDistributionCP = RpcMethod<GetEmailActivityDistributionCPRequest, GetEmailActivityDistributionCPResponse>;
25
25
  export type StatisticsService_GetEmailEventTriggeredPerformanceCP = RpcMethod<GetEmailEventTriggeredPerformanceCPRequest, GetEmailEventTriggeredPerformanceCPResponse>;
26
26
  export type StatisticsService_GetEmailCategoryPerformanceCP = RpcMethod<GetEmailCategoryPerformanceCPRequest, GetEmailCategoryPerformanceCPResponse>;
27
+ export type StatisticsService_GetEmailFrequencyCappingCP = RpcMethod<GetEmailFrequencyCappingCPRequest, GetEmailFrequencyCappingCPResponse>;
28
+ export type StatisticsService_GetEmailUnsubscribeByFrequencyCP = RpcMethod<GetEmailUnsubscribeByFrequencyCPRequest, GetEmailUnsubscribeByFrequencyCPResponse>;
27
29
  export type StatisticsService_GetRetentionTotalStatisticsCP = RpcMethod<GetRetentionTotalStatisticsCPRequest, GetRetentionTotalStatisticsCPResponse>;
28
30
  export type StatisticsService_GetEngagementTotalStatisticsCP = RpcMethod<GetEngagementTotalStatisticsCPRequest, GetEngagementTotalStatisticsCPResponse>;
29
31
  export type StatisticsService_GetActiveUsersTotalStatisticsCP = RpcMethod<GetActiveUsersTotalStatisticsCPRequest, GetActiveUsersTotalStatisticsCPResponse>;
@@ -76,6 +78,10 @@ export interface StatisticsService {
76
78
  GetEmailEventTriggeredPerformanceCP: StatisticsService_GetEmailEventTriggeredPerformanceCP;
77
79
  /** GetEmailCategoryPerformanceCP returns per-email-category performance for control panel */
78
80
  GetEmailCategoryPerformanceCP: StatisticsService_GetEmailCategoryPerformanceCP;
81
+ /** GetEmailFrequencyCappingCP returns email sends suppressed by frequency capping for control panel */
82
+ GetEmailFrequencyCappingCP: StatisticsService_GetEmailFrequencyCappingCP;
83
+ /** GetEmailUnsubscribeByFrequencyCP returns the unsubscribe rate by how many letters an address got */
84
+ GetEmailUnsubscribeByFrequencyCP: StatisticsService_GetEmailUnsubscribeByFrequencyCP;
79
85
  /** GetRetentionTotalStatisticsCP returns user retention statistics */
80
86
  GetRetentionTotalStatisticsCP: StatisticsService_GetRetentionTotalStatisticsCP;
81
87
  /** GetEngagementTotalStatisticsCP returns user engagement metrics */
@@ -521,6 +527,49 @@ export type GetEmailCategoryPerformanceCPResponse = {
521
527
  windowFrom: string;
522
528
  windowTo: string;
523
529
  };
530
+ export type GetEmailFrequencyCappingCPRequest = {
531
+ applicationCode: string;
532
+ timestampFrom: string;
533
+ timestampTo: string;
534
+ };
535
+ export type EmailFrequencyCappingMetricWithTimestamp = {
536
+ timestamp: string;
537
+ suppressions: number;
538
+ uniqueUsers: number;
539
+ };
540
+ /**
541
+ * rows are daily buckets, zero-filled over the window; the totals stand apart because a
542
+ * unique-users total is not the sum of its daily ones.
543
+ */
544
+ export type GetEmailFrequencyCappingCPResponse = {
545
+ suppressions: number;
546
+ uniqueUsers: number;
547
+ rows: EmailFrequencyCappingMetricWithTimestamp[];
548
+ /** The window actually read, clamped to the action log retention. */
549
+ windowFrom: string;
550
+ windowTo: string;
551
+ };
552
+ export type GetEmailUnsubscribeByFrequencyCPRequest = {
553
+ applicationCode: string;
554
+ timestampFrom: string;
555
+ timestampTo: string;
556
+ };
557
+ /**
558
+ * One bucket of addresses by how many letters they got in the period; to = 0 is the open
559
+ * ended last bucket.
560
+ */
561
+ export type EmailUnsubscribeFrequencyBucket = {
562
+ from: number;
563
+ to: number;
564
+ recipients: number;
565
+ unsubscribed: number;
566
+ };
567
+ export type GetEmailUnsubscribeByFrequencyCPResponse = {
568
+ buckets: EmailUnsubscribeFrequencyBucket[];
569
+ /** The window actually read, clamped to the action log retention. */
570
+ windowFrom: string;
571
+ windowTo: string;
572
+ };
524
573
  export type GetRetentionTotalStatisticsCPRequest = {
525
574
  applicationCode: string;
526
575
  timestampFrom: string;
@@ -0,0 +1,97 @@
1
+ export type GetOverviewKPIRequest = {
2
+ applicationCode: string;
3
+ /** snapshot day, only year-month-day are used */
4
+ day: Date;
5
+ /** period of the reachable growth, in days */
6
+ growthPeriodDays: number;
7
+ };
8
+ export type GetOverviewKPIResponse = {
9
+ /** day the numbers belong to */
10
+ day: Date;
11
+ /** users with at least one device that has push permission and a valid token */
12
+ reachable: number;
13
+ /** reachable change over growth_period_days, in percent */
14
+ netReachableGrowthPercent: number;
15
+ /** unique users who opened the application that day */
16
+ dau: number;
17
+ /** unique users who opened it within the rolling 30 days ending that day */
18
+ mau30: number;
19
+ /** dau / mau_30, in percent */
20
+ stickinessPercent: number;
21
+ /** users reached by push, email, SMS or WhatsApp in the rolling 30 days */
22
+ unifiedMau30: number;
23
+ /** rolling-30 numbers are absent until the raw log covers the whole window */
24
+ windowMetricsAvailable: boolean;
25
+ /** growth needs a second snapshot, so it is absent on the first days */
26
+ netReachableGrowthAvailable: boolean;
27
+ };
28
+ export type GetAudienceFunnelRequest = {
29
+ applicationCode: string;
30
+ day: Date;
31
+ };
32
+ export type GetAudienceFunnelResponse = {
33
+ day: Date;
34
+ /** all users of the application */
35
+ totalUsers: number;
36
+ /** users with at least one push device holding a valid token */
37
+ subscribers: number;
38
+ /** users with push permission and a valid token */
39
+ reachable: number;
40
+ /** reachable users active within the window */
41
+ activeReachable: number;
42
+ /** window of the active_reachable step, in days */
43
+ activeReachableWindowDays: number;
44
+ /**
45
+ * true while active_reachable falls back to "active with a token": that step
46
+ * is an event window, not a snapshot, so it may exceed the reachable step
47
+ */
48
+ activeReachableIsApproximate: boolean;
49
+ };
50
+ export type GetReachByPlatformRequest = {
51
+ applicationCode: string;
52
+ day: Date;
53
+ };
54
+ export type GetReachByPlatformResponse_Platform = {
55
+ platformId: number;
56
+ reachable: number;
57
+ };
58
+ export type GetReachByPlatformResponse = {
59
+ day: Date;
60
+ /**
61
+ * a user counts in every platform where they have a reachable device, so the
62
+ * sum over platforms may exceed the total
63
+ */
64
+ platforms: GetReachByPlatformResponse_Platform[];
65
+ };
66
+ export type GetActiveTrendRequest = {
67
+ applicationCode: string;
68
+ dayFrom: Date;
69
+ dayTo: Date;
70
+ };
71
+ export type GetActiveTrendResponse_Point = {
72
+ day: Date;
73
+ dau: number;
74
+ mau30: number;
75
+ };
76
+ export type GetActiveTrendResponse = {
77
+ /**
78
+ * one point per day; the values are approximate distinct counts and must not
79
+ * be summed or merged across points
80
+ */
81
+ points: GetActiveTrendResponse_Point[];
82
+ };
83
+ export type GetRetentionCurveRequest = {
84
+ applicationCode: string;
85
+ /** day the cohort registered on */
86
+ cohortDate: Date;
87
+ };
88
+ export type GetRetentionCurveResponse_Point = {
89
+ dayN: number;
90
+ cohortSize: number;
91
+ retained: number;
92
+ retentionPercent: number;
93
+ };
94
+ export type GetRetentionCurveResponse = {
95
+ cohortDate: Date;
96
+ points: GetRetentionCurveResponse_Point[];
97
+ };
@@ -0,0 +1,3 @@
1
+ /* eslint-disable */
2
+ /* Autogenerated code */
3
+ export {};