403Webshell
Server IP : 162.144.4.212  /  Your IP : 216.73.216.108
Web Server : Apache
System : Linux gator2125.hostgator.com 5.14.0-162.23.1.9991722448259.nf.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 31 18:11:45 UTC 2024 x86_64
User : cozeellc ( 2980)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /usr/lib/python3.9/site-packages/oci/email/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /usr/lib/python3.9/site-packages/oci/email/__pycache__/email_client.cpython-39.opt-1.pyc
a

���f��@s�ddlmZddlmZddlmZddlmZmZddlm	Z	ddl
mZmZddl
mZddlmZmZmZdd	lmZdd
lmZddlmZed
�ZGdd�de�ZdS)�)�absolute_import)�requests)�six)�retry�circuit_breaker)�
BaseClient)�get_config_value_or_default�validate_config)�Signer)�Sentinel�#get_signer_from_authentication_type�AUTHENTICATION_TYPE_FIELD_NAME)�InvalidAlloyConfig)�OCI_SDK_ENABLED_SERVICES_SET�)�email_type_mappingZMissingc@seZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Zd:d;�Z d<d=�Z!d>d?�Z"d@dA�Z#dBS)C�EmailClienta�
    Use the Email Delivery API to do the necessary set up to send high-volume and application-generated emails through the OCI Email Delivery service.
    For more information, see [Overview of the Email Delivery Service](/iaas/Content/Email/Concepts/overview.htm).

     **Note:** Write actions (POST, UPDATE, DELETE) may take several minutes to propagate and be reflected by the API.
     If a subsequent read request fails to reflect your changes, wait a few minutes and try again.
    c
Ks&t�d�std��t||�d�d�d|vr6|d}nDt|vrHt|�}n2t|d|d|d|�d�t|d	�|�d
�d�}d|�d
�ddi|�dd�|�dt	j
�|�d�d�}d|vr�|�d�|d<|�d�dur�t	j|d<d|vr�|�d�|d<td||t
fi|��|_|�d�|_|�d�|_dS)a�
        Creates a new service client

        :param dict config:
            Configuration keys and values as per `SDK and Tool Configuration <https://docs.cloud.oracle.com/Content/API/Concepts/sdkconfig.htm>`__.
            The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config
            the dict using :py:meth:`~oci.config.validate_config`

        :param str service_endpoint: (optional)
            The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is
            not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit
            need to specify a service endpoint.

        :param timeout: (optional)
            The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided
            as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If
            a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout.
        :type timeout: float or tuple(float, float)

        :param signer: (optional)
            The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values
            provided in the config parameter.

            One use case for this parameter is for `Instance Principals authentication <https://docs.cloud.oracle.com/Content/Identity/Tasks/callingservicesfrominstances.htm>`__
            by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument
        :type signer: :py:class:`~oci.signer.AbstractBaseSigner`

        :param obj retry_strategy: (optional)
            A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default.
            Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation.
            Any value provided at the operation level will override whatever is specified at the client level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
            is also available. The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

        :param obj circuit_breaker_strategy: (optional)
            A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level).
            This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided.
            The specifics of circuit breaker strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/circuit_breakers.html>`__.

        :param function circuit_breaker_callback: (optional)
            Callback function to receive any exceptions triggerred by the circuit breaker.

        :param bool client_level_realm_specific_endpoint_template_enabled: (optional)
            A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None.

        :param allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not
            allow control characters to be in the response object.
        ZemailaThe Alloy configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local alloy-config file configured the service you're targeting or contact the cloud provider on the availability of this service�signer)r�tenancy�user�fingerprintZkey_file�pass_phraseZkey_content)rrrZprivate_key_file_locationrZprivate_key_contentT�service_endpointz	/20170907z3https://ctrl.email.{region}.oci.{secondLevelDomain}�skip_deserializationF�circuit_breaker_strategy�5client_level_realm_specific_endpoint_template_enabled)Zregional_clientr�	base_pathZservice_endpoint_templateZ#service_endpoint_template_per_realmrrr�timeoutN�allow_control_chars�retry_strategy�circuit_breaker_callback)rZis_service_enabledrr	�getr
rr
rrZGLOBAL_CIRCUIT_BREAKER_STRATEGYZ DEFAULT_CIRCUIT_BREAKER_STRATEGYrr�base_clientrr )�selfZconfig�kwargsrZbase_client_init_kwargs�r%�:/usr/lib/python3.9/site-packages/oci/email/email_client.py�__init__ sB3


�

�

zEmailClient.__init__cs�dg}d}d}d}d}gd���fdd�t�|�D�}	|	rHtd	|	����d|i}
d
d�t�|
�D�}
t�|
�D]<\}}|dus�t|tj�rnt|���d
krntd|�d���qndd|�dt	�|�dt	�|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�r`t|t
j��s8|j
�|
�|j
�|
�|�|j�|j|j
j|||
|
||�d�|||d�
S|j
j|||
|
||�d�|||d�	SdS)a�
        Moves an email domain into a different compartment.
        When provided, If-Match is checked against ETag value of the resource.
        For information about moving resources between compartments, see
        `Moving Resources to a Different Compartment`__.

        **Note:** All DKIM objects associated with this email domain will also be moved into the provided compartment.

        __ https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes


        :param str email_domain_id: (required)
            The `OCID`__ of this email domain.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param oci.email.models.ChangeEmailDomainCompartmentDetails change_email_domain_compartment_details: (required)
            The configuration details for the move operation.

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or
            server error without risk of executing that same action again. Retry tokens expire after 24
            hours, but can be invalidated before then due to conflicting operations. For example, if a resource
            has been deleted and purged from the system, then a retry of the original creation request
            might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/change_email_domain_compartment.py.html>`__ to see an example of how to use change_email_domain_compartment API.
        �
emailDomainIdz7/emailDomains/{emailDomainId}/actions/changeCompartment�POST�change_email_domain_compartmentzehttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailDomain/ChangeEmailDomainCompartment)rr�if_match�opc_request_id�opc_retry_tokencsg|]}|�vr|�qSr%r%��.0Z_key�Zexpected_kwargsr%r&�
<listcomp>��z?EmailClient.change_email_domain_compartment.<locals>.<listcomp>z4change_email_domain_compartment got unknown kwargs: cSsi|]\}}|tur||�qSr%��missing�r/�k�vr%r%r&�
<dictcomp>�r2z?EmailClient.change_email_domain_compartment.<locals>.<dictcomp>Nr�
Parameter �+ cannot be None, whitespace or empty string�application/jsonr+r,r-)�accept�content-type�if-match�opc-request-id�opc-retry-tokencSs&i|]\}}|tur|dur||�qS�Nr3r5r%r%r&r8�r2r�Zoperation_retry_strategyZclient_retry_strategyr�	�
resource_path�method�path_params�
header_params�bodyr�operation_name�api_reference_link�required_arguments)r�iterkeys�
ValueError�	iteritems�
isinstance�string_types�len�stripr!r4r"�get_preferred_retry_strategyrr�NoneRetryStrategy�add_opc_retry_token_if_needed�add_opc_client_retries_header�add_circuit_breaker_callbackr �make_retrying_call�call_api)r#�email_domain_idZ'change_email_domain_compartment_detailsr$rKrDrErIrJ�extra_kwargsrFr6r7rGrr%r0r&r*{sp6��$


����z+EmailClient.change_email_domain_compartmentcsrdg}d}d}d}d}gd���fdd�t�|�D�}	|	rHtd	|	����d|i}
d
d�t�|
�D�}
t�|
�D]<\}}|dus�t|tj�rnt|���d
krntd|�d���qndd|�dt	�|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�rJt|t
j��s"|j
�|
�|�|j�|j|j
j|||
|
||�d�|||d�
S|j
j|||
|
||�d�|||d�	SdS)a�
        Moves a sender into a different compartment. When provided, If-Match is checked against ETag values of the resource.


        :param str sender_id: (required)
            The unique OCID of the sender.

        :param oci.email.models.ChangeSenderCompartmentDetails change_sender_compartment_details: (required)
            Details for moving a sender into a different compartment.

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/change_sender_compartment.py.html>`__ to see an example of how to use change_sender_compartment API.
        �senderIdz-/senders/{senderId}/actions/changeCompartmentr)�change_sender_compartmentz[https://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Sender/ChangeSenderCompartment�rrr+r,csg|]}|�vr|�qSr%r%r.r0r%r&r1+r2z9EmailClient.change_sender_compartment.<locals>.<listcomp>z.change_sender_compartment got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r84r2z9EmailClient.change_sender_compartment.<locals>.<dictcomp>Nrr9r:r;r+r,�r<r=r>r?cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8@r2rrBrrC�rrLrMrNrOrPrQrRr!r4r"rSrrrTrVrWr rXrY)r#�	sender_idZ!change_sender_compartment_detailsr$rKrDrErIrJr[rFr6r7rGrr%r0r&r]�sl&��$

����z%EmailClient.change_sender_compartmentcsg}d}d}d}d}gd���fdd�t�|�D�}|rFtd|����d	d	|�d
t�|�dt�d�}	d
d�t�|	�D�}	|jj|�d�|jd�}
|
r�t	|
t
j�s�|j�|	�|j�
|	�|
�|j�|
j|jj|||	|d|�d�|||d�
S|jj|||	|d|�d�|||d�	SdS)a�	
        Creates a new DKIM for an email domain.
        This DKIM signs all approved senders in the tenancy that are in this email domain.
        Best security practices indicate to periodically rotate the DKIM that is doing the signing.
        When a second DKIM is applied, all senders seamlessly pick up the new key
        without interruption in signing.


        :param oci.email.models.CreateDkimDetails create_dkim_details: (required)
            The DKIM details.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or
            server error without risk of executing that same action again. Retry tokens expire after 24
            hours, but can be invalidated before then due to conflicting operations. For example, if a resource
            has been deleted and purged from the system, then a retry of the original creation request
            might be rejected.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Dkim`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/create_dkim.py.html>`__ to see an example of how to use create_dkim API.
        �/dkimsr)�create_dkimzLhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Dkim/CreateDkim)rrr-r,csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z+EmailClient.create_dkim.<locals>.<listcomp>z create_dkim got unknown kwargs: r;r-r,)r<r=r@r?cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2z+EmailClient.create_dkim.<locals>.<dictcomp>rrB�Dkimr�	rDrErGrH�
