neurograph-core 1.202510081632__py3-none-any.whl → 1.202510092220__py3-none-any.whl

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.
Files changed (29) hide show
  1. neurograph/v1/__init__.py +42 -0
  2. neurograph/v1/api/__init__.py +1 -0
  3. neurograph/v1/api/reporting_api.py +1739 -0
  4. neurograph/v1/models/__init__.py +20 -0
  5. neurograph/v1/models/knowledge_enrichment_artifact_create_request.py +3 -1
  6. neurograph/v1/models/reporting_affinities_response.py +89 -0
  7. neurograph/v1/models/reporting_chart_data.py +97 -0
  8. neurograph/v1/models/reporting_chart_dataset.py +93 -0
  9. neurograph/v1/models/reporting_chart_defaults.py +91 -0
  10. neurograph/v1/models/reporting_chart_options.py +93 -0
  11. neurograph/v1/models/reporting_content_config.py +113 -0
  12. neurograph/v1/models/reporting_customer_activity_response.py +89 -0
  13. neurograph/v1/models/reporting_daily_metric.py +95 -0
  14. neurograph/v1/models/reporting_daily_metrics_response.py +97 -0
  15. neurograph/v1/models/reporting_data_range.py +89 -0
  16. neurograph/v1/models/reporting_exploration_topic.py +91 -0
  17. neurograph/v1/models/reporting_header_config.py +89 -0
  18. neurograph/v1/models/reporting_meta_config.py +99 -0
  19. neurograph/v1/models/reporting_persona_activity_response.py +89 -0
  20. neurograph/v1/models/reporting_personas_response.py +89 -0
  21. neurograph/v1/models/reporting_primary_analysis.py +99 -0
  22. neurograph/v1/models/reporting_query.py +91 -0
  23. neurograph/v1/models/reporting_rich_insights_config.py +97 -0
  24. neurograph/v1/models/reporting_visualization.py +103 -0
  25. neurograph/v1/models/reporting_visualization_insights.py +91 -0
  26. {neurograph_core-1.202510081632.dist-info → neurograph_core-1.202510092220.dist-info}/METADATA +1 -1
  27. {neurograph_core-1.202510081632.dist-info → neurograph_core-1.202510092220.dist-info}/RECORD +29 -8
  28. {neurograph_core-1.202510081632.dist-info → neurograph_core-1.202510092220.dist-info}/WHEEL +0 -0
  29. {neurograph_core-1.202510081632.dist-info → neurograph_core-1.202510092220.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1739 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Neurograph Core
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: 1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from pydantic import Field, StrictStr
20
+ from typing import Optional
21
+ from typing_extensions import Annotated
22
+ from neurograph.v1.models.reporting_affinities_response import ReportingAffinitiesResponse
23
+ from neurograph.v1.models.reporting_customer_activity_response import ReportingCustomerActivityResponse
24
+ from neurograph.v1.models.reporting_daily_metrics_response import ReportingDailyMetricsResponse
25
+ from neurograph.v1.models.reporting_persona_activity_response import ReportingPersonaActivityResponse
26
+ from neurograph.v1.models.reporting_personas_response import ReportingPersonasResponse
27
+ from neurograph.v1.models.reporting_query import ReportingQuery
28
+ from neurograph.v1.models.reporting_rich_insights_config import ReportingRichInsightsConfig
29
+
30
+ from neurograph.v1.api_client import ApiClient, RequestSerialized
31
+ from neurograph.v1.api_response import ApiResponse
32
+ from neurograph.v1.rest import RESTResponseType
33
+
34
+
35
+ class ReportingApi:
36
+ """NOTE: This class is auto generated by OpenAPI Generator
37
+ Ref: https://openapi-generator.tech
38
+
39
+ Do not edit the class manually.
40
+ """
41
+
42
+ def __init__(self, api_client=None) -> None:
43
+ if api_client is None:
44
+ api_client = ApiClient.get_default()
45
+ self.api_client = api_client
46
+
47
+
48
+ @validate_call
49
+ def api_v1_reporting_affinities_get(
50
+ self,
51
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
52
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
53
+ persona_name: Annotated[Optional[StrictStr], Field(description="Persona name")] = None,
54
+ _request_timeout: Union[
55
+ None,
56
+ Annotated[StrictFloat, Field(gt=0)],
57
+ Tuple[
58
+ Annotated[StrictFloat, Field(gt=0)],
59
+ Annotated[StrictFloat, Field(gt=0)]
60
+ ]
61
+ ] = None,
62
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
63
+ _content_type: Optional[StrictStr] = None,
64
+ _headers: Optional[Dict[StrictStr, Any]] = None,
65
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
66
+ ) -> ReportingAffinitiesResponse:
67
+ """Get customer affinities
68
+
69
+ Get affinities by persona (or all)
70
+
71
+ :param start_date: Start date (YYYY-MM-DD) (required)
72
+ :type start_date: str
73
+ :param end_date: End date (YYYY-MM-DD) (required)
74
+ :type end_date: str
75
+ :param persona_name: Persona name
76
+ :type persona_name: str
77
+ :param _request_timeout: timeout setting for this request. If one
78
+ number provided, it will be total request
79
+ timeout. It can also be a pair (tuple) of
80
+ (connection, read) timeouts.
81
+ :type _request_timeout: int, tuple(int, int), optional
82
+ :param _request_auth: set to override the auth_settings for an a single
83
+ request; this effectively ignores the
84
+ authentication in the spec for a single request.
85
+ :type _request_auth: dict, optional
86
+ :param _content_type: force content-type for the request.
87
+ :type _content_type: str, Optional
88
+ :param _headers: set to override the headers for a single
89
+ request; this effectively ignores the headers
90
+ in the spec for a single request.
91
+ :type _headers: dict, optional
92
+ :param _host_index: set to override the host_index for a single
93
+ request; this effectively ignores the host_index
94
+ in the spec for a single request.
95
+ :type _host_index: int, optional
96
+ :return: Returns the result object.
97
+ """ # noqa: E501
98
+
99
+ _param = self._api_v1_reporting_affinities_get_serialize(
100
+ start_date=start_date,
101
+ end_date=end_date,
102
+ persona_name=persona_name,
103
+ _request_auth=_request_auth,
104
+ _content_type=_content_type,
105
+ _headers=_headers,
106
+ _host_index=_host_index
107
+ )
108
+
109
+ _response_types_map: Dict[str, Optional[str]] = {
110
+ '200': "ReportingAffinitiesResponse",
111
+ '503': "ReportingAffinitiesResponse",
112
+ }
113
+ response_data = self.api_client.call_api(
114
+ *_param,
115
+ _request_timeout=_request_timeout
116
+ )
117
+ response_data.read()
118
+ return self.api_client.response_deserialize(
119
+ response_data=response_data,
120
+ response_types_map=_response_types_map,
121
+ ).data
122
+
123
+
124
+ @validate_call
125
+ def api_v1_reporting_affinities_get_with_http_info(
126
+ self,
127
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
128
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
129
+ persona_name: Annotated[Optional[StrictStr], Field(description="Persona name")] = None,
130
+ _request_timeout: Union[
131
+ None,
132
+ Annotated[StrictFloat, Field(gt=0)],
133
+ Tuple[
134
+ Annotated[StrictFloat, Field(gt=0)],
135
+ Annotated[StrictFloat, Field(gt=0)]
136
+ ]
137
+ ] = None,
138
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
139
+ _content_type: Optional[StrictStr] = None,
140
+ _headers: Optional[Dict[StrictStr, Any]] = None,
141
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
142
+ ) -> ApiResponse[ReportingAffinitiesResponse]:
143
+ """Get customer affinities
144
+
145
+ Get affinities by persona (or all)
146
+
147
+ :param start_date: Start date (YYYY-MM-DD) (required)
148
+ :type start_date: str
149
+ :param end_date: End date (YYYY-MM-DD) (required)
150
+ :type end_date: str
151
+ :param persona_name: Persona name
152
+ :type persona_name: str
153
+ :param _request_timeout: timeout setting for this request. If one
154
+ number provided, it will be total request
155
+ timeout. It can also be a pair (tuple) of
156
+ (connection, read) timeouts.
157
+ :type _request_timeout: int, tuple(int, int), optional
158
+ :param _request_auth: set to override the auth_settings for an a single
159
+ request; this effectively ignores the
160
+ authentication in the spec for a single request.
161
+ :type _request_auth: dict, optional
162
+ :param _content_type: force content-type for the request.
163
+ :type _content_type: str, Optional
164
+ :param _headers: set to override the headers for a single
165
+ request; this effectively ignores the headers
166
+ in the spec for a single request.
167
+ :type _headers: dict, optional
168
+ :param _host_index: set to override the host_index for a single
169
+ request; this effectively ignores the host_index
170
+ in the spec for a single request.
171
+ :type _host_index: int, optional
172
+ :return: Returns the result object.
173
+ """ # noqa: E501
174
+
175
+ _param = self._api_v1_reporting_affinities_get_serialize(
176
+ start_date=start_date,
177
+ end_date=end_date,
178
+ persona_name=persona_name,
179
+ _request_auth=_request_auth,
180
+ _content_type=_content_type,
181
+ _headers=_headers,
182
+ _host_index=_host_index
183
+ )
184
+
185
+ _response_types_map: Dict[str, Optional[str]] = {
186
+ '200': "ReportingAffinitiesResponse",
187
+ '503': "ReportingAffinitiesResponse",
188
+ }
189
+ response_data = self.api_client.call_api(
190
+ *_param,
191
+ _request_timeout=_request_timeout
192
+ )
193
+ response_data.read()
194
+ return self.api_client.response_deserialize(
195
+ response_data=response_data,
196
+ response_types_map=_response_types_map,
197
+ )
198
+
199
+
200
+ @validate_call
201
+ def api_v1_reporting_affinities_get_without_preload_content(
202
+ self,
203
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
204
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
205
+ persona_name: Annotated[Optional[StrictStr], Field(description="Persona name")] = None,
206
+ _request_timeout: Union[
207
+ None,
208
+ Annotated[StrictFloat, Field(gt=0)],
209
+ Tuple[
210
+ Annotated[StrictFloat, Field(gt=0)],
211
+ Annotated[StrictFloat, Field(gt=0)]
212
+ ]
213
+ ] = None,
214
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
215
+ _content_type: Optional[StrictStr] = None,
216
+ _headers: Optional[Dict[StrictStr, Any]] = None,
217
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
218
+ ) -> RESTResponseType:
219
+ """Get customer affinities
220
+
221
+ Get affinities by persona (or all)
222
+
223
+ :param start_date: Start date (YYYY-MM-DD) (required)
224
+ :type start_date: str
225
+ :param end_date: End date (YYYY-MM-DD) (required)
226
+ :type end_date: str
227
+ :param persona_name: Persona name
228
+ :type persona_name: str
229
+ :param _request_timeout: timeout setting for this request. If one
230
+ number provided, it will be total request
231
+ timeout. It can also be a pair (tuple) of
232
+ (connection, read) timeouts.
233
+ :type _request_timeout: int, tuple(int, int), optional
234
+ :param _request_auth: set to override the auth_settings for an a single
235
+ request; this effectively ignores the
236
+ authentication in the spec for a single request.
237
+ :type _request_auth: dict, optional
238
+ :param _content_type: force content-type for the request.
239
+ :type _content_type: str, Optional
240
+ :param _headers: set to override the headers for a single
241
+ request; this effectively ignores the headers
242
+ in the spec for a single request.
243
+ :type _headers: dict, optional
244
+ :param _host_index: set to override the host_index for a single
245
+ request; this effectively ignores the host_index
246
+ in the spec for a single request.
247
+ :type _host_index: int, optional
248
+ :return: Returns the result object.
249
+ """ # noqa: E501
250
+
251
+ _param = self._api_v1_reporting_affinities_get_serialize(
252
+ start_date=start_date,
253
+ end_date=end_date,
254
+ persona_name=persona_name,
255
+ _request_auth=_request_auth,
256
+ _content_type=_content_type,
257
+ _headers=_headers,
258
+ _host_index=_host_index
259
+ )
260
+
261
+ _response_types_map: Dict[str, Optional[str]] = {
262
+ '200': "ReportingAffinitiesResponse",
263
+ '503': "ReportingAffinitiesResponse",
264
+ }
265
+ response_data = self.api_client.call_api(
266
+ *_param,
267
+ _request_timeout=_request_timeout
268
+ )
269
+ return response_data.response
270
+
271
+
272
+ def _api_v1_reporting_affinities_get_serialize(
273
+ self,
274
+ start_date,
275
+ end_date,
276
+ persona_name,
277
+ _request_auth,
278
+ _content_type,
279
+ _headers,
280
+ _host_index,
281
+ ) -> RequestSerialized:
282
+
283
+ _host = None
284
+
285
+ _collection_formats: Dict[str, str] = {
286
+ }
287
+
288
+ _path_params: Dict[str, str] = {}
289
+ _query_params: List[Tuple[str, str]] = []
290
+ _header_params: Dict[str, Optional[str]] = _headers or {}
291
+ _form_params: List[Tuple[str, str]] = []
292
+ _files: Dict[
293
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
294
+ ] = {}
295
+ _body_params: Optional[bytes] = None
296
+
297
+ # process the path parameters
298
+ # process the query parameters
299
+ if persona_name is not None:
300
+
301
+ _query_params.append(('persona_name', persona_name))
302
+
303
+ if start_date is not None:
304
+
305
+ _query_params.append(('start_date', start_date))
306
+
307
+ if end_date is not None:
308
+
309
+ _query_params.append(('end_date', end_date))
310
+
311
+ # process the header parameters
312
+ # process the form parameters
313
+ # process the body parameter
314
+
315
+
316
+ # set the HTTP header `Accept`
317
+ if 'Accept' not in _header_params:
318
+ _header_params['Accept'] = self.api_client.select_header_accept(
319
+ [
320
+ 'application/json'
321
+ ]
322
+ )
323
+
324
+
325
+ # authentication setting
326
+ _auth_settings: List[str] = [
327
+ 'TokenAuth',
328
+ 'ApiKeyAuth'
329
+ ]
330
+
331
+ return self.api_client.param_serialize(
332
+ method='GET',
333
+ resource_path='/api/v1/reporting/affinities/',
334
+ path_params=_path_params,
335
+ query_params=_query_params,
336
+ header_params=_header_params,
337
+ body=_body_params,
338
+ post_params=_form_params,
339
+ files=_files,
340
+ auth_settings=_auth_settings,
341
+ collection_formats=_collection_formats,
342
+ _host=_host,
343
+ _request_auth=_request_auth
344
+ )
345
+
346
+
347
+
348
+
349
+ @validate_call
350
+ def api_v1_reporting_client_uid_get(
351
+ self,
352
+ client_uid: Annotated[StrictStr, Field(description="client's uid, eg. arthaus")],
353
+ _request_timeout: Union[
354
+ None,
355
+ Annotated[StrictFloat, Field(gt=0)],
356
+ Tuple[
357
+ Annotated[StrictFloat, Field(gt=0)],
358
+ Annotated[StrictFloat, Field(gt=0)]
359
+ ]
360
+ ] = None,
361
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
362
+ _content_type: Optional[StrictStr] = None,
363
+ _headers: Optional[Dict[StrictStr, Any]] = None,
364
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
365
+ ) -> ReportingRichInsightsConfig:
366
+ """Get AI Summary by Client UID
367
+
368
+ Get AI Summary by Client UID
369
+
370
+ :param client_uid: client's uid, eg. arthaus (required)
371
+ :type client_uid: str
372
+ :param _request_timeout: timeout setting for this request. If one
373
+ number provided, it will be total request
374
+ timeout. It can also be a pair (tuple) of
375
+ (connection, read) timeouts.
376
+ :type _request_timeout: int, tuple(int, int), optional
377
+ :param _request_auth: set to override the auth_settings for an a single
378
+ request; this effectively ignores the
379
+ authentication in the spec for a single request.
380
+ :type _request_auth: dict, optional
381
+ :param _content_type: force content-type for the request.
382
+ :type _content_type: str, Optional
383
+ :param _headers: set to override the headers for a single
384
+ request; this effectively ignores the headers
385
+ in the spec for a single request.
386
+ :type _headers: dict, optional
387
+ :param _host_index: set to override the host_index for a single
388
+ request; this effectively ignores the host_index
389
+ in the spec for a single request.
390
+ :type _host_index: int, optional
391
+ :return: Returns the result object.
392
+ """ # noqa: E501
393
+
394
+ _param = self._api_v1_reporting_client_uid_get_serialize(
395
+ client_uid=client_uid,
396
+ _request_auth=_request_auth,
397
+ _content_type=_content_type,
398
+ _headers=_headers,
399
+ _host_index=_host_index
400
+ )
401
+
402
+ _response_types_map: Dict[str, Optional[str]] = {
403
+ '200': "ReportingRichInsightsConfig",
404
+ '503': "ReportingRichInsightsConfig",
405
+ }
406
+ response_data = self.api_client.call_api(
407
+ *_param,
408
+ _request_timeout=_request_timeout
409
+ )
410
+ response_data.read()
411
+ return self.api_client.response_deserialize(
412
+ response_data=response_data,
413
+ response_types_map=_response_types_map,
414
+ ).data
415
+
416
+
417
+ @validate_call
418
+ def api_v1_reporting_client_uid_get_with_http_info(
419
+ self,
420
+ client_uid: Annotated[StrictStr, Field(description="client's uid, eg. arthaus")],
421
+ _request_timeout: Union[
422
+ None,
423
+ Annotated[StrictFloat, Field(gt=0)],
424
+ Tuple[
425
+ Annotated[StrictFloat, Field(gt=0)],
426
+ Annotated[StrictFloat, Field(gt=0)]
427
+ ]
428
+ ] = None,
429
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
430
+ _content_type: Optional[StrictStr] = None,
431
+ _headers: Optional[Dict[StrictStr, Any]] = None,
432
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
433
+ ) -> ApiResponse[ReportingRichInsightsConfig]:
434
+ """Get AI Summary by Client UID
435
+
436
+ Get AI Summary by Client UID
437
+
438
+ :param client_uid: client's uid, eg. arthaus (required)
439
+ :type client_uid: str
440
+ :param _request_timeout: timeout setting for this request. If one
441
+ number provided, it will be total request
442
+ timeout. It can also be a pair (tuple) of
443
+ (connection, read) timeouts.
444
+ :type _request_timeout: int, tuple(int, int), optional
445
+ :param _request_auth: set to override the auth_settings for an a single
446
+ request; this effectively ignores the
447
+ authentication in the spec for a single request.
448
+ :type _request_auth: dict, optional
449
+ :param _content_type: force content-type for the request.
450
+ :type _content_type: str, Optional
451
+ :param _headers: set to override the headers for a single
452
+ request; this effectively ignores the headers
453
+ in the spec for a single request.
454
+ :type _headers: dict, optional
455
+ :param _host_index: set to override the host_index for a single
456
+ request; this effectively ignores the host_index
457
+ in the spec for a single request.
458
+ :type _host_index: int, optional
459
+ :return: Returns the result object.
460
+ """ # noqa: E501
461
+
462
+ _param = self._api_v1_reporting_client_uid_get_serialize(
463
+ client_uid=client_uid,
464
+ _request_auth=_request_auth,
465
+ _content_type=_content_type,
466
+ _headers=_headers,
467
+ _host_index=_host_index
468
+ )
469
+
470
+ _response_types_map: Dict[str, Optional[str]] = {
471
+ '200': "ReportingRichInsightsConfig",
472
+ '503': "ReportingRichInsightsConfig",
473
+ }
474
+ response_data = self.api_client.call_api(
475
+ *_param,
476
+ _request_timeout=_request_timeout
477
+ )
478
+ response_data.read()
479
+ return self.api_client.response_deserialize(
480
+ response_data=response_data,
481
+ response_types_map=_response_types_map,
482
+ )
483
+
484
+
485
+ @validate_call
486
+ def api_v1_reporting_client_uid_get_without_preload_content(
487
+ self,
488
+ client_uid: Annotated[StrictStr, Field(description="client's uid, eg. arthaus")],
489
+ _request_timeout: Union[
490
+ None,
491
+ Annotated[StrictFloat, Field(gt=0)],
492
+ Tuple[
493
+ Annotated[StrictFloat, Field(gt=0)],
494
+ Annotated[StrictFloat, Field(gt=0)]
495
+ ]
496
+ ] = None,
497
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
498
+ _content_type: Optional[StrictStr] = None,
499
+ _headers: Optional[Dict[StrictStr, Any]] = None,
500
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
501
+ ) -> RESTResponseType:
502
+ """Get AI Summary by Client UID
503
+
504
+ Get AI Summary by Client UID
505
+
506
+ :param client_uid: client's uid, eg. arthaus (required)
507
+ :type client_uid: str
508
+ :param _request_timeout: timeout setting for this request. If one
509
+ number provided, it will be total request
510
+ timeout. It can also be a pair (tuple) of
511
+ (connection, read) timeouts.
512
+ :type _request_timeout: int, tuple(int, int), optional
513
+ :param _request_auth: set to override the auth_settings for an a single
514
+ request; this effectively ignores the
515
+ authentication in the spec for a single request.
516
+ :type _request_auth: dict, optional
517
+ :param _content_type: force content-type for the request.
518
+ :type _content_type: str, Optional
519
+ :param _headers: set to override the headers for a single
520
+ request; this effectively ignores the headers
521
+ in the spec for a single request.
522
+ :type _headers: dict, optional
523
+ :param _host_index: set to override the host_index for a single
524
+ request; this effectively ignores the host_index
525
+ in the spec for a single request.
526
+ :type _host_index: int, optional
527
+ :return: Returns the result object.
528
+ """ # noqa: E501
529
+
530
+ _param = self._api_v1_reporting_client_uid_get_serialize(
531
+ client_uid=client_uid,
532
+ _request_auth=_request_auth,
533
+ _content_type=_content_type,
534
+ _headers=_headers,
535
+ _host_index=_host_index
536
+ )
537
+
538
+ _response_types_map: Dict[str, Optional[str]] = {
539
+ '200': "ReportingRichInsightsConfig",
540
+ '503': "ReportingRichInsightsConfig",
541
+ }
542
+ response_data = self.api_client.call_api(
543
+ *_param,
544
+ _request_timeout=_request_timeout
545
+ )
546
+ return response_data.response
547
+
548
+
549
+ def _api_v1_reporting_client_uid_get_serialize(
550
+ self,
551
+ client_uid,
552
+ _request_auth,
553
+ _content_type,
554
+ _headers,
555
+ _host_index,
556
+ ) -> RequestSerialized:
557
+
558
+ _host = None
559
+
560
+ _collection_formats: Dict[str, str] = {
561
+ }
562
+
563
+ _path_params: Dict[str, str] = {}
564
+ _query_params: List[Tuple[str, str]] = []
565
+ _header_params: Dict[str, Optional[str]] = _headers or {}
566
+ _form_params: List[Tuple[str, str]] = []
567
+ _files: Dict[
568
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
569
+ ] = {}
570
+ _body_params: Optional[bytes] = None
571
+
572
+ # process the path parameters
573
+ if client_uid is not None:
574
+ _path_params['client_uid'] = client_uid
575
+ # process the query parameters
576
+ # process the header parameters
577
+ # process the form parameters
578
+ # process the body parameter
579
+
580
+
581
+ # set the HTTP header `Accept`
582
+ if 'Accept' not in _header_params:
583
+ _header_params['Accept'] = self.api_client.select_header_accept(
584
+ [
585
+ 'application/json'
586
+ ]
587
+ )
588
+
589
+
590
+ # authentication setting
591
+ _auth_settings: List[str] = [
592
+ ]
593
+
594
+ return self.api_client.param_serialize(
595
+ method='GET',
596
+ resource_path='/api/v1/reporting/{client_uid}/',
597
+ path_params=_path_params,
598
+ query_params=_query_params,
599
+ header_params=_header_params,
600
+ body=_body_params,
601
+ post_params=_form_params,
602
+ files=_files,
603
+ auth_settings=_auth_settings,
604
+ collection_formats=_collection_formats,
605
+ _host=_host,
606
+ _request_auth=_request_auth
607
+ )
608
+
609
+
610
+
611
+
612
+ @validate_call
613
+ def api_v1_reporting_customer_activity_get(
614
+ self,
615
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
616
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
617
+ interval: Annotated[Optional[StrictStr], Field(description="Interval (day|week|month)")] = None,
618
+ _request_timeout: Union[
619
+ None,
620
+ Annotated[StrictFloat, Field(gt=0)],
621
+ Tuple[
622
+ Annotated[StrictFloat, Field(gt=0)],
623
+ Annotated[StrictFloat, Field(gt=0)]
624
+ ]
625
+ ] = None,
626
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
627
+ _content_type: Optional[StrictStr] = None,
628
+ _headers: Optional[Dict[StrictStr, Any]] = None,
629
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
630
+ ) -> ReportingCustomerActivityResponse:
631
+ """Get customer activity metrics
632
+
633
+ Get visitors, conversions, LTV, revenue lift by persona
634
+
635
+ :param start_date: Start date (YYYY-MM-DD) (required)
636
+ :type start_date: str
637
+ :param end_date: End date (YYYY-MM-DD) (required)
638
+ :type end_date: str
639
+ :param interval: Interval (day|week|month)
640
+ :type interval: str
641
+ :param _request_timeout: timeout setting for this request. If one
642
+ number provided, it will be total request
643
+ timeout. It can also be a pair (tuple) of
644
+ (connection, read) timeouts.
645
+ :type _request_timeout: int, tuple(int, int), optional
646
+ :param _request_auth: set to override the auth_settings for an a single
647
+ request; this effectively ignores the
648
+ authentication in the spec for a single request.
649
+ :type _request_auth: dict, optional
650
+ :param _content_type: force content-type for the request.
651
+ :type _content_type: str, Optional
652
+ :param _headers: set to override the headers for a single
653
+ request; this effectively ignores the headers
654
+ in the spec for a single request.
655
+ :type _headers: dict, optional
656
+ :param _host_index: set to override the host_index for a single
657
+ request; this effectively ignores the host_index
658
+ in the spec for a single request.
659
+ :type _host_index: int, optional
660
+ :return: Returns the result object.
661
+ """ # noqa: E501
662
+
663
+ _param = self._api_v1_reporting_customer_activity_get_serialize(
664
+ start_date=start_date,
665
+ end_date=end_date,
666
+ interval=interval,
667
+ _request_auth=_request_auth,
668
+ _content_type=_content_type,
669
+ _headers=_headers,
670
+ _host_index=_host_index
671
+ )
672
+
673
+ _response_types_map: Dict[str, Optional[str]] = {
674
+ '200': "ReportingCustomerActivityResponse",
675
+ '503': "ReportingCustomerActivityResponse",
676
+ }
677
+ response_data = self.api_client.call_api(
678
+ *_param,
679
+ _request_timeout=_request_timeout
680
+ )
681
+ response_data.read()
682
+ return self.api_client.response_deserialize(
683
+ response_data=response_data,
684
+ response_types_map=_response_types_map,
685
+ ).data
686
+
687
+
688
+ @validate_call
689
+ def api_v1_reporting_customer_activity_get_with_http_info(
690
+ self,
691
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
692
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
693
+ interval: Annotated[Optional[StrictStr], Field(description="Interval (day|week|month)")] = None,
694
+ _request_timeout: Union[
695
+ None,
696
+ Annotated[StrictFloat, Field(gt=0)],
697
+ Tuple[
698
+ Annotated[StrictFloat, Field(gt=0)],
699
+ Annotated[StrictFloat, Field(gt=0)]
700
+ ]
701
+ ] = None,
702
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
703
+ _content_type: Optional[StrictStr] = None,
704
+ _headers: Optional[Dict[StrictStr, Any]] = None,
705
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
706
+ ) -> ApiResponse[ReportingCustomerActivityResponse]:
707
+ """Get customer activity metrics
708
+
709
+ Get visitors, conversions, LTV, revenue lift by persona
710
+
711
+ :param start_date: Start date (YYYY-MM-DD) (required)
712
+ :type start_date: str
713
+ :param end_date: End date (YYYY-MM-DD) (required)
714
+ :type end_date: str
715
+ :param interval: Interval (day|week|month)
716
+ :type interval: str
717
+ :param _request_timeout: timeout setting for this request. If one
718
+ number provided, it will be total request
719
+ timeout. It can also be a pair (tuple) of
720
+ (connection, read) timeouts.
721
+ :type _request_timeout: int, tuple(int, int), optional
722
+ :param _request_auth: set to override the auth_settings for an a single
723
+ request; this effectively ignores the
724
+ authentication in the spec for a single request.
725
+ :type _request_auth: dict, optional
726
+ :param _content_type: force content-type for the request.
727
+ :type _content_type: str, Optional
728
+ :param _headers: set to override the headers for a single
729
+ request; this effectively ignores the headers
730
+ in the spec for a single request.
731
+ :type _headers: dict, optional
732
+ :param _host_index: set to override the host_index for a single
733
+ request; this effectively ignores the host_index
734
+ in the spec for a single request.
735
+ :type _host_index: int, optional
736
+ :return: Returns the result object.
737
+ """ # noqa: E501
738
+
739
+ _param = self._api_v1_reporting_customer_activity_get_serialize(
740
+ start_date=start_date,
741
+ end_date=end_date,
742
+ interval=interval,
743
+ _request_auth=_request_auth,
744
+ _content_type=_content_type,
745
+ _headers=_headers,
746
+ _host_index=_host_index
747
+ )
748
+
749
+ _response_types_map: Dict[str, Optional[str]] = {
750
+ '200': "ReportingCustomerActivityResponse",
751
+ '503': "ReportingCustomerActivityResponse",
752
+ }
753
+ response_data = self.api_client.call_api(
754
+ *_param,
755
+ _request_timeout=_request_timeout
756
+ )
757
+ response_data.read()
758
+ return self.api_client.response_deserialize(
759
+ response_data=response_data,
760
+ response_types_map=_response_types_map,
761
+ )
762
+
763
+
764
+ @validate_call
765
+ def api_v1_reporting_customer_activity_get_without_preload_content(
766
+ self,
767
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
768
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
769
+ interval: Annotated[Optional[StrictStr], Field(description="Interval (day|week|month)")] = None,
770
+ _request_timeout: Union[
771
+ None,
772
+ Annotated[StrictFloat, Field(gt=0)],
773
+ Tuple[
774
+ Annotated[StrictFloat, Field(gt=0)],
775
+ Annotated[StrictFloat, Field(gt=0)]
776
+ ]
777
+ ] = None,
778
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
779
+ _content_type: Optional[StrictStr] = None,
780
+ _headers: Optional[Dict[StrictStr, Any]] = None,
781
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
782
+ ) -> RESTResponseType:
783
+ """Get customer activity metrics
784
+
785
+ Get visitors, conversions, LTV, revenue lift by persona
786
+
787
+ :param start_date: Start date (YYYY-MM-DD) (required)
788
+ :type start_date: str
789
+ :param end_date: End date (YYYY-MM-DD) (required)
790
+ :type end_date: str
791
+ :param interval: Interval (day|week|month)
792
+ :type interval: str
793
+ :param _request_timeout: timeout setting for this request. If one
794
+ number provided, it will be total request
795
+ timeout. It can also be a pair (tuple) of
796
+ (connection, read) timeouts.
797
+ :type _request_timeout: int, tuple(int, int), optional
798
+ :param _request_auth: set to override the auth_settings for an a single
799
+ request; this effectively ignores the
800
+ authentication in the spec for a single request.
801
+ :type _request_auth: dict, optional
802
+ :param _content_type: force content-type for the request.
803
+ :type _content_type: str, Optional
804
+ :param _headers: set to override the headers for a single
805
+ request; this effectively ignores the headers
806
+ in the spec for a single request.
807
+ :type _headers: dict, optional
808
+ :param _host_index: set to override the host_index for a single
809
+ request; this effectively ignores the host_index
810
+ in the spec for a single request.
811
+ :type _host_index: int, optional
812
+ :return: Returns the result object.
813
+ """ # noqa: E501
814
+
815
+ _param = self._api_v1_reporting_customer_activity_get_serialize(
816
+ start_date=start_date,
817
+ end_date=end_date,
818
+ interval=interval,
819
+ _request_auth=_request_auth,
820
+ _content_type=_content_type,
821
+ _headers=_headers,
822
+ _host_index=_host_index
823
+ )
824
+
825
+ _response_types_map: Dict[str, Optional[str]] = {
826
+ '200': "ReportingCustomerActivityResponse",
827
+ '503': "ReportingCustomerActivityResponse",
828
+ }
829
+ response_data = self.api_client.call_api(
830
+ *_param,
831
+ _request_timeout=_request_timeout
832
+ )
833
+ return response_data.response
834
+
835
+
836
+ def _api_v1_reporting_customer_activity_get_serialize(
837
+ self,
838
+ start_date,
839
+ end_date,
840
+ interval,
841
+ _request_auth,
842
+ _content_type,
843
+ _headers,
844
+ _host_index,
845
+ ) -> RequestSerialized:
846
+
847
+ _host = None
848
+
849
+ _collection_formats: Dict[str, str] = {
850
+ }
851
+
852
+ _path_params: Dict[str, str] = {}
853
+ _query_params: List[Tuple[str, str]] = []
854
+ _header_params: Dict[str, Optional[str]] = _headers or {}
855
+ _form_params: List[Tuple[str, str]] = []
856
+ _files: Dict[
857
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
858
+ ] = {}
859
+ _body_params: Optional[bytes] = None
860
+
861
+ # process the path parameters
862
+ # process the query parameters
863
+ if start_date is not None:
864
+
865
+ _query_params.append(('start_date', start_date))
866
+
867
+ if end_date is not None:
868
+
869
+ _query_params.append(('end_date', end_date))
870
+
871
+ if interval is not None:
872
+
873
+ _query_params.append(('interval', interval))
874
+
875
+ # process the header parameters
876
+ # process the form parameters
877
+ # process the body parameter
878
+
879
+
880
+ # set the HTTP header `Accept`
881
+ if 'Accept' not in _header_params:
882
+ _header_params['Accept'] = self.api_client.select_header_accept(
883
+ [
884
+ 'application/json'
885
+ ]
886
+ )
887
+
888
+
889
+ # authentication setting
890
+ _auth_settings: List[str] = [
891
+ 'TokenAuth',
892
+ 'ApiKeyAuth'
893
+ ]
894
+
895
+ return self.api_client.param_serialize(
896
+ method='GET',
897
+ resource_path='/api/v1/reporting/customer-activity/',
898
+ path_params=_path_params,
899
+ query_params=_query_params,
900
+ header_params=_header_params,
901
+ body=_body_params,
902
+ post_params=_form_params,
903
+ files=_files,
904
+ auth_settings=_auth_settings,
905
+ collection_formats=_collection_formats,
906
+ _host=_host,
907
+ _request_auth=_request_auth
908
+ )
909
+
910
+
911
+
912
+
913
+ @validate_call
914
+ def api_v1_reporting_daily_rollup_post(
915
+ self,
916
+ request: Annotated[ReportingQuery, Field(description="Body")],
917
+ _request_timeout: Union[
918
+ None,
919
+ Annotated[StrictFloat, Field(gt=0)],
920
+ Tuple[
921
+ Annotated[StrictFloat, Field(gt=0)],
922
+ Annotated[StrictFloat, Field(gt=0)]
923
+ ]
924
+ ] = None,
925
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
926
+ _content_type: Optional[StrictStr] = None,
927
+ _headers: Optional[Dict[StrictStr, Any]] = None,
928
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
929
+ ) -> ReportingDailyMetricsResponse:
930
+ """Get Daily Metrics for Client by Persona
931
+
932
+
933
+ :param request: Body (required)
934
+ :type request: ReportingQuery
935
+ :param _request_timeout: timeout setting for this request. If one
936
+ number provided, it will be total request
937
+ timeout. It can also be a pair (tuple) of
938
+ (connection, read) timeouts.
939
+ :type _request_timeout: int, tuple(int, int), optional
940
+ :param _request_auth: set to override the auth_settings for an a single
941
+ request; this effectively ignores the
942
+ authentication in the spec for a single request.
943
+ :type _request_auth: dict, optional
944
+ :param _content_type: force content-type for the request.
945
+ :type _content_type: str, Optional
946
+ :param _headers: set to override the headers for a single
947
+ request; this effectively ignores the headers
948
+ in the spec for a single request.
949
+ :type _headers: dict, optional
950
+ :param _host_index: set to override the host_index for a single
951
+ request; this effectively ignores the host_index
952
+ in the spec for a single request.
953
+ :type _host_index: int, optional
954
+ :return: Returns the result object.
955
+ """ # noqa: E501
956
+
957
+ _param = self._api_v1_reporting_daily_rollup_post_serialize(
958
+ request=request,
959
+ _request_auth=_request_auth,
960
+ _content_type=_content_type,
961
+ _headers=_headers,
962
+ _host_index=_host_index
963
+ )
964
+
965
+ _response_types_map: Dict[str, Optional[str]] = {
966
+ '200': "ReportingDailyMetricsResponse",
967
+ '400': "ReportingDailyMetricsResponse",
968
+ }
969
+ response_data = self.api_client.call_api(
970
+ *_param,
971
+ _request_timeout=_request_timeout
972
+ )
973
+ response_data.read()
974
+ return self.api_client.response_deserialize(
975
+ response_data=response_data,
976
+ response_types_map=_response_types_map,
977
+ ).data
978
+
979
+
980
+ @validate_call
981
+ def api_v1_reporting_daily_rollup_post_with_http_info(
982
+ self,
983
+ request: Annotated[ReportingQuery, Field(description="Body")],
984
+ _request_timeout: Union[
985
+ None,
986
+ Annotated[StrictFloat, Field(gt=0)],
987
+ Tuple[
988
+ Annotated[StrictFloat, Field(gt=0)],
989
+ Annotated[StrictFloat, Field(gt=0)]
990
+ ]
991
+ ] = None,
992
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
993
+ _content_type: Optional[StrictStr] = None,
994
+ _headers: Optional[Dict[StrictStr, Any]] = None,
995
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
996
+ ) -> ApiResponse[ReportingDailyMetricsResponse]:
997
+ """Get Daily Metrics for Client by Persona
998
+
999
+
1000
+ :param request: Body (required)
1001
+ :type request: ReportingQuery
1002
+ :param _request_timeout: timeout setting for this request. If one
1003
+ number provided, it will be total request
1004
+ timeout. It can also be a pair (tuple) of
1005
+ (connection, read) timeouts.
1006
+ :type _request_timeout: int, tuple(int, int), optional
1007
+ :param _request_auth: set to override the auth_settings for an a single
1008
+ request; this effectively ignores the
1009
+ authentication in the spec for a single request.
1010
+ :type _request_auth: dict, optional
1011
+ :param _content_type: force content-type for the request.
1012
+ :type _content_type: str, Optional
1013
+ :param _headers: set to override the headers for a single
1014
+ request; this effectively ignores the headers
1015
+ in the spec for a single request.
1016
+ :type _headers: dict, optional
1017
+ :param _host_index: set to override the host_index for a single
1018
+ request; this effectively ignores the host_index
1019
+ in the spec for a single request.
1020
+ :type _host_index: int, optional
1021
+ :return: Returns the result object.
1022
+ """ # noqa: E501
1023
+
1024
+ _param = self._api_v1_reporting_daily_rollup_post_serialize(
1025
+ request=request,
1026
+ _request_auth=_request_auth,
1027
+ _content_type=_content_type,
1028
+ _headers=_headers,
1029
+ _host_index=_host_index
1030
+ )
1031
+
1032
+ _response_types_map: Dict[str, Optional[str]] = {
1033
+ '200': "ReportingDailyMetricsResponse",
1034
+ '400': "ReportingDailyMetricsResponse",
1035
+ }
1036
+ response_data = self.api_client.call_api(
1037
+ *_param,
1038
+ _request_timeout=_request_timeout
1039
+ )
1040
+ response_data.read()
1041
+ return self.api_client.response_deserialize(
1042
+ response_data=response_data,
1043
+ response_types_map=_response_types_map,
1044
+ )
1045
+
1046
+
1047
+ @validate_call
1048
+ def api_v1_reporting_daily_rollup_post_without_preload_content(
1049
+ self,
1050
+ request: Annotated[ReportingQuery, Field(description="Body")],
1051
+ _request_timeout: Union[
1052
+ None,
1053
+ Annotated[StrictFloat, Field(gt=0)],
1054
+ Tuple[
1055
+ Annotated[StrictFloat, Field(gt=0)],
1056
+ Annotated[StrictFloat, Field(gt=0)]
1057
+ ]
1058
+ ] = None,
1059
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1060
+ _content_type: Optional[StrictStr] = None,
1061
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1062
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1063
+ ) -> RESTResponseType:
1064
+ """Get Daily Metrics for Client by Persona
1065
+
1066
+
1067
+ :param request: Body (required)
1068
+ :type request: ReportingQuery
1069
+ :param _request_timeout: timeout setting for this request. If one
1070
+ number provided, it will be total request
1071
+ timeout. It can also be a pair (tuple) of
1072
+ (connection, read) timeouts.
1073
+ :type _request_timeout: int, tuple(int, int), optional
1074
+ :param _request_auth: set to override the auth_settings for an a single
1075
+ request; this effectively ignores the
1076
+ authentication in the spec for a single request.
1077
+ :type _request_auth: dict, optional
1078
+ :param _content_type: force content-type for the request.
1079
+ :type _content_type: str, Optional
1080
+ :param _headers: set to override the headers for a single
1081
+ request; this effectively ignores the headers
1082
+ in the spec for a single request.
1083
+ :type _headers: dict, optional
1084
+ :param _host_index: set to override the host_index for a single
1085
+ request; this effectively ignores the host_index
1086
+ in the spec for a single request.
1087
+ :type _host_index: int, optional
1088
+ :return: Returns the result object.
1089
+ """ # noqa: E501
1090
+
1091
+ _param = self._api_v1_reporting_daily_rollup_post_serialize(
1092
+ request=request,
1093
+ _request_auth=_request_auth,
1094
+ _content_type=_content_type,
1095
+ _headers=_headers,
1096
+ _host_index=_host_index
1097
+ )
1098
+
1099
+ _response_types_map: Dict[str, Optional[str]] = {
1100
+ '200': "ReportingDailyMetricsResponse",
1101
+ '400': "ReportingDailyMetricsResponse",
1102
+ }
1103
+ response_data = self.api_client.call_api(
1104
+ *_param,
1105
+ _request_timeout=_request_timeout
1106
+ )
1107
+ return response_data.response
1108
+
1109
+
1110
+ def _api_v1_reporting_daily_rollup_post_serialize(
1111
+ self,
1112
+ request,
1113
+ _request_auth,
1114
+ _content_type,
1115
+ _headers,
1116
+ _host_index,
1117
+ ) -> RequestSerialized:
1118
+
1119
+ _host = None
1120
+
1121
+ _collection_formats: Dict[str, str] = {
1122
+ }
1123
+
1124
+ _path_params: Dict[str, str] = {}
1125
+ _query_params: List[Tuple[str, str]] = []
1126
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1127
+ _form_params: List[Tuple[str, str]] = []
1128
+ _files: Dict[
1129
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1130
+ ] = {}
1131
+ _body_params: Optional[bytes] = None
1132
+
1133
+ # process the path parameters
1134
+ # process the query parameters
1135
+ # process the header parameters
1136
+ # process the form parameters
1137
+ # process the body parameter
1138
+ if request is not None:
1139
+ _body_params = request
1140
+
1141
+
1142
+ # set the HTTP header `Accept`
1143
+ if 'Accept' not in _header_params:
1144
+ _header_params['Accept'] = self.api_client.select_header_accept(
1145
+ [
1146
+ 'application/json'
1147
+ ]
1148
+ )
1149
+
1150
+
1151
+ # authentication setting
1152
+ _auth_settings: List[str] = [
1153
+ 'ApiKeyAuth'
1154
+ ]
1155
+
1156
+ return self.api_client.param_serialize(
1157
+ method='POST',
1158
+ resource_path='/api/v1/reporting/daily-rollup/',
1159
+ path_params=_path_params,
1160
+ query_params=_query_params,
1161
+ header_params=_header_params,
1162
+ body=_body_params,
1163
+ post_params=_form_params,
1164
+ files=_files,
1165
+ auth_settings=_auth_settings,
1166
+ collection_formats=_collection_formats,
1167
+ _host=_host,
1168
+ _request_auth=_request_auth
1169
+ )
1170
+
1171
+
1172
+
1173
+
1174
+ @validate_call
1175
+ def api_v1_reporting_persona_activity_get(
1176
+ self,
1177
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
1178
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
1179
+ _request_timeout: Union[
1180
+ None,
1181
+ Annotated[StrictFloat, Field(gt=0)],
1182
+ Tuple[
1183
+ Annotated[StrictFloat, Field(gt=0)],
1184
+ Annotated[StrictFloat, Field(gt=0)]
1185
+ ]
1186
+ ] = None,
1187
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1188
+ _content_type: Optional[StrictStr] = None,
1189
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1190
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1191
+ ) -> ReportingPersonaActivityResponse:
1192
+ """Get persona activity trend
1193
+
1194
+ Get daily persona activity
1195
+
1196
+ :param start_date: Start date (YYYY-MM-DD) (required)
1197
+ :type start_date: str
1198
+ :param end_date: End date (YYYY-MM-DD) (required)
1199
+ :type end_date: str
1200
+ :param _request_timeout: timeout setting for this request. If one
1201
+ number provided, it will be total request
1202
+ timeout. It can also be a pair (tuple) of
1203
+ (connection, read) timeouts.
1204
+ :type _request_timeout: int, tuple(int, int), optional
1205
+ :param _request_auth: set to override the auth_settings for an a single
1206
+ request; this effectively ignores the
1207
+ authentication in the spec for a single request.
1208
+ :type _request_auth: dict, optional
1209
+ :param _content_type: force content-type for the request.
1210
+ :type _content_type: str, Optional
1211
+ :param _headers: set to override the headers for a single
1212
+ request; this effectively ignores the headers
1213
+ in the spec for a single request.
1214
+ :type _headers: dict, optional
1215
+ :param _host_index: set to override the host_index for a single
1216
+ request; this effectively ignores the host_index
1217
+ in the spec for a single request.
1218
+ :type _host_index: int, optional
1219
+ :return: Returns the result object.
1220
+ """ # noqa: E501
1221
+
1222
+ _param = self._api_v1_reporting_persona_activity_get_serialize(
1223
+ start_date=start_date,
1224
+ end_date=end_date,
1225
+ _request_auth=_request_auth,
1226
+ _content_type=_content_type,
1227
+ _headers=_headers,
1228
+ _host_index=_host_index
1229
+ )
1230
+
1231
+ _response_types_map: Dict[str, Optional[str]] = {
1232
+ '200': "ReportingPersonaActivityResponse",
1233
+ '503': "ReportingPersonaActivityResponse",
1234
+ }
1235
+ response_data = self.api_client.call_api(
1236
+ *_param,
1237
+ _request_timeout=_request_timeout
1238
+ )
1239
+ response_data.read()
1240
+ return self.api_client.response_deserialize(
1241
+ response_data=response_data,
1242
+ response_types_map=_response_types_map,
1243
+ ).data
1244
+
1245
+
1246
+ @validate_call
1247
+ def api_v1_reporting_persona_activity_get_with_http_info(
1248
+ self,
1249
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
1250
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
1251
+ _request_timeout: Union[
1252
+ None,
1253
+ Annotated[StrictFloat, Field(gt=0)],
1254
+ Tuple[
1255
+ Annotated[StrictFloat, Field(gt=0)],
1256
+ Annotated[StrictFloat, Field(gt=0)]
1257
+ ]
1258
+ ] = None,
1259
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1260
+ _content_type: Optional[StrictStr] = None,
1261
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1262
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1263
+ ) -> ApiResponse[ReportingPersonaActivityResponse]:
1264
+ """Get persona activity trend
1265
+
1266
+ Get daily persona activity
1267
+
1268
+ :param start_date: Start date (YYYY-MM-DD) (required)
1269
+ :type start_date: str
1270
+ :param end_date: End date (YYYY-MM-DD) (required)
1271
+ :type end_date: str
1272
+ :param _request_timeout: timeout setting for this request. If one
1273
+ number provided, it will be total request
1274
+ timeout. It can also be a pair (tuple) of
1275
+ (connection, read) timeouts.
1276
+ :type _request_timeout: int, tuple(int, int), optional
1277
+ :param _request_auth: set to override the auth_settings for an a single
1278
+ request; this effectively ignores the
1279
+ authentication in the spec for a single request.
1280
+ :type _request_auth: dict, optional
1281
+ :param _content_type: force content-type for the request.
1282
+ :type _content_type: str, Optional
1283
+ :param _headers: set to override the headers for a single
1284
+ request; this effectively ignores the headers
1285
+ in the spec for a single request.
1286
+ :type _headers: dict, optional
1287
+ :param _host_index: set to override the host_index for a single
1288
+ request; this effectively ignores the host_index
1289
+ in the spec for a single request.
1290
+ :type _host_index: int, optional
1291
+ :return: Returns the result object.
1292
+ """ # noqa: E501
1293
+
1294
+ _param = self._api_v1_reporting_persona_activity_get_serialize(
1295
+ start_date=start_date,
1296
+ end_date=end_date,
1297
+ _request_auth=_request_auth,
1298
+ _content_type=_content_type,
1299
+ _headers=_headers,
1300
+ _host_index=_host_index
1301
+ )
1302
+
1303
+ _response_types_map: Dict[str, Optional[str]] = {
1304
+ '200': "ReportingPersonaActivityResponse",
1305
+ '503': "ReportingPersonaActivityResponse",
1306
+ }
1307
+ response_data = self.api_client.call_api(
1308
+ *_param,
1309
+ _request_timeout=_request_timeout
1310
+ )
1311
+ response_data.read()
1312
+ return self.api_client.response_deserialize(
1313
+ response_data=response_data,
1314
+ response_types_map=_response_types_map,
1315
+ )
1316
+
1317
+
1318
+ @validate_call
1319
+ def api_v1_reporting_persona_activity_get_without_preload_content(
1320
+ self,
1321
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
1322
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
1323
+ _request_timeout: Union[
1324
+ None,
1325
+ Annotated[StrictFloat, Field(gt=0)],
1326
+ Tuple[
1327
+ Annotated[StrictFloat, Field(gt=0)],
1328
+ Annotated[StrictFloat, Field(gt=0)]
1329
+ ]
1330
+ ] = None,
1331
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1332
+ _content_type: Optional[StrictStr] = None,
1333
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1334
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1335
+ ) -> RESTResponseType:
1336
+ """Get persona activity trend
1337
+
1338
+ Get daily persona activity
1339
+
1340
+ :param start_date: Start date (YYYY-MM-DD) (required)
1341
+ :type start_date: str
1342
+ :param end_date: End date (YYYY-MM-DD) (required)
1343
+ :type end_date: str
1344
+ :param _request_timeout: timeout setting for this request. If one
1345
+ number provided, it will be total request
1346
+ timeout. It can also be a pair (tuple) of
1347
+ (connection, read) timeouts.
1348
+ :type _request_timeout: int, tuple(int, int), optional
1349
+ :param _request_auth: set to override the auth_settings for an a single
1350
+ request; this effectively ignores the
1351
+ authentication in the spec for a single request.
1352
+ :type _request_auth: dict, optional
1353
+ :param _content_type: force content-type for the request.
1354
+ :type _content_type: str, Optional
1355
+ :param _headers: set to override the headers for a single
1356
+ request; this effectively ignores the headers
1357
+ in the spec for a single request.
1358
+ :type _headers: dict, optional
1359
+ :param _host_index: set to override the host_index for a single
1360
+ request; this effectively ignores the host_index
1361
+ in the spec for a single request.
1362
+ :type _host_index: int, optional
1363
+ :return: Returns the result object.
1364
+ """ # noqa: E501
1365
+
1366
+ _param = self._api_v1_reporting_persona_activity_get_serialize(
1367
+ start_date=start_date,
1368
+ end_date=end_date,
1369
+ _request_auth=_request_auth,
1370
+ _content_type=_content_type,
1371
+ _headers=_headers,
1372
+ _host_index=_host_index
1373
+ )
1374
+
1375
+ _response_types_map: Dict[str, Optional[str]] = {
1376
+ '200': "ReportingPersonaActivityResponse",
1377
+ '503': "ReportingPersonaActivityResponse",
1378
+ }
1379
+ response_data = self.api_client.call_api(
1380
+ *_param,
1381
+ _request_timeout=_request_timeout
1382
+ )
1383
+ return response_data.response
1384
+
1385
+
1386
+ def _api_v1_reporting_persona_activity_get_serialize(
1387
+ self,
1388
+ start_date,
1389
+ end_date,
1390
+ _request_auth,
1391
+ _content_type,
1392
+ _headers,
1393
+ _host_index,
1394
+ ) -> RequestSerialized:
1395
+
1396
+ _host = None
1397
+
1398
+ _collection_formats: Dict[str, str] = {
1399
+ }
1400
+
1401
+ _path_params: Dict[str, str] = {}
1402
+ _query_params: List[Tuple[str, str]] = []
1403
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1404
+ _form_params: List[Tuple[str, str]] = []
1405
+ _files: Dict[
1406
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1407
+ ] = {}
1408
+ _body_params: Optional[bytes] = None
1409
+
1410
+ # process the path parameters
1411
+ # process the query parameters
1412
+ if start_date is not None:
1413
+
1414
+ _query_params.append(('start_date', start_date))
1415
+
1416
+ if end_date is not None:
1417
+
1418
+ _query_params.append(('end_date', end_date))
1419
+
1420
+ # process the header parameters
1421
+ # process the form parameters
1422
+ # process the body parameter
1423
+
1424
+
1425
+ # set the HTTP header `Accept`
1426
+ if 'Accept' not in _header_params:
1427
+ _header_params['Accept'] = self.api_client.select_header_accept(
1428
+ [
1429
+ 'application/json'
1430
+ ]
1431
+ )
1432
+
1433
+
1434
+ # authentication setting
1435
+ _auth_settings: List[str] = [
1436
+ 'TokenAuth',
1437
+ 'ApiKeyAuth'
1438
+ ]
1439
+
1440
+ return self.api_client.param_serialize(
1441
+ method='GET',
1442
+ resource_path='/api/v1/reporting/persona-activity/',
1443
+ path_params=_path_params,
1444
+ query_params=_query_params,
1445
+ header_params=_header_params,
1446
+ body=_body_params,
1447
+ post_params=_form_params,
1448
+ files=_files,
1449
+ auth_settings=_auth_settings,
1450
+ collection_formats=_collection_formats,
1451
+ _host=_host,
1452
+ _request_auth=_request_auth
1453
+ )
1454
+
1455
+
1456
+
1457
+
1458
+ @validate_call
1459
+ def api_v1_reporting_personas_legacy_get(
1460
+ self,
1461
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
1462
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
1463
+ _request_timeout: Union[
1464
+ None,
1465
+ Annotated[StrictFloat, Field(gt=0)],
1466
+ Tuple[
1467
+ Annotated[StrictFloat, Field(gt=0)],
1468
+ Annotated[StrictFloat, Field(gt=0)]
1469
+ ]
1470
+ ] = None,
1471
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1472
+ _content_type: Optional[StrictStr] = None,
1473
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1474
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1475
+ ) -> ReportingPersonasResponse:
1476
+ """Get persona rollup
1477
+
1478
+ Get monthly persona stats
1479
+
1480
+ :param start_date: Start date (YYYY-MM-DD) (required)
1481
+ :type start_date: str
1482
+ :param end_date: End date (YYYY-MM-DD) (required)
1483
+ :type end_date: str
1484
+ :param _request_timeout: timeout setting for this request. If one
1485
+ number provided, it will be total request
1486
+ timeout. It can also be a pair (tuple) of
1487
+ (connection, read) timeouts.
1488
+ :type _request_timeout: int, tuple(int, int), optional
1489
+ :param _request_auth: set to override the auth_settings for an a single
1490
+ request; this effectively ignores the
1491
+ authentication in the spec for a single request.
1492
+ :type _request_auth: dict, optional
1493
+ :param _content_type: force content-type for the request.
1494
+ :type _content_type: str, Optional
1495
+ :param _headers: set to override the headers for a single
1496
+ request; this effectively ignores the headers
1497
+ in the spec for a single request.
1498
+ :type _headers: dict, optional
1499
+ :param _host_index: set to override the host_index for a single
1500
+ request; this effectively ignores the host_index
1501
+ in the spec for a single request.
1502
+ :type _host_index: int, optional
1503
+ :return: Returns the result object.
1504
+ """ # noqa: E501
1505
+
1506
+ _param = self._api_v1_reporting_personas_legacy_get_serialize(
1507
+ start_date=start_date,
1508
+ end_date=end_date,
1509
+ _request_auth=_request_auth,
1510
+ _content_type=_content_type,
1511
+ _headers=_headers,
1512
+ _host_index=_host_index
1513
+ )
1514
+
1515
+ _response_types_map: Dict[str, Optional[str]] = {
1516
+ '200': "ReportingPersonasResponse",
1517
+ '503': "ReportingPersonasResponse",
1518
+ }
1519
+ response_data = self.api_client.call_api(
1520
+ *_param,
1521
+ _request_timeout=_request_timeout
1522
+ )
1523
+ response_data.read()
1524
+ return self.api_client.response_deserialize(
1525
+ response_data=response_data,
1526
+ response_types_map=_response_types_map,
1527
+ ).data
1528
+
1529
+
1530
+ @validate_call
1531
+ def api_v1_reporting_personas_legacy_get_with_http_info(
1532
+ self,
1533
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
1534
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
1535
+ _request_timeout: Union[
1536
+ None,
1537
+ Annotated[StrictFloat, Field(gt=0)],
1538
+ Tuple[
1539
+ Annotated[StrictFloat, Field(gt=0)],
1540
+ Annotated[StrictFloat, Field(gt=0)]
1541
+ ]
1542
+ ] = None,
1543
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1544
+ _content_type: Optional[StrictStr] = None,
1545
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1546
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1547
+ ) -> ApiResponse[ReportingPersonasResponse]:
1548
+ """Get persona rollup
1549
+
1550
+ Get monthly persona stats
1551
+
1552
+ :param start_date: Start date (YYYY-MM-DD) (required)
1553
+ :type start_date: str
1554
+ :param end_date: End date (YYYY-MM-DD) (required)
1555
+ :type end_date: str
1556
+ :param _request_timeout: timeout setting for this request. If one
1557
+ number provided, it will be total request
1558
+ timeout. It can also be a pair (tuple) of
1559
+ (connection, read) timeouts.
1560
+ :type _request_timeout: int, tuple(int, int), optional
1561
+ :param _request_auth: set to override the auth_settings for an a single
1562
+ request; this effectively ignores the
1563
+ authentication in the spec for a single request.
1564
+ :type _request_auth: dict, optional
1565
+ :param _content_type: force content-type for the request.
1566
+ :type _content_type: str, Optional
1567
+ :param _headers: set to override the headers for a single
1568
+ request; this effectively ignores the headers
1569
+ in the spec for a single request.
1570
+ :type _headers: dict, optional
1571
+ :param _host_index: set to override the host_index for a single
1572
+ request; this effectively ignores the host_index
1573
+ in the spec for a single request.
1574
+ :type _host_index: int, optional
1575
+ :return: Returns the result object.
1576
+ """ # noqa: E501
1577
+
1578
+ _param = self._api_v1_reporting_personas_legacy_get_serialize(
1579
+ start_date=start_date,
1580
+ end_date=end_date,
1581
+ _request_auth=_request_auth,
1582
+ _content_type=_content_type,
1583
+ _headers=_headers,
1584
+ _host_index=_host_index
1585
+ )
1586
+
1587
+ _response_types_map: Dict[str, Optional[str]] = {
1588
+ '200': "ReportingPersonasResponse",
1589
+ '503': "ReportingPersonasResponse",
1590
+ }
1591
+ response_data = self.api_client.call_api(
1592
+ *_param,
1593
+ _request_timeout=_request_timeout
1594
+ )
1595
+ response_data.read()
1596
+ return self.api_client.response_deserialize(
1597
+ response_data=response_data,
1598
+ response_types_map=_response_types_map,
1599
+ )
1600
+
1601
+
1602
+ @validate_call
1603
+ def api_v1_reporting_personas_legacy_get_without_preload_content(
1604
+ self,
1605
+ start_date: Annotated[StrictStr, Field(description="Start date (YYYY-MM-DD)")],
1606
+ end_date: Annotated[StrictStr, Field(description="End date (YYYY-MM-DD)")],
1607
+ _request_timeout: Union[
1608
+ None,
1609
+ Annotated[StrictFloat, Field(gt=0)],
1610
+ Tuple[
1611
+ Annotated[StrictFloat, Field(gt=0)],
1612
+ Annotated[StrictFloat, Field(gt=0)]
1613
+ ]
1614
+ ] = None,
1615
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1616
+ _content_type: Optional[StrictStr] = None,
1617
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1618
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1619
+ ) -> RESTResponseType:
1620
+ """Get persona rollup
1621
+
1622
+ Get monthly persona stats
1623
+
1624
+ :param start_date: Start date (YYYY-MM-DD) (required)
1625
+ :type start_date: str
1626
+ :param end_date: End date (YYYY-MM-DD) (required)
1627
+ :type end_date: str
1628
+ :param _request_timeout: timeout setting for this request. If one
1629
+ number provided, it will be total request
1630
+ timeout. It can also be a pair (tuple) of
1631
+ (connection, read) timeouts.
1632
+ :type _request_timeout: int, tuple(int, int), optional
1633
+ :param _request_auth: set to override the auth_settings for an a single
1634
+ request; this effectively ignores the
1635
+ authentication in the spec for a single request.
1636
+ :type _request_auth: dict, optional
1637
+ :param _content_type: force content-type for the request.
1638
+ :type _content_type: str, Optional
1639
+ :param _headers: set to override the headers for a single
1640
+ request; this effectively ignores the headers
1641
+ in the spec for a single request.
1642
+ :type _headers: dict, optional
1643
+ :param _host_index: set to override the host_index for a single
1644
+ request; this effectively ignores the host_index
1645
+ in the spec for a single request.
1646
+ :type _host_index: int, optional
1647
+ :return: Returns the result object.
1648
+ """ # noqa: E501
1649
+
1650
+ _param = self._api_v1_reporting_personas_legacy_get_serialize(
1651
+ start_date=start_date,
1652
+ end_date=end_date,
1653
+ _request_auth=_request_auth,
1654
+ _content_type=_content_type,
1655
+ _headers=_headers,
1656
+ _host_index=_host_index
1657
+ )
1658
+
1659
+ _response_types_map: Dict[str, Optional[str]] = {
1660
+ '200': "ReportingPersonasResponse",
1661
+ '503': "ReportingPersonasResponse",
1662
+ }
1663
+ response_data = self.api_client.call_api(
1664
+ *_param,
1665
+ _request_timeout=_request_timeout
1666
+ )
1667
+ return response_data.response
1668
+
1669
+
1670
+ def _api_v1_reporting_personas_legacy_get_serialize(
1671
+ self,
1672
+ start_date,
1673
+ end_date,
1674
+ _request_auth,
1675
+ _content_type,
1676
+ _headers,
1677
+ _host_index,
1678
+ ) -> RequestSerialized:
1679
+
1680
+ _host = None
1681
+
1682
+ _collection_formats: Dict[str, str] = {
1683
+ }
1684
+
1685
+ _path_params: Dict[str, str] = {}
1686
+ _query_params: List[Tuple[str, str]] = []
1687
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1688
+ _form_params: List[Tuple[str, str]] = []
1689
+ _files: Dict[
1690
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1691
+ ] = {}
1692
+ _body_params: Optional[bytes] = None
1693
+
1694
+ # process the path parameters
1695
+ # process the query parameters
1696
+ if start_date is not None:
1697
+
1698
+ _query_params.append(('start_date', start_date))
1699
+
1700
+ if end_date is not None:
1701
+
1702
+ _query_params.append(('end_date', end_date))
1703
+
1704
+ # process the header parameters
1705
+ # process the form parameters
1706
+ # process the body parameter
1707
+
1708
+
1709
+ # set the HTTP header `Accept`
1710
+ if 'Accept' not in _header_params:
1711
+ _header_params['Accept'] = self.api_client.select_header_accept(
1712
+ [
1713
+ 'application/json'
1714
+ ]
1715
+ )
1716
+
1717
+
1718
+ # authentication setting
1719
+ _auth_settings: List[str] = [
1720
+ 'TokenAuth',
1721
+ 'ApiKeyAuth'
1722
+ ]
1723
+
1724
+ return self.api_client.param_serialize(
1725
+ method='GET',
1726
+ resource_path='/api/v1/reporting/personas-legacy/',
1727
+ path_params=_path_params,
1728
+ query_params=_query_params,
1729
+ header_params=_header_params,
1730
+ body=_body_params,
1731
+ post_params=_form_params,
1732
+ files=_files,
1733
+ auth_settings=_auth_settings,
1734
+ collection_formats=_collection_formats,
1735
+ _host=_host,
1736
+ _request_auth=_request_auth
1737
+ )
1738
+
1739
+