# coding=utf-8
# *** WARNING: this file was generated by pulumi-language-python. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import builtins as _builtins
import warnings
import sys
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
if sys.version_info >= (3, 11):
    from typing import NotRequired, TypedDict, TypeAlias
else:
    from typing_extensions import NotRequired, TypedDict, TypeAlias
from . import _utilities
from . import outputs
from ._inputs import *

__all__ = [
    'GetRequestSettingOrganizationResult',
    'AwaitableGetRequestSettingOrganizationResult',
    'get_request_setting_organization',
    'get_request_setting_organization_output',
]

@pulumi.output_type
class GetRequestSettingOrganizationResult:
    """
    A collection of values returned by getRequestSettingOrganization.
    """
    def __init__(__self__, id=None, long_time_past_provisioned=None, provisioning_status=None, request_experiences=None, subprocessors_acknowledged=None):
        if id and not isinstance(id, str):
            raise TypeError("Expected argument 'id' to be a str")
        pulumi.set(__self__, "id", id)
        if long_time_past_provisioned and not isinstance(long_time_past_provisioned, bool):
            raise TypeError("Expected argument 'long_time_past_provisioned' to be a bool")
        pulumi.set(__self__, "long_time_past_provisioned", long_time_past_provisioned)
        if provisioning_status and not isinstance(provisioning_status, str):
            raise TypeError("Expected argument 'provisioning_status' to be a str")
        pulumi.set(__self__, "provisioning_status", provisioning_status)
        if request_experiences and not isinstance(request_experiences, list):
            raise TypeError("Expected argument 'request_experiences' to be a list")
        pulumi.set(__self__, "request_experiences", request_experiences)
        if subprocessors_acknowledged and not isinstance(subprocessors_acknowledged, bool):
            raise TypeError("Expected argument 'subprocessors_acknowledged' to be a bool")
        pulumi.set(__self__, "subprocessors_acknowledged", subprocessors_acknowledged)

    @_builtins.property
    @pulumi.getter
    def id(self) -> _builtins.str:
        return pulumi.get(self, "id")

    @_builtins.property
    @pulumi.getter(name="longTimePastProvisioned")
    def long_time_past_provisioned(self) -> _builtins.bool:
        return pulumi.get(self, "long_time_past_provisioned")

    @_builtins.property
    @pulumi.getter(name="provisioningStatus")
    def provisioning_status(self) -> _builtins.str:
        return pulumi.get(self, "provisioning_status")

    @_builtins.property
    @pulumi.getter(name="requestExperiences")
    def request_experiences(self) -> Optional[Sequence['outputs.GetRequestSettingOrganizationRequestExperienceResult']]:
        return pulumi.get(self, "request_experiences")

    @_builtins.property
    @pulumi.getter(name="subprocessorsAcknowledged")
    def subprocessors_acknowledged(self) -> _builtins.bool:
        return pulumi.get(self, "subprocessors_acknowledged")


class AwaitableGetRequestSettingOrganizationResult(GetRequestSettingOrganizationResult):
    # pylint: disable=using-constant-test
    def __await__(self):
        if False:
            yield self
        return GetRequestSettingOrganizationResult(
            id=self.id,
            long_time_past_provisioned=self.long_time_past_provisioned,
            provisioning_status=self.provisioning_status,
            request_experiences=self.request_experiences,
            subprocessors_acknowledged=self.subprocessors_acknowledged)


def get_request_setting_organization(request_experiences: Optional[Sequence[Union['GetRequestSettingOrganizationRequestExperienceArgs', 'GetRequestSettingOrganizationRequestExperienceArgsDict']]] = None,
                                     opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRequestSettingOrganizationResult:
    """
    Retrieves the request settings for the org.

    ## Example Usage

    ```python
    import pulumi
    import pulumi_okta as okta

    test = okta.get_request_setting_organization()
    ```
    """
    __args__ = dict()
    __args__['requestExperiences'] = request_experiences
    opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
    __ret__ = pulumi.runtime.invoke('okta:index/getRequestSettingOrganization:getRequestSettingOrganization', __args__, opts=opts, typ=GetRequestSettingOrganizationResult).value

    return AwaitableGetRequestSettingOrganizationResult(
        id=pulumi.get(__ret__, 'id'),
        long_time_past_provisioned=pulumi.get(__ret__, 'long_time_past_provisioned'),
        provisioning_status=pulumi.get(__ret__, 'provisioning_status'),
        request_experiences=pulumi.get(__ret__, 'request_experiences'),
        subprocessors_acknowledged=pulumi.get(__ret__, 'subprocessors_acknowledged'))
def get_request_setting_organization_output(request_experiences: Optional[pulumi.Input[Optional[Sequence[Union['GetRequestSettingOrganizationRequestExperienceArgs', 'GetRequestSettingOrganizationRequestExperienceArgsDict']]]]] = None,
                                            opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRequestSettingOrganizationResult]:
    """
    Retrieves the request settings for the org.

    ## Example Usage

    ```python
    import pulumi
    import pulumi_okta as okta

    test = okta.get_request_setting_organization()
    ```
    """
    __args__ = dict()
    __args__['requestExperiences'] = request_experiences
    opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
    __ret__ = pulumi.runtime.invoke_output('okta:index/getRequestSettingOrganization:getRequestSettingOrganization', __args__, opts=opts, typ=GetRequestSettingOrganizationResult)
    return __ret__.apply(lambda __response__: GetRequestSettingOrganizationResult(
        id=pulumi.get(__response__, 'id'),
        long_time_past_provisioned=pulumi.get(__response__, 'long_time_past_provisioned'),
        provisioning_status=pulumi.get(__response__, 'provisioning_status'),
        request_experiences=pulumi.get(__response__, 'request_experiences'),
        subprocessors_acknowledged=pulumi.get(__response__, 'subprocessors_acknowledged')))