response_typerrIrJrKN�rrLrMr!r4rNr"rSrrOrrTrUrVrWr rXrY)r#Zcreate_dkim_detailsr$rKrDrErIrJr[rGrr%r0r&rcbsb)�

����zEmailClient.create_dkimcsg}d}d}d}d}gd���fdd�t�|�D�}|rFtd|����d	d	|�d
t�|�dt�d�}	d
d�t�|	�D�}	|jj|�d�|jd�}
|
r�t	|
t
j�s�|j�|	�|j�
|	�|
�|j�|
j|jj|||	|d|�d�|||d�
S|jj|||	|d|�d�|||d�	SdS)a�
        Creates a new email domain. Avoid entering confidential information.


        :param oci.email.models.CreateEmailDomainDetails create_email_domain_details: (required)
            The email domain to create.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or
            server error without risk of executing that same action again. Retry tokens expire after 24
            hours, but can be invalidated before then due to conflicting operations. For example, if a resource
            has been deleted and purged from the system, then a retry of the original creation request
            might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.EmailDomain`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/create_email_domain.py.html>`__ to see an example of how to use create_email_domain API.
        �
/emailDomainsr)�create_email_domainzZhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailDomain/CreateEmailDomain�rrr,r-csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z3EmailClient.create_email_domain.<locals>.<listcomp>z(create_email_domain got unknown kwargs: r;r,r-�r<r=r?r@cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8r2z3EmailClient.create_email_domain.<locals>.<dictcomp>rrB�EmailDomainrreNrg)r#Zcreate_email_domain_detailsr$rKrDrErIrJr[rGrr%r0r&ri�sb%�

