From 41ac1ec69214a20156ec215b8aac183165207db9 Mon Sep 17 00:00:00 2001 From: GitHub Action Bot Date: Wed, 25 Sep 2024 13:34:03 +0000 Subject: [PATCH] Automated build 'Automated commit 'Merge pull request #1829 from sailpoint/fix/identityAttributeConfig Remove anyof additional properties for transform definition attributes' by github action: 11034110112' python sdk: 11034127625 --- .openapi-generator/FILES | 3 - sailpoint/beta/__init__.py | 1 - sailpoint/beta/docs/TransformDefinition1.md | 2 +- .../TransformDefinition1AttributesValue.md | 28 ---- sailpoint/beta/models/__init__.py | 1 - .../beta/models/transform_definition1.py | 17 +-- .../transform_definition1_attributes_value.py | 138 ------------------ ..._transform_definition1_attributes_value.py | 50 ------- sailpoint/beta_README.md | 1 - sailpoint/v2024/__init__.py | 1 - sailpoint/v2024/api/identity_profiles_api.py | 12 +- sailpoint/v2024/docs/IdentityProfilesApi.md | 4 +- sailpoint/v2024/docs/TransformDefinition.md | 2 +- .../TransformDefinitionAttributesValue.md | 28 ---- sailpoint/v2024/models/__init__.py | 1 - .../v2024/models/transform_definition.py | 17 +-- .../transform_definition_attributes_value.py | 138 ------------------ ...t_transform_definition_attributes_value.py | 50 ------- sailpoint/v2024_README.md | 1 - sailpoint/v3/__init__.py | 1 - sailpoint/v3/api/identity_profiles_api.py | 12 +- sailpoint/v3/docs/IdentityProfilesApi.md | 4 +- sailpoint/v3/docs/TransformDefinition.md | 2 +- .../TransformDefinitionAttributesValue.md | 28 ---- sailpoint/v3/models/__init__.py | 1 - sailpoint/v3/models/transform_definition.py | 17 +-- .../transform_definition_attributes_value.py | 138 ------------------ ...t_transform_definition_attributes_value.py | 50 ------- sailpoint/v3_README.md | 1 - 29 files changed, 25 insertions(+), 724 deletions(-) delete mode 100644 sailpoint/beta/docs/TransformDefinition1AttributesValue.md delete mode 100644 sailpoint/beta/models/transform_definition1_attributes_value.py delete mode 100644 sailpoint/beta/test/test_transform_definition1_attributes_value.py delete mode 100644 sailpoint/v2024/docs/TransformDefinitionAttributesValue.md delete mode 100644 sailpoint/v2024/models/transform_definition_attributes_value.py delete mode 100644 sailpoint/v2024/test/test_transform_definition_attributes_value.py delete mode 100644 sailpoint/v3/docs/TransformDefinitionAttributesValue.md delete mode 100644 sailpoint/v3/models/transform_definition_attributes_value.py delete mode 100644 sailpoint/v3/test/test_transform_definition_attributes_value.py diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 8c7ed6f27..d9811a761 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -1077,7 +1077,6 @@ sailpoint/v2024/docs/TestWorkflowRequest.md sailpoint/v2024/docs/TextQuery.md sailpoint/v2024/docs/Transform.md sailpoint/v2024/docs/TransformDefinition.md -sailpoint/v2024/docs/TransformDefinitionAttributesValue.md sailpoint/v2024/docs/TransformRead.md sailpoint/v2024/docs/TransformsApi.md sailpoint/v2024/docs/TranslationMessage.md @@ -2072,7 +2071,6 @@ sailpoint/v2024/models/test_workflow_request.py sailpoint/v2024/models/text_query.py sailpoint/v2024/models/transform.py sailpoint/v2024/models/transform_definition.py -sailpoint/v2024/models/transform_definition_attributes_value.py sailpoint/v2024/models/transform_read.py sailpoint/v2024/models/translation_message.py sailpoint/v2024/models/trigger.py @@ -3134,7 +3132,6 @@ sailpoint/v2024/test/test_test_workflow_request.py sailpoint/v2024/test/test_text_query.py sailpoint/v2024/test/test_transform.py sailpoint/v2024/test/test_transform_definition.py -sailpoint/v2024/test/test_transform_definition_attributes_value.py sailpoint/v2024/test/test_transform_read.py sailpoint/v2024/test/test_transforms_api.py sailpoint/v2024/test/test_translation_message.py diff --git a/sailpoint/beta/__init__.py b/sailpoint/beta/__init__.py index 2645110a1..e90a024c4 100644 --- a/sailpoint/beta/__init__.py +++ b/sailpoint/beta/__init__.py @@ -906,7 +906,6 @@ from sailpoint.beta.models.transform import Transform from sailpoint.beta.models.transform_definition import TransformDefinition from sailpoint.beta.models.transform_definition1 import TransformDefinition1 -from sailpoint.beta.models.transform_definition1_attributes_value import TransformDefinition1AttributesValue from sailpoint.beta.models.transform_read import TransformRead from sailpoint.beta.models.translation_message import TranslationMessage from sailpoint.beta.models.trigger import Trigger diff --git a/sailpoint/beta/docs/TransformDefinition1.md b/sailpoint/beta/docs/TransformDefinition1.md index 42ef75c5c..6b3231d0f 100644 --- a/sailpoint/beta/docs/TransformDefinition1.md +++ b/sailpoint/beta/docs/TransformDefinition1.md @@ -6,7 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **type** | **str** | The type of the transform definition. | [optional] -**attributes** | [**Dict[str, TransformDefinition1AttributesValue]**](TransformDefinition1AttributesValue.md) | Arbitrary key-value pairs to store any metadata for the object | [optional] +**attributes** | **Dict[str, object]** | Arbitrary key-value pairs to store any metadata for the object | [optional] ## Example diff --git a/sailpoint/beta/docs/TransformDefinition1AttributesValue.md b/sailpoint/beta/docs/TransformDefinition1AttributesValue.md deleted file mode 100644 index 6b76c4b8c..000000000 --- a/sailpoint/beta/docs/TransformDefinition1AttributesValue.md +++ /dev/null @@ -1,28 +0,0 @@ -# TransformDefinition1AttributesValue - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - -## Example - -```python -from sailpoint.beta.models.transform_definition1_attributes_value import TransformDefinition1AttributesValue - -# TODO update the JSON string below -json = "{}" -# create an instance of TransformDefinition1AttributesValue from a JSON string -transform_definition1_attributes_value_instance = TransformDefinition1AttributesValue.from_json(json) -# print the JSON string representation of the object -print(TransformDefinition1AttributesValue.to_json()) - -# convert the object into a dict -transform_definition1_attributes_value_dict = transform_definition1_attributes_value_instance.to_dict() -# create an instance of TransformDefinition1AttributesValue from a dict -transform_definition1_attributes_value_from_dict = TransformDefinition1AttributesValue.from_dict(transform_definition1_attributes_value_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/sailpoint/beta/models/__init__.py b/sailpoint/beta/models/__init__.py index 7e8f203e9..d0411ab03 100644 --- a/sailpoint/beta/models/__init__.py +++ b/sailpoint/beta/models/__init__.py @@ -817,7 +817,6 @@ from sailpoint.beta.models.transform import Transform from sailpoint.beta.models.transform_definition import TransformDefinition from sailpoint.beta.models.transform_definition1 import TransformDefinition1 -from sailpoint.beta.models.transform_definition1_attributes_value import TransformDefinition1AttributesValue from sailpoint.beta.models.transform_read import TransformRead from sailpoint.beta.models.translation_message import TranslationMessage from sailpoint.beta.models.trigger import Trigger diff --git a/sailpoint/beta/models/transform_definition1.py b/sailpoint/beta/models/transform_definition1.py index 54223a536..9ae996ec7 100644 --- a/sailpoint/beta/models/transform_definition1.py +++ b/sailpoint/beta/models/transform_definition1.py @@ -19,7 +19,6 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr from typing import Any, ClassVar, Dict, List, Optional -from sailpoint.beta.models.transform_definition1_attributes_value import TransformDefinition1AttributesValue from typing import Optional, Set from typing_extensions import Self @@ -28,7 +27,7 @@ class TransformDefinition1(BaseModel): TransformDefinition1 """ # noqa: E501 type: Optional[StrictStr] = Field(default=None, description="The type of the transform definition.") - attributes: Optional[Dict[str, TransformDefinition1AttributesValue]] = Field(default=None, description="Arbitrary key-value pairs to store any metadata for the object") + attributes: Optional[Dict[str, Any]] = Field(default=None, description="Arbitrary key-value pairs to store any metadata for the object") __properties: ClassVar[List[str]] = ["type", "attributes"] model_config = ConfigDict( @@ -70,13 +69,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # override the default output from pydantic by calling `to_dict()` of each value in attributes (dict) - _field_dict = {} - if self.attributes: - for _key_attributes in self.attributes: - if self.attributes[_key_attributes]: - _field_dict[_key_attributes] = self.attributes[_key_attributes].to_dict() - _dict['attributes'] = _field_dict return _dict @classmethod @@ -90,12 +82,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "type": obj.get("type"), - "attributes": dict( - (_k, TransformDefinition1AttributesValue.from_dict(_v)) - for _k, _v in obj["attributes"].items() - ) - if obj.get("attributes") is not None - else None + "attributes": obj.get("attributes") }) return _obj diff --git a/sailpoint/beta/models/transform_definition1_attributes_value.py b/sailpoint/beta/models/transform_definition1_attributes_value.py deleted file mode 100644 index 1994da1dd..000000000 --- a/sailpoint/beta/models/transform_definition1_attributes_value.py +++ /dev/null @@ -1,138 +0,0 @@ -# coding: utf-8 - -""" - Identity Security Cloud Beta API - - Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. These APIs are in beta and are subject to change. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. - - The version of the OpenAPI document: 3.1.0-beta - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -from inspect import getfullargspec -import json -import pprint -import re # noqa: F401 -from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator -from typing import Any, Dict, Optional -from typing import Union, Any, List, Set, TYPE_CHECKING, Optional, Dict -from typing_extensions import Literal, Self -from pydantic import Field - -TRANSFORMDEFINITION1ATTRIBUTESVALUE_ANY_OF_SCHEMAS = ["object", "str"] - -class TransformDefinition1AttributesValue(BaseModel): - """ - TransformDefinition1AttributesValue - """ - - # data type: str - anyof_schema_1_validator: Optional[StrictStr] = None - # data type: object - anyof_schema_2_validator: Optional[Dict[str, Any]] = None - if TYPE_CHECKING: - actual_instance: Optional[Union[object, str]] = None - else: - actual_instance: Any = None - any_of_schemas: Set[str] = { "object", "str" } - - model_config = { - "validate_assignment": True, - "protected_namespaces": (), - } - - def __init__(self, *args, **kwargs) -> None: - if args: - if len(args) > 1: - raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`") - if kwargs: - raise ValueError("If a position argument is used, keyword arguments cannot be used.") - super().__init__(actual_instance=args[0]) - else: - super().__init__(**kwargs) - - @field_validator('actual_instance') - def actual_instance_must_validate_anyof(cls, v): - instance = TransformDefinition1AttributesValue.model_construct() - error_messages = [] - # validate data type: str - try: - instance.anyof_schema_1_validator = v - return v - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - # validate data type: object - try: - instance.anyof_schema_2_validator = v - return v - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - if error_messages: - # no match - raise ValueError("No match found when setting the actual_instance in TransformDefinition1AttributesValue with anyOf schemas: object, str. Details: " + ", ".join(error_messages)) - else: - return v - - @classmethod - def from_dict(cls, obj: Dict[str, Any]) -> Self: - return cls.from_json(json.dumps(obj)) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Returns the object represented by the json string""" - instance = cls.model_construct() - error_messages = [] - # deserialize data into str - try: - # validation - instance.anyof_schema_1_validator = json.loads(json_str) - # assign value to actual_instance - instance.actual_instance = instance.anyof_schema_1_validator - return instance - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - # deserialize data into object - try: - # validation - instance.anyof_schema_2_validator = json.loads(json_str) - # assign value to actual_instance - instance.actual_instance = instance.anyof_schema_2_validator - return instance - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - - if error_messages: - # no match - raise ValueError("No match found when deserializing the JSON string into TransformDefinition1AttributesValue with anyOf schemas: object, str. Details: " + ", ".join(error_messages)) - else: - return instance - - def to_json(self) -> str: - """Returns the JSON representation of the actual instance""" - if self.actual_instance is None: - return "null" - - if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json): - return self.actual_instance.to_json() - else: - return json.dumps(self.actual_instance) - - def to_dict(self) -> Optional[Union[Dict[str, Any], object, str]]: - """Returns the dict representation of the actual instance""" - if self.actual_instance is None: - return None - - if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict): - return self.actual_instance.to_dict() - else: - return self.actual_instance - - def to_str(self) -> str: - """Returns the string representation of the actual instance""" - return pprint.pformat(self.model_dump()) - - diff --git a/sailpoint/beta/test/test_transform_definition1_attributes_value.py b/sailpoint/beta/test/test_transform_definition1_attributes_value.py deleted file mode 100644 index c5d899bfe..000000000 --- a/sailpoint/beta/test/test_transform_definition1_attributes_value.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding: utf-8 - -""" - Identity Security Cloud Beta API - - Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. These APIs are in beta and are subject to change. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. - - The version of the OpenAPI document: 3.1.0-beta - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from sailpoint.beta.models.transform_definition1_attributes_value import TransformDefinition1AttributesValue - -class TestTransformDefinition1AttributesValue(unittest.TestCase): - """TransformDefinition1AttributesValue unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> TransformDefinition1AttributesValue: - """Test TransformDefinition1AttributesValue - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `TransformDefinition1AttributesValue` - """ - model = TransformDefinition1AttributesValue() - if include_optional: - return TransformDefinition1AttributesValue( - ) - else: - return TransformDefinition1AttributesValue( - ) - """ - - def testTransformDefinition1AttributesValue(self): - """Test TransformDefinition1AttributesValue""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/sailpoint/beta_README.md b/sailpoint/beta_README.md index 322112bb2..b89653054 100644 --- a/sailpoint/beta_README.md +++ b/sailpoint/beta_README.md @@ -1426,7 +1426,6 @@ Class | Method | HTTP request | Description - [Transform](sailpoint/beta/docs/Transform.md) - [TransformDefinition](sailpoint/beta/docs/TransformDefinition.md) - [TransformDefinition1](sailpoint/beta/docs/TransformDefinition1.md) - - [TransformDefinition1AttributesValue](sailpoint/beta/docs/TransformDefinition1AttributesValue.md) - [TransformRead](sailpoint/beta/docs/TransformRead.md) - [TranslationMessage](sailpoint/beta/docs/TranslationMessage.md) - [Trigger](sailpoint/beta/docs/Trigger.md) diff --git a/sailpoint/v2024/__init__.py b/sailpoint/v2024/__init__.py index 57dc20c5d..c9a7a9983 100644 --- a/sailpoint/v2024/__init__.py +++ b/sailpoint/v2024/__init__.py @@ -1029,7 +1029,6 @@ from sailpoint.v2024.models.text_query import TextQuery from sailpoint.v2024.models.transform import Transform from sailpoint.v2024.models.transform_definition import TransformDefinition -from sailpoint.v2024.models.transform_definition_attributes_value import TransformDefinitionAttributesValue from sailpoint.v2024.models.transform_read import TransformRead from sailpoint.v2024.models.translation_message import TranslationMessage from sailpoint.v2024.models.trigger import Trigger diff --git a/sailpoint/v2024/api/identity_profiles_api.py b/sailpoint/v2024/api/identity_profiles_api.py index aa5b80a47..1c410e322 100644 --- a/sailpoint/v2024/api/identity_profiles_api.py +++ b/sailpoint/v2024/api/identity_profiles_api.py @@ -2097,7 +2097,7 @@ def list_identity_profiles( limit: Annotated[Optional[Annotated[int, Field(le=250, strict=True, ge=0)]], Field(description="Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, count: Annotated[Optional[StrictBool], Field(description="If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, - filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, + filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, sorters: Annotated[Optional[StrictStr], Field(description="Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name**")] = None, _request_timeout: Union[ None, @@ -2122,7 +2122,7 @@ def list_identity_profiles( :type offset: int :param count: If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. :type count: bool - :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* + :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* :type filters: str :param sorters: Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** :type sorters: str @@ -2185,7 +2185,7 @@ def list_identity_profiles_with_http_info( limit: Annotated[Optional[Annotated[int, Field(le=250, strict=True, ge=0)]], Field(description="Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, count: Annotated[Optional[StrictBool], Field(description="If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, - filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, + filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, sorters: Annotated[Optional[StrictStr], Field(description="Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name**")] = None, _request_timeout: Union[ None, @@ -2210,7 +2210,7 @@ def list_identity_profiles_with_http_info( :type offset: int :param count: If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. :type count: bool - :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* + :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* :type filters: str :param sorters: Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** :type sorters: str @@ -2273,7 +2273,7 @@ def list_identity_profiles_without_preload_content( limit: Annotated[Optional[Annotated[int, Field(le=250, strict=True, ge=0)]], Field(description="Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, count: Annotated[Optional[StrictBool], Field(description="If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, - filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, + filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, sorters: Annotated[Optional[StrictStr], Field(description="Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name**")] = None, _request_timeout: Union[ None, @@ -2298,7 +2298,7 @@ def list_identity_profiles_without_preload_content( :type offset: int :param count: If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. :type count: bool - :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* + :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* :type filters: str :param sorters: Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** :type sorters: str diff --git a/sailpoint/v2024/docs/IdentityProfilesApi.md b/sailpoint/v2024/docs/IdentityProfilesApi.md index 11303fa56..222dd24e9 100644 --- a/sailpoint/v2024/docs/IdentityProfilesApi.md +++ b/sailpoint/v2024/docs/IdentityProfilesApi.md @@ -650,7 +650,7 @@ with sailpoint.v2024.ApiClient(configuration) as api_client: limit = 250 # int | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) offset = 0 # int | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) count = False # bool | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to False) - filters = 'id eq \"ef38f94347e94562b5bb8424a56397d8\"' # str | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* (optional) + filters = 'id eq \"ef38f94347e94562b5bb8424a56397d8\"' # str | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* (optional) sorters = 'id,name' # str | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** (optional) try: @@ -672,7 +672,7 @@ Name | Type | Description | Notes **limit** | **int**| Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. | [optional] [default to 250] **offset** | **int**| Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. | [optional] [default to 0] **count** | **bool**| If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. | [optional] [default to False] - **filters** | **str**| Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* | [optional] + **filters** | **str**| Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* | [optional] **sorters** | **str**| Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** | [optional] ### Return type diff --git a/sailpoint/v2024/docs/TransformDefinition.md b/sailpoint/v2024/docs/TransformDefinition.md index b161d4a99..15699d467 100644 --- a/sailpoint/v2024/docs/TransformDefinition.md +++ b/sailpoint/v2024/docs/TransformDefinition.md @@ -6,7 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **type** | **str** | The type of the transform definition. | [optional] -**attributes** | [**Dict[str, TransformDefinitionAttributesValue]**](TransformDefinitionAttributesValue.md) | Arbitrary key-value pairs to store any metadata for the object | [optional] +**attributes** | **Dict[str, object]** | Arbitrary key-value pairs to store any metadata for the object | [optional] ## Example diff --git a/sailpoint/v2024/docs/TransformDefinitionAttributesValue.md b/sailpoint/v2024/docs/TransformDefinitionAttributesValue.md deleted file mode 100644 index b292a3fd0..000000000 --- a/sailpoint/v2024/docs/TransformDefinitionAttributesValue.md +++ /dev/null @@ -1,28 +0,0 @@ -# TransformDefinitionAttributesValue - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - -## Example - -```python -from sailpoint.v2024.models.transform_definition_attributes_value import TransformDefinitionAttributesValue - -# TODO update the JSON string below -json = "{}" -# create an instance of TransformDefinitionAttributesValue from a JSON string -transform_definition_attributes_value_instance = TransformDefinitionAttributesValue.from_json(json) -# print the JSON string representation of the object -print(TransformDefinitionAttributesValue.to_json()) - -# convert the object into a dict -transform_definition_attributes_value_dict = transform_definition_attributes_value_instance.to_dict() -# create an instance of TransformDefinitionAttributesValue from a dict -transform_definition_attributes_value_from_dict = TransformDefinitionAttributesValue.from_dict(transform_definition_attributes_value_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/sailpoint/v2024/models/__init__.py b/sailpoint/v2024/models/__init__.py index d58faefb9..3220ff333 100644 --- a/sailpoint/v2024/models/__init__.py +++ b/sailpoint/v2024/models/__init__.py @@ -932,7 +932,6 @@ from sailpoint.v2024.models.text_query import TextQuery from sailpoint.v2024.models.transform import Transform from sailpoint.v2024.models.transform_definition import TransformDefinition -from sailpoint.v2024.models.transform_definition_attributes_value import TransformDefinitionAttributesValue from sailpoint.v2024.models.transform_read import TransformRead from sailpoint.v2024.models.translation_message import TranslationMessage from sailpoint.v2024.models.trigger import Trigger diff --git a/sailpoint/v2024/models/transform_definition.py b/sailpoint/v2024/models/transform_definition.py index c36f472f7..32e1e1876 100644 --- a/sailpoint/v2024/models/transform_definition.py +++ b/sailpoint/v2024/models/transform_definition.py @@ -19,7 +19,6 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr from typing import Any, ClassVar, Dict, List, Optional -from sailpoint.v2024.models.transform_definition_attributes_value import TransformDefinitionAttributesValue from typing import Optional, Set from typing_extensions import Self @@ -28,7 +27,7 @@ class TransformDefinition(BaseModel): TransformDefinition """ # noqa: E501 type: Optional[StrictStr] = Field(default=None, description="The type of the transform definition.") - attributes: Optional[Dict[str, TransformDefinitionAttributesValue]] = Field(default=None, description="Arbitrary key-value pairs to store any metadata for the object") + attributes: Optional[Dict[str, Any]] = Field(default=None, description="Arbitrary key-value pairs to store any metadata for the object") __properties: ClassVar[List[str]] = ["type", "attributes"] model_config = ConfigDict( @@ -70,13 +69,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # override the default output from pydantic by calling `to_dict()` of each value in attributes (dict) - _field_dict = {} - if self.attributes: - for _key_attributes in self.attributes: - if self.attributes[_key_attributes]: - _field_dict[_key_attributes] = self.attributes[_key_attributes].to_dict() - _dict['attributes'] = _field_dict return _dict @classmethod @@ -90,12 +82,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "type": obj.get("type"), - "attributes": dict( - (_k, TransformDefinitionAttributesValue.from_dict(_v)) - for _k, _v in obj["attributes"].items() - ) - if obj.get("attributes") is not None - else None + "attributes": obj.get("attributes") }) return _obj diff --git a/sailpoint/v2024/models/transform_definition_attributes_value.py b/sailpoint/v2024/models/transform_definition_attributes_value.py deleted file mode 100644 index 003b36354..000000000 --- a/sailpoint/v2024/models/transform_definition_attributes_value.py +++ /dev/null @@ -1,138 +0,0 @@ -# coding: utf-8 - -""" - Identity Security Cloud V2024 API - - Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. - - The version of the OpenAPI document: v2024 - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -from inspect import getfullargspec -import json -import pprint -import re # noqa: F401 -from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator -from typing import Any, Dict, Optional -from typing import Union, Any, List, Set, TYPE_CHECKING, Optional, Dict -from typing_extensions import Literal, Self -from pydantic import Field - -TRANSFORMDEFINITIONATTRIBUTESVALUE_ANY_OF_SCHEMAS = ["object", "str"] - -class TransformDefinitionAttributesValue(BaseModel): - """ - TransformDefinitionAttributesValue - """ - - # data type: str - anyof_schema_1_validator: Optional[StrictStr] = None - # data type: object - anyof_schema_2_validator: Optional[Dict[str, Any]] = None - if TYPE_CHECKING: - actual_instance: Optional[Union[object, str]] = None - else: - actual_instance: Any = None - any_of_schemas: Set[str] = { "object", "str" } - - model_config = { - "validate_assignment": True, - "protected_namespaces": (), - } - - def __init__(self, *args, **kwargs) -> None: - if args: - if len(args) > 1: - raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`") - if kwargs: - raise ValueError("If a position argument is used, keyword arguments cannot be used.") - super().__init__(actual_instance=args[0]) - else: - super().__init__(**kwargs) - - @field_validator('actual_instance') - def actual_instance_must_validate_anyof(cls, v): - instance = TransformDefinitionAttributesValue.model_construct() - error_messages = [] - # validate data type: str - try: - instance.anyof_schema_1_validator = v - return v - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - # validate data type: object - try: - instance.anyof_schema_2_validator = v - return v - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - if error_messages: - # no match - raise ValueError("No match found when setting the actual_instance in TransformDefinitionAttributesValue with anyOf schemas: object, str. Details: " + ", ".join(error_messages)) - else: - return v - - @classmethod - def from_dict(cls, obj: Dict[str, Any]) -> Self: - return cls.from_json(json.dumps(obj)) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Returns the object represented by the json string""" - instance = cls.model_construct() - error_messages = [] - # deserialize data into str - try: - # validation - instance.anyof_schema_1_validator = json.loads(json_str) - # assign value to actual_instance - instance.actual_instance = instance.anyof_schema_1_validator - return instance - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - # deserialize data into object - try: - # validation - instance.anyof_schema_2_validator = json.loads(json_str) - # assign value to actual_instance - instance.actual_instance = instance.anyof_schema_2_validator - return instance - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - - if error_messages: - # no match - raise ValueError("No match found when deserializing the JSON string into TransformDefinitionAttributesValue with anyOf schemas: object, str. Details: " + ", ".join(error_messages)) - else: - return instance - - def to_json(self) -> str: - """Returns the JSON representation of the actual instance""" - if self.actual_instance is None: - return "null" - - if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json): - return self.actual_instance.to_json() - else: - return json.dumps(self.actual_instance) - - def to_dict(self) -> Optional[Union[Dict[str, Any], object, str]]: - """Returns the dict representation of the actual instance""" - if self.actual_instance is None: - return None - - if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict): - return self.actual_instance.to_dict() - else: - return self.actual_instance - - def to_str(self) -> str: - """Returns the string representation of the actual instance""" - return pprint.pformat(self.model_dump()) - - diff --git a/sailpoint/v2024/test/test_transform_definition_attributes_value.py b/sailpoint/v2024/test/test_transform_definition_attributes_value.py deleted file mode 100644 index 91da16a34..000000000 --- a/sailpoint/v2024/test/test_transform_definition_attributes_value.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding: utf-8 - -""" - Identity Security Cloud V2024 API - - Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. - - The version of the OpenAPI document: v2024 - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from sailpoint.v2024.models.transform_definition_attributes_value import TransformDefinitionAttributesValue - -class TestTransformDefinitionAttributesValue(unittest.TestCase): - """TransformDefinitionAttributesValue unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> TransformDefinitionAttributesValue: - """Test TransformDefinitionAttributesValue - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `TransformDefinitionAttributesValue` - """ - model = TransformDefinitionAttributesValue() - if include_optional: - return TransformDefinitionAttributesValue( - ) - else: - return TransformDefinitionAttributesValue( - ) - """ - - def testTransformDefinitionAttributesValue(self): - """Test TransformDefinitionAttributesValue""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/sailpoint/v2024_README.md b/sailpoint/v2024_README.md index 99e2e98d2..100cdf293 100644 --- a/sailpoint/v2024_README.md +++ b/sailpoint/v2024_README.md @@ -1601,7 +1601,6 @@ Class | Method | HTTP request | Description - [TextQuery](sailpoint/v2024/docs/TextQuery.md) - [Transform](sailpoint/v2024/docs/Transform.md) - [TransformDefinition](sailpoint/v2024/docs/TransformDefinition.md) - - [TransformDefinitionAttributesValue](sailpoint/v2024/docs/TransformDefinitionAttributesValue.md) - [TransformRead](sailpoint/v2024/docs/TransformRead.md) - [TranslationMessage](sailpoint/v2024/docs/TranslationMessage.md) - [Trigger](sailpoint/v2024/docs/Trigger.md) diff --git a/sailpoint/v3/__init__.py b/sailpoint/v3/__init__.py index 7696480c6..af0891201 100644 --- a/sailpoint/v3/__init__.py +++ b/sailpoint/v3/__init__.py @@ -592,7 +592,6 @@ from sailpoint.v3.models.token_auth_response import TokenAuthResponse from sailpoint.v3.models.transform import Transform from sailpoint.v3.models.transform_definition import TransformDefinition -from sailpoint.v3.models.transform_definition_attributes_value import TransformDefinitionAttributesValue from sailpoint.v3.models.transform_read import TransformRead from sailpoint.v3.models.type_ahead_query import TypeAheadQuery from sailpoint.v3.models.typed_reference import TypedReference diff --git a/sailpoint/v3/api/identity_profiles_api.py b/sailpoint/v3/api/identity_profiles_api.py index f7e656d1b..c98ec1283 100644 --- a/sailpoint/v3/api/identity_profiles_api.py +++ b/sailpoint/v3/api/identity_profiles_api.py @@ -2097,7 +2097,7 @@ def list_identity_profiles( limit: Annotated[Optional[Annotated[int, Field(le=250, strict=True, ge=0)]], Field(description="Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, count: Annotated[Optional[StrictBool], Field(description="If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, - filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, + filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, sorters: Annotated[Optional[StrictStr], Field(description="Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name**")] = None, _request_timeout: Union[ None, @@ -2122,7 +2122,7 @@ def list_identity_profiles( :type offset: int :param count: If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. :type count: bool - :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* + :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* :type filters: str :param sorters: Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** :type sorters: str @@ -2185,7 +2185,7 @@ def list_identity_profiles_with_http_info( limit: Annotated[Optional[Annotated[int, Field(le=250, strict=True, ge=0)]], Field(description="Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, count: Annotated[Optional[StrictBool], Field(description="If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, - filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, + filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, sorters: Annotated[Optional[StrictStr], Field(description="Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name**")] = None, _request_timeout: Union[ None, @@ -2210,7 +2210,7 @@ def list_identity_profiles_with_http_info( :type offset: int :param count: If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. :type count: bool - :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* + :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* :type filters: str :param sorters: Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** :type sorters: str @@ -2273,7 +2273,7 @@ def list_identity_profiles_without_preload_content( limit: Annotated[Optional[Annotated[int, Field(le=250, strict=True, ge=0)]], Field(description="Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, offset: Annotated[Optional[Annotated[int, Field(strict=True, ge=0)]], Field(description="Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, count: Annotated[Optional[StrictBool], Field(description="If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information.")] = None, - filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, + filters: Annotated[Optional[StrictStr], Field(description="Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne*")] = None, sorters: Annotated[Optional[StrictStr], Field(description="Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name**")] = None, _request_timeout: Union[ None, @@ -2298,7 +2298,7 @@ def list_identity_profiles_without_preload_content( :type offset: int :param count: If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. :type count: bool - :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* + :param filters: Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* :type filters: str :param sorters: Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** :type sorters: str diff --git a/sailpoint/v3/docs/IdentityProfilesApi.md b/sailpoint/v3/docs/IdentityProfilesApi.md index bd9c34ab4..be8294814 100644 --- a/sailpoint/v3/docs/IdentityProfilesApi.md +++ b/sailpoint/v3/docs/IdentityProfilesApi.md @@ -650,7 +650,7 @@ with sailpoint.v3.ApiClient(configuration) as api_client: limit = 250 # int | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) offset = 0 # int | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) count = False # bool | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to False) - filters = 'id eq \"ef38f94347e94562b5bb8424a56397d8\"' # str | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* (optional) + filters = 'id eq \"ef38f94347e94562b5bb8424a56397d8\"' # str | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* (optional) sorters = 'id,name' # str | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** (optional) try: @@ -672,7 +672,7 @@ Name | Type | Description | Notes **limit** | **int**| Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. | [optional] [default to 250] **offset** | **int**| Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. | [optional] [default to 0] **count** | **bool**| If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. | [optional] [default to False] - **filters** | **str**| Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, in, le, lt, isnull, sw* **priority**: *eq, ne* | [optional] + **filters** | **str**| Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, sw* **priority**: *eq, ne* | [optional] **sorters** | **str**| Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** | [optional] ### Return type diff --git a/sailpoint/v3/docs/TransformDefinition.md b/sailpoint/v3/docs/TransformDefinition.md index 224c8175a..941fd52b7 100644 --- a/sailpoint/v3/docs/TransformDefinition.md +++ b/sailpoint/v3/docs/TransformDefinition.md @@ -6,7 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **type** | **str** | The type of the transform definition. | [optional] -**attributes** | [**Dict[str, TransformDefinitionAttributesValue]**](TransformDefinitionAttributesValue.md) | Arbitrary key-value pairs to store any metadata for the object | [optional] +**attributes** | **Dict[str, object]** | Arbitrary key-value pairs to store any metadata for the object | [optional] ## Example diff --git a/sailpoint/v3/docs/TransformDefinitionAttributesValue.md b/sailpoint/v3/docs/TransformDefinitionAttributesValue.md deleted file mode 100644 index eaa779f7e..000000000 --- a/sailpoint/v3/docs/TransformDefinitionAttributesValue.md +++ /dev/null @@ -1,28 +0,0 @@ -# TransformDefinitionAttributesValue - - -## Properties - -Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - -## Example - -```python -from sailpoint.v3.models.transform_definition_attributes_value import TransformDefinitionAttributesValue - -# TODO update the JSON string below -json = "{}" -# create an instance of TransformDefinitionAttributesValue from a JSON string -transform_definition_attributes_value_instance = TransformDefinitionAttributesValue.from_json(json) -# print the JSON string representation of the object -print(TransformDefinitionAttributesValue.to_json()) - -# convert the object into a dict -transform_definition_attributes_value_dict = transform_definition_attributes_value_instance.to_dict() -# create an instance of TransformDefinitionAttributesValue from a dict -transform_definition_attributes_value_from_dict = TransformDefinitionAttributesValue.from_dict(transform_definition_attributes_value_dict) -``` -[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) - - diff --git a/sailpoint/v3/models/__init__.py b/sailpoint/v3/models/__init__.py index 7a2665c0a..957377443 100644 --- a/sailpoint/v3/models/__init__.py +++ b/sailpoint/v3/models/__init__.py @@ -526,7 +526,6 @@ from sailpoint.v3.models.token_auth_response import TokenAuthResponse from sailpoint.v3.models.transform import Transform from sailpoint.v3.models.transform_definition import TransformDefinition -from sailpoint.v3.models.transform_definition_attributes_value import TransformDefinitionAttributesValue from sailpoint.v3.models.transform_read import TransformRead from sailpoint.v3.models.type_ahead_query import TypeAheadQuery from sailpoint.v3.models.typed_reference import TypedReference diff --git a/sailpoint/v3/models/transform_definition.py b/sailpoint/v3/models/transform_definition.py index 4bee2d962..a307576fa 100644 --- a/sailpoint/v3/models/transform_definition.py +++ b/sailpoint/v3/models/transform_definition.py @@ -19,7 +19,6 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr from typing import Any, ClassVar, Dict, List, Optional -from sailpoint.v3.models.transform_definition_attributes_value import TransformDefinitionAttributesValue from typing import Optional, Set from typing_extensions import Self @@ -28,7 +27,7 @@ class TransformDefinition(BaseModel): TransformDefinition """ # noqa: E501 type: Optional[StrictStr] = Field(default=None, description="The type of the transform definition.") - attributes: Optional[Dict[str, TransformDefinitionAttributesValue]] = Field(default=None, description="Arbitrary key-value pairs to store any metadata for the object") + attributes: Optional[Dict[str, Any]] = Field(default=None, description="Arbitrary key-value pairs to store any metadata for the object") __properties: ClassVar[List[str]] = ["type", "attributes"] model_config = ConfigDict( @@ -70,13 +69,6 @@ def to_dict(self) -> Dict[str, Any]: exclude=excluded_fields, exclude_none=True, ) - # override the default output from pydantic by calling `to_dict()` of each value in attributes (dict) - _field_dict = {} - if self.attributes: - for _key_attributes in self.attributes: - if self.attributes[_key_attributes]: - _field_dict[_key_attributes] = self.attributes[_key_attributes].to_dict() - _dict['attributes'] = _field_dict return _dict @classmethod @@ -90,12 +82,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: _obj = cls.model_validate({ "type": obj.get("type"), - "attributes": dict( - (_k, TransformDefinitionAttributesValue.from_dict(_v)) - for _k, _v in obj["attributes"].items() - ) - if obj.get("attributes") is not None - else None + "attributes": obj.get("attributes") }) return _obj diff --git a/sailpoint/v3/models/transform_definition_attributes_value.py b/sailpoint/v3/models/transform_definition_attributes_value.py deleted file mode 100644 index ae1655fbe..000000000 --- a/sailpoint/v3/models/transform_definition_attributes_value.py +++ /dev/null @@ -1,138 +0,0 @@ -# coding: utf-8 - -""" - Identity Security Cloud V3 API - - Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. - - The version of the OpenAPI document: 3.0.0 - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -from __future__ import annotations -from inspect import getfullargspec -import json -import pprint -import re # noqa: F401 -from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator -from typing import Any, Dict, Optional -from typing import Union, Any, List, Set, TYPE_CHECKING, Optional, Dict -from typing_extensions import Literal, Self -from pydantic import Field - -TRANSFORMDEFINITIONATTRIBUTESVALUE_ANY_OF_SCHEMAS = ["object", "str"] - -class TransformDefinitionAttributesValue(BaseModel): - """ - TransformDefinitionAttributesValue - """ - - # data type: str - anyof_schema_1_validator: Optional[StrictStr] = None - # data type: object - anyof_schema_2_validator: Optional[Dict[str, Any]] = None - if TYPE_CHECKING: - actual_instance: Optional[Union[object, str]] = None - else: - actual_instance: Any = None - any_of_schemas: Set[str] = { "object", "str" } - - model_config = { - "validate_assignment": True, - "protected_namespaces": (), - } - - def __init__(self, *args, **kwargs) -> None: - if args: - if len(args) > 1: - raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`") - if kwargs: - raise ValueError("If a position argument is used, keyword arguments cannot be used.") - super().__init__(actual_instance=args[0]) - else: - super().__init__(**kwargs) - - @field_validator('actual_instance') - def actual_instance_must_validate_anyof(cls, v): - instance = TransformDefinitionAttributesValue.model_construct() - error_messages = [] - # validate data type: str - try: - instance.anyof_schema_1_validator = v - return v - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - # validate data type: object - try: - instance.anyof_schema_2_validator = v - return v - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - if error_messages: - # no match - raise ValueError("No match found when setting the actual_instance in TransformDefinitionAttributesValue with anyOf schemas: object, str. Details: " + ", ".join(error_messages)) - else: - return v - - @classmethod - def from_dict(cls, obj: Dict[str, Any]) -> Self: - return cls.from_json(json.dumps(obj)) - - @classmethod - def from_json(cls, json_str: str) -> Self: - """Returns the object represented by the json string""" - instance = cls.model_construct() - error_messages = [] - # deserialize data into str - try: - # validation - instance.anyof_schema_1_validator = json.loads(json_str) - # assign value to actual_instance - instance.actual_instance = instance.anyof_schema_1_validator - return instance - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - # deserialize data into object - try: - # validation - instance.anyof_schema_2_validator = json.loads(json_str) - # assign value to actual_instance - instance.actual_instance = instance.anyof_schema_2_validator - return instance - except (ValidationError, ValueError) as e: - error_messages.append(str(e)) - - if error_messages: - # no match - raise ValueError("No match found when deserializing the JSON string into TransformDefinitionAttributesValue with anyOf schemas: object, str. Details: " + ", ".join(error_messages)) - else: - return instance - - def to_json(self) -> str: - """Returns the JSON representation of the actual instance""" - if self.actual_instance is None: - return "null" - - if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json): - return self.actual_instance.to_json() - else: - return json.dumps(self.actual_instance) - - def to_dict(self) -> Optional[Union[Dict[str, Any], object, str]]: - """Returns the dict representation of the actual instance""" - if self.actual_instance is None: - return None - - if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict): - return self.actual_instance.to_dict() - else: - return self.actual_instance - - def to_str(self) -> str: - """Returns the string representation of the actual instance""" - return pprint.pformat(self.model_dump()) - - diff --git a/sailpoint/v3/test/test_transform_definition_attributes_value.py b/sailpoint/v3/test/test_transform_definition_attributes_value.py deleted file mode 100644 index 2f17e2662..000000000 --- a/sailpoint/v3/test/test_transform_definition_attributes_value.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding: utf-8 - -""" - Identity Security Cloud V3 API - - Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. - - The version of the OpenAPI document: 3.0.0 - Generated by OpenAPI Generator (https://openapi-generator.tech) - - Do not edit the class manually. -""" # noqa: E501 - - -import unittest - -from sailpoint.v3.models.transform_definition_attributes_value import TransformDefinitionAttributesValue - -class TestTransformDefinitionAttributesValue(unittest.TestCase): - """TransformDefinitionAttributesValue unit test stubs""" - - def setUp(self): - pass - - def tearDown(self): - pass - - def make_instance(self, include_optional) -> TransformDefinitionAttributesValue: - """Test TransformDefinitionAttributesValue - include_optional is a boolean, when False only required - params are included, when True both required and - optional params are included """ - # uncomment below to create an instance of `TransformDefinitionAttributesValue` - """ - model = TransformDefinitionAttributesValue() - if include_optional: - return TransformDefinitionAttributesValue( - ) - else: - return TransformDefinitionAttributesValue( - ) - """ - - def testTransformDefinitionAttributesValue(self): - """Test TransformDefinitionAttributesValue""" - # inst_req_only = self.make_instance(include_optional=False) - # inst_req_and_optional = self.make_instance(include_optional=True) - -if __name__ == '__main__': - unittest.main() diff --git a/sailpoint/v3_README.md b/sailpoint/v3_README.md index efe3378b0..b20213b32 100644 --- a/sailpoint/v3_README.md +++ b/sailpoint/v3_README.md @@ -951,7 +951,6 @@ Class | Method | HTTP request | Description - [TokenAuthResponse](sailpoint/v3/docs/TokenAuthResponse.md) - [Transform](sailpoint/v3/docs/Transform.md) - [TransformDefinition](sailpoint/v3/docs/TransformDefinition.md) - - [TransformDefinitionAttributesValue](sailpoint/v3/docs/TransformDefinitionAttributesValue.md) - [TransformRead](sailpoint/v3/docs/TransformRead.md) - [TypeAheadQuery](sailpoint/v3/docs/TypeAheadQuery.md) - [TypedReference](sailpoint/v3/docs/TypedReference.md)