From 0f7ff94c4de04417c9b775726e2db506fd8fa94f Mon Sep 17 00:00:00 2001 From: box-sdk-build Date: Wed, 22 Oct 2025 07:18:53 -0700 Subject: [PATCH] feat: add GET enterprise configuration endpoint (box/box-openapi#559) --- .codegen.json | 2 +- box_sdk_gen/client.py | 7 + box_sdk_gen/managers/__init__.py | 2 + .../managers/enterprise_configurations.py | 100 +++++ box_sdk_gen/schemas/v2025_r0/__init__.py | 42 ++ .../collaboration_permissions_v2025_r0.py | 44 ++ .../collaboration_restriction_v2025_r0.py | 8 + ...om_session_duration_group_item_v2025_r0.py | 20 + ...figuration_content_and_sharing_v2025_r0.py | 389 ++++++++++++++++++ ...ise_configuration_item_boolean_v2025_r0.py | 21 + ...ise_configuration_item_integer_v2025_r0.py | 21 + ...rise_configuration_item_string_v2025_r0.py | 21 + .../enterprise_configuration_item_v2025_r0.py | 15 + ...erprise_configuration_security_v2025_r0.py | 285 +++++++++++++ ...nterprise_configuration_shield_v2025_r0.py | 21 + ...se_configuration_user_settings_v2025_r0.py | 148 +++++++ .../enterprise_configuration_v2025_r0.py | 60 +++ .../enterprise_feature_setting_v2025_r0.py | 60 +++ ...terprise_feature_settings_item_v2025_r0.py | 27 ++ ...ernal_collab_security_settings_v2025_r0.py | 52 +++ .../v2025_r0/keysafe_settings_v2025_r0.py | 44 ++ .../schemas/v2025_r0/list_user_v2025_r0.py | 28 ++ .../shared_link_permissions_v2025_r0.py | 32 ++ .../v2025_r0/shield_rule_item_v2025_r0.py | 66 +++ .../user_or_group_reference_v2025_r0.py | 33 ++ .../v2025_r0/user_tracking_code_v2025_r0.py | 20 + docs/README.md | 1 + docs/enterprise_configurations.md | 31 ++ 28 files changed, 1599 insertions(+), 1 deletion(-) create mode 100644 box_sdk_gen/managers/enterprise_configurations.py create mode 100644 box_sdk_gen/schemas/v2025_r0/collaboration_permissions_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/collaboration_restriction_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/custom_session_duration_group_item_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_content_and_sharing_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_boolean_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_integer_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_string_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_security_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_shield_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_user_settings_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_configuration_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_feature_setting_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/enterprise_feature_settings_item_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/external_collab_security_settings_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/keysafe_settings_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/list_user_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/shared_link_permissions_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/shield_rule_item_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/user_or_group_reference_v2025_r0.py create mode 100644 box_sdk_gen/schemas/v2025_r0/user_tracking_code_v2025_r0.py create mode 100644 docs/enterprise_configurations.md diff --git a/.codegen.json b/.codegen.json index 9f21ce570..c22868b02 100644 --- a/.codegen.json +++ b/.codegen.json @@ -1 +1 @@ -{ "engineHash": "192deac", "specHash": "fa34496", "version": "10.0.1" } +{ "engineHash": "192deac", "specHash": "cf21406", "version": "10.0.1" } diff --git a/box_sdk_gen/client.py b/box_sdk_gen/client.py index 9d5c34948..914844877 100644 --- a/box_sdk_gen/client.py +++ b/box_sdk_gen/client.py @@ -172,6 +172,10 @@ from box_sdk_gen.managers.docgen import DocgenManager +from box_sdk_gen.managers.enterprise_configurations import ( + EnterpriseConfigurationsManager, +) + from box_sdk_gen.managers.hubs import HubsManager from box_sdk_gen.managers.hub_collaborations import HubCollaborationsManager @@ -429,6 +433,9 @@ def __init__(self, auth: Authentication, *, network_session: NetworkSession = No self.docgen = DocgenManager( auth=self.auth, network_session=self.network_session ) + self.enterprise_configurations = EnterpriseConfigurationsManager( + auth=self.auth, network_session=self.network_session + ) self.hubs = HubsManager(auth=self.auth, network_session=self.network_session) self.hub_collaborations = HubCollaborationsManager( auth=self.auth, network_session=self.network_session diff --git a/box_sdk_gen/managers/__init__.py b/box_sdk_gen/managers/__init__.py index f3a23b7fb..59e3e15f2 100644 --- a/box_sdk_gen/managers/__init__.py +++ b/box_sdk_gen/managers/__init__.py @@ -146,6 +146,8 @@ from box_sdk_gen.managers.docgen import * +from box_sdk_gen.managers.enterprise_configurations import * + from box_sdk_gen.managers.hubs import * from box_sdk_gen.managers.hub_collaborations import * diff --git a/box_sdk_gen/managers/enterprise_configurations.py b/box_sdk_gen/managers/enterprise_configurations.py new file mode 100644 index 000000000..56c09e02a --- /dev/null +++ b/box_sdk_gen/managers/enterprise_configurations.py @@ -0,0 +1,100 @@ +from typing import Optional + +from typing import Dict + +from box_sdk_gen.internal.utils import to_string + +from box_sdk_gen.serialization.json import deserialize + +from box_sdk_gen.networking.fetch_options import ResponseFormat + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_v2025_r0 import ( + EnterpriseConfigurationV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.client_error_v2025_r0 import ClientErrorV2025R0 + +from box_sdk_gen.parameters.v2025_r0.box_version_header_v2025_r0 import ( + BoxVersionHeaderV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + +from box_sdk_gen.networking.auth import Authentication + +from box_sdk_gen.networking.network import NetworkSession + +from box_sdk_gen.networking.fetch_options import FetchOptions + +from box_sdk_gen.networking.fetch_response import FetchResponse + +from box_sdk_gen.internal.utils import prepare_params + +from box_sdk_gen.internal.utils import to_string + +from box_sdk_gen.internal.utils import ByteStream + +from box_sdk_gen.serialization.json import sd_to_json + +from box_sdk_gen.serialization.json import SerializedData + + +class EnterpriseConfigurationsManager: + def __init__( + self, + *, + auth: Optional[Authentication] = None, + network_session: NetworkSession = None + ): + if network_session is None: + network_session = NetworkSession() + self.auth = auth + self.network_session = network_session + + def get_enterprise_configuration_by_id_v2025_r0( + self, + enterprise_id: str, + categories: str, + *, + box_version: BoxVersionHeaderV2025R0 = BoxVersionHeaderV2025R0._2025_0, + extra_headers: Optional[Dict[str, Optional[str]]] = None + ) -> EnterpriseConfigurationV2025R0: + """ + Retrieves the configuration for an enterprise. + :param enterprise_id: The ID of the enterprise. + Example: "3442311" + :type enterprise_id: str + :param categories: The comma-delimited list of the enterprise configuration categories. + Allowed values: `security`, `content_and_sharing`, `user_settings`, `shield`. + :type categories: str + :param box_version: Version header., defaults to BoxVersionHeaderV2025R0._2025_0 + :type box_version: BoxVersionHeaderV2025R0, optional + :param extra_headers: Extra headers that will be included in the HTTP request., defaults to None + :type extra_headers: Optional[Dict[str, Optional[str]]], optional + """ + if extra_headers is None: + extra_headers = {} + query_params_map: Dict[str, str] = prepare_params( + {'categories': to_string(categories)} + ) + headers_map: Dict[str, str] = prepare_params( + {'box-version': to_string(box_version), **extra_headers} + ) + response: FetchResponse = self.network_session.network_client.fetch( + FetchOptions( + url=''.join( + [ + self.network_session.base_urls.base_url, + '/2.0/enterprise_configurations/', + to_string(enterprise_id), + ] + ), + method='GET', + params=query_params_map, + headers=headers_map, + response_format=ResponseFormat.JSON, + auth=self.auth, + network_session=self.network_session, + ) + ) + return deserialize(response.data, EnterpriseConfigurationV2025R0) diff --git a/box_sdk_gen/schemas/v2025_r0/__init__.py b/box_sdk_gen/schemas/v2025_r0/__init__.py index b5405a205..ed524c996 100644 --- a/box_sdk_gen/schemas/v2025_r0/__init__.py +++ b/box_sdk_gen/schemas/v2025_r0/__init__.py @@ -4,6 +4,12 @@ from box_sdk_gen.schemas.v2025_r0.client_error_v2025_r0 import * +from box_sdk_gen.schemas.v2025_r0.collaboration_permissions_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.collaboration_restriction_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.custom_session_duration_group_item_v2025_r0 import * + from box_sdk_gen.schemas.v2025_r0.doc_gen_batch_base_v2025_r0 import * from box_sdk_gen.schemas.v2025_r0.doc_gen_document_generation_data_v2025_r0 import * @@ -16,8 +22,18 @@ from box_sdk_gen.schemas.v2025_r0.doc_gen_tags_processing_message_v2025_r0 import * +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_string_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_integer_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_boolean_v2025_r0 import * + from box_sdk_gen.schemas.v2025_r0.enterprise_reference_v2025_r0 import * +from box_sdk_gen.schemas.v2025_r0.external_collab_security_settings_v2025_r0 import * + from box_sdk_gen.schemas.v2025_r0.external_user_deletion_result_v2025_r0 import * from box_sdk_gen.schemas.v2025_r0.external_users_submit_delete_job_response_v2025_r0 import * @@ -62,6 +78,14 @@ from box_sdk_gen.schemas.v2025_r0.hub_update_request_v2025_r0 import * +from box_sdk_gen.schemas.v2025_r0.keysafe_settings_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_security_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.list_user_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.shared_link_permissions_v2025_r0 import * + from box_sdk_gen.schemas.v2025_r0.shield_list_mini_v2025_r0 import * from box_sdk_gen.schemas.v2025_r0.shield_lists_v2025_r0 import * @@ -86,6 +110,10 @@ from box_sdk_gen.schemas.v2025_r0.shield_list_v2025_r0 import * +from box_sdk_gen.schemas.v2025_r0.shield_rule_item_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_shield_v2025_r0 import * + from box_sdk_gen.schemas.v2025_r0.terms_of_service_base_v2025_r0 import * from box_sdk_gen.schemas.v2025_r0.user_base_v2025_r0 import * @@ -108,10 +136,24 @@ from box_sdk_gen.schemas.v2025_r0.doc_gen_jobs_full_v2025_r0 import * +from box_sdk_gen.schemas.v2025_r0.user_or_group_reference_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_feature_setting_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_feature_settings_item_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_content_and_sharing_v2025_r0 import * + from box_sdk_gen.schemas.v2025_r0.user_reference_v2025_r0 import * from box_sdk_gen.schemas.v2025_r0.external_users_submit_delete_job_request_v2025_r0 import * +from box_sdk_gen.schemas.v2025_r0.user_tracking_code_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_user_settings_v2025_r0 import * + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_v2025_r0 import * + from box_sdk_gen.schemas.v2025_r0.weblink_reference_v2025_r0 import * from box_sdk_gen.schemas.v2025_r0.hub_item_reference_v2025_r0 import * diff --git a/box_sdk_gen/schemas/v2025_r0/collaboration_permissions_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/collaboration_permissions_v2025_r0.py new file mode 100644 index 000000000..722aed583 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/collaboration_permissions_v2025_r0.py @@ -0,0 +1,44 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class CollaborationPermissionsV2025R0(BaseObject): + def __init__( + self, + *, + is_co_owner_role_enabled: Optional[bool] = None, + is_editor_role_enabled: Optional[bool] = None, + is_previewer_role_enabled: Optional[bool] = None, + is_previewer_uploader_role_enabled: Optional[bool] = None, + is_uploader_role_enabled: Optional[bool] = None, + is_viewer_role_enabled: Optional[bool] = None, + is_viewer_uploader_role_enabled: Optional[bool] = None, + **kwargs + ): + """ + :param is_co_owner_role_enabled: The co-owner role is enabled for collaboration., defaults to None + :type is_co_owner_role_enabled: Optional[bool], optional + :param is_editor_role_enabled: The editor role is enabled for collaboration., defaults to None + :type is_editor_role_enabled: Optional[bool], optional + :param is_previewer_role_enabled: The previewer role is enabled for collaboration., defaults to None + :type is_previewer_role_enabled: Optional[bool], optional + :param is_previewer_uploader_role_enabled: The previewer uploader role is enabled for collaboration., defaults to None + :type is_previewer_uploader_role_enabled: Optional[bool], optional + :param is_uploader_role_enabled: The uploader role is enabled for collaboration., defaults to None + :type is_uploader_role_enabled: Optional[bool], optional + :param is_viewer_role_enabled: The viewer role is enabled for collaboration., defaults to None + :type is_viewer_role_enabled: Optional[bool], optional + :param is_viewer_uploader_role_enabled: The viewer uploader role is enabled for collaboration., defaults to None + :type is_viewer_uploader_role_enabled: Optional[bool], optional + """ + super().__init__(**kwargs) + self.is_co_owner_role_enabled = is_co_owner_role_enabled + self.is_editor_role_enabled = is_editor_role_enabled + self.is_previewer_role_enabled = is_previewer_role_enabled + self.is_previewer_uploader_role_enabled = is_previewer_uploader_role_enabled + self.is_uploader_role_enabled = is_uploader_role_enabled + self.is_viewer_role_enabled = is_viewer_role_enabled + self.is_viewer_uploader_role_enabled = is_viewer_uploader_role_enabled diff --git a/box_sdk_gen/schemas/v2025_r0/collaboration_restriction_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/collaboration_restriction_v2025_r0.py new file mode 100644 index 000000000..ee9f7ac7c --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/collaboration_restriction_v2025_r0.py @@ -0,0 +1,8 @@ +from enum import Enum + +from box_sdk_gen.box.errors import BoxSDKError + + +class CollaborationRestrictionV2025R0(str, Enum): + INTERNAL = 'internal' + EXTERNAL = 'external' diff --git a/box_sdk_gen/schemas/v2025_r0/custom_session_duration_group_item_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/custom_session_duration_group_item_v2025_r0.py new file mode 100644 index 000000000..9e730640b --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/custom_session_duration_group_item_v2025_r0.py @@ -0,0 +1,20 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class CustomSessionDurationGroupItemV2025R0(BaseObject): + def __init__( + self, *, id: Optional[str] = None, name: Optional[str] = None, **kwargs + ): + """ + :param id: Group ID (numerical)., defaults to None + :type id: Optional[str], optional + :param name: Group Name., defaults to None + :type name: Optional[str], optional + """ + super().__init__(**kwargs) + self.id = id + self.name = name diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_content_and_sharing_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_content_and_sharing_v2025_r0.py new file mode 100644 index 000000000..0fe0cfaa4 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_content_and_sharing_v2025_r0.py @@ -0,0 +1,389 @@ +from typing import Optional + +from typing import List + +from enum import Enum + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.schemas.v2025_r0.enterprise_feature_settings_item_v2025_r0 import ( + EnterpriseFeatureSettingsItemV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_string_v2025_r0 import ( + EnterpriseConfigurationItemStringV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import ( + EnterpriseConfigurationItemV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.shared_link_permissions_v2025_r0 import ( + SharedLinkPermissionsV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_boolean_v2025_r0 import ( + EnterpriseConfigurationItemBooleanV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.collaboration_permissions_v2025_r0 import ( + CollaborationPermissionsV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.collaboration_restriction_v2025_r0 import ( + CollaborationRestrictionV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.list_user_v2025_r0 import ListUserV2025R0 + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_integer_v2025_r0 import ( + EnterpriseConfigurationItemIntegerV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationContentAndSharingV2025R0SharedLinkDefaultPermissionsSelectedField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[SharedLinkPermissionsV2025R0] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationContentAndSharingV2025R0CollaborationPermissionsField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[CollaborationPermissionsV2025R0] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationContentAndSharingV2025R0CollaborationRestrictionsField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[List[CollaborationRestrictionV2025R0]] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationStatusFieldValueField( + str, Enum +): + ENABLE_EXTERNAL_COLLABORATION = 'enable_external_collaboration' + LIMIT_COLLABORATION_TO_ALLOWLISTED_DOMAINS = ( + 'limit_collaboration_to_allowlisted_domains' + ) + + +class EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationStatusField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[ + EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationStatusFieldValueField + ] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param value: The external collaboration status., defaults to None + :type value: Optional[EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationStatusFieldValueField], optional + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[List[ListUserV2025R0]] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationContentAndSharingV2025R0PermanentDeletionAllowlistUsersField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[List[ListUserV2025R0]] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationContentAndSharingV2025R0(BaseObject): + def __init__( + self, + *, + enterprise_feature_settings: Optional[ + List[EnterpriseFeatureSettingsItemV2025R0] + ] = None, + sharing_item_type: Optional[EnterpriseConfigurationItemStringV2025R0] = None, + shared_link_company_definition: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + shared_link_access: Optional[EnterpriseConfigurationItemStringV2025R0] = None, + shared_link_default_access: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + shared_link_default_permissions_selected: Optional[ + EnterpriseConfigurationContentAndSharingV2025R0SharedLinkDefaultPermissionsSelectedField + ] = None, + is_open_custom_urls_disabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_custom_domain_hidden_in_shared_link: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + collaboration_permissions: Optional[ + EnterpriseConfigurationContentAndSharingV2025R0CollaborationPermissionsField + ] = None, + default_collaboration_role: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + is_invite_privilege_restricted: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + collaboration_restrictions: Optional[ + EnterpriseConfigurationContentAndSharingV2025R0CollaborationRestrictionsField + ] = None, + is_collaborator_invite_links_disabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_invite_group_collaborator_disabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_ownership_transfer_restricted: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + external_collaboration_status: Optional[ + EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationStatusField + ] = None, + external_collaboration_allowlist_users: Optional[ + EnterpriseConfigurationContentAndSharingV2025R0ExternalCollaborationAllowlistUsersField + ] = None, + is_watermarking_enterprise_feature_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_root_content_creation_restricted: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_tag_creation_restricted: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + tag_creation_restriction: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + is_email_uploads_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_custom_settings_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_forms_login_required: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_forms_branding_default_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_cc_free_trial_active: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_file_request_editors_allowed: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_file_request_branding_default_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_file_request_login_required: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_shared_links_expiration_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + shared_links_expiration_days: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + is_public_shared_links_expiration_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + public_shared_links_expiration_days: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + shared_expiration_target: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + is_shared_links_expiration_notification_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + shared_links_expiration_notification_days: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + is_shared_links_expiration_notification_prevented: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_auto_delete_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + auto_delete_days: Optional[EnterpriseConfigurationItemIntegerV2025R0] = None, + is_auto_delete_expiration_modification_prevented: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + auto_delete_target: Optional[EnterpriseConfigurationItemStringV2025R0] = None, + is_collaboration_expiration_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + collaboration_expiration_days: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + is_collaboration_expiration_modification_prevented: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_collaboration_expiration_notification_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + collaboration_expiration_target: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + trash_auto_clear_time: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + permanent_deletion_access: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + permanent_deletion_allowlist_users: Optional[ + EnterpriseConfigurationContentAndSharingV2025R0PermanentDeletionAllowlistUsersField + ] = None, + **kwargs + ): + super().__init__(**kwargs) + self.enterprise_feature_settings = enterprise_feature_settings + self.sharing_item_type = sharing_item_type + self.shared_link_company_definition = shared_link_company_definition + self.shared_link_access = shared_link_access + self.shared_link_default_access = shared_link_default_access + self.shared_link_default_permissions_selected = ( + shared_link_default_permissions_selected + ) + self.is_open_custom_urls_disabled = is_open_custom_urls_disabled + self.is_custom_domain_hidden_in_shared_link = ( + is_custom_domain_hidden_in_shared_link + ) + self.collaboration_permissions = collaboration_permissions + self.default_collaboration_role = default_collaboration_role + self.is_invite_privilege_restricted = is_invite_privilege_restricted + self.collaboration_restrictions = collaboration_restrictions + self.is_collaborator_invite_links_disabled = ( + is_collaborator_invite_links_disabled + ) + self.is_invite_group_collaborator_disabled = ( + is_invite_group_collaborator_disabled + ) + self.is_ownership_transfer_restricted = is_ownership_transfer_restricted + self.external_collaboration_status = external_collaboration_status + self.external_collaboration_allowlist_users = ( + external_collaboration_allowlist_users + ) + self.is_watermarking_enterprise_feature_enabled = ( + is_watermarking_enterprise_feature_enabled + ) + self.is_root_content_creation_restricted = is_root_content_creation_restricted + self.is_tag_creation_restricted = is_tag_creation_restricted + self.tag_creation_restriction = tag_creation_restriction + self.is_email_uploads_enabled = is_email_uploads_enabled + self.is_custom_settings_enabled = is_custom_settings_enabled + self.is_forms_login_required = is_forms_login_required + self.is_forms_branding_default_enabled = is_forms_branding_default_enabled + self.is_cc_free_trial_active = is_cc_free_trial_active + self.is_file_request_editors_allowed = is_file_request_editors_allowed + self.is_file_request_branding_default_enabled = ( + is_file_request_branding_default_enabled + ) + self.is_file_request_login_required = is_file_request_login_required + self.is_shared_links_expiration_enabled = is_shared_links_expiration_enabled + self.shared_links_expiration_days = shared_links_expiration_days + self.is_public_shared_links_expiration_enabled = ( + is_public_shared_links_expiration_enabled + ) + self.public_shared_links_expiration_days = public_shared_links_expiration_days + self.shared_expiration_target = shared_expiration_target + self.is_shared_links_expiration_notification_enabled = ( + is_shared_links_expiration_notification_enabled + ) + self.shared_links_expiration_notification_days = ( + shared_links_expiration_notification_days + ) + self.is_shared_links_expiration_notification_prevented = ( + is_shared_links_expiration_notification_prevented + ) + self.is_auto_delete_enabled = is_auto_delete_enabled + self.auto_delete_days = auto_delete_days + self.is_auto_delete_expiration_modification_prevented = ( + is_auto_delete_expiration_modification_prevented + ) + self.auto_delete_target = auto_delete_target + self.is_collaboration_expiration_enabled = is_collaboration_expiration_enabled + self.collaboration_expiration_days = collaboration_expiration_days + self.is_collaboration_expiration_modification_prevented = ( + is_collaboration_expiration_modification_prevented + ) + self.is_collaboration_expiration_notification_enabled = ( + is_collaboration_expiration_notification_enabled + ) + self.collaboration_expiration_target = collaboration_expiration_target + self.trash_auto_clear_time = trash_auto_clear_time + self.permanent_deletion_access = permanent_deletion_access + self.permanent_deletion_allowlist_users = permanent_deletion_allowlist_users diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_boolean_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_boolean_v2025_r0.py new file mode 100644 index 000000000..8ee1c95e6 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_boolean_v2025_r0.py @@ -0,0 +1,21 @@ +from typing import Optional + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import ( + EnterpriseConfigurationItemV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationItemBooleanV2025R0(EnterpriseConfigurationItemV2025R0): + def __init__( + self, *, value: Optional[bool] = None, is_used: Optional[bool] = None, **kwargs + ): + """ + :param value: The value of the enterprise configuration as a boolean., defaults to None + :type value: Optional[bool], optional + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_integer_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_integer_v2025_r0.py new file mode 100644 index 000000000..cc6300cec --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_integer_v2025_r0.py @@ -0,0 +1,21 @@ +from typing import Optional + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import ( + EnterpriseConfigurationItemV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationItemIntegerV2025R0(EnterpriseConfigurationItemV2025R0): + def __init__( + self, *, value: Optional[int] = None, is_used: Optional[bool] = None, **kwargs + ): + """ + :param value: The value of the enterprise configuration as an integer., defaults to None + :type value: Optional[int], optional + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_string_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_string_v2025_r0.py new file mode 100644 index 000000000..3c50f3ba9 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_string_v2025_r0.py @@ -0,0 +1,21 @@ +from typing import Optional + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import ( + EnterpriseConfigurationItemV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationItemStringV2025R0(EnterpriseConfigurationItemV2025R0): + def __init__( + self, *, value: Optional[str] = None, is_used: Optional[bool] = None, **kwargs + ): + """ + :param value: The value of the enterprise configuration as a string., defaults to None + :type value: Optional[str], optional + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_v2025_r0.py new file mode 100644 index 000000000..0846de57d --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_item_v2025_r0.py @@ -0,0 +1,15 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationItemV2025R0(BaseObject): + def __init__(self, *, is_used: Optional[bool] = None, **kwargs): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(**kwargs) + self.is_used = is_used diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_security_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_security_v2025_r0.py new file mode 100644 index 000000000..41d50498e --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_security_v2025_r0.py @@ -0,0 +1,285 @@ +from typing import Optional + +from typing import List + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_boolean_v2025_r0 import ( + EnterpriseConfigurationItemBooleanV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import ( + EnterpriseConfigurationItemV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_string_v2025_r0 import ( + EnterpriseConfigurationItemStringV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_integer_v2025_r0 import ( + EnterpriseConfigurationItemIntegerV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.external_collab_security_settings_v2025_r0 import ( + ExternalCollabSecuritySettingsV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.keysafe_settings_v2025_r0 import ( + KeysafeSettingsV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.custom_session_duration_group_item_v2025_r0 import ( + CustomSessionDurationGroupItemV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + +from box_sdk_gen.internal.utils import DateTime + + +class EnterpriseConfigurationSecurityV2025R0LastPasswordResetAtField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[DateTime] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param value: When an enterprise password reset was last applied., defaults to None + :type value: Optional[DateTime], optional + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationSecurityV2025R0ExternalCollabMultiFactorAuthSettingsField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[Optional[ExternalCollabSecuritySettingsV2025R0]] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationSecurityV2025R0KeysafeField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[Optional[KeysafeSettingsV2025R0]] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationSecurityV2025R0CustomSessionDurationGroupsField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[List[CustomSessionDurationGroupItemV2025R0]] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField( + BaseObject +): + def __init__( + self, *, days: Optional[int] = None, hours: Optional[int] = None, **kwargs + ): + """ + :param days: Number of days before the user is required to authenticate again., defaults to None + :type days: Optional[int], optional + :param hours: Number of hours before the user is required to authenticate again., defaults to None + :type hours: Optional[int], optional + """ + super().__init__(**kwargs) + self.days = days + self.hours = hours + + +class EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[ + EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyFieldValueField + ] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationSecurityV2025R0(BaseObject): + def __init__( + self, + *, + is_managed_user_signup_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_managed_user_signup_notification_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_managed_user_signup_corporate_email_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_new_user_notification_daily_digest_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_managed_user_email_change_disabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_multi_factor_auth_required: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_weak_password_prevention_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_password_leak_detection_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + last_password_reset_at: Optional[ + EnterpriseConfigurationSecurityV2025R0LastPasswordResetAtField + ] = None, + is_password_request_notification_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_password_change_notification_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_strong_password_for_ext_collab_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_managed_user_migration_disabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + join_link: Optional[EnterpriseConfigurationItemStringV2025R0] = None, + join_url: Optional[EnterpriseConfigurationItemStringV2025R0] = None, + failed_login_attempts_to_trigger_admin_notification: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + password_min_length: Optional[EnterpriseConfigurationItemIntegerV2025R0] = None, + password_min_uppercase_characters: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + password_min_numeric_characters: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + password_min_special_characters: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + password_reset_frequency: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + previous_password_reuse_limit: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + session_duration: Optional[EnterpriseConfigurationItemStringV2025R0] = None, + external_collab_multi_factor_auth_settings: Optional[ + EnterpriseConfigurationSecurityV2025R0ExternalCollabMultiFactorAuthSettingsField + ] = None, + keysafe: Optional[EnterpriseConfigurationSecurityV2025R0KeysafeField] = None, + is_custom_session_duration_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + custom_session_duration_value: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + custom_session_duration_groups: Optional[ + EnterpriseConfigurationSecurityV2025R0CustomSessionDurationGroupsField + ] = None, + multi_factor_auth_type: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + enforced_mfa_frequency: Optional[ + EnterpriseConfigurationSecurityV2025R0EnforcedMfaFrequencyField + ] = None, + **kwargs + ): + super().__init__(**kwargs) + self.is_managed_user_signup_enabled = is_managed_user_signup_enabled + self.is_managed_user_signup_notification_enabled = ( + is_managed_user_signup_notification_enabled + ) + self.is_managed_user_signup_corporate_email_enabled = ( + is_managed_user_signup_corporate_email_enabled + ) + self.is_new_user_notification_daily_digest_enabled = ( + is_new_user_notification_daily_digest_enabled + ) + self.is_managed_user_email_change_disabled = ( + is_managed_user_email_change_disabled + ) + self.is_multi_factor_auth_required = is_multi_factor_auth_required + self.is_weak_password_prevention_enabled = is_weak_password_prevention_enabled + self.is_password_leak_detection_enabled = is_password_leak_detection_enabled + self.last_password_reset_at = last_password_reset_at + self.is_password_request_notification_enabled = ( + is_password_request_notification_enabled + ) + self.is_password_change_notification_enabled = ( + is_password_change_notification_enabled + ) + self.is_strong_password_for_ext_collab_enabled = ( + is_strong_password_for_ext_collab_enabled + ) + self.is_managed_user_migration_disabled = is_managed_user_migration_disabled + self.join_link = join_link + self.join_url = join_url + self.failed_login_attempts_to_trigger_admin_notification = ( + failed_login_attempts_to_trigger_admin_notification + ) + self.password_min_length = password_min_length + self.password_min_uppercase_characters = password_min_uppercase_characters + self.password_min_numeric_characters = password_min_numeric_characters + self.password_min_special_characters = password_min_special_characters + self.password_reset_frequency = password_reset_frequency + self.previous_password_reuse_limit = previous_password_reuse_limit + self.session_duration = session_duration + self.external_collab_multi_factor_auth_settings = ( + external_collab_multi_factor_auth_settings + ) + self.keysafe = keysafe + self.is_custom_session_duration_enabled = is_custom_session_duration_enabled + self.custom_session_duration_value = custom_session_duration_value + self.custom_session_duration_groups = custom_session_duration_groups + self.multi_factor_auth_type = multi_factor_auth_type + self.enforced_mfa_frequency = enforced_mfa_frequency diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_shield_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_shield_v2025_r0.py new file mode 100644 index 000000000..c5666ef5a --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_shield_v2025_r0.py @@ -0,0 +1,21 @@ +from typing import Optional + +from typing import List + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.schemas.v2025_r0.shield_rule_item_v2025_r0 import ShieldRuleItemV2025R0 + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationShieldV2025R0(BaseObject): + def __init__( + self, *, shield_rules: Optional[List[ShieldRuleItemV2025R0]] = None, **kwargs + ): + """ + :param shield_rules: The shield rules configuration for the enterprise., defaults to None + :type shield_rules: Optional[List[ShieldRuleItemV2025R0]], optional + """ + super().__init__(**kwargs) + self.shield_rules = shield_rules diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_user_settings_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_user_settings_v2025_r0.py new file mode 100644 index 000000000..e777d81a0 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_user_settings_v2025_r0.py @@ -0,0 +1,148 @@ +from typing import Optional + +from typing import List + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.schemas.v2025_r0.enterprise_feature_settings_item_v2025_r0 import ( + EnterpriseFeatureSettingsItemV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_string_v2025_r0 import ( + EnterpriseConfigurationItemStringV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_boolean_v2025_r0 import ( + EnterpriseConfigurationItemBooleanV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_integer_v2025_r0 import ( + EnterpriseConfigurationItemIntegerV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import ( + EnterpriseConfigurationItemV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.user_tracking_code_v2025_r0 import ( + UserTrackingCodeV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationUserSettingsV2025R0UserTrackingCodesField( + EnterpriseConfigurationItemV2025R0 +): + def __init__( + self, + *, + value: Optional[List[UserTrackingCodeV2025R0]] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value + + +class EnterpriseConfigurationUserSettingsV2025R0(BaseObject): + def __init__( + self, + *, + enterprise_feature_settings: Optional[ + List[EnterpriseFeatureSettingsItemV2025R0] + ] = None, + user_invites_expiration_time_frame: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + is_username_change_restricted: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_box_sync_restricted_for_new_users: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_view_all_users_enabled_for_new_users: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_device_limit_exemption_enabled_for_new_users: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_external_collaboration_restricted_for_new_users: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_unlimited_storage_enabled_for_new_users: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + new_user_default_storage_limit: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + new_user_default_timezone: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + new_user_default_language: Optional[ + EnterpriseConfigurationItemStringV2025R0 + ] = None, + is_enterprise_sso_required: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_enterprise_sso_in_testing: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_sso_auto_add_groups_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_sso_auto_add_user_to_groups_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + is_sso_auto_remove_user_from_groups_enabled: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + user_tracking_codes: Optional[ + EnterpriseConfigurationUserSettingsV2025R0UserTrackingCodesField + ] = None, + number_of_user_tracking_codes_remaining: Optional[ + EnterpriseConfigurationItemIntegerV2025R0 + ] = None, + is_instant_login_restricted: Optional[ + EnterpriseConfigurationItemBooleanV2025R0 + ] = None, + **kwargs + ): + super().__init__(**kwargs) + self.enterprise_feature_settings = enterprise_feature_settings + self.user_invites_expiration_time_frame = user_invites_expiration_time_frame + self.is_username_change_restricted = is_username_change_restricted + self.is_box_sync_restricted_for_new_users = is_box_sync_restricted_for_new_users + self.is_view_all_users_enabled_for_new_users = ( + is_view_all_users_enabled_for_new_users + ) + self.is_device_limit_exemption_enabled_for_new_users = ( + is_device_limit_exemption_enabled_for_new_users + ) + self.is_external_collaboration_restricted_for_new_users = ( + is_external_collaboration_restricted_for_new_users + ) + self.is_unlimited_storage_enabled_for_new_users = ( + is_unlimited_storage_enabled_for_new_users + ) + self.new_user_default_storage_limit = new_user_default_storage_limit + self.new_user_default_timezone = new_user_default_timezone + self.new_user_default_language = new_user_default_language + self.is_enterprise_sso_required = is_enterprise_sso_required + self.is_enterprise_sso_in_testing = is_enterprise_sso_in_testing + self.is_sso_auto_add_groups_enabled = is_sso_auto_add_groups_enabled + self.is_sso_auto_add_user_to_groups_enabled = ( + is_sso_auto_add_user_to_groups_enabled + ) + self.is_sso_auto_remove_user_from_groups_enabled = ( + is_sso_auto_remove_user_from_groups_enabled + ) + self.user_tracking_codes = user_tracking_codes + self.number_of_user_tracking_codes_remaining = ( + number_of_user_tracking_codes_remaining + ) + self.is_instant_login_restricted = is_instant_login_restricted diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_v2025_r0.py new file mode 100644 index 000000000..4e91f3e49 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_configuration_v2025_r0.py @@ -0,0 +1,60 @@ +from enum import Enum + +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_security_v2025_r0 import ( + EnterpriseConfigurationSecurityV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_content_and_sharing_v2025_r0 import ( + EnterpriseConfigurationContentAndSharingV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_user_settings_v2025_r0 import ( + EnterpriseConfigurationUserSettingsV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_shield_v2025_r0 import ( + EnterpriseConfigurationShieldV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseConfigurationV2025R0TypeField(str, Enum): + ENTERPRISE_CONFIGURATION = 'enterprise_configuration' + + +class EnterpriseConfigurationV2025R0(BaseObject): + _discriminator = 'type', {'enterprise_configuration'} + + def __init__( + self, + *, + id: Optional[str] = None, + type: Optional[EnterpriseConfigurationV2025R0TypeField] = None, + security: Optional[Optional[EnterpriseConfigurationSecurityV2025R0]] = None, + content_and_sharing: Optional[ + Optional[EnterpriseConfigurationContentAndSharingV2025R0] + ] = None, + user_settings: Optional[ + Optional[EnterpriseConfigurationUserSettingsV2025R0] + ] = None, + shield: Optional[Optional[EnterpriseConfigurationShieldV2025R0]] = None, + **kwargs + ): + """ + :param id: The identifier of the enterprise configuration which is the ID of the enterprise., defaults to None + :type id: Optional[str], optional + :param type: The value will always be `enterprise_configuration`., defaults to None + :type type: Optional[EnterpriseConfigurationV2025R0TypeField], optional + """ + super().__init__(**kwargs) + self.id = id + self.type = type + self.security = security + self.content_and_sharing = content_and_sharing + self.user_settings = user_settings + self.shield = shield diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_feature_setting_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_feature_setting_v2025_r0.py new file mode 100644 index 000000000..fae485004 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_feature_setting_v2025_r0.py @@ -0,0 +1,60 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from typing import List + +from box_sdk_gen.schemas.v2025_r0.user_or_group_reference_v2025_r0 import ( + UserOrGroupReferenceV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseFeatureSettingV2025R0FeatureField(BaseObject): + def __init__(self, *, id: Optional[str] = None, **kwargs): + """ + :param id: The identifier of the feature., defaults to None + :type id: Optional[str], optional + """ + super().__init__(**kwargs) + self.id = id + + +class EnterpriseFeatureSettingV2025R0(BaseObject): + def __init__( + self, + *, + id: Optional[str] = None, + feature: Optional[EnterpriseFeatureSettingV2025R0FeatureField] = None, + state: Optional[str] = None, + can_configure: Optional[bool] = None, + is_configured: Optional[bool] = None, + allowlist: Optional[List[UserOrGroupReferenceV2025R0]] = None, + denylist: Optional[List[UserOrGroupReferenceV2025R0]] = None, + **kwargs + ): + """ + :param id: The identifier of the enterprise feature setting., defaults to None + :type id: Optional[str], optional + :param feature: The feature., defaults to None + :type feature: Optional[EnterpriseFeatureSettingV2025R0FeatureField], optional + :param state: The state of the feature., defaults to None + :type state: Optional[str], optional + :param can_configure: Whether the feature can be configured., defaults to None + :type can_configure: Optional[bool], optional + :param is_configured: Whether the feature is configured., defaults to None + :type is_configured: Optional[bool], optional + :param allowlist: Enterprise feature setting is enabled for only this set of users and groups., defaults to None + :type allowlist: Optional[List[UserOrGroupReferenceV2025R0]], optional + :param denylist: Enterprise feature setting is enabled for everyone except this set of users and groups., defaults to None + :type denylist: Optional[List[UserOrGroupReferenceV2025R0]], optional + """ + super().__init__(**kwargs) + self.id = id + self.feature = feature + self.state = state + self.can_configure = can_configure + self.is_configured = is_configured + self.allowlist = allowlist + self.denylist = denylist diff --git a/box_sdk_gen/schemas/v2025_r0/enterprise_feature_settings_item_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/enterprise_feature_settings_item_v2025_r0.py new file mode 100644 index 000000000..0b3e805e2 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/enterprise_feature_settings_item_v2025_r0.py @@ -0,0 +1,27 @@ +from typing import Optional + +from box_sdk_gen.schemas.v2025_r0.enterprise_configuration_item_v2025_r0 import ( + EnterpriseConfigurationItemV2025R0, +) + +from box_sdk_gen.schemas.v2025_r0.enterprise_feature_setting_v2025_r0 import ( + EnterpriseFeatureSettingV2025R0, +) + +from box_sdk_gen.box.errors import BoxSDKError + + +class EnterpriseFeatureSettingsItemV2025R0(EnterpriseConfigurationItemV2025R0): + def __init__( + self, + *, + value: Optional[EnterpriseFeatureSettingV2025R0] = None, + is_used: Optional[bool] = None, + **kwargs + ): + """ + :param is_used: Indicates whether a configuration is used for a given enterprise., defaults to None + :type is_used: Optional[bool], optional + """ + super().__init__(is_used=is_used, **kwargs) + self.value = value diff --git a/box_sdk_gen/schemas/v2025_r0/external_collab_security_settings_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/external_collab_security_settings_v2025_r0.py new file mode 100644 index 000000000..56b2cae58 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/external_collab_security_settings_v2025_r0.py @@ -0,0 +1,52 @@ +from typing import Optional + +from typing import List + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + +from box_sdk_gen.internal.utils import DateTime + + +class ExternalCollabSecuritySettingsV2025R0(BaseObject): + def __init__( + self, + *, + denylist_domains: Optional[List[str]] = None, + denylist_emails: Optional[List[str]] = None, + allowlist_domains: Optional[List[str]] = None, + allowlist_emails: Optional[List[str]] = None, + state: Optional[str] = None, + scheduled_status: Optional[str] = None, + scheduled_at: Optional[DateTime] = None, + factor_type_settings: Optional[str] = None, + **kwargs + ): + """ + :param denylist_domains: List of domains that are not allowed for external collaboration. Applies if state is `denylist`., defaults to None + :type denylist_domains: Optional[List[str]], optional + :param denylist_emails: List of email addresses that are not allowed for external collaboration. Applies if state is `denylist`., defaults to None + :type denylist_emails: Optional[List[str]], optional + :param allowlist_domains: List of domains that are allowed for external collaboration. Applies if state is `allowlist`., defaults to None + :type allowlist_domains: Optional[List[str]], optional + :param allowlist_emails: List of email addresses that are allowed for external collaboration. Applies if state is `allowlist`., defaults to None + :type allowlist_emails: Optional[List[str]], optional + :param state: The state of the external collaboration security settings. Possible values include `enabled`, `disabled`, `allowlist`, and `denylist`., defaults to None + :type state: Optional[str], optional + :param scheduled_status: The status of the scheduling to apply external collaboration security settings. Possible values include `in_progress`, `scheduled`, `completed`, `failed`, and `scheduled_immediate`., defaults to None + :type scheduled_status: Optional[str], optional + :param scheduled_at: Scheduled at., defaults to None + :type scheduled_at: Optional[DateTime], optional + :param factor_type_settings: Factor type for the external collaborators authentication. Possible values include `totp`, `any`, or `unknown`., defaults to None + :type factor_type_settings: Optional[str], optional + """ + super().__init__(**kwargs) + self.denylist_domains = denylist_domains + self.denylist_emails = denylist_emails + self.allowlist_domains = allowlist_domains + self.allowlist_emails = allowlist_emails + self.state = state + self.scheduled_status = scheduled_status + self.scheduled_at = scheduled_at + self.factor_type_settings = factor_type_settings diff --git a/box_sdk_gen/schemas/v2025_r0/keysafe_settings_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/keysafe_settings_v2025_r0.py new file mode 100644 index 000000000..59a025fad --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/keysafe_settings_v2025_r0.py @@ -0,0 +1,44 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class KeysafeSettingsV2025R0(BaseObject): + def __init__( + self, + *, + keysafe_enabled: Optional[bool] = None, + cloud_provider: Optional[str] = None, + key_id: Optional[str] = None, + account_id: Optional[str] = None, + location_id: Optional[str] = None, + project_id: Optional[str] = None, + keyring_id: Optional[str] = None, + **kwargs + ): + """ + :param keysafe_enabled: Whether KeySafe addon is enabled for the enterprise., defaults to None + :type keysafe_enabled: Optional[bool], optional + :param cloud_provider: The cloud provider., defaults to None + :type cloud_provider: Optional[str], optional + :param key_id: The key ID., defaults to None + :type key_id: Optional[str], optional + :param account_id: The account ID., defaults to None + :type account_id: Optional[str], optional + :param location_id: The location ID., defaults to None + :type location_id: Optional[str], optional + :param project_id: The project ID., defaults to None + :type project_id: Optional[str], optional + :param keyring_id: The key ring ID., defaults to None + :type keyring_id: Optional[str], optional + """ + super().__init__(**kwargs) + self.keysafe_enabled = keysafe_enabled + self.cloud_provider = cloud_provider + self.key_id = key_id + self.account_id = account_id + self.location_id = location_id + self.project_id = project_id + self.keyring_id = keyring_id diff --git a/box_sdk_gen/schemas/v2025_r0/list_user_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/list_user_v2025_r0.py new file mode 100644 index 000000000..76f890b80 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/list_user_v2025_r0.py @@ -0,0 +1,28 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class ListUserV2025R0(BaseObject): + def __init__( + self, + *, + id: Optional[int] = None, + name: Optional[str] = None, + email: Optional[str] = None, + **kwargs + ): + """ + :param id: The ID of the user., defaults to None + :type id: Optional[int], optional + :param name: The name of the user., defaults to None + :type name: Optional[str], optional + :param email: The email of the user., defaults to None + :type email: Optional[str], optional + """ + super().__init__(**kwargs) + self.id = id + self.name = name + self.email = email diff --git a/box_sdk_gen/schemas/v2025_r0/shared_link_permissions_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/shared_link_permissions_v2025_r0.py new file mode 100644 index 000000000..d0de01b3a --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/shared_link_permissions_v2025_r0.py @@ -0,0 +1,32 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class SharedLinkPermissionsV2025R0(BaseObject): + def __init__( + self, + *, + shared_links_option: Optional[str] = None, + default_shared_link_type: Optional[str] = None, + notes_shared_link_option: Optional[str] = None, + default_notes_shared_link_type: Optional[str] = None, + **kwargs + ): + """ + :param shared_links_option: The selected option for shared links permissions., defaults to None + :type shared_links_option: Optional[str], optional + :param default_shared_link_type: The default shared link type., defaults to None + :type default_shared_link_type: Optional[str], optional + :param notes_shared_link_option: The selected option for notes shared links permissions., defaults to None + :type notes_shared_link_option: Optional[str], optional + :param default_notes_shared_link_type: The default notes shared link type., defaults to None + :type default_notes_shared_link_type: Optional[str], optional + """ + super().__init__(**kwargs) + self.shared_links_option = shared_links_option + self.default_shared_link_type = default_shared_link_type + self.notes_shared_link_option = notes_shared_link_option + self.default_notes_shared_link_type = default_notes_shared_link_type diff --git a/box_sdk_gen/schemas/v2025_r0/shield_rule_item_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/shield_rule_item_v2025_r0.py new file mode 100644 index 000000000..27e4a21d3 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/shield_rule_item_v2025_r0.py @@ -0,0 +1,66 @@ +from enum import Enum + +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + +from box_sdk_gen.internal.utils import DateTime + + +class ShieldRuleItemV2025R0TypeField(str, Enum): + SHIELD_RULE = 'shield_rule' + + +class ShieldRuleItemV2025R0PriorityField(str, Enum): + INFORMATIONAL = 'informational' + LOW = 'low' + MEDIUM = 'medium' + HIGH = 'high' + CRITICAL = 'critical' + + +class ShieldRuleItemV2025R0(BaseObject): + _discriminator = 'type', {'shield_rule'} + + def __init__( + self, + *, + id: Optional[str] = None, + type: Optional[ShieldRuleItemV2025R0TypeField] = None, + rule_category: Optional[str] = None, + name: Optional[str] = None, + description: Optional[str] = None, + priority: Optional[ShieldRuleItemV2025R0PriorityField] = None, + created_at: Optional[DateTime] = None, + modified_at: Optional[DateTime] = None, + **kwargs + ): + """ + :param id: The identifier of the shield rule., defaults to None + :type id: Optional[str], optional + :param type: The value will always be `shield_rule`., defaults to None + :type type: Optional[ShieldRuleItemV2025R0TypeField], optional + :param rule_category: The category of the shield rule., defaults to None + :type rule_category: Optional[str], optional + :param name: The name of the shield rule., defaults to None + :type name: Optional[str], optional + :param description: The description of the shield rule., defaults to None + :type description: Optional[str], optional + :param priority: The priority level of the shield rule., defaults to None + :type priority: Optional[ShieldRuleItemV2025R0PriorityField], optional + :param created_at: The date and time when the shield rule was created., defaults to None + :type created_at: Optional[DateTime], optional + :param modified_at: The date and time when the shield rule was last modified., defaults to None + :type modified_at: Optional[DateTime], optional + """ + super().__init__(**kwargs) + self.id = id + self.type = type + self.rule_category = rule_category + self.name = name + self.description = description + self.priority = priority + self.created_at = created_at + self.modified_at = modified_at diff --git a/box_sdk_gen/schemas/v2025_r0/user_or_group_reference_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/user_or_group_reference_v2025_r0.py new file mode 100644 index 000000000..7a6933d41 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/user_or_group_reference_v2025_r0.py @@ -0,0 +1,33 @@ +from enum import Enum + +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class UserOrGroupReferenceV2025R0TypeField(str, Enum): + USER = 'user' + GROUP = 'group' + + +class UserOrGroupReferenceV2025R0(BaseObject): + _discriminator = 'type', {'user', 'group'} + + def __init__( + self, + *, + type: Optional[UserOrGroupReferenceV2025R0TypeField] = None, + id: Optional[str] = None, + **kwargs + ): + """ + :param type: The type `user` or `group`., defaults to None + :type type: Optional[UserOrGroupReferenceV2025R0TypeField], optional + :param id: The identifier of the user or group., defaults to None + :type id: Optional[str], optional + """ + super().__init__(**kwargs) + self.type = type + self.id = id diff --git a/box_sdk_gen/schemas/v2025_r0/user_tracking_code_v2025_r0.py b/box_sdk_gen/schemas/v2025_r0/user_tracking_code_v2025_r0.py new file mode 100644 index 000000000..e0b85c724 --- /dev/null +++ b/box_sdk_gen/schemas/v2025_r0/user_tracking_code_v2025_r0.py @@ -0,0 +1,20 @@ +from typing import Optional + +from box_sdk_gen.internal.base_object import BaseObject + +from box_sdk_gen.box.errors import BoxSDKError + + +class UserTrackingCodeV2025R0(BaseObject): + def __init__( + self, *, id: Optional[int] = None, name: Optional[str] = None, **kwargs + ): + """ + :param id: The ID of the user tracking code., defaults to None + :type id: Optional[int], optional + :param name: The name of the user tracking code., defaults to None + :type name: Optional[str], optional + """ + super().__init__(**kwargs) + self.id = id + self.name = name diff --git a/docs/README.md b/docs/README.md index 3ed7efdee..5e353d405 100644 --- a/docs/README.md +++ b/docs/README.md @@ -22,6 +22,7 @@ the SDK are available by topic: - [Docgen template](docgen_template.md) - [Downloads](downloads.md) - [Email aliases](email_aliases.md) +- [Enterprise configurations](enterprise_configurations.md) - [Events](events.md) - [External users](external_users.md) - [File classifications](file_classifications.md) diff --git a/docs/enterprise_configurations.md b/docs/enterprise_configurations.md new file mode 100644 index 000000000..39c321590 --- /dev/null +++ b/docs/enterprise_configurations.md @@ -0,0 +1,31 @@ +# EnterpriseConfigurationsManager + +- [Get enterprise configuration](#get-enterprise-configuration) + +## Get enterprise configuration + +Retrieves the configuration for an enterprise. + +This operation is performed by calling function `get_enterprise_configuration_by_id_v2025_r0`. + +See the endpoint docs at +[API Reference](https://developer.box.com/reference/v2025.0/get-enterprise-configurations-id/). + +_Currently we don't have an example for calling `get_enterprise_configuration_by_id_v2025_r0` in integration tests_ + +### Arguments + +- enterprise_id `str` + - The ID of the enterprise. Example: "3442311" +- categories `str` + - The comma-delimited list of the enterprise configuration categories. Allowed values: `security`, `content_and_sharing`, `user_settings`, `shield`. +- box_version `BoxVersionHeaderV2025R0` + - Version header. +- extra_headers `Optional[Dict[str, Optional[str]]]` + - Extra headers that will be included in the HTTP request. + +### Returns + +This function returns a value of type `EnterpriseConfigurationV2025R0`. + +Returns the enterprise configuration.