����zEmailClient.create_email_domaincsg}d}d}d}d}gd���fdd�t�|�D�}|rFtd|����d	d	|�d
t�|�dt�d�}	d
d�t�|	�D�}	|jj|�d�|jd�}
|
r�t	|
t
j�s�|j�|	�|j�
|	�|
�|j�|
j|jj|||	|d|�d�|||d�
S|jj|||	|d|�d�|||d�	SdS)a�
        Creates a new email return path. Avoid entering confidential information.


        :param oci.email.models.CreateEmailReturnPathDetails create_email_return_path_details: (required)
            The email return path to create.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or
            server error without risk of executing that same action again. Retry tokens expire after 24
            hours, but can be invalidated before then due to conflicting operations. For example, if a resource
            has been deleted and purged from the system, then a retry of the original creation request
            might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.EmailReturnPath`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/create_email_return_path.py.html>`__ to see an example of how to use create_email_return_path API.
        �/emailReturnPathsr)�create_email_return_pathzbhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailReturnPath/CreateEmailReturnPathrjcsg|]}|�vr|�qSr%r%r.r0r%r&r1Xr2z8EmailClient.create_email_return_path.<locals>.<listcomp>z-create_email_return_path got unknown kwargs: r;r,r-rkcSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8cr2z8EmailClient.create_email_return_path.<locals>.<dictcomp>rrB�EmailReturnPathrreNrg)r#Z create_email_return_path_detailsr$rKrDrErIrJr[rGrr%r0r&rn&sb%�

����z$EmailClient.create_email_return_pathcs�g}d}d}d}d}gd���fdd�t�|�D�}|rFtd|����d	d	|�d
t�d�}	dd
�t�|	�D�}	|jj|�d�|jd�}
|
r�t	|
t
j�s�|j�|	�|
�
|j�|
j|jj|||	|d|�d�|||d�
S|jj|||	|d|�d�|||d�	SdS)a�
        Creates a sender for a tenancy in a given compartment.


        :param oci.email.models.CreateSenderDetails create_sender_details: (required)
            Create a sender.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Sender`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/create_sender.py.html>`__ to see an example of how to use create_sender API.
        �/sendersr)�
create_senderzPhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Sender/CreateSender�rrr,csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z-EmailClient.create_sender.<locals>.<listcomp>z"create_sender got unknown kwargs: r;r,�r<r=r?cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2z-EmailClient.create_sender.<locals>.<dictcomp>rrB�SenderrreN�rrLrMr!r4rNr"rSrrOrrTrVrWr rXrY)r#Zcreate_sender_detailsr$rKrDrErIrJr[rGrr%r0r&rq�s^�
����zEmailClient.create_sendercs�g}d}d}d}d}gd���fdd�t�|�D�}|rFtd|����d	d	|�d
t�d�}	dd
�t�|	�D�}	|jj|�d�|jd�}
|
r�t	|
t
j�s�|j�|	�|
�
|j�|
j|jj|||	|d|�d�|||d�
S|jj|||	|d|�d�|||d�	SdS)a�
        Adds recipient email addresses to the suppression list for a tenancy.
        Addresses added to the suppression list via the API are denoted as
        "MANUAL" in the `reason` field. *Note:* All email addresses added to the
        suppression list are normalized to include only lowercase letters.


        :param oci.email.models.CreateSuppressionDetails create_suppression_details: (required)
            Adds a single email address to the suppression list for a compartment's tenancy.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Suppression`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/create_suppression.py.html>`__ to see an example of how to use create_suppression API.
        �
/suppressionsr)�create_suppressionzZhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Suppression/CreateSuppressionrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1	r2z2EmailClient.create_suppression.<locals>.<listcomp>z'create_suppression got unknown kwargs: r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8r2z2EmailClient.create_suppression.<locals>.<dictcomp>rrB�SuppressionrreNru)r#Zcreate_suppression_detailsr$rKrDrErIrJr[rGrr%r0r&rw�s^!�
����zEmailClient.create_suppressioncsndg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�rHt|
t
j��s"|j
�|�|
�|j�|
j|j
j|||	||�d�|||d�	S|j
j|||	||�d�|||d�SdS)az	
        Deletes a DKIM.
        If this key is currently the active key for the email domain, deleting the key
        will stop signing the domain's outgoing mail.
        DKIM keys are left in DELETING state for about a day to allow DKIM signatures on
        in-transit mail to be validated.
        Consider creating a new DKIM for this domain so the signing can be rotated to it instead of deletion.


        :param str dkim_id: (required)
            The `OCID`__ of this DKIM.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/delete_dkim.py.html>`__ to see an example of how to use delete_dkim API.
        �dkimId�/dkims/{dkimId}�DELETE�delete_dkimzLhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Dkim/DeleteDkimr^csg|]}|�vr|�qSr%r%r.r0r%r&r1lr2z+EmailClient.delete_dkim.<locals>.<listcomp>z delete_dkim got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8ur2z+EmailClient.delete_dkim.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBr�rDrErFrGrrIrJrKr`�r#�dkim_idr$rKrDrErIrJr[rFr6r7rGrr%r0r&r|5sh*��$

����zEmailClient.delete_dkimcsndg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�rHt|
t
j��s"|j
�|�|
�|j�|
j|j
j|||	||�d�|||d�	S|j
j|||	||�d�|||d�SdS)a&
        Deletes an email domain.


        :param str email_domain_id: (required)
            The `OCID`__ of this email domain.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/delete_email_domain.py.html>`__ to see an example of how to use delete_email_domain API.
        r(�/emailDomains/{emailDomainId}r{�delete_email_domainzZhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailDomain/DeleteEmailDomainr^csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z3EmailClient.delete_email_domain.<locals>.<listcomp>z(delete_email_domain got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�r2z3EmailClient.delete_email_domain.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBrr}r`�r#rZr$rKrDrErIrJr[rFr6r7rGrr%r0r&r��sh%��$

����zEmailClient.delete_email_domaincsndg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�rHt|
t
j��s"|j
�|�|
�|j�|
j|j
j|||	||�d�|||d�	S|j
j|||	||�d�|||d�SdS)a?
        Deletes an email return path.


        :param str email_return_path_id: (required)
            The `OCID`__ of this email return path.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/delete_email_return_path.py.html>`__ to see an example of how to use delete_email_return_path API.
        �emailReturnPathId�%/emailReturnPaths/{emailReturnPathId}r{�delete_email_return_pathzbhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailReturnPath/DeleteEmailReturnPathr^csg|]}|�vr|�qSr%r%r.r0r%r&r1:r2z8EmailClient.delete_email_return_path.<locals>.<listcomp>z-delete_email_return_path got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8Cr2z8EmailClient.delete_email_return_path.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8Or2rrBrr}r`�r#�email_return_path_idr$rKrDrErIrJr[rFr6r7rGrr%r0r&r�sh%��$

