arthur-client 1.4.1251__py3-none-any.whl → 1.4.1252__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 (23) hide show
  1. arthur_client/api_bindings/__init__.py +1 -0
  2. arthur_client/api_bindings/api/custom_aggregations_v1_api.py +381 -6
  3. arthur_client/api_bindings/docs/CustomAggregationSpecSchema.md +3 -3
  4. arthur_client/api_bindings/docs/CustomAggregationsV1Api.md +95 -4
  5. arthur_client/api_bindings/docs/PermissionName.md +2 -0
  6. arthur_client/api_bindings/docs/PostCustomAggregationSpecSchema.md +1 -1
  7. arthur_client/api_bindings/docs/PutCustomAggregationSpecSchema.md +1 -1
  8. arthur_client/api_bindings/docs/ResourceListCustomAggregationSpecSchema.md +30 -0
  9. arthur_client/api_bindings/models/__init__.py +1 -0
  10. arthur_client/api_bindings/models/custom_aggregation_spec_schema.py +16 -5
  11. arthur_client/api_bindings/models/permission_name.py +1 -0
  12. arthur_client/api_bindings/models/post_custom_aggregation_spec_schema.py +9 -3
  13. arthur_client/api_bindings/models/put_custom_aggregation_spec_schema.py +9 -3
  14. arthur_client/api_bindings/models/resource_list_custom_aggregation_spec_schema.py +101 -0
  15. arthur_client/api_bindings/test/test_custom_aggregation_spec_schema.py +0 -1
  16. arthur_client/api_bindings/test/test_custom_aggregations_v1_api.py +7 -0
  17. arthur_client/api_bindings/test/test_post_custom_aggregation_spec_schema.py +0 -1
  18. arthur_client/api_bindings/test/test_put_custom_aggregation_spec_schema.py +0 -1
  19. arthur_client/api_bindings/test/test_resource_list_custom_aggregation_spec_schema.py +134 -0
  20. arthur_client/api_bindings_README.md +2 -0
  21. {arthur_client-1.4.1251.dist-info → arthur_client-1.4.1252.dist-info}/METADATA +1 -1
  22. {arthur_client-1.4.1251.dist-info → arthur_client-1.4.1252.dist-info}/RECORD +23 -20
  23. {arthur_client-1.4.1251.dist-info → arthur_client-1.4.1252.dist-info}/WHEEL +0 -0
@@ -287,6 +287,7 @@ from arthur_client.api_bindings.models.resource_list_alert_rule import ResourceL
287
287
  from arthur_client.api_bindings.models.resource_list_available_dataset import ResourceListAvailableDataset
288
288
  from arthur_client.api_bindings.models.resource_list_connector_spec import ResourceListConnectorSpec
289
289
  from arthur_client.api_bindings.models.resource_list_connector_type import ResourceListConnectorType
290
+ from arthur_client.api_bindings.models.resource_list_custom_aggregation_spec_schema import ResourceListCustomAggregationSpecSchema
290
291
  from arthur_client.api_bindings.models.resource_list_data_plane import ResourceListDataPlane
291
292
  from arthur_client.api_bindings.models.resource_list_data_plane_association import ResourceListDataPlaneAssociation
292
293
  from arthur_client.api_bindings.models.resource_list_dataset import ResourceListDataset
@@ -16,10 +16,13 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
16
  from typing import Any, Dict, List, Optional, Tuple, Union
17
17
  from typing_extensions import Annotated
18
18
 
19
- from pydantic import StrictStr
19
+ from pydantic import Field, StrictBool, StrictInt, StrictStr
20
+ from typing import Optional
21
+ from typing_extensions import Annotated
20
22
  from arthur_client.api_bindings.models.custom_aggregation_spec_schema import CustomAggregationSpecSchema
21
23
  from arthur_client.api_bindings.models.post_custom_aggregation_spec_schema import PostCustomAggregationSpecSchema
22
24
  from arthur_client.api_bindings.models.put_custom_aggregation_spec_schema import PutCustomAggregationSpecSchema
25
+ from arthur_client.api_bindings.models.resource_list_custom_aggregation_spec_schema import ResourceListCustomAggregationSpecSchema
23
26
  from arthur_client.api_bindings.models.validation_results import ValidationResults
24
27
 
25
28
  from arthur_client.api_bindings.api_client import ApiClient, RequestSerialized
