@pushwoosh/rpc-gateway-statistics-api 1.3.840 → 1.3.842

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
@@ -1914,6 +1914,18 @@ export const data = {
1914
1914
  }
1915
1915
  }
1916
1916
  },
1917
+ "pushwoosh.statistics.statistics.v1.MessageHistoryChannel": {
1918
+ "type": "E",
1919
+ "values": [
1920
+ "MESSAGE_HISTORY_CHANNEL_UNSPECIFIED",
1921
+ "MESSAGE_HISTORY_CHANNEL_PUSH",
1922
+ "MESSAGE_HISTORY_CHANNEL_INBOX",
1923
+ "MESSAGE_HISTORY_CHANNEL_EMAIL",
1924
+ "MESSAGE_HISTORY_CHANNEL_SMS",
1925
+ "MESSAGE_HISTORY_CHANNEL_WHATSAPP",
1926
+ "MESSAGE_HISTORY_CHANNEL_FB_MESSENGER"
1927
+ ]
1928
+ },
1917
1929
  "pushwoosh.statistics.statistics.v1.GetMessageHistoryFilters": {
1918
1930
  "type": "I",
1919
1931
  "fields": {
@@ -1950,6 +1962,9 @@ export const data = {
1950
1962
  "messageCodes": {
1951
1963
  "type": "string",
1952
1964
  "array": true
1965
+ },
1966
+ "channel": {
1967
+ "type": "pushwoosh.statistics.statistics.v1.MessageHistoryChannel"
1953
1968
  }
1954
1969
  }
1955
1970
  },
@@ -2000,6 +2015,20 @@ export const data = {
2000
2015
  }
2001
2016
  }
2002
2017
  },
2018
+ "pushwoosh.statistics.statistics.v1.MessageHistoryInboxMetric": {
2019
+ "type": "I",
2020
+ "fields": {
2021
+ "read": {
2022
+ "type": "number"
2023
+ },
2024
+ "clicked": {
2025
+ "type": "number"
2026
+ },
2027
+ "clickRate": {
2028
+ "type": "number"
2029
+ }
2030
+ }
2031
+ },
2003
2032
  "pushwoosh.statistics.statistics.v1.MessageHistoryItemMetric": {
2004
2033
  "type": "I",
2005
2034
  "fields": {
@@ -2014,6 +2043,9 @@ export const data = {
2014
2043
  },
2015
2044
  "errors": {
2016
2045
  "type": "number"
2046
+ },
2047
+ "inbox": {
2048
+ "type": "pushwoosh.statistics.statistics.v1.MessageHistoryInboxMetric"
2017
2049
  }
2018
2050
  }
2019
2051
  },
@@ -2080,6 +2112,12 @@ export const data = {
2080
2112
  },
2081
2113
  "smsPresetCode": {
2082
2114
  "type": "string"
2115
+ },
2116
+ "inboxExpiresAt": {
2117
+ "type": "string"
2118
+ },
2119
+ "channel": {
2120
+ "type": "pushwoosh.statistics.statistics.v1.MessageHistoryChannel"
2083
2121
  }
2084
2122
  }
2085
2123
  },
@@ -3745,6 +3783,12 @@ export const data = {
3745
3783
  "method": "post",
3746
3784
  "path": "/api/v2/statistics/overview/getChannelUsersTrend"
3747
3785
  },
3786
+ "GetEmailRates": {
3787
+ "request": "pushwoosh.statistics.statistics.v2.overviewkpi.GetEmailRatesRequest",
3788
+ "response": "pushwoosh.statistics.statistics.v2.overviewkpi.GetEmailRatesResponse",
3789
+ "method": "post",
3790
+ "path": "/api/v2/statistics/overview/getEmailRates"
3791
+ },
3748
3792
  "GetRetentionCurve": {
3749
3793
  "request": "pushwoosh.statistics.statistics.v2.overviewkpi.GetRetentionCurveRequest",
3750
3794
  "response": "pushwoosh.statistics.statistics.v2.overviewkpi.GetRetentionCurveResponse",
@@ -4004,6 +4048,92 @@ export const data = {
4004
4048
  }
4005
4049
  }
4006
4050
  },