����z$EmailClient.delete_email_return_pathcsndg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�rHt|
t
j��s"|j
�|�|
�|j�|
j|j
j|||	||�d�|||d�	S|j
j|||	||�d�|||d�SdS)a�
        Deletes an approved sender for a tenancy in a given compartment for a
        provided `senderId`.


        :param str sender_id: (required)
            The unique OCID of the sender.

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/delete_sender.py.html>`__ to see an example of how to use delete_sender API.
        r\�/senders/{senderId}r{�
delete_senderzPhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Sender/DeleteSenderr^csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z-EmailClient.delete_sender.<locals>.<listcomp>z"delete_sender got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�r2z-EmailClient.delete_sender.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBrr}r`�r#rar$rKrDrErIrJr[rFr6r7rGrr%r0r&r�osh$��$

����zEmailClient.delete_sendercsddg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�r>t|
t
j��s|j
�|�|
�|j�|
j|j
j|||	||�d�|||d�	S|j
j|||	||�d�|||d�SdS)a�
        Removes a suppressed recipient email address from the suppression list
        for a tenancy in a given compartment for a provided `suppressionId`.


        :param str suppression_id: (required)
            The unique OCID of the suppression.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/delete_suppression.py.html>`__ to see an example of how to use delete_suppression API.
        �
suppressionId�/suppressions/{suppressionId}r{�delete_suppressionzZhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Suppression/DeleteSuppressionrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1r2z2EmailClient.delete_suppression.<locals>.<listcomp>z'delete_suppression got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8	r2z2EmailClient.delete_suppression.<locals>.<dictcomp>Nrr9r:r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8r2rrBrr}r`�r#Zsuppression_idr$rKrDrErIrJr[rFr6r7rGrr%r0r&r��sf��$
����zEmailClient.delete_suppressioncshdg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�r@t|
t
j��s|j
�|�|
�|j�|
j|j
j|||	|d|�d�|||d�
S|j
j|||	|d|�d�|||d�	SdS)a�
        Retrieves the specified DKIM.


        :param str dkim_id: (required)
            The `OCID`__ of this DKIM.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Dkim`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/get_dkim.py.html>`__ to see an example of how to use get_dkim API.
        ryrz�GET�get_dkimzIhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Dkim/GetDkimrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1`r2z(EmailClient.get_dkim.<locals>.<listcomp>zget_dkim got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8ir2z(EmailClient.get_dkim.<locals>.<dictcomp>Nrr9r:r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8tr2rrBrdr�	rDrErFrGrfrrIrJrKr`r~r%r0r&r�4sj ��$
����zEmailClient.get_dkimcsdg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	dd|�d
t�d�}
dd�t�|
�D�}
|jj|�d�|jd�}|r�t	|t
j�s�|j�|
�|�
|j�|j|jj|||	|
d|�d�|||d�
S|jj|||	|
d|�d�|||d�	SdS)a�
        Returns  email configuration associated with the specified compartment.


        :param str compartment_id: (required)
            The OCID for the compartment.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Configuration`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/get_email_configuration.py.html>`__ to see an example of how to use get_email_configuration API.
        �
compartmentIdz/configurationr��get_email_configurationz`https://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Configuration/GetEmailConfigurationrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z7EmailClient.get_email_configuration.<locals>.<listcomp>z,get_email_configuration got unknown kwargs: cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2z7EmailClient.get_email_configuration.<locals>.<dictcomp>r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBZ
Configurationr�	rDrE�query_paramsrGrfrrIrJrKN)rrLrMrNr!r4r"rSrrOrrTrVrWr rXrY�r#�compartment_idr$rKrDrErIrJr[r�rGrr%r0r&r��sd��
����z#EmailClient.get_email_configurationcshdg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�r@t|
t
j��s|j
�|�|
�|j�|
j|j
j|||	|d|�d�|||d�
S|j
j|||	|d|�d�|||d�	SdS)a�
        Retrieves the specified email domain.


        :param str email_domain_id: (required)
            The `OCID`__ of this email domain.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.EmailDomain`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/get_email_domain.py.html>`__ to see an example of how to use get_email_domain API.
        r(r�r��get_email_domainzWhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailDomain/GetEmailDomainrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1r2z0EmailClient.get_email_domain.<locals>.<listcomp>z%get_email_domain got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8&r2z0EmailClient.get_email_domain.<locals>.<dictcomp>Nrr9r:r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r81r2rrBrlrr�r`r�r%r0r&r��sj ��$
����zEmailClient.get_email_domaincshdg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�r@t|
t
j��s|j
�|�|
�|j�|
j|j
j|||	|d|�d�|||d�
S|j
j|||	|d|�d�|||d�	SdS)a�
        Retrieves the specified email return path.


        :param str email_return_path_id: (required)
            The `OCID`__ of this email return path.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.EmailReturnPath`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/get_email_return_path.py.html>`__ to see an example of how to use get_email_return_path API.
        r�r�r��get_email_return_pathz_https://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailReturnPath/GetEmailReturnPathrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1r2z5EmailClient.get_email_return_path.<locals>.<listcomp>z*get_email_return_path got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�r2z5EmailClient.get_email_return_path.<locals>.<dictcomp>Nrr9r:r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBrorr�r`r�r%r0r&r�Ssj ��$
����z!EmailClient.get_email_return_pathcshdg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�r@t|
t
j��s|j
�|�|
�|j�|
j|j
j|||	|d|�d�|||d�
S|j
j|||	|d|�d�|||d�	SdS)aU
        Gets an approved sender for a given `senderId`.


        :param str sender_id: (required)
            The unique OCID of the sender.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Sender`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/get_sender.py.html>`__ to see an example of how to use get_sender API.
        r\r�r��
get_senderzMhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Sender/GetSenderrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z*EmailClient.get_sender.<locals>.<listcomp>zget_sender got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�r2z*EmailClient.get_sender.<locals>.<dictcomp>Nrr9r:r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBrtrr�r`r�r%r0r&r��sj��$
����zEmailClient.get_sendercshdg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�r@t|
t
j��s|j
�|�|
�|j�|
j|j
j|||	|d|�d�|||d�
S|j
j|||	|d|�d�|||d�	SdS)a�
        Gets the details of a suppressed recipient email address for a given
        `suppressionId`. Each suppression is given a unique OCID.


        :param str suppression_id: (required)
            The unique OCID of the suppression.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Suppression`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/get_suppression.py.html>`__ to see an example of how to use get_suppression API.
        r�r�r��get_suppressionzWhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Suppression/GetSuppressionrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1@r2z/EmailClient.get_suppression.<locals>.<listcomp>z$get_suppression got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8Ir2z/EmailClient.get_suppression.<locals>.<dictcomp>Nrr9r:r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8Tr2rrBrxrr�r`r�r%r0r&r�sj��$