@@ -314,6 +317,10 @@ class CustomAggregationsV1Api:
314
317
  def get_custom_aggregation(
315
318
  self,
316
319
  custom_aggregation_id: StrictStr,
320
+ version: Annotated[Optional[StrictInt], Field(description="The version of the custom aggregation to fetch.")] = None,
321
+ latest: Annotated[Optional[StrictBool], Field(description="Whether to fetch the latest version of the custom aggregation.")] = None,
322
+ page: Annotated[Optional[StrictInt], Field(description="The page number to fetch.")] = None,
323
+ page_size: Annotated[Optional[StrictInt], Field(description="The number of items per page.")] = None,
317
324
  _request_timeout: Union[
318
325
  None,
319
326
  Annotated[StrictFloat, Field(gt=0)],
@@ -326,13 +333,21 @@ class CustomAggregationsV1Api:
326
333
  _content_type: Optional[StrictStr] = None,
327
334
  _headers: Optional[Dict[StrictStr, Any]] = None,
328
335
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
329
- ) -> CustomAggregationSpecSchema:
336
+ ) -> ResourceListCustomAggregationSpecSchema:
330
337
  """Get Custom Aggregation By Id.
331
338
 
332
339
  Requires custom_aggregation_read permission.
333
340
 
334
341
  :param custom_aggregation_id: (required)
335
342
  :type custom_aggregation_id: str
343
+ :param version: The version of the custom aggregation to fetch.
344
+ :type version: int
345
+ :param latest: Whether to fetch the latest version of the custom aggregation.
346
+ :type latest: bool
347
+ :param page: The page number to fetch.
348
+ :type page: int
349
+ :param page_size: The number of items per page.
350
+ :type page_size: int
336
351
  :param _request_timeout: timeout setting for this request. If one
337
352
  number provided, it will be total request
338
353
  timeout. It can also be a pair (tuple) of
@@ -357,6 +372,10 @@ class CustomAggregationsV1Api:
357
372
 
358
373
  _param = self._get_custom_aggregation_serialize(
359
374
  custom_aggregation_id=custom_aggregation_id,
375
+ version=version,
376
+ latest=latest,
377
+ page=page,
378
+ page_size=page_size,
360
379
  _request_auth=_request_auth,
361
380
  _content_type=_content_type,
362
381
  _headers=_headers,
@@ -364,7 +383,7 @@ class CustomAggregationsV1Api:
364
383
  )
365
384
 
366
385
  _response_types_map: Dict[str, Optional[str]] = {
367
- '200': "CustomAggregationSpecSchema",
386
+ '200': "ResourceListCustomAggregationSpecSchema",
368
387
  '500': "InternalServerError",
369
388
  '404': "NotFoundError",
370
389
  '422': "HTTPValidationError",
@@ -384,6 +403,10 @@ class CustomAggregationsV1Api:
384
403
  def get_custom_aggregation_with_http_info(
385
404
  self,
386
405
  custom_aggregation_id: StrictStr,
406
+ version: Annotated[Optional[StrictInt], Field(description="The version of the custom aggregation to fetch.")] = None,
407
+ latest: Annotated[Optional[StrictBool], Field(description="Whether to fetch the latest version of the custom aggregation.")] = None,
408
+ page: Annotated[Optional[StrictInt], Field(description="The page number to fetch.")] = None,
409
+ page_size: Annotated[Optional[StrictInt], Field(description="The number of items per page.")] = None,
387
410
  _request_timeout: Union[
388
411
  None,
389
412
  Annotated[StrictFloat, Field(gt=0)],
@@ -396,13 +419,21 @@ class CustomAggregationsV1Api:
396
419
  _content_type: Optional[StrictStr] = None,
397
420
  _headers: Optional[Dict[StrictStr, Any]] = None,
398
421
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
399
- ) -> ApiResponse[CustomAggregationSpecSchema]:
422
+ ) -> ApiResponse[ResourceListCustomAggregationSpecSchema]:
400
423
  """Get Custom Aggregation By Id.
401
424
 
402
425
  Requires custom_aggregation_read permission.
403
426
 
404
427
  :param custom_aggregation_id: (required)
405
428
  :type custom_aggregation_id: str
429
+ :param version: The version of the custom aggregation to fetch.
430
+ :type version: int
431
+ :param latest: Whether to fetch the latest version of the custom aggregation.
432
+ :type latest: bool
433
+ :param page: The page number to fetch.
434
+ :type page: int
435
+ :param page_size: The number of items per page.
436
+ :type page_size: int
406
437
  :param _request_timeout: timeout setting for this request. If one