4051
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetEmailRatesRequest": {
4052
+ "type": "I",
4053
+ "fields": {
4054
+ "applicationCode": {
4055
+ "type": "string"
4056
+ },
4057
+ "dayFrom": {
4058
+ "type": "Date"
4059
+ },
4060
+ "dayTo": {
4061
+ "type": "Date"
4062
+ }
4063
+ }
4064
+ },
4065
+ "pushwoosh.statistics.statistics.v2.overviewkpi.EmailRates": {
4066
+ "type": "I",
4067
+ "fields": {
4068
+ "sends": {
4069
+ "type": "number"
4070
+ },
4071
+ "complaints": {
4072
+ "type": "number"
4073
+ },
4074
+ "hardbounces": {
4075
+ "type": "number"
4076
+ },
4077
+ "complaintRatePercent": {
4078
+ "type": "number"
4079
+ },
4080
+ "hardBounceRatePercent": {
4081
+ "type": "number"
4082
+ }
4083
+ }
4084
+ },
4085
+ "pushwoosh.statistics.statistics.v2.overviewkpi.EmailPauseCheck": {
4086
+ "type": "I",
4087
+ "fields": {
4088
+ "windowDays": {
4089
+ "type": "number"
4090
+ },
4091
+ "windowFrom": {
4092
+ "type": "Date"
4093
+ },
4094
+ "rates": {
4095
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.EmailRates"
4096
+ },
4097
+ "complaintRateLimitPercent": {
4098
+ "type": "number"
4099
+ },
4100
+ "hardBounceRateLimitPercent": {
4101
+ "type": "number"
4102
+ },
4103
+ "minSends": {
4104
+ "type": "number"
4105
+ },
4106
+ "evaluated": {
4107
+ "type": "boolean"
4108
+ }
4109
+ }
4110
+ },
4111
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetEmailRatesResponse.Point": {
4112
+ "type": "I",
4113
+ "fields": {
4114
+ "day": {
4115
+ "type": "Date"
4116
+ },
4117
+ "rates": {
4118
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.EmailRates"
4119
+ }
4120
+ }
4121
+ },
4122
+ "pushwoosh.statistics.statistics.v2.overviewkpi.GetEmailRatesResponse": {
4123
+ "type": "I",
4124
+ "fields": {
4125
+ "points": {
4126
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.GetEmailRatesResponse.Point",
4127
+ "array": true
4128
+ },
4129
+ "totals": {
4130
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.EmailRates"
4131
+ },
4132
+ "pauseCheck": {
4133
+ "type": "pushwoosh.statistics.statistics.v2.overviewkpi.EmailPauseCheck"
4134
+ }
4135
+ }
4136
+ },
4007
4137
  "pushwoosh.statistics.statistics.v2.overviewkpi.GetRetentionCurveRequest": {
4008
4138
  "type": "I",
4009
4139
  "fields": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pushwoosh/rpc-gateway-statistics-api",
3
- "version": "1.3.840",
3
+ "version": "1.3.842",
4
4
  "description": "Statistics API gateway HTTP API Types and Data",
5
5
  "main": "index.js",
6
6
  "module": "index.js",
@@ -804,6 +804,11 @@ export type MessageHistoryOrderBy = {
804
804
  by: MessageHistoryOrderColumn;
805
805
  order: OrderType;
806
806
  };
807
+ /**
808
+ * MessageHistoryChannel is one tab of the one-time messages listing: a message belongs to
809
+ * exactly one channel, told apart by its source and platforms
810
+ */
811
+ export type MessageHistoryChannel = 'MESSAGE_HISTORY_CHANNEL_UNSPECIFIED' | 'MESSAGE_HISTORY_CHANNEL_PUSH' | 'MESSAGE_HISTORY_CHANNEL_INBOX' | 'MESSAGE_HISTORY_CHANNEL_EMAIL' | 'MESSAGE_HISTORY_CHANNEL_SMS' | 'MESSAGE_HISTORY_CHANNEL_WHATSAPP' | 'MESSAGE_HISTORY_CHANNEL_FB_MESSENGER';
807
812
  export type GetMessageHistoryFilters = {
808
813
  statuses: MessageStatus[];
809
814
  platforms: number[];
@@ -814,6 +819,7 @@ export type GetMessageHistoryFilters = {
814
819
  campaigns: string[];
815
820
  messageIds: number[];
816
821
  messageCodes: string[];
822
+ channel: MessageHistoryChannel;
817
823
  };
818
824
  export type GetMessageHistoryRequest_MessageType = 'UNKNOWN' | 'MARKETING' | 'TRANSACTIONAL';
819
825
  export type GetMessageHistoryRequest = {
@@ -829,11 +835,23 @@ export type GetMessageHistoryRequest = {
829
835
  messageType: GetMessageHistoryRequest_MessageType;
830
836
  checkForMessages: boolean;
831
837
  };
838
+ /**
839
+ * MessageHistoryInboxMetric counts an App Inbox message's entries by what their users did
840
+ * with them; users, not devices, one per entry over its whole lifetime
841
+ */
842
+ export type MessageHistoryInboxMetric = {
843
+ read: number;
844
+ clicked: number;
845
+ /** clicked / recipients, percent */
846
+ clickRate: number;
847
+ };
832
848
  export type MessageHistoryItemMetric = {
833
849
  recipients: number;
834
850
  opened: number;
835
851
  ctr: number;
836
852
  errors: number;
853
+ /** App Inbox messages only */
854
+ inbox: MessageHistoryInboxMetric;
837
855
  };
838
856
  export type MessageHistoryItem = {
839
857
  messageId: number;
@@ -857,6 +875,9 @@ export type MessageHistoryItem = {
857
875
  viberTemplateId: string;
858
876
  whatsappContentId: string;
859
877
  smsPresetCode: string;
878
+ /** App Inbox messages only; when the entries leave the inboxes */
879
+ inboxExpiresAt: string;
880
+ channel: MessageHistoryChannel;
860
881
  };
861
882
  export type GetMessageHistoryResponse = {
862
883
  total: number;
@@ -4,6 +4,7 @@ export type OverviewKPIService_GetAudienceFunnel = RpcMethod<GetAudienceFunnelRe
4
4
  export type OverviewKPIService_GetReachByPlatform = RpcMethod<GetReachByPlatformRequest, GetReachByPlatformResponse>;
5
5
  export type OverviewKPIService_GetActiveTrend = RpcMethod<GetActiveTrendRequest, GetActiveTrendResponse>;
6
6
  export type OverviewKPIService_GetChannelUsersTrend = RpcMethod<GetChannelUsersTrendRequest, GetChannelUsersTrendResponse>;
7
+ export type OverviewKPIService_GetEmailRates = RpcMethod<GetEmailRatesRequest, GetEmailRatesResponse>;
7
8
  export type OverviewKPIService_GetRetentionCurve = RpcMethod<GetRetentionCurveRequest, GetRetentionCurveResponse>;
8
9
  export type OverviewKPIService_GetBaseChange = RpcMethod<GetBaseChangeRequest, GetBaseChangeResponse>;
9
10
  export type OverviewKPIService_GetUserMessageMetrics = RpcMethod<GetUserMessageMetricsRequest, GetUserMessageMetricsResponse>;
@@ -22,6 +23,11 @@ export interface OverviewKPIService {
22
23
  GetActiveTrend: OverviewKPIService_GetActiveTrend;
23
24
  /** GetChannelUsersTrend returns the daily users-with-channel series of one platform. */
24
25
  GetChannelUsersTrend: OverviewKPIService_GetChannelUsersTrend;
26
+ /**
27
+ * GetEmailRates returns the complaint and hard bounce rates, counted the way the
28
+ * sending pause counts them, plus the account-wide check that pause runs on.
29
+ */
30
+ GetEmailRates: OverviewKPIService_GetEmailRates;
25
31
  /** GetRetentionCurve returns the D1/D7/D30 curve of one cohort. */
26
32
  GetRetentionCurve: OverviewKPIService_GetRetentionCurve;
27
33
  /** GetBaseChange returns how the push device base moved over a period. */
@@ -165,6 +171,53 @@ export type GetChannelUsersTrendResponse = {
165
171
  /** one point per day the writer has a row for; days it never ran are absent */
166
172
  points: GetChannelUsersTrendResponse_Point[];
167
173
  };
174
+ export type GetEmailRatesRequest = {
175
+ applicationCode: string;
176
+ dayFrom: Date;
177
+ dayTo: Date;
178
+ };
179
+ /**
180
+ * EmailRates is one tally in events, the unit channels/email-feedback-api pauses by:
181
+ * both rates divide by sends, deliveries take no part.
182
+ */
183
+ export type EmailRates = {
184
+ sends: number;
185
+ complaints: number;
186
+ hardbounces: number;
187
+ complaintRatePercent: number;
188
+ hardBounceRatePercent: number;
189
+ };
190
+ /**
191
+ * EmailPauseCheck is the very number the pause is decided on: the whole account over
192
+ * the restriction window, next to the limits it is compared against.
193
+ */
194
+ export type EmailPauseCheck = {
195
+ /** emailratecounteraggregateperiod of the account, in days */
196
+ windowDays: number;
197
+ windowFrom: Date;
198
+ rates: EmailRates;
199
+ complaintRateLimitPercent: number;
200
+ hardBounceRateLimitPercent: number;
201
+ /** sends the window needs before the limits are looked at */
202
+ minSends: number;
203
+ /** false while the window holds fewer sends than min_sends: no pause can follow */
204
+ evaluated: boolean;
205
+ };
206
+ export type GetEmailRatesResponse_Point = {
207
+ day: Date;
208
+ rates: EmailRates;
209
+ };
210
+ export type GetEmailRatesResponse = {
211
+ /** the requested application and period, one point per day */
212
+ points: GetEmailRatesResponse_Point[];
213
+ /** the same application over the whole requested period */
214
+ totals: EmailRates;
215
+ /**
216
+ * the account-wide window the pause reads; absent scope and window on purpose
217
+ * differ from the two above, and that difference is the point of this field
218
+ */
219
+ pauseCheck: EmailPauseCheck;
220
+ };
168
221
  export type GetRetentionCurveRequest = {
169
222
  applicationCode: string;
170
223
  /** day the cohort registered on */