����zEmailClient.get_suppressioncshdg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qndd|�dt	�d�}dd�t�|�D�}|j
j|�d�|jd�}
|
�r@t|
t
j��s|j
�|�|
�|j�|
j|j
j|||	|d|�d�|||d�
S|j
j|||	|d|�d�|||d�	SdS)ax
        Gets the status of the work request with the given ID.


        :param str work_request_id: (required)
            The ID of the asynchronous request.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.WorkRequest`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/get_work_request.py.html>`__ to see an example of how to use get_work_request API.
        �
workRequestIdz/workRequests/{workRequestId}r��get_work_requestzWhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/WorkRequest/GetWorkRequestrrcsg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z0EmailClient.get_work_request.<locals>.<listcomp>z%get_work_request got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�r2z0EmailClient.get_work_request.<locals>.<dictcomp>Nrr9r:r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBZWorkRequestrr�r`)r#�work_request_idr$rKrDrErIrJr[rFr6r7rGrr%r0r&r�vsj��$
����zEmailClient.get_work_requestcs�dg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d
|vrrddg}	|d
|	vrrtd
|	����d|vr�gd�}
|d|
vr�td|
����d|vr�gd�}|d|vr�td|����||�dt�|�dt�|�dt�|�dt�|�d
t�|�dt�|�dt�d�}dd�t�|�D�}dd|�dt�d�}
dd�t�|
�D�}
|jj|�d�|jd �}|�r�t	|t
j��s�|j�|
�|�
|j�|j|jj||||
d!|�d"�|||d#�
S|jj||||
d!|�d"�|||d#�	Sd$S)%a�

        Lists DKIMs for an email domain.


        :param str email_domain_id: (required)
            The `OCID`__ of the email domain to which this DKIM belongs.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str id: (optional)
            A filter to only return resources that match the given id exactly.

        :param str name: (optional)
            A filter to only return resources that match the given name exactly.

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str sort_order: (optional)
            The sort order to use, either ascending or descending order.

            Allowed values are: "ASC", "DESC"

        :param str lifecycle_state: (optional)
            Filter returned list by specified lifecycle state. This parameter is case-insensitive.

            Allowed values are: "ACTIVE", "CREATING", "DELETING", "DELETED", "FAILED", "INACTIVE", "NEEDS_ATTENTION", "UPDATING"

        :param str sort_by: (optional)
            Specifies the attribute with which to sort the DKIMs.

            Default: `TIMECREATED`

            * **TIMECREATED:** Sorts by timeCreated.
            * **NAME:** Sorts by name.
            * **ID:** Sorts by id.

            Allowed values are: "TIMECREATED", "ID", "NAME"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.DkimCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_dkims.py.html>`__ to see an example of how to use list_dkims API.
        r(rbr��
list_dkimszKhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Dkim/ListDkims�
rrr,�id�name�limit�page�
sort_order�lifecycle_state�sort_bycsg|]}|�vr|�qSr%r%r.r0r%r&r12r2z*EmailClient.list_dkims.<locals>.<listcomp>zlist_dkims got unknown kwargs: r��ASC�DESC�/Invalid value for `sort_order`, must be one of r�)�ACTIVE�CREATING�DELETING�DELETED�FAILED�INACTIVE�NEEDS_ATTENTION�UPDATING�4Invalid value for `lifecycle_state`, must be one of r���TIMECREATEDZID�NAME�,Invalid value for `sort_by`, must be one of r�r�r�r�)r(r�r�r�r��	sortOrder�lifecycleState�sortBycSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8Vr2z*EmailClient.list_dkims.<locals>.<dictcomp>r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8]r2rrBZDkimCollectionrr�Nru)r#rZr$rKrDrErIrJr[�sort_order_allowed_values�lifecycle_state_allowed_values�sort_by_allowed_valuesr�rGrr%r0r&r��s�I����






�

