step_rest_client 1.0.0__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 (117) hide show
  1. step_rest_client/__init__.py +136 -0
  2. step_rest_client/api/__init__.py +26 -0
  3. step_rest_client/api/assets_api.py +7960 -0
  4. step_rest_client/api/attributes_api.py +340 -0
  5. step_rest_client/api/background_process_types_api.py +640 -0
  6. step_rest_client/api/background_processes_api.py +1577 -0
  7. step_rest_client/api/classifications_api.py +7991 -0
  8. step_rest_client/api/data_container_types_api.py +340 -0
  9. step_rest_client/api/data_type_groups_api.py +340 -0
  10. step_rest_client/api/entities_api.py +8680 -0
  11. step_rest_client/api/event_processors_api.py +3337 -0
  12. step_rest_client/api/export_api.py +383 -0
  13. step_rest_client/api/gateway_integration_endpoints_api.py +1232 -0
  14. step_rest_client/api/import_api.py +390 -0
  15. step_rest_client/api/inbound_integration_endpoints_api.py +2815 -0
  16. step_rest_client/api/lists_of_values_api.py +642 -0
  17. step_rest_client/api/object_types_api.py +340 -0
  18. step_rest_client/api/outbound_integration_endpoints_api.py +3655 -0
  19. step_rest_client/api/products_api.py +8007 -0
  20. step_rest_client/api/reference_types_api.py +340 -0
  21. step_rest_client/api/reporting_api.py +707 -0
  22. step_rest_client/api/units_api.py +340 -0
  23. step_rest_client/api/workflow_tasks_api.py +1887 -0
  24. step_rest_client/api/workflows_api.py +1270 -0
  25. step_rest_client/api_client.py +797 -0
  26. step_rest_client/api_response.py +21 -0
  27. step_rest_client/configuration.py +597 -0
  28. step_rest_client/exceptions.py +216 -0
  29. step_rest_client/models/__init__.py +98 -0
  30. step_rest_client/models/amount.py +89 -0
  31. step_rest_client/models/and_condition.py +107 -0
  32. step_rest_client/models/approval_response.py +87 -0
  33. step_rest_client/models/approval_status.py +99 -0
  34. step_rest_client/models/asset.py +129 -0
  35. step_rest_client/models/attribute.py +120 -0
  36. step_rest_client/models/attribute_link.py +102 -0
  37. step_rest_client/models/background_process.py +139 -0
  38. step_rest_client/models/background_process_attachment_metadata.py +105 -0
  39. step_rest_client/models/background_process_identification.py +89 -0
  40. step_rest_client/models/background_process_type.py +89 -0
  41. step_rest_client/models/classification.py +135 -0
  42. step_rest_client/models/condition.py +265 -0
  43. step_rest_client/models/data_container.py +139 -0
  44. step_rest_client/models/data_container_entry.py +117 -0
  45. step_rest_client/models/data_container_object_condition.py +181 -0
  46. step_rest_client/models/data_container_type.py +106 -0
  47. step_rest_client/models/data_type_group.py +108 -0
  48. step_rest_client/models/endpoint_statistics.py +109 -0
  49. step_rest_client/models/endpoint_status.py +99 -0
  50. step_rest_client/models/entity.py +142 -0
  51. step_rest_client/models/error.py +91 -0
  52. step_rest_client/models/event_processor.py +93 -0
  53. step_rest_client/models/event_processor_statistics.py +97 -0
  54. step_rest_client/models/event_processor_status.py +99 -0
  55. step_rest_client/models/event_queue_status.py +89 -0
  56. step_rest_client/models/execution_report_entry.py +103 -0
  57. step_rest_client/models/export_specification.py +89 -0
  58. step_rest_client/models/find_similar_business_rule_result.py +91 -0
  59. step_rest_client/models/find_similar_entities_request.py +95 -0
  60. step_rest_client/models/find_similar_entities_response.py +103 -0
  61. step_rest_client/models/find_similar_entities_response_record.py +95 -0
  62. step_rest_client/models/find_similar_execution_report.py +103 -0
  63. step_rest_client/models/gateway_integration_endpoint.py +93 -0
  64. step_rest_client/models/has_data_container_object_condition.py +106 -0
  65. step_rest_client/models/has_reference_to_condition.py +108 -0
  66. step_rest_client/models/id_condition.py +105 -0
  67. step_rest_client/models/inbound_integration_endpoint.py +93 -0
  68. step_rest_client/models/incoming_reference_entry.py +118 -0
  69. step_rest_client/models/list_of_values.py +110 -0
  70. step_rest_client/models/list_of_values_entry.py +91 -0
  71. step_rest_client/models/lov_value_condition.py +100 -0
  72. step_rest_client/models/match_and_merge_execution_report.py +119 -0
  73. step_rest_client/models/match_and_merge_general_execution_report.py +91 -0
  74. step_rest_client/models/match_and_merge_potential_duplicate.py +93 -0
  75. step_rest_client/models/match_and_merge_record_in.py +95 -0
  76. step_rest_client/models/match_and_merge_record_out.py +117 -0
  77. step_rest_client/models/match_and_merge_response.py +103 -0
  78. step_rest_client/models/multi_data_container.py +101 -0
  79. step_rest_client/models/multi_reference.py +97 -0
  80. step_rest_client/models/multi_value.py +103 -0
  81. step_rest_client/models/name_condition.py +107 -0
  82. step_rest_client/models/numeric_value_condition.py +111 -0
  83. step_rest_client/models/object_type.py +104 -0
  84. step_rest_client/models/object_type_condition.py +96 -0
  85. step_rest_client/models/or_condition.py +107 -0
  86. step_rest_client/models/outbound_integration_endpoint.py +93 -0
  87. step_rest_client/models/product.py +150 -0
  88. step_rest_client/models/query.py +91 -0
  89. step_rest_client/models/query_result.py +99 -0
  90. step_rest_client/models/reference.py +139 -0
  91. step_rest_client/models/reference_entry.py +141 -0
  92. step_rest_client/models/reference_metadata_condition.py +181 -0
  93. step_rest_client/models/reference_type.py +114 -0
  94. step_rest_client/models/rejected_by_business_condition.py +93 -0
  95. step_rest_client/models/simple_below_condition.py +105 -0
  96. step_rest_client/models/single_data_container.py +97 -0
  97. step_rest_client/models/single_reference.py +93 -0
  98. step_rest_client/models/single_value.py +103 -0
  99. step_rest_client/models/status_flag.py +89 -0
  100. step_rest_client/models/text_value_condition.py +111 -0
  101. step_rest_client/models/trigger_workflow_event.py +93 -0
  102. step_rest_client/models/unit.py +104 -0
  103. step_rest_client/models/value.py +137 -0
  104. step_rest_client/models/value_entry.py +91 -0
  105. step_rest_client/models/workflow.py +91 -0
  106. step_rest_client/models/workflow_event.py +89 -0
  107. step_rest_client/models/workflow_instance.py +87 -0
  108. step_rest_client/models/workflow_instance_creation.py +93 -0
  109. step_rest_client/models/workflow_node.py +99 -0
  110. step_rest_client/models/workflow_task.py +113 -0
  111. step_rest_client/models/workflow_task_query.py +101 -0
  112. step_rest_client/py.typed +0 -0
  113. step_rest_client/rest.py +258 -0
  114. step_rest_client-1.0.0.dist-info/METADATA +23 -0
  115. step_rest_client-1.0.0.dist-info/RECORD +117 -0
  116. step_rest_client-1.0.0.dist-info/WHEEL +5 -0
  117. step_rest_client-1.0.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,707 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ STEP REST API V2