407
438
  number provided, it will be total request
408
439
  timeout. It can also be a pair (tuple) of
@@ -427,6 +458,10 @@ class CustomAggregationsV1Api:
427
458
 
428
459
  _param = self._get_custom_aggregation_serialize(
429
460
  custom_aggregation_id=custom_aggregation_id,
461
+ version=version,
462
+ latest=latest,
463
+ page=page,
464
+ page_size=page_size,
430
465
  _request_auth=_request_auth,
431
466
  _content_type=_content_type,
432
467
  _headers=_headers,
@@ -434,7 +469,7 @@ class CustomAggregationsV1Api:
434
469
  )
435
470
 
436
471
  _response_types_map: Dict[str, Optional[str]] = {
437
- '200': "CustomAggregationSpecSchema",
472
+ '200': "ResourceListCustomAggregationSpecSchema",
438
473
  '500': "InternalServerError",
439
474
  '404': "NotFoundError",
440
475
  '422': "HTTPValidationError",
@@ -454,6 +489,10 @@ class CustomAggregationsV1Api:
454
489
  def get_custom_aggregation_without_preload_content(
455
490
  self,
456
491
  custom_aggregation_id: StrictStr,
492
+ version: Annotated[Optional[StrictInt], Field(description="The version of the custom aggregation to fetch.")] = None,
493
+ latest: Annotated[Optional[StrictBool], Field(description="Whether to fetch the latest version of the custom aggregation.")] = None,
494
+ page: Annotated[Optional[StrictInt], Field(description="The page number to fetch.")] = None,
495
+ page_size: Annotated[Optional[StrictInt], Field(description="The number of items per page.")] = None,
457
496
  _request_timeout: Union[
458
497
  None,
459
498
  Annotated[StrictFloat, Field(gt=0)],
@@ -473,6 +512,14 @@ class CustomAggregationsV1Api:
473
512
 
474
513
  :param custom_aggregation_id: (required)
475
514
  :type custom_aggregation_id: str
515
+ :param version: The version of the custom aggregation to fetch.
516
+ :type version: int
517
+ :param latest: Whether to fetch the latest version of the custom aggregation.
518
+ :type latest: bool
519
+ :param page: The page number to fetch.
520
+ :type page: int
521
+ :param page_size: The number of items per page.
522
+ :type page_size: int
476
523
  :param _request_timeout: timeout setting for this request. If one
477
524
  number provided, it will be total request
478
525
  timeout. It can also be a pair (tuple) of
@@ -497,6 +544,10 @@ class CustomAggregationsV1Api:
497
544
 
498
545
  _param = self._get_custom_aggregation_serialize(
499
546
  custom_aggregation_id=custom_aggregation_id,
547
+ version=version,
548
+ latest=latest,
549
+ page=page,
550
+ page_size=page_size,
500
551
  _request_auth=_request_auth,
501
552
  _content_type=_content_type,
502
553
  _headers=_headers,
@@ -504,7 +555,7 @@ class CustomAggregationsV1Api:
504
555
  )
505
556
 
506
557
  _response_types_map: Dict[str, Optional[str]] = {
507
- '200': "CustomAggregationSpecSchema",
558
+ '200': "ResourceListCustomAggregationSpecSchema",
508
559
  '500': "InternalServerError",
509
560
  '404': "NotFoundError",
510
561
  '422': "HTTPValidationError",
@@ -519,6 +570,10 @@ class CustomAggregationsV1Api:
519
570
  def _get_custom_aggregation_serialize(
520
571
  self,
521
572
  custom_aggregation_id,
573
+ version,
574
+ latest,
575
+ page,
576
+ page_size,
522
577
  _request_auth,
523
578
  _content_type,
524
579
  _headers,
@@ -543,6 +598,22 @@ class CustomAggregationsV1Api:
543
598
  if custom_aggregation_id is not None:
544
599
  _path_params['custom_aggregation_id'] = custom_aggregation_id
545
600
  # process the query parameters
601
+ if version is not None:
602
+
603
+ _query_params.append(('version', version))
604
+
605
+ if latest is not None:
606
+
607
+ _query_params.append(('latest', latest))
608
+
609
+ if page is not None:
610
+
611
+ _query_params.append(('page', page))
612
+
613
+ if page_size is not None:
614
+
615
+ _query_params.append(('page_size', page_size))
616
+
546
617
  # process the header parameters
547
618
  # process the form parameters
548
619
  # process the body parameter
@@ -580,6 +651,310 @@ class CustomAggregationsV1Api:
580
651
 
581
652
 
582
653
 
654
+ @validate_call
655
+ def get_custom_aggregations_for_workspace(
656
+ self,
657
+ workspace_id: StrictStr,
658
+ page: Annotated[Optional[StrictInt], Field(description="The page number to fetch.")] = None,
659
+ page_size: Annotated[Optional[StrictInt], Field(description="The number of items per page.")] = None,
660
+ _request_timeout: Union[
661
+ None,
662
+ Annotated[StrictFloat, Field(gt=0)],
663
+ Tuple[
664
+ Annotated[StrictFloat, Field(gt=0)],
665
+ Annotated[StrictFloat, Field(gt=0)]
666
+ ]
667
+ ] = None,
668
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
669
+ _content_type: Optional[StrictStr] = None,
670
+ _headers: Optional[Dict[StrictStr, Any]] = None,
671
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
672
+ ) -> ResourceListCustomAggregationSpecSchema:
673
+ """Get Custom Aggregation.
674
+
675
+ Requires workspace_list_custom_aggregations permission.
676
+
677
+ :param workspace_id: (required)
678
+ :type workspace_id: str
679
+ :param page: The page number to fetch.
680
+ :type page: int
681
+ :param page_size: The number of items per page.
682
+ :type page_size: int
683
+ :param _request_timeout: timeout setting for this request. If one
684
+ number provided, it will be total request
685
+ timeout. It can also be a pair (tuple) of
686
+ (connection, read) timeouts.
687
+ :type _request_timeout: int, tuple(int, int), optional
688
+ :param _request_auth: set to override the auth_settings for an a single
689
+ request; this effectively ignores the
690
+ authentication in the spec for a single request.
691
+ :type _request_auth: dict, optional
692
+ :param _content_type: force content-type for the request.
693
+ :type _content_type: str, Optional
694
+ :param _headers: set to override the headers for a single
695
+ request; this effectively ignores the headers
696
+ in the spec for a single request.
697
+ :type _headers: dict, optional
698
+ :param _host_index: set to override the host_index for a single
699
+ request; this effectively ignores the host_index
700
+ in the spec for a single request.
701
+ :type _host_index: int, optional
702
+ :return: Returns the result object.
703
+ """ # noqa: E501
704
+
705
+ _param = self._get_custom_aggregations_for_workspace_serialize(
706
+ workspace_id=workspace_id,
707
+ page=page,
708
+ page_size=page_size,
709
+ _request_auth=_request_auth,
710
+ _content_type=_content_type,
711
+ _headers=_headers,
712
+ _host_index=_host_index
713
+ )
714
+
715
+ _response_types_map: Dict[str, Optional[str]] = {
716
+ '200': "ResourceListCustomAggregationSpecSchema",
717
+ '500': "InternalServerError",
718
+ '404': "NotFoundError",
719
+ '422': "HTTPValidationError",
720
+ }
721
+ response_data = self.api_client.call_api(
722
+ *_param,
723
+ _request_timeout=_request_timeout
724
+ )
725
+ response_data.read()
726
+ return self.api_client.response_deserialize(
727
+ response_data=response_data,
728
+ response_types_map=_response_types_map,
729
+ ).data
730
+
731
+
732
+ @validate_call
733
+ def get_custom_aggregations_for_workspace_with_http_info(
734
+ self,
735
+ workspace_id: StrictStr,
736
+ page: Annotated[Optional[StrictInt], Field(description="The page number to fetch.")] = None,
737
+ page_size: Annotated[Optional[StrictInt], Field(description="The number of items per page.")] = None,
738
+ _request_timeout: Union[
739
+ None,
740
+ Annotated[StrictFloat, Field(gt=0)],
741
+ Tuple[
742
+ Annotated[StrictFloat, Field(gt=0)],
743
+ Annotated[StrictFloat, Field(gt=0)]
744
+ ]
745
+ ] = None,
746
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
747
+ _content_type: Optional[StrictStr] = None,
748
+ _headers: Optional[Dict[StrictStr, Any]] = None,
749
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
750
+ ) -> ApiResponse[ResourceListCustomAggregationSpecSchema]:
751
+ """Get Custom Aggregation.
752
+
753
+ Requires workspace_list_custom_aggregations permission.
754
+
755
+ :param workspace_id: (required)
756
+ :type workspace_id: str
757
+ :param page: The page number to fetch.
758
+ :type page: int
759
+ :param page_size: The number of items per page.
760
+ :type page_size: int
761
+ :param _request_timeout: timeout setting for this request. If one
762
+ number provided, it will be total request
763
+ timeout. It can also be a pair (tuple) of
764
+ (connection, read) timeouts.
765
+ :type _request_timeout: int, tuple(int, int), optional
766
+ :param _request_auth: set to override the auth_settings for an a single
767
+ request; this effectively ignores the
768
+ authentication in the spec for a single request.
769
+ :type _request_auth: dict, optional
770
+ :param _content_type: force content-type for the request.
771
+ :type _content_type: str, Optional
772
+ :param _headers: set to override the headers for a single
773
+ request; this effectively ignores the headers
774
+ in the spec for a single request.
775
+ :type _headers: dict, optional
776
+ :param _host_index: set to override the host_index for a single
777
+ request; this effectively ignores the host_index
778
+ in the spec for a single request.
779
+ :type _host_index: int, optional
780
+ :return: Returns the result object.
781
+ """ # noqa: E501
782
+
783
+ _param = self._get_custom_aggregations_for_workspace_serialize(
784
+ workspace_id=workspace_id,
785
+ page=page,
786
+ page_size=page_size,
787
+ _request_auth=_request_auth,
788
+ _content_type=_content_type,
789
+ _headers=_headers,
790
+ _host_index=_host_index
791
+ )
792
+
793
+ _response_types_map: Dict[str, Optional[str]] = {
794
+ '200': "ResourceListCustomAggregationSpecSchema",
795
+ '500': "InternalServerError",
796
+ '404': "NotFoundError",
797
+ '422': "HTTPValidationError",
798
+ }
799
+ response_data = self.api_client.call_api(
800
+ *_param,
801
+ _request_timeout=_request_timeout
802
+ )
803
+ response_data.read()
804
+ return self.api_client.response_deserialize(
805
+ response_data=response_data,
806
+ response_types_map=_response_types_map,
807
+ )
808
+
809
+
810
+ @validate_call
811
+ def get_custom_aggregations_for_workspace_without_preload_content(
812
+ self,
813
+ workspace_id: StrictStr,
814
+ page: Annotated[Optional[StrictInt], Field(description="The page number to fetch.")] = None,
815
+ page_size: Annotated[Optional[StrictInt], Field(description="The number of items per page.")] = None,
816
+ _request_timeout: Union[
817
+ None,
818
+ Annotated[StrictFloat, Field(gt=0)],
819
+ Tuple[
820
+ Annotated[StrictFloat, Field(gt=0)],
821
+ Annotated[StrictFloat, Field(gt=0)]
822
+ ]
823
+ ] = None,
824
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
825
+ _content_type: Optional[StrictStr] = None,
826
+ _headers: Optional[Dict[StrictStr, Any]] = None,
827
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
828
+ ) -> RESTResponseType:
829
+ """Get Custom Aggregation.
830
+
831
+ Requires workspace_list_custom_aggregations permission.
832
+
833
+ :param workspace_id: (required)
834
+ :type workspace_id: str
835
+ :param page: The page number to fetch.
836
+ :type page: int
837
+ :param page_size: The number of items per page.
838
+ :type page_size: int
839
+ :param _request_timeout: timeout setting for this request. If one
840
+ number provided, it will be total request
841
+ timeout. It can also be a pair (tuple) of
842
+ (connection, read) timeouts.
843
+ :type _request_timeout: int, tuple(int, int), optional
844
+ :param _request_auth: set to override the auth_settings for an a single
845
+ request; this effectively ignores the
846
+ authentication in the spec for a single request.
847
+ :type _request_auth: dict, optional
848
+ :param _content_type: force content-type for the request.
849
+ :type _content_type: str, Optional
850
+ :param _headers: set to override the headers for a single
851
+ request; this effectively ignores the headers
852
+ in the spec for a single request.
853
+ :type _headers: dict, optional
854
+ :param _host_index: set to override the host_index for a single
855
+ request; this effectively ignores the host_index
856
+ in the spec for a single request.
857
+ :type _host_index: int, optional
858
+ :return: Returns the result object.
859
+ """ # noqa: E501
860
+
861
+ _param = self._get_custom_aggregations_for_workspace_serialize(
862
+ workspace_id=workspace_id,
863
+ page=page,
864
+ page_size=page_size,
865
+ _request_auth=_request_auth,
866
+ _content_type=_content_type,
867
+ _headers=_headers,
868
+ _host_index=_host_index
869
+ )
870
+
871
+ _response_types_map: Dict[str, Optional[str]] = {
872
+ '200': "ResourceListCustomAggregationSpecSchema",
873
+ '500': "InternalServerError",
874
+ '404': "NotFoundError",
875
+ '422': "HTTPValidationError",
876
+ }
877
+ response_data = self.api_client.call_api(
878
+ *_param,
879
+ _request_timeout=_request_timeout
880
+ )
881
+ return response_data.response
882
+
883
+
884
+ def _get_custom_aggregations_for_workspace_serialize(
885
+ self,
886
+ workspace_id,
887
+ page,
888
+ page_size,
889
+ _request_auth,
890
+ _content_type,
891
+ _headers,
892
+ _host_index,
893
+ ) -> RequestSerialized:
894
+
895
+ _host = None
896
+
897
+ _collection_formats: Dict[str, str] = {
898
+ }
899
+
900
+ _path_params: Dict[str, str] = {}
901
+ _query_params: List[Tuple[str, str]] = []
902
+ _header_params: Dict[str, Optional[str]] = _headers or {}
903
+ _form_params: List[Tuple[str, str]] = []
904
+ _files: Dict[
905
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
906
+ ] = {}
907
+ _body_params: Optional[bytes] = None
908
+
909
+ # process the path parameters
910
+ if workspace_id is not None:
911
+ _path_params['workspace_id'] = workspace_id
912
+ # process the query parameters
913
+ if page is not None:
914
+
915
+ _query_params.append(('page', page))
916
+
917
+ if page_size is not None:
918
+
919
+ _query_params.append(('page_size', page_size))
920
+
921
+ # process the header parameters
922
+ # process the form parameters
923
+ # process the body parameter
924
+
925
+
926
+ # set the HTTP header `Accept`
927
+ if 'Accept' not in _header_params:
928
+ _header_params['Accept'] = self.api_client.select_header_accept(
929
+ [
930
+ 'application/json'
931
+ ]
932
+ )
933
+
934
+
935
+ # authentication setting
936
+ _auth_settings: List[str] = [
937
+ 'OAuth2AuthorizationCode'
938
+ ]
939
+
940
+ return self.api_client.param_serialize(
941
+ method='GET',
942
+ resource_path='/api/v1/workspaces/{workspace_id}/custom_aggregations',
943
+ path_params=_path_params,
944
+ query_params=_query_params,
945
+ header_params=_header_params,
946
+ body=_body_params,
947
+ post_params=_form_params,
948
+ files=_files,
949
+ auth_settings=_auth_settings,
950
+ collection_formats=_collection_formats,
951
+ _host=_host,
952
+ _request_auth=_request_auth
953
+ )
954
+
955
+
956
+
957
+
583
958
  @validate_call
584
959
  def post_custom_aggregation(
585
960
  self,
@@ -6,14 +6,14 @@
6
6
  Name | Type | Description | Notes
7
7
  ------------ | ------------- | ------------- | -------------
8
8
  **name** | **str** | Name of the custom aggregation function. |
9
- **description** | **str** | Description of the custom aggregation function and what it aggregates. |
9
+ **description** | **str** | | [optional]
10
10
  **reported_aggregations** | [**List[ReportedCustomAggregation]**](ReportedCustomAggregation.md) | Metadata for every aggregation the custom aggregation reports. |
11
11
  **aggregate_args** | [**List[CustomAggregationSpecSchemaAggregateArgsInner]**](CustomAggregationSpecSchemaAggregateArgsInner.md) | List of parameters to the custom aggregation's query function. |
12
12
  **sql** | **str** | DuckDBSQL query for the custom aggregation. |
13
- **id** | **str** | Unique identifier of the custom aggregation function. |
13
+ **id** | **str** | Unique identifier of the custom aggregation with version. |
14
14
  **workspace_id** | **str** | Unique identifier of the custom aggregation's parent workspace. |
15
15
  **version** | **int** | Version number of the custom aggregation function. |
16
- **authored_by** | [**User**](User.md) | User who authored this custom aggregation. |
16
+ **authored_by** | [**User**](User.md) | |
17
17
  **created_at** | **datetime** | Time of aggregation creation. |
18
18
 
19
19
  ## Example
@@ -6,6 +6,7 @@ Method | HTTP request | Description
6
6
  ------------- | ------------- | -------------
7
7
  [**delete_custom_aggregation**](CustomAggregationsV1Api.md#delete_custom_aggregation) | **DELETE** /api/v1/custom_aggregations/{custom_aggregation_id} | Delete Custom Aggregation.
8
8
  [**get_custom_aggregation**](CustomAggregationsV1Api.md#get_custom_aggregation) | **GET** /api/v1/custom_aggregations/{custom_aggregation_id} | Get Custom Aggregation By Id.
9
+ [**get_custom_aggregations_for_workspace**](CustomAggregationsV1Api.md#get_custom_aggregations_for_workspace) | **GET** /api/v1/workspaces/{workspace_id}/custom_aggregations | Get Custom Aggregation.
9
10
  [**post_custom_aggregation**](CustomAggregationsV1Api.md#post_custom_aggregation) | **POST** /api/v1/workspaces/{workspace_id}/custom_aggregations | Post Custom Aggregation.
10
11
  [**put_custom_aggregation**](CustomAggregationsV1Api.md#put_custom_aggregation) | **PUT** /api/v1/custom_aggregations/{custom_aggregation_id} | Update Custom Aggregation By Id.
11
12
  [**validate_custom_aggregation**](CustomAggregationsV1Api.md#validate_custom_aggregation) | **POST** /api/v1/workspaces/{workspace_id}/validate_custom_aggregation | Validate A Custom Aggregation Before Creation.
@@ -87,7 +88,7 @@ void (empty response body)
87
88
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
88
89
 
89
90
  # **get_custom_aggregation**
90
- > CustomAggregationSpecSchema get_custom_aggregation(custom_aggregation_id)
91
+ > ResourceListCustomAggregationSpecSchema get_custom_aggregation(custom_aggregation_id, version=version, latest=latest, page=page, page_size=page_size)
91
92
 
92
93
  Get Custom Aggregation By Id.
93
94
 
@@ -99,7 +100,7 @@ Requires custom_aggregation_read permission.
99
100
 
100
101
  ```python
101
102
  import arthur_client.api_bindings
102
- from arthur_client.api_bindings.models.custom_aggregation_spec_schema import CustomAggregationSpecSchema
103
+ from arthur_client.api_bindings.models.resource_list_custom_aggregation_spec_schema import ResourceListCustomAggregationSpecSchema
103
104
  from arthur_client.api_bindings.rest import ApiException
104
105
  from pprint import pprint
105
106
 
@@ -121,10 +122,14 @@ with arthur_client.api_bindings.ApiClient(configuration) as api_client:
121
122
  # Create an instance of the API class
122
123
  api_instance = arthur_client.api_bindings.CustomAggregationsV1Api(api_client)
123
124
  custom_aggregation_id = 'custom_aggregation_id_example' # str |
125
+ version = 56 # int | The version of the custom aggregation to fetch. (optional)
126
+ latest = False # bool | Whether to fetch the latest version of the custom aggregation. (optional) (default to False)
127
+ page = 1 # int | The page number to fetch. (optional) (default to 1)
128
+ page_size = 10 # int | The number of items per page. (optional) (default to 10)
124
129
 
125
130
  try:
126
131
  # Get Custom Aggregation By Id.
127
- api_response = api_instance.get_custom_aggregation(custom_aggregation_id)
132
+ api_response = api_instance.get_custom_aggregation(custom_aggregation_id, version=version, latest=latest, page=page, page_size=page_size)
128
133
  print("The response of CustomAggregationsV1Api->get_custom_aggregation:\n")
129
134
  pprint(api_response)
130
135
  except Exception as e:
@@ -139,10 +144,96 @@ with arthur_client.api_bindings.ApiClient(configuration) as api_client:
139
144
  Name | Type | Description | Notes
140
145
  ------------- | ------------- | ------------- | -------------
141
146
  **custom_aggregation_id** | **str**| |
147
+ **version** | **int**| The version of the custom aggregation to fetch. | [optional]
148
+ **latest** | **bool**| Whether to fetch the latest version of the custom aggregation. | [optional] [default to False]
149
+ **page** | **int**| The page number to fetch. | [optional] [default to 1]
150
+ **page_size** | **int**| The number of items per page. | [optional] [default to 10]
142
151
 
143
152
  ### Return type
144
153
 
145
- [**CustomAggregationSpecSchema**](CustomAggregationSpecSchema.md)
154
+ [**ResourceListCustomAggregationSpecSchema**](ResourceListCustomAggregationSpecSchema.md)
155
+
156
+ ### Authorization
157
+
158
+ [OAuth2AuthorizationCode](../README.md#OAuth2AuthorizationCode)
159
+
160
+ ### HTTP request headers
161
+
162
+ - **Content-Type**: Not defined
163
+ - **Accept**: application/json
164
+
165
+ ### HTTP response details
166
+
167
+ | Status code | Description | Response headers |
168
+ |-------------|-------------|------------------|
169
+ **200** | Successful Response | - |
170
+ **500** | Internal Server Error | - |
171
+ **404** | Not Found | - |
172
+ **422** | Validation Error | - |
173
+
174
+ [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
175
+
176
+ # **get_custom_aggregations_for_workspace**
177
+ > ResourceListCustomAggregationSpecSchema get_custom_aggregations_for_workspace(workspace_id, page=page, page_size=page_size)
178
+
179
+ Get Custom Aggregation.
180
+
181
+ Requires workspace_list_custom_aggregations permission.
182
+
183
+ ### Example
184
+
185
+ * OAuth Authentication (OAuth2AuthorizationCode):
186
+
187
+ ```python
188
+ import arthur_client.api_bindings
189
+ from arthur_client.api_bindings.models.resource_list_custom_aggregation_spec_schema import ResourceListCustomAggregationSpecSchema
190
+ from arthur_client.api_bindings.rest import ApiException
191
+ from pprint import pprint
192
+
193
+ # Defining the host is optional and defaults to http://localhost
194
+ # See configuration.py for a list of all supported configuration parameters.
195
+ configuration = arthur_client.api_bindings.Configuration(
196
+ host = "http://localhost"
197
+ )
198
+
199
+ # The client must configure the authentication and authorization parameters
200
+ # in accordance with the API server security policy.
201
+ # Examples for each auth method are provided below, use the example that
202
+ # satisfies your auth use case.
203
+
204
+ configuration.access_token = os.environ["ACCESS_TOKEN"]
205
+
206
+ # Enter a context with an instance of the API client
207
+ with arthur_client.api_bindings.ApiClient(configuration) as api_client:
208
+ # Create an instance of the API class
209
+ api_instance = arthur_client.api_bindings.CustomAggregationsV1Api(api_client)
210
+ workspace_id = 'workspace_id_example' # str |
211
+ page = 1 # int | The page number to fetch. (optional) (default to 1)
212
+ page_size = 10 # int | The number of items per page. (optional) (default to 10)
213
+
214
+ try:
215
+ # Get Custom Aggregation.
216
+ api_response = api_instance.get_custom_aggregations_for_workspace(workspace_id, page=page, page_size=page_size)
217
+ print("The response of CustomAggregationsV1Api->get_custom_aggregations_for_workspace:\n")
218
+ pprint(api_response)
219
+ except Exception as e:
220
+ print("Exception when calling CustomAggregationsV1Api->get_custom_aggregations_for_workspace: %s\n" % e)
221
+ ```
222
+
223
+
224
+
225
+ ### Parameters
226
+
227
+
228
+ Name | Type | Description | Notes
229
+ ------------- | ------------- | ------------- | -------------
230
+ **workspace_id** | **str**| |
231
+ **page** | **int**| The page number to fetch. | [optional] [default to 1]
232
+ **page_size** | **int**| The number of items per page. | [optional] [default to 10]
233
+
234
+ ### Return type
235
+
236
+ [**ResourceListCustomAggregationSpecSchema**](ResourceListCustomAggregationSpecSchema.md)
146
237
 
147
238
  ### Authorization
148
239
 
@@ -93,6 +93,8 @@
93
93
 
94
94
  * `WORKSPACE_LIST_DATASETS` (value: `'workspace_list_datasets'`)
95
95
 
96
+ * `WORKSPACE_LIST_CUSTOM_AGGREGATIONS` (value: `'workspace_list_custom_aggregations'`)
97
+
96
98
  * `PROJECT_READ` (value: `'project_read'`)
97
99
 
98
100
  * `PROJECT_UPDATE` (value: `'project_update'`)