����zEmailClient.list_dkimscs�dg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d
|vrrddg}	|d
|	vrrtd
|	����d|vr�gd�}
|d|
vr�td|
����d|vr�gd�}|d|vr�td|����||�dt�|�dt�|�dt�|�dt�|�d
t�|�dt�|�dt�d�}dd�t�|�D�}dd|�dt�d�}
dd�t�|
�D�}
|jj|�d�|jd �}|�r�t	|t
j��s�|j�|
�|�
|j�|j|jj||||
d!|�d"�|||d#�
S|jj||||
d!|�d"�|||d#�	Sd$S)%a%

        Lists email domains in the specified compartment.


        :param str compartment_id: (required)
            The OCID for the compartment.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str id: (optional)
            A filter to only return resources that match the given id exactly.

        :param str name: (optional)
            A filter to only return resources that match the given name exactly.

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str sort_order: (optional)
            The sort order to use, either ascending or descending order.

            Allowed values are: "ASC", "DESC"

        :param str lifecycle_state: (optional)
            Filter returned list by specified lifecycle state. This parameter is case-insensitive.

            Allowed values are: "ACTIVE", "CREATING", "DELETING", "DELETED", "FAILED", "UPDATING"

        :param str sort_by: (optional)
            Specifies the attribute with which to sort the email domains.

            Default: `TIMECREATED`

            * **TIMECREATED:** Sorts by timeCreated.
            * **NAME:** Sorts by name.
            * **ID:** Sorts by id.

            Allowed values are: "TIMECREATED", "ID", "NAME"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.EmailDomainCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_email_domains.py.html>`__ to see an example of how to use list_email_domains API.
        r�rhr��list_email_domainszYhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailDomain/ListEmailDomainsr�csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z2EmailClient.list_email_domains.<locals>.<listcomp>z'list_email_domains got unknown kwargs: r�r�r�r�r�)r�r�r�r�r�r�r�r�r�r�r�r�r�r�)r�r�r�r�r�r�r�r�cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2z2EmailClient.list_email_domains.<locals>.<dictcomp>r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8	r2rrBZEmailDomainCollectionrr�Nru)r#r�r$rKrDrErIrJr[r�r�r�r�rGrr%r0r&r�s�G����






�

����zEmailClient.list_email_domainscs�g}d}d}d}d}gd���fdd�t�|�D�}|rFtd|����d	|vrpd
dg}|d	|vrptd|����d
|vr�gd�}	|d
|	vr�td|	����d|vr�gd�}
|d|
vr�td|
����|�dt�|�dt�|�dt�|�dt�|�dt�|�dt�|�d	t�|�d
t�|�dt�d�	}dd�t�|�D�}dd|�dt�d�}dd�t�|�D�}|jj|�d �|jd!�}
|
�r�t	|
t
j��s�|j�|�|
�
|j�|
j|jj||||d"|�d#�|||d$�
S|jj||||d"|�d#�|||d$�	Sd%S)&a>
        Lists email return paths in the specified compartment or emaildomain.


        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str compartment_id: (optional)
            The OCID for the compartment.

        :param str parent_resource_id: (optional)
            The `OCID`__ of the Email Domain to which this Email Return Path belongs.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param str id: (optional)
            A filter to only return resources that match the given id exactly.

        :param str name: (optional)
            A filter to only return resources that match the given name exactly.

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str sort_order: (optional)
            The sort order to use, either ascending or descending order.

            Allowed values are: "ASC", "DESC"

        :param str lifecycle_state: (optional)
            Filter returned list by specified lifecycle state. This parameter is case-insensitive.

            Allowed values are: "ACTIVE", "CREATING", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", "UPDATING"

        :param str sort_by: (optional)
            Specifies the attribute with which to sort the return paths.

            Default: `TIMECREATED`

            * **TIMECREATED:** Sorts by timeCreated.
            * **NAME:** Sorts by name.
            * **ID:** Sorts by id.

            Allowed values are: "TIMECREATED", "ID", "NAME"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.EmailReturnPathCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_email_return_paths.py.html>`__ to see an example of how to use list_email_return_paths API.
        rmr��list_email_return_pathszahttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailReturnPath/ListEmailReturnPaths)rrr,r��parent_resource_idr�r�r�r�r�r�r�csg|]}|�vr|�qSr%r%r.r0r%r&r1�	r2z7EmailClient.list_email_return_paths.<locals>.<listcomp>z,list_email_return_paths got unknown kwargs: r�r�r�r�r�)r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�)	r�ZparentResourceIdr�r�r�r�r�r�r�cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�	r2z7EmailClient.list_email_return_paths.<locals>.<dictcomp>r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�	r2rrBZEmailReturnPathCollectionrr�Nru)r#r$rKrDrErIrJr[r�r�r�r�rGrr%r0r&r�&	s�L����








�
����z#EmailClient.list_email_return_pathscs�dg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d
|vrrgd�}	|d
|	vrrtd|	����d
|vr�ddg}
|d
|
vr�td|
����d|vr�ddg}|d|vr�td|����||�d
t�|�dt�|�dt�|�dt�|�dt�|�d
t�|�dt�d�}dd�t�|�D�}dd|�dt�d�}
dd�t�|
�D�}
|jj|�d �|jd!�}|�r�t	|t
j��s�|j�|
�|�
|j�|j|jj||||
d"|�d#�|||d$�
S|jj||||
d"|�d#�|||d$�	Sd%S)&aA

        Gets a collection of approved sender email addresses and sender IDs.


        :param str compartment_id: (required)
            The OCID for the compartment.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str lifecycle_state: (optional)
            The current state of a sender.

            Allowed values are: "CREATING", "ACTIVE", "NEEDS_ATTENTION", "INACTIVE", "FAILED", "DELETING", "DELETED"

        :param str domain: (optional)
            A filter to only return resources that match the given domain exactly.

        :param str email_address: (optional)
            The email address of the approved sender.

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str sort_by: (optional)
            The field to sort by. The `TIMECREATED` value returns the list in in
            descending order by default. The `EMAILADDRESS` value returns the list in
            ascending order by default. Use the `SortOrderQueryParam` to change the
            direction of the returned list of items.

            Allowed values are: "TIMECREATED", "EMAILADDRESS"

        :param str sort_order: (optional)
            The sort order to use, either ascending or descending order.

            Allowed values are: "ASC", "DESC"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.email.models.SenderSummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_senders.py.html>`__ to see an example of how to use list_senders API.
        r�rpr��list_senderszOhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Sender/ListSenders)
rrr,r��domain�
email_addressr�r�r�r�csg|]}|�vr|�qSr%r%r.r0r%r&r1,
r2z,EmailClient.list_senders.<locals>.<listcomp>z!list_senders got unknown kwargs: r�)r�r�r�r�r�r�r�r�r�r��EMAILADDRESSr�r�r�r�r�r�r�r�r�)r�r�r��emailAddressr�r�r�r�cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8P
r2z,EmailClient.list_senders.<locals>.<dictcomp>r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8W
r2rrBzlist[SenderSummary]rr�Nru)r#r�r$rKrDrErIrJr[r�r�r�r�rGrr%r0r&r��	s�D����






�

����zEmailClient.list_senderscs�dg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d
|vrrddg}	|d
|	vrrtd
|	����d|vr�ddg}
|d|
vr�td|
����||�dt�|�dt�|�dt�|�dt�|�dt�|�d
t�|�dt�d�}dd�t�|�D�}dd|�dt�d�}dd�t�|�D�}|jj|�d�|jd�}
|
�r�t	|
t
j��sj|j�|�|
�
|j�|
j|jj||||d |�d!�|||d"�
S|jj||||d |�d!�|||d"�	Sd#S)$a�
        Gets a list of suppressed recipient email addresses for a user. The
        `compartmentId` for suppressions must be a tenancy OCID. The returned list
        is sorted by creation time in descending order.


        :param str compartment_id: (required)
            The OCID for the compartment.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str email_address: (optional)
            The email address of the suppression.

        :param datetime time_created_greater_than_or_equal_to: (optional)
            Search for suppressions that were created within a specific date range,
            using this parameter to specify the earliest creation date for the
            returned list (inclusive). Specifying this parameter without the
            corresponding `timeCreatedLessThan` parameter will retrieve suppressions created from the
            given `timeCreatedGreaterThanOrEqualTo` to the current time, in "YYYY-MM-ddThh:mmZ" format with a
            Z offset, as defined by `RFC 3339`__.

            **Example:** 2016-12-19T16:39:57.600Z

            __ https://tools.ietf.org/html/rfc3339

        :param datetime time_created_less_than: (optional)
            Search for suppressions that were created within a specific date range,
            using this parameter to specify the latest creation date for the returned
            list (exclusive). Specifying this parameter without the corresponding
            `timeCreatedGreaterThanOrEqualTo` parameter will retrieve all suppressions created before the
            specified end date, in "YYYY-MM-ddThh:mmZ" format with a Z offset, as
            defined by `RFC 3339`__.

            **Example:** 2016-12-19T16:39:57.600Z

            __ https://tools.ietf.org/html/rfc3339

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param str sort_by: (optional)
            The field to sort by. The `TIMECREATED` value returns the list in in
            descending order by default. The `EMAILADDRESS` value returns the list in
            ascending order by default. Use the `SortOrderQueryParam` to change the
            direction of the returned list of items.

            Allowed values are: "TIMECREATED", "EMAILADDRESS"

        :param str sort_order: (optional)
            The sort order to use, either ascending or descending order.

            Allowed values are: "ASC", "DESC"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.email.models.SuppressionSummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_suppressions.py.html>`__ to see an example of how to use list_suppressions API.
        r�rvr��list_suppressionszYhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Suppression/ListSuppressions)