5
+
6
+ <h1>About</h1><p>The STEP REST API V2 provides read and write access to a set of core STEP objects using the HTTP operations GET, PUT, POST, PATCH and DELETE.</p><h1>Resource Representation</h1><p>With the exception of a few resource operations for retrieving and uploading binary data, all request and response bodies are JSON, compliant with the schema documented here.</p><h1>Context and Workspace</h1><p>All requests are handled in a specific STEP context and workspace and both can be specified via query parameters available for all resource operations. A context must always be specified while requests per default will be handled in the &quot;Main&quot; workspace.</p><h1>Polymorphism</h1><p>In STEP, attributes, reference types and data container types can all be either single- or multivalued. The STEP REST API V2 uses polymorphism to address this complexity with resources that include values, references and data containers specified to produce and consume a common &quot;abstract&quot; supertype that always will be one of either the single- or multivalued subtype.<br/>As an example, the GET /entities/{id}/values/{attributeId} resource operation is specified to return a &quot;Value&quot; but as evident from the model, the &quot;Value&quot; will always be &quot;oneOf&quot; either &quot;SingleValue&quot;, that has a &quot;value&quot; property for which the value is an object, or &quot;MultiValue&quot;, that has a &quot;values&quot; property for which the value is an array.<br/>Clients are advised to use the presence or absence of the plural array property (&quot;values&quot;, &quot;references&quot; and &quot;dataContainers&quot;) to determine the concrete type.</p><h1>Authentication</h1><p>The REST API is protected by HTTP Basic Authentication or if OAuth2-based authentication is enabled (SaaS customers only), by Bearer Authentication. With Basic Authentication, user name and password are supplied with each request and it is therefore highly recommended to only use the API in conjunction with HTTPS. For more information about OAuth2-based authentication for SaaS customers, please see the STEP Authentication Guide.</p><h1>Versioning</h1><p>The STEP REST API V2 is versioned using semantic versioning. Stibo Systems reserve the right to make non-breaking, minor / patch changes in any release without warning and clients must be coded / configured to be 'tolerant' and capable of handling such changes.</p><p>Examples of breaking, major changes:</p><ul><li>Renaming of a property</li><li>Removal of a property</li><li>Property type change</li><li>Addition of new property required for write operations</li><li>Marking existing property as required for write operations</li><li>Removal of resource or resource operation</li><li>Materially different behavior for existing resource operation</li></ul><p>Examples of non-breaking, minor / patch changes:</p><ul><li>Addition of new properties in request responses</li><li>Addition of new query parameter not required for write operations</li><li>Addition of new resource or resource operation</li><li>Bug fixes that do not change the schema or resource operations as described here</li><li>Inclusion of a response body for resource operations specified to return a 200 response with no body</li><li>Change of response &quot;Model&quot; / &quot;schema&quot; to type extending the previously specified type</li><li>Renaming a &quot;Model&quot; / &quot;schema&quot; type</li></ul><p>In addition, error message texts may change without warning within the same version. Client program logic should not depend upon the message content.</p><h1>Error Handling</h1><p>The STEP REST API V2 responds with standard HTTP status codes, with 2** responses indicating a success, 4** responses indicating a client error and 5** indicating a server error. Notice that this specification does not specify common error responses like 500 (internal server error) or 401 (unauthorized) for the individual resource operations. Clients should however be capable of handling such responses.</p><p>Error responses have a JSON response body (see Error schema below) containing HTTP status code information in addition to a message providing details about the error. As mentioned above, client program logic should not depend upon the message content.</p><p>The specific status codes used in the API are:</p><ul><li>200 (OK): Success, response may or may not have a body</li><li>201 (Created): Entity successfully created, response may or may not have a body</li><li>400 (Bad request): The server cannot or will not process the request due to an apparent client error</li><li>401 (Unauthorized): Returned only in relation to failed authentication</li><li>404 (Not Found): Returned only in relation to objects specified via path parameters (variable parts of the URL). If STEP objects referenced in request bodies or via query parameters cannot be found, the response will be 400.</li><li>429 (Too Many Requests): Clients are per default limited to 100 requests per second. Returned if the rate limit is exceeded.</li><li>500 (Internal Server Error): Unexpected error (could potentially cover an issue that rightfully should be a 400)</li></ul>
7
+
8
+ The version of the OpenAPI document: 1.3.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 List, Optional
21
+ from typing_extensions import Annotated
22
+ from step_rest_client.models.background_process_identification import BackgroundProcessIdentification
23
+
24
+ from step_rest_client.api_client import ApiClient, RequestSerialized
25
+ from step_rest_client.api_response import ApiResponse
26
+ from step_rest_client.rest import RESTResponseType
27
+
28
+
29
+ class ReportingApi:
30
+ """NOTE: This class is auto generated by OpenAPI Generator
31
+ Ref: https://openapi-generator.tech
32
+
33
+ Do not edit the class manually.
34
+ """
35
+
36
+ def __init__(self, api_client=None) -> None:
37
+ if api_client is None:
38
+ api_client = ApiClient.get_default()
39
+ self.api_client = api_client
40
+
41
+
42
+ @validate_call
43
+ def reports_historic_changes_report_id_clean_up_post(
44
+ self,
45
+ report_id: Annotated[StrictStr, Field(description="ID of the report for which to delete the confguration")],
46
+ context: Annotated[StrictStr, Field(description="ID of the context in which to perform the operation")],
47
+ workspace: Annotated[Optional[StrictStr], Field(description="ID of the workspace in which to perform the operation. Defaults to \"Main\".")] = None,
48
+ _request_timeout: Union[
49
+ None,
50
+ Annotated[StrictFloat, Field(gt=0)],
51
+ Tuple[
52
+ Annotated[StrictFloat, Field(gt=0)],
53
+ Annotated[StrictFloat, Field(gt=0)]
54
+ ]
55
+ ] = None,
56
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
57
+ _content_type: Optional[StrictStr] = None,
58
+ _headers: Optional[Dict[StrictStr, Any]] = None,
59
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
60
+ ) -> None:
61
+ """Deletes configuration objects specific to a report.
62
+
63
+ When a report is started, multiple configuration objects are created (event processors and setup groups). This operation can be called for completed reports and will delete said configuration objects. Once this endpoint has been called, it is no longer possible to retrieve the generated report.
64
+
65
+ :param report_id: ID of the report for which to delete the confguration (required)
66
+ :type report_id: str
67
+ :param context: ID of the context in which to perform the operation (required)
68
+ :type context: str
69
+ :param workspace: ID of the workspace in which to perform the operation. Defaults to \"Main\".
70
+ :type workspace: str
71
+ :param _request_timeout: timeout setting for this request. If one
72
+ number provided, it will be total request
73
+ timeout. It can also be a pair (tuple) of
74
+ (connection, read) timeouts.
75
+ :type _request_timeout: int, tuple(int, int), optional
76
+ :param _request_auth: set to override the auth_settings for an a single
77
+ request; this effectively ignores the
78
+ authentication in the spec for a single request.
79
+ :type _request_auth: dict, optional
80
+ :param _content_type: force content-type for the request.
81
+ :type _content_type: str, Optional
82
+ :param _headers: set to override the headers for a single
83
+ request; this effectively ignores the headers
84
+ in the spec for a single request.
85
+ :type _headers: dict, optional
86
+ :param _host_index: set to override the host_index for a single
87
+ request; this effectively ignores the host_index
88
+ in the spec for a single request.
89
+ :type _host_index: int, optional
90
+ :return: Returns the result object.
91
+ """ # noqa: E501
92
+
93
+ _param = self._reports_historic_changes_report_id_clean_up_post_serialize(
94
+ report_id=report_id,
95
+ context=context,
96
+ workspace=workspace,
97
+ _request_auth=_request_auth,
98
+ _content_type=_content_type,
99
+ _headers=_headers,
100
+ _host_index=_host_index
101
+ )
102
+
103
+ _response_types_map: Dict[str, Optional[str]] = {
104
+ '200': None,
105
+ '400': "Error",
106
+ '404': "Error",
107
+ }
108
+ response_data = self.api_client.call_api(
109
+ *_param,
110
+ _request_timeout=_request_timeout
111
+ )
112
+ response_data.read()
113
+ return self.api_client.response_deserialize(
114
+ response_data=response_data,
115
+ response_types_map=_response_types_map,
116
+ ).data
117
+
118
+
119
+ @validate_call
120
+ def reports_historic_changes_report_id_clean_up_post_with_http_info(
121
+ self,
122
+ report_id: Annotated[StrictStr, Field(description="ID of the report for which to delete the confguration")],
123
+ context: Annotated[StrictStr, Field(description="ID of the context in which to perform the operation")],
124
+ workspace: Annotated[Optional[StrictStr], Field(description="ID of the workspace in which to perform the operation. Defaults to \"Main\".")] = None,
125
+ _request_timeout: Union[
126
+ None,
127
+ Annotated[StrictFloat, Field(gt=0)],
128
+ Tuple[
129
+ Annotated[StrictFloat, Field(gt=0)],
130
+ Annotated[StrictFloat, Field(gt=0)]
131
+ ]
132
+ ] = None,
133
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
134
+ _content_type: Optional[StrictStr] = None,
135
+ _headers: Optional[Dict[StrictStr, Any]] = None,
136
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
137
+ ) -> ApiResponse[None]:
138
+ """Deletes configuration objects specific to a report.
139
+
140
+ When a report is started, multiple configuration objects are created (event processors and setup groups). This operation can be called for completed reports and will delete said configuration objects. Once this endpoint has been called, it is no longer possible to retrieve the generated report.
141
+
142
+ :param report_id: ID of the report for which to delete the confguration (required)
143
+ :type report_id: str
144
+ :param context: ID of the context in which to perform the operation (required)
145
+ :type context: str
146
+ :param workspace: ID of the workspace in which to perform the operation. Defaults to \"Main\".
147
+ :type workspace: str
148
+ :param _request_timeout: timeout setting for this request. If one
149
+ number provided, it will be total request
150
+ timeout. It can also be a pair (tuple) of
151
+ (connection, read) timeouts.
152
+ :type _request_timeout: int, tuple(int, int), optional
153
+ :param _request_auth: set to override the auth_settings for an a single
154
+ request; this effectively ignores the
155
+ authentication in the spec for a single request.
156
+ :type _request_auth: dict, optional
157
+ :param _content_type: force content-type for the request.
158
+ :type _content_type: str, Optional
159
+ :param _headers: set to override the headers for a single
160
+ request; this effectively ignores the headers
161
+ in the spec for a single request.
162
+ :type _headers: dict, optional
163
+ :param _host_index: set to override the host_index for a single
164
+ request; this effectively ignores the host_index
165
+ in the spec for a single request.
166
+ :type _host_index: int, optional
167
+ :return: Returns the result object.
168
+ """ # noqa: E501
169
+
170
+ _param = self._reports_historic_changes_report_id_clean_up_post_serialize(
171
+ report_id=report_id,
172
+ context=context,
173
+ workspace=workspace,
174
+ _request_auth=_request_auth,
175
+ _content_type=_content_type,
176
+ _headers=_headers,
177
+ _host_index=_host_index
178
+ )
179
+
180
+ _response_types_map: Dict[str, Optional[str]] = {
181
+ '200': None,
182
+ '400': "Error",
183
+ '404': "Error",
184
+ }
185
+ response_data = self.api_client.call_api(
186
+ *_param,
187
+ _request_timeout=_request_timeout
188
+ )
189
+ response_data.read()
190
+ return self.api_client.response_deserialize(
191
+ response_data=response_data,
192
+ response_types_map=_response_types_map,
193
+ )
194
+
195
+
196
+ @validate_call
197
+ def reports_historic_changes_report_id_clean_up_post_without_preload_content(
198
+ self,
199
+ report_id: Annotated[StrictStr, Field(description="ID of the report for which to delete the confguration")],
200
+ context: Annotated[StrictStr, Field(description="ID of the context in which to perform the operation")],
201
+ workspace: Annotated[Optional[StrictStr], Field(description="ID of the workspace in which to perform the operation. Defaults to \"Main\".")] = None,
202
+ _request_timeout: Union[
203
+ None,
204
+ Annotated[StrictFloat, Field(gt=0)],
205
+ Tuple[
206
+ Annotated[StrictFloat, Field(gt=0)],
207
+ Annotated[StrictFloat, Field(gt=0)]
208
+ ]
209
+ ] = None,
210
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
211
+ _content_type: Optional[StrictStr] = None,
212
+ _headers: Optional[Dict[StrictStr, Any]] = None,
213
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
214
+ ) -> RESTResponseType:
215
+ """Deletes configuration objects specific to a report.
216
+
217
+ When a report is started, multiple configuration objects are created (event processors and setup groups). This operation can be called for completed reports and will delete said configuration objects. Once this endpoint has been called, it is no longer possible to retrieve the generated report.
218
+
219
+ :param report_id: ID of the report for which to delete the confguration (required)
220
+ :type report_id: str
221
+ :param context: ID of the context in which to perform the operation (required)
222
+ :type context: str
223
+ :param workspace: ID of the workspace in which to perform the operation. Defaults to \"Main\".
224
+ :type workspace: str
225
+ :param _request_timeout: timeout setting for this request. If one
226
+ number provided, it will be total request
227
+ timeout. It can also be a pair (tuple) of
228
+ (connection, read) timeouts.
229
+ :type _request_timeout: int, tuple(int, int), optional
230
+ :param _request_auth: set to override the auth_settings for an a single
231
+ request; this effectively ignores the
232
+ authentication in the spec for a single request.
233
+ :type _request_auth: dict, optional
234
+ :param _content_type: force content-type for the request.
235
+ :type _content_type: str, Optional
236
+ :param _headers: set to override the headers for a single
237
+ request; this effectively ignores the headers
238
+ in the spec for a single request.
239
+ :type _headers: dict, optional
240
+ :param _host_index: set to override the host_index for a single
241
+ request; this effectively ignores the host_index
242
+ in the spec for a single request.
243
+ :type _host_index: int, optional
244
+ :return: Returns the result object.
245
+ """ # noqa: E501
246
+
247
+ _param = self._reports_historic_changes_report_id_clean_up_post_serialize(
248
+ report_id=report_id,
249
+ context=context,
250
+ workspace=workspace,
251
+ _request_auth=_request_auth,
252
+ _content_type=_content_type,
253
+ _headers=_headers,
254
+ _host_index=_host_index
255
+ )
256
+
257
+ _response_types_map: Dict[str, Optional[str]] = {
258
+ '200': None,
259
+ '400': "Error",
260
+ '404': "Error",
261
+ }
262
+ response_data = self.api_client.call_api(
263
+ *_param,
264
+ _request_timeout=_request_timeout
265
+ )
266
+ return response_data.response
267
+
268
+
269
+ def _reports_historic_changes_report_id_clean_up_post_serialize(
270
+ self,
271
+ report_id,
272
+ context,
273
+ workspace,
274
+ _request_auth,
275
+ _content_type,
276
+ _headers,
277
+ _host_index,
278
+ ) -> RequestSerialized:
279
+
280
+ _host = None
281
+
282
+ _collection_formats: Dict[str, str] = {
283
+ }
284
+
285
+ _path_params: Dict[str, str] = {}
286
+ _query_params: List[Tuple[str, str]] = []
287
+ _header_params: Dict[str, Optional[str]] = _headers or {}
288
+ _form_params: List[Tuple[str, str]] = []
289
+ _files: Dict[
290
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
291
+ ] = {}
292
+ _body_params: Optional[bytes] = None
293
+
294
+ # process the path parameters
295
+ if report_id is not None:
296
+ _path_params['reportID'] = report_id
297
+ # process the query parameters
298
+ if context is not None:
299
+
300
+ _query_params.append(('context', context))
301
+
302
+ if workspace is not None:
303
+
304
+ _query_params.append(('workspace', workspace))
305
+
306
+ # process the header parameters
307
+ # process the form parameters
308
+ # process the body parameter
309
+
310
+
311
+ # set the HTTP header `Accept`
312
+ if 'Accept' not in _header_params:
313
+ _header_params['Accept'] = self.api_client.select_header_accept(
314
+ [
315
+ 'application/json'
316
+ ]
317
+ )
318
+
319
+
320
+ # authentication setting
321
+ _auth_settings: List[str] = [
322
+ 'basicAuth'
323
+ ]
324
+
325
+ return self.api_client.param_serialize(
326
+ method='POST',
327
+ resource_path='/reports/historic-changes/{reportID}/clean-up',
328
+ path_params=_path_params,
329
+ query_params=_query_params,
330
+ header_params=_header_params,
331
+ body=_body_params,
332
+ post_params=_form_params,
333
+ files=_files,
334
+ auth_settings=_auth_settings,
335
+ collection_formats=_collection_formats,
336
+ _host=_host,
337
+ _request_auth=_request_auth
338
+ )
339
+
340
+
341
+
342
+
343
+ @validate_call
344
+ def reports_historic_changes_report_id_post(
345
+ self,
346
+ report_id: Annotated[StrictStr, Field(description="ID of the report")],
347
+ analyzer_id: Annotated[StrictStr, Field(description="ID of the business function to be used for analyzing revisions modified by the specified users within the specified timeframe. The function must take a Revision as input and output a String.")],
348
+ beginning: Annotated[StrictStr, Field(description="The least (first) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\".")],
349
+ end: Annotated[StrictStr, Field(description="The greatest (last) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\".")],
350
+ context: Annotated[StrictStr, Field(description="ID of the context in which to perform the operation")],
351
+ user_ids: Annotated[Optional[List[StrictStr]], Field(description="IDs of users whose changes should be considered. If null or empty, all users are eligible for critical scrutiny.")] = None,
352
+ workspace: Annotated[Optional[StrictStr], Field(description="ID of the workspace in which to perform the operation. Defaults to \"Main\".")] = None,
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
+ ) -> BackgroundProcessIdentification:
366
+ """Starts historic changes report generation
367
+
368
+ Starts a reporting process that collects revisions modified by the specified user(s) within the specified timespan and feeds them one at a time to the specified business function. The output from the business function is written to a report available as an attachment to the background process identified in the response. If the business function output is null, the revision will not figure in the final report. Do not expect miracles as for processing time. Most of the data to be handled must be fetched detail by detail from the database server. The analysis is quickly restricted by the timing- and user-bounds described below. The rest is up to the analyzing business function.
369
+
370
+ :param report_id: ID of the report (required)
371
+ :type report_id: str
372
+ :param analyzer_id: ID of the business function to be used for analyzing revisions modified by the specified users within the specified timeframe. The function must take a Revision as input and output a String. (required)
373
+ :type analyzer_id: str
374
+ :param beginning: The least (first) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\". (required)
375
+ :type beginning: str
376
+ :param end: The greatest (last) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\". (required)
377
+ :type end: str
378
+ :param context: ID of the context in which to perform the operation (required)
379
+ :type context: str
380
+ :param user_ids: IDs of users whose changes should be considered. If null or empty, all users are eligible for critical scrutiny.
381
+ :type user_ids: List[str]
382
+ :param workspace: ID of the workspace in which to perform the operation. Defaults to \"Main\".
383
+ :type workspace: str
384
+ :param _request_timeout: timeout setting for this request. If one
385
+ number provided, it will be total request
386
+ timeout. It can also be a pair (tuple) of
387
+ (connection, read) timeouts.
388
+ :type _request_timeout: int, tuple(int, int), optional
389
+ :param _request_auth: set to override the auth_settings for an a single
390
+ request; this effectively ignores the
391
+ authentication in the spec for a single request.
392
+ :type _request_auth: dict, optional
393
+ :param _content_type: force content-type for the request.
394
+ :type _content_type: str, Optional
395
+ :param _headers: set to override the headers for a single
396
+ request; this effectively ignores the headers
397
+ in the spec for a single request.
398
+ :type _headers: dict, optional
399
+ :param _host_index: set to override the host_index for a single
400
+ request; this effectively ignores the host_index
401
+ in the spec for a single request.
402
+ :type _host_index: int, optional
403
+ :return: Returns the result object.
404
+ """ # noqa: E501
405
+
406
+ _param = self._reports_historic_changes_report_id_post_serialize(
407
+ report_id=report_id,
408
+ analyzer_id=analyzer_id,
409
+ beginning=beginning,
410
+ end=end,
411
+ context=context,
412
+ user_ids=user_ids,
413
+ workspace=workspace,
414
+ _request_auth=_request_auth,
415
+ _content_type=_content_type,
416
+ _headers=_headers,
417
+ _host_index=_host_index
418
+ )
419
+
420
+ _response_types_map: Dict[str, Optional[str]] = {
421
+ '200': "BackgroundProcessIdentification",
422
+ '400': "Error",
423
+ }
424
+ response_data = self.api_client.call_api(
425
+ *_param,
426
+ _request_timeout=_request_timeout
427
+ )
428
+ response_data.read()
429
+ return self.api_client.response_deserialize(
430
+ response_data=response_data,
431
+ response_types_map=_response_types_map,
432
+ ).data
433
+
434
+
435
+ @validate_call
436
+ def reports_historic_changes_report_id_post_with_http_info(
437
+ self,
438
+ report_id: Annotated[StrictStr, Field(description="ID of the report")],
439
+ analyzer_id: Annotated[StrictStr, Field(description="ID of the business function to be used for analyzing revisions modified by the specified users within the specified timeframe. The function must take a Revision as input and output a String.")],
440
+ beginning: Annotated[StrictStr, Field(description="The least (first) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\".")],
441
+ end: Annotated[StrictStr, Field(description="The greatest (last) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\".")],
442
+ context: Annotated[StrictStr, Field(description="ID of the context in which to perform the operation")],
443
+ user_ids: Annotated[Optional[List[StrictStr]], Field(description="IDs of users whose changes should be considered. If null or empty, all users are eligible for critical scrutiny.")] = None,
444
+ workspace: Annotated[Optional[StrictStr], Field(description="ID of the workspace in which to perform the operation. Defaults to \"Main\".")] = None,
445
+ _request_timeout: Union[
446
+ None,
447
+ Annotated[StrictFloat, Field(gt=0)],
448
+ Tuple[
449
+ Annotated[StrictFloat, Field(gt=0)],
450
+ Annotated[StrictFloat, Field(gt=0)]
451
+ ]
452
+ ] = None,
453
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
454
+ _content_type: Optional[StrictStr] = None,
455
+ _headers: Optional[Dict[StrictStr, Any]] = None,
456
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
457
+ ) -> ApiResponse[BackgroundProcessIdentification]:
458
+ """Starts historic changes report generation
459
+
460
+ Starts a reporting process that collects revisions modified by the specified user(s) within the specified timespan and feeds them one at a time to the specified business function. The output from the business function is written to a report available as an attachment to the background process identified in the response. If the business function output is null, the revision will not figure in the final report. Do not expect miracles as for processing time. Most of the data to be handled must be fetched detail by detail from the database server. The analysis is quickly restricted by the timing- and user-bounds described below. The rest is up to the analyzing business function.
461
+
462
+ :param report_id: ID of the report (required)
463
+ :type report_id: str
464
+ :param analyzer_id: ID of the business function to be used for analyzing revisions modified by the specified users within the specified timeframe. The function must take a Revision as input and output a String. (required)
465
+ :type analyzer_id: str
466
+ :param beginning: The least (first) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\". (required)
467
+ :type beginning: str
468
+ :param end: The greatest (last) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\". (required)
469
+ :type end: str
470
+ :param context: ID of the context in which to perform the operation (required)
471
+ :type context: str
472
+ :param user_ids: IDs of users whose changes should be considered. If null or empty, all users are eligible for critical scrutiny.
473
+ :type user_ids: List[str]
474
+ :param workspace: ID of the workspace in which to perform the operation. Defaults to \"Main\".
475
+ :type workspace: str
476
+ :param _request_timeout: timeout setting for this request. If one
477
+ number provided, it will be total request
478
+ timeout. It can also be a pair (tuple) of
479
+ (connection, read) timeouts.
480
+ :type _request_timeout: int, tuple(int, int), optional
481
+ :param _request_auth: set to override the auth_settings for an a single
482
+ request; this effectively ignores the
483
+ authentication in the spec for a single request.
484
+ :type _request_auth: dict, optional
485
+ :param _content_type: force content-type for the request.
486
+ :type _content_type: str, Optional
487
+ :param _headers: set to override the headers for a single
488
+ request; this effectively ignores the headers
489
+ in the spec for a single request.
490
+ :type _headers: dict, optional
491
+ :param _host_index: set to override the host_index for a single
492
+ request; this effectively ignores the host_index
493
+ in the spec for a single request.
494
+ :type _host_index: int, optional
495
+ :return: Returns the result object.
496
+ """ # noqa: E501
497
+
498
+ _param = self._reports_historic_changes_report_id_post_serialize(
499
+ report_id=report_id,
500
+ analyzer_id=analyzer_id,
501
+ beginning=beginning,
502
+ end=end,
503
+ context=context,
504
+ user_ids=user_ids,
505
+ workspace=workspace,
506
+ _request_auth=_request_auth,
507
+ _content_type=_content_type,
508
+ _headers=_headers,
509
+ _host_index=_host_index
510
+ )
511
+
512
+ _response_types_map: Dict[str, Optional[str]] = {
513
+ '200': "BackgroundProcessIdentification",
514
+ '400': "Error",
515
+ }
516
+ response_data = self.api_client.call_api(
517
+ *_param,
518
+ _request_timeout=_request_timeout
519
+ )
520
+ response_data.read()
521
+ return self.api_client.response_deserialize(
522
+ response_data=response_data,
523
+ response_types_map=_response_types_map,
524
+ )
525
+
526
+
527
+ @validate_call
528
+ def reports_historic_changes_report_id_post_without_preload_content(
529
+ self,
530
+ report_id: Annotated[StrictStr, Field(description="ID of the report")],
531
+ analyzer_id: Annotated[StrictStr, Field(description="ID of the business function to be used for analyzing revisions modified by the specified users within the specified timeframe. The function must take a Revision as input and output a String.")],
532
+ beginning: Annotated[StrictStr, Field(description="The least (first) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\".")],
533
+ end: Annotated[StrictStr, Field(description="The greatest (last) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\".")],
534
+ context: Annotated[StrictStr, Field(description="ID of the context in which to perform the operation")],
535
+ user_ids: Annotated[Optional[List[StrictStr]], Field(description="IDs of users whose changes should be considered. If null or empty, all users are eligible for critical scrutiny.")] = None,
536
+ workspace: Annotated[Optional[StrictStr], Field(description="ID of the workspace in which to perform the operation. Defaults to \"Main\".")] = None,
537
+ _request_timeout: Union[
538
+ None,
539
+ Annotated[StrictFloat, Field(gt=0)],
540
+ Tuple[
541
+ Annotated[StrictFloat, Field(gt=0)],
542
+ Annotated[StrictFloat, Field(gt=0)]
543
+ ]
544
+ ] = None,
545
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
546
+ _content_type: Optional[StrictStr] = None,
547
+ _headers: Optional[Dict[StrictStr, Any]] = None,
548
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
549
+ ) -> RESTResponseType:
550
+ """Starts historic changes report generation
551
+
552
+ Starts a reporting process that collects revisions modified by the specified user(s) within the specified timespan and feeds them one at a time to the specified business function. The output from the business function is written to a report available as an attachment to the background process identified in the response. If the business function output is null, the revision will not figure in the final report. Do not expect miracles as for processing time. Most of the data to be handled must be fetched detail by detail from the database server. The analysis is quickly restricted by the timing- and user-bounds described below. The rest is up to the analyzing business function.
553
+
554
+ :param report_id: ID of the report (required)
555
+ :type report_id: str
556
+ :param analyzer_id: ID of the business function to be used for analyzing revisions modified by the specified users within the specified timeframe. The function must take a Revision as input and output a String. (required)
557
+ :type analyzer_id: str
558
+ :param beginning: The least (first) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\". (required)
559
+ :type beginning: str
560
+ :param end: The greatest (last) boundary restricting the timespan to consider. Must be supplied in the ISO8601 format. E.g. \"1794-01-03 11:28:47\". (required)
561
+ :type end: str
562
+ :param context: ID of the context in which to perform the operation (required)
563
+ :type context: str
564
+ :param user_ids: IDs of users whose changes should be considered. If null or empty, all users are eligible for critical scrutiny.
565
+ :type user_ids: List[str]
566
+ :param workspace: ID of the workspace in which to perform the operation. Defaults to \"Main\".
567
+ :type workspace: str
568
+ :param _request_timeout: timeout setting for this request. If one
569
+ number provided, it will be total request
570
+ timeout. It can also be a pair (tuple) of
571
+ (connection, read) timeouts.
572
+ :type _request_timeout: int, tuple(int, int), optional
573
+ :param _request_auth: set to override the auth_settings for an a single
574
+ request; this effectively ignores the
575
+ authentication in the spec for a single request.
576
+ :type _request_auth: dict, optional
577
+ :param _content_type: force content-type for the request.
578
+ :type _content_type: str, Optional
579
+ :param _headers: set to override the headers for a single
580
+ request; this effectively ignores the headers
581
+ in the spec for a single request.
582
+ :type _headers: dict, optional
583
+ :param _host_index: set to override the host_index for a single
584
+ request; this effectively ignores the host_index
585
+ in the spec for a single request.
586
+ :type _host_index: int, optional
587
+ :return: Returns the result object.
588
+ """ # noqa: E501
589
+
590
+ _param = self._reports_historic_changes_report_id_post_serialize(
591
+ report_id=report_id,
592
+ analyzer_id=analyzer_id,
593
+ beginning=beginning,
594
+ end=end,
595
+ context=context,
596
+ user_ids=user_ids,
597
+ workspace=workspace,
598
+ _request_auth=_request_auth,
599
+ _content_type=_content_type,
600
+ _headers=_headers,
601
+ _host_index=_host_index
602
+ )
603
+
604
+ _response_types_map: Dict[str, Optional[str]] = {
605
+ '200': "BackgroundProcessIdentification",
606
+ '400': "Error",
607
+ }
608
+ response_data = self.api_client.call_api(
609
+ *_param,
610
+ _request_timeout=_request_timeout
611
+ )
612
+ return response_data.response
613
+
614
+
615
+ def _reports_historic_changes_report_id_post_serialize(
616
+ self,
617
+ report_id,
618
+ analyzer_id,
619
+ beginning,
620
+ end,
621
+ context,
622
+ user_ids,
623
+ workspace,
624
+ _request_auth,
625
+ _content_type,
626
+ _headers,
627
+ _host_index,
628
+ ) -> RequestSerialized:
629
+
630
+ _host = None
631
+
632
+ _collection_formats: Dict[str, str] = {
633
+ 'userIDs': 'multi',
634
+ }
635
+
636
+ _path_params: Dict[str, str] = {}
637
+ _query_params: List[Tuple[str, str]] = []
638
+ _header_params: Dict[str, Optional[str]] = _headers or {}
639
+ _form_params: List[Tuple[str, str]] = []
640
+ _files: Dict[
641
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
642
+ ] = {}
643
+ _body_params: Optional[bytes] = None
644
+
645
+ # process the path parameters
646
+ if report_id is not None:
647
+ _path_params['reportID'] = report_id
648
+ # process the query parameters
649
+ if analyzer_id is not None:
650
+
651
+ _query_params.append(('analyzerID', analyzer_id))
652
+
653
+ if beginning is not None:
654
+
655
+ _query_params.append(('beginning', beginning))
656
+
657
+ if end is not None:
658
+
659
+ _query_params.append(('end', end))
660
+
661
+ if user_ids is not None:
662
+
663
+ _query_params.append(('userIDs', user_ids))
664
+
665
+ if context is not None:
666
+
667
+ _query_params.append(('context', context))
668
+
669
+ if workspace is not None:
670
+
671
+ _query_params.append(('workspace', workspace))
672
+
673
+ # process the header parameters
674
+ # process the form parameters
675
+ # process the body parameter
676
+
677
+
678
+ # set the HTTP header `Accept`
679
+ if 'Accept' not in _header_params:
680
+ _header_params['Accept'] = self.api_client.select_header_accept(
681
+ [
682
+ 'application/json'
683
+ ]
684
+ )
685
+
686
+
687
+ # authentication setting
688
+ _auth_settings: List[str] = [
689
+ 'basicAuth'
690
+ ]
691
+
692
+ return self.api_client.param_serialize(
693
+ method='POST',
694
+ resource_path='/reports/historic-changes/{reportID}',
695
+ path_params=_path_params,
696
+ query_params=_query_params,
697
+ header_params=_header_params,
698
+ body=_body_params,
699
+ post_params=_form_params,
700
+ files=_files,
701
+ auth_settings=_auth_settings,
702
+ collection_formats=_collection_formats,
703
+ _host=_host,
704
+ _request_auth=_request_auth
705
+ )
706
+
707
+