rrr,r��%time_created_greater_than_or_equal_to�time_created_less_thanr�r�r�r�csg|]}|�vr|�qSr%r%r.r0r%r&r1�
r2z1EmailClient.list_suppressions.<locals>.<listcomp>z&list_suppressions got unknown kwargs: r�r�r�r�r�r�r�r�r�r�r�r�r�)r�r�ZtimeCreatedGreaterThanOrEqualToZtimeCreatedLessThanr�r�r�r�cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�
r2z1EmailClient.list_suppressions.<locals>.<dictcomp>r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8r2rrBzlist[SuppressionSummary]rr�Nru)r#r�r$rKrDrErIrJr[r�r�r�rGrr%r0r&r�y
s�V���






�

����zEmailClient.list_suppressionsc
s�dg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qn|�dt	�|�dt	�d�}dd�t�|�D�}dd|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�rpt|t
j��sF|j
�|
�|�|j�|j|j
j|||	||
d|�d�|||d�S|j
j|||	||
d|�d�|||d�
SdS)au	
        Return a (paginated) list of errors for a given work request.


        :param str work_request_id: (required)
            The ID of the asynchronous request.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.WorkRequestErrorCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_work_request_errors.py.html>`__ to see an example of how to use list_work_request_errors API.
        r�z$/workRequests/{workRequestId}/errorsr��list_work_request_errorszmhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/WorkRequestErrorCollection/ListWorkRequestErrors�rrr,r�r�csg|]}|�vr|�qSr%r%r.r0r%r&r1br2z8EmailClient.list_work_request_errors.<locals>.<listcomp>z-list_work_request_errors got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8kr2z8EmailClient.list_work_request_errors.<locals>.<dictcomp>Nrr9r:r�r��r�r�cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8ur2r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8|r2rrBZWorkRequestErrorCollectionr�
rDrErFr�rGrfrrIrJrKr`�r#r�r$rKrDrErIrJr[rFr6r7r�rGrr%r0r&r�(sv,��$

�
���
�z$EmailClient.list_work_request_errorsc
s�dg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����d|i}	d
d�t�|	�D�}	t�|	�D]<\}
}|dus�t|tj�rnt|���d
krntd|
�d���qn|�dt	�|�dt	�d�}dd�t�|�D�}dd|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�rpt|t
j��sF|j
�|
�|�|j�|j|j
j|||	||
d|�d�|||d�S|j
j|||	||
d|�d�|||d�
SdS)ar	
        Return a (paginated) list of logs for a given work request.


        :param str work_request_id: (required)
            The ID of the asynchronous request.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.WorkRequestLogEntryCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_work_request_logs.py.html>`__ to see an example of how to use list_work_request_logs API.
        r�z"/workRequests/{workRequestId}/logsr��list_work_request_logsznhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/WorkRequestLogEntryCollection/ListWorkRequestLogsr�csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z6EmailClient.list_work_request_logs.<locals>.<listcomp>z+list_work_request_logs got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�r2z6EmailClient.list_work_request_logs.<locals>.<dictcomp>Nrr9r:r�r�r�cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBZWorkRequestLogEntryCollectionrr�r`r�r%r0r&r��sv,��$

�
���
�z"EmailClient.list_work_request_logscs<dg}d}d}d}d}gd���fdd�t�|�D�}|rHtd	|����||�d
t�|�dt�|�dt�d
�}	dd�t�|	�D�}	dd|�dt�d�}
dd�t�|
�D�}
|jj|�d�|jd�}|�rt	|t
j�s�|j�|
�|�
|j�|j|jj|||	|
d|�d�|||d�
S|jj|||	|
d|�d�|||d�	SdS)a�	
        Lists the work requests in a compartment.


        :param str compartment_id: (required)
            The OCID for the compartment.

        :param str work_request_id: (optional)
            The ID of the asynchronous work request.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param str page: (optional)
            For list pagination. The value of the opc-next-page response header from the previous "List" call.
            For important details about how pagination works,
            see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param int limit: (optional)
            For list pagination. The maximum number of results per page, or items to return in a
            paginated "List" call. `1` is the minimum, `1000` is the maximum. For important details about
            how pagination works, see `List Pagination`__.

            __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.WorkRequestSummaryCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/list_work_requests.py.html>`__ to see an example of how to use list_work_requests API.
        r�z
/workRequestsr��list_work_requestszjhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/WorkRequestSummaryCollection/ListWorkRequests)rrr�r,r�r�csg|]}|�vr|�qSr%r%r.r0r%r&r1Vr2z2EmailClient.list_work_requests.<locals>.<listcomp>z'list_work_requests got unknown kwargs: r�r�r�)r�r�r�r�cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8ar2z2EmailClient.list_work_requests.<locals>.<dictcomp>r;r,rscSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8hr2rrBZWorkRequestSummaryCollectionrr�Nrur�r%r0r&r�sj/�


�
����zEmailClient.list_work_requestscsrdg}d}d}d}d}gd���fdd�t�|�D�}	|	rHtd	|	����d|i}
d
d�t�|
�D�}
t�|
�D]<\}}|dus�t|tj�rnt|���d
krntd|�d���qndd|�dt	�|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�rJt|t
j��s"|j
�|
�|�|j�|j|j
j|||
|
||�d�|||d�
S|j
j|||
|
||�d�|||d�	SdS)a
        Modifies a DKIM.


        :param str dkim_id: (required)
            The `OCID`__ of this DKIM.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param oci.email.models.UpdateDkimDetails update_dkim_details: (required)
            The new DKIM attributes to apply.

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/update_dkim.py.html>`__ to see an example of how to use update_dkim API.
        ryrz�PUT�update_dkimzLhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Dkim/UpdateDkimr^csg|]}|�vr|�qSr%r%r.r0r%r&r1�r2z+EmailClient.update_dkim.<locals>.<listcomp>z update_dkim got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�r2z+EmailClient.update_dkim.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�r2rrBrrCr`)r#rZupdate_dkim_detailsr$rKrDrErIrJr[rFr6r7rGrr%r0r&r��sl(��$

����zEmailClient.update_dkimcsrdg}d}d}d}d}gd���fdd�t�|�D�}	|	rHtd	|	����d|i}
d
d�t�|
�D�}
t�|
�D]<\}}|dus�t|tj�rnt|���d
krntd|�d���qndd|�dt	�|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�rJt|t
j��s"|j
�|
�|�|j�|j|j
j|||
|
||�d�|||d�
S|j
j|||
|
||�d�|||d�	SdS)a�
        Modifies an email domain.


        :param str email_domain_id: (required)
            The `OCID`__ of this email domain.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param oci.email.models.UpdateEmailDomainDetails update_email_domain_details: (required)
            The new email domain attributes to apply.

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/update_email_domain.py.html>`__ to see an example of how to use update_email_domain API.
        r(r�r��update_email_domainzZhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailDomain/UpdateEmailDomainr^csg|]}|�vr|�qSr%r%r.r0r%r&r1+
r2z3EmailClient.update_email_domain.<locals>.<listcomp>z(update_email_domain got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r84
r2z3EmailClient.update_email_domain.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8@
r2rrBrrCr`)r#rZZupdate_email_domain_detailsr$rKrDrErIrJr[rFr6r7rGrr%r0r&r��sl(��$

����zEmailClient.update_email_domaincsrdg}d}d}d}d}gd���fdd�t�|�D�}	|	rHtd	|	����d|i}
d
d�t�|
�D�}
t�|
�D]<\}}|dus�t|tj�rnt|���d
krntd|�d���qndd|�dt	�|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�rJt|t
j��s"|j
�|
�|�|j�|j|j
j|||
|
||�d�|||d�
S|j
j|||
|
||�d�|||d�	SdS)a�
        Modifies an email return path.


        :param str email_return_path_id: (required)
            The `OCID`__ of this email return path.

            __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm

        :param oci.email.models.UpdateEmailReturnPathDetails update_email_return_path_details: (required)
            The new email return path attributes to apply.

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/update_email_return_path.py.html>`__ to see an example of how to use update_email_return_path API.
        r�r�r��update_email_return_pathzbhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/EmailReturnPath/UpdateEmailReturnPathr^csg|]}|�vr|�qSr%r%r.r0r%r&r1�
r2z8EmailClient.update_email_return_path.<locals>.<listcomp>z-update_email_return_path got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8�
r2z8EmailClient.update_email_return_path.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8�
r2rrBrrCr`)r#r�Z update_email_return_path_detailsr$rKrDrErIrJr[rFr6r7rGrr%r0r&r�b
sl(��$

����z$EmailClient.update_email_return_pathc
svdg}d}d}d}d}gd���fdd�t�|�D�}	|	rHtd	|	����d|i}
d
d�t�|
�D�}
t�|
�D]<\}}|dus�t|tj�rnt|���d
krntd|�d���qndd|�dt	�|�dt	�d�}
dd�t�|
�D�}
|j
j|�d�|jd�}|�rLt|t
j��s"|j
�|
�|�|j�|j|j
j|||
|
|d|�d�|||d�S|j
j|||
|
|d|�d�|||d�
SdS)a�	
        Replaces the set of tags for a sender with the tags provided. If either freeform
        or defined tags are omitted, the tags for that set remain the same. Each set must
        include the full set of tags for the sender, partial updates are not permitted.
        For more information about tagging, see `Resource Tags`__.

        __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm


        :param str sender_id: (required)
            The unique OCID of the sender.

        :param oci.email.models.UpdateSenderDetails update_sender_details: (required)
            update details for sender.

        :param str if_match: (optional)
            Used for optimistic concurrency control. In the update or delete call for a resource, set the `if-match`
            parameter to the value of the etag from a previous get, create, or update response for that resource.  The resource
            will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            The request ID for tracing from the system

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.email.models.Sender`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/email/update_sender.py.html>`__ to see an example of how to use update_sender API.
        r\r�r��
update_senderzPhttps://docs.oracle.com/iaas/api/#/en/emaildelivery/20170907/Sender/UpdateSenderr^csg|]}|�vr|�qSr%r%r.r0r%r&r1r2z-EmailClient.update_sender.<locals>.<listcomp>z"update_sender got unknown kwargs: cSsi|]\}}|tur||�qSr%r3r5r%r%r&r8r2z-EmailClient.update_sender.<locals>.<dictcomp>Nrr9r:r;r+r,r_cSs&i|]\}}|tur|dur||�qSrAr3r5r%r%r&r8r2rrBrtr)
rDrErFrGrHrfrrIrJrKr`)r#raZupdate_sender_detailsr$rKrDrErIrJr[rFr6r7rGrr%r0r&r��
sp+��$

���
�zEmailClient.update_senderN)$�__name__�
__module__�__qualname__�__doc__r'r*r]rcrirnrqrwr|r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r%r%r%r&rsL[}jd``VYlggf_b[bb`a`*(0%0xxrlllrN)Z
__future__rZoci._vendorrrZocirrZoci.base_clientrZ
oci.configrr	Z
oci.signerr
Zoci.utilrrr
Zoci.exceptionsrZ	oci.alloyrZmodelsrr4�objectrr%r%r%r&�<module>s

Youez - 2016 - github.com/yon3zu
LinuXploit