dm-20151123/alibabacloud_dm20151123/models.py (6,773 lines of code) (raw):

# -*- coding: utf-8 -*- # This file is auto-generated, don't edit it. Thanks. from Tea.model import TeaModel from typing import Dict, List class AddIpfilterRequest(TeaModel): def __init__( self, ip_address: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # This parameter is required. self.ip_address = ip_address self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.ip_address is not None: result['IpAddress'] = self.ip_address if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('IpAddress') is not None: self.ip_address = m.get('IpAddress') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class AddIpfilterResponseBody(TeaModel): def __init__( self, ip_filter_id: str = None, request_id: str = None, ): self.ip_filter_id = ip_filter_id self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.ip_filter_id is not None: result['IpFilterId'] = self.ip_filter_id if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('IpFilterId') is not None: self.ip_filter_id = m.get('IpFilterId') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class AddIpfilterResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: AddIpfilterResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = AddIpfilterResponseBody() self.body = temp_model.from_map(m['body']) return self class ApproveReplyMailAddressRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ticket: str = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # This parameter is required. self.ticket = ticket def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.ticket is not None: result['Ticket'] = self.ticket return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('Ticket') is not None: self.ticket = m.get('Ticket') return self class ApproveReplyMailAddressResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class ApproveReplyMailAddressResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: ApproveReplyMailAddressResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = ApproveReplyMailAddressResponseBody() self.body = temp_model.from_map(m['body']) return self class BatchSendMailRequest(TeaModel): def __init__( self, account_name: str = None, address_type: int = None, click_trace: str = None, headers: str = None, owner_id: int = None, receivers_name: str = None, reply_address: str = None, reply_address_alias: str = None, resource_owner_account: str = None, resource_owner_id: int = None, tag_name: str = None, template_name: str = None, un_subscribe_filter_level: str = None, un_subscribe_link_type: str = None, ): # This parameter is required. self.account_name = account_name # This parameter is required. self.address_type = address_type self.click_trace = click_trace self.headers = headers self.owner_id = owner_id # This parameter is required. self.receivers_name = receivers_name self.reply_address = reply_address self.reply_address_alias = reply_address_alias self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.tag_name = tag_name # This parameter is required. self.template_name = template_name self.un_subscribe_filter_level = un_subscribe_filter_level self.un_subscribe_link_type = un_subscribe_link_type def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.address_type is not None: result['AddressType'] = self.address_type if self.click_trace is not None: result['ClickTrace'] = self.click_trace if self.headers is not None: result['Headers'] = self.headers if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.receivers_name is not None: result['ReceiversName'] = self.receivers_name if self.reply_address is not None: result['ReplyAddress'] = self.reply_address if self.reply_address_alias is not None: result['ReplyAddressAlias'] = self.reply_address_alias if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.tag_name is not None: result['TagName'] = self.tag_name if self.template_name is not None: result['TemplateName'] = self.template_name if self.un_subscribe_filter_level is not None: result['UnSubscribeFilterLevel'] = self.un_subscribe_filter_level if self.un_subscribe_link_type is not None: result['UnSubscribeLinkType'] = self.un_subscribe_link_type return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('AddressType') is not None: self.address_type = m.get('AddressType') if m.get('ClickTrace') is not None: self.click_trace = m.get('ClickTrace') if m.get('Headers') is not None: self.headers = m.get('Headers') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ReceiversName') is not None: self.receivers_name = m.get('ReceiversName') if m.get('ReplyAddress') is not None: self.reply_address = m.get('ReplyAddress') if m.get('ReplyAddressAlias') is not None: self.reply_address_alias = m.get('ReplyAddressAlias') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('TagName') is not None: self.tag_name = m.get('TagName') if m.get('TemplateName') is not None: self.template_name = m.get('TemplateName') if m.get('UnSubscribeFilterLevel') is not None: self.un_subscribe_filter_level = m.get('UnSubscribeFilterLevel') if m.get('UnSubscribeLinkType') is not None: self.un_subscribe_link_type = m.get('UnSubscribeLinkType') return self class BatchSendMailResponseBody(TeaModel): def __init__( self, env_id: str = None, request_id: str = None, ): self.env_id = env_id self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.env_id is not None: result['EnvId'] = self.env_id if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('EnvId') is not None: self.env_id = m.get('EnvId') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class BatchSendMailResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: BatchSendMailResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = BatchSendMailResponseBody() self.body = temp_model.from_map(m['body']) return self class CheckDomainRequest(TeaModel): def __init__( self, domain_id: int = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # The ID of the domain name. # # This parameter is required. self.domain_id = domain_id self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.domain_id is not None: result['DomainId'] = self.domain_id if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('DomainId') is not None: self.domain_id = m.get('DomainId') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class CheckDomainResponseBody(TeaModel): def __init__( self, domain_status: int = None, request_id: str = None, ): # The status of the domain name. Indicates whether the domain name is verified and available. # # * 0: indicates that the domain name is verified and available. # * 1: indicates that the domain name fails to be verified and is unavailable. # * 2: indicates that the domain name is available, but not filed or configured with a CNAME record. # * 3: indicates that the domain name is available but not filed. # * 4: indicates that the domain name is available but not configured with a CNAME record. self.domain_status = domain_status # The ID of the request. self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.domain_status is not None: result['DomainStatus'] = self.domain_status if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('DomainStatus') is not None: self.domain_status = m.get('DomainStatus') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class CheckDomainResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: CheckDomainResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = CheckDomainResponseBody() self.body = temp_model.from_map(m['body']) return self class CheckReplyToMailAddressRequest(TeaModel): def __init__( self, lang: str = None, mail_address_id: int = None, owner_id: int = None, region: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.lang = lang # This parameter is required. self.mail_address_id = mail_address_id self.owner_id = owner_id self.region = region self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.lang is not None: result['Lang'] = self.lang if self.mail_address_id is not None: result['MailAddressId'] = self.mail_address_id if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.region is not None: result['Region'] = self.region if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('Lang') is not None: self.lang = m.get('Lang') if m.get('MailAddressId') is not None: self.mail_address_id = m.get('MailAddressId') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('Region') is not None: self.region = m.get('Region') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class CheckReplyToMailAddressResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class CheckReplyToMailAddressResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: CheckReplyToMailAddressResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = CheckReplyToMailAddressResponseBody() self.body = temp_model.from_map(m['body']) return self class CreateDomainRequest(TeaModel): def __init__( self, domain_name: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # This parameter is required. self.domain_name = domain_name self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.domain_name is not None: result['DomainName'] = self.domain_name if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('DomainName') is not None: self.domain_name = m.get('DomainName') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class CreateDomainResponseBody(TeaModel): def __init__( self, domain_id: str = None, request_id: str = None, ): self.domain_id = domain_id self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.domain_id is not None: result['DomainId'] = self.domain_id if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('DomainId') is not None: self.domain_id = m.get('DomainId') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class CreateDomainResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: CreateDomainResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = CreateDomainResponseBody() self.body = temp_model.from_map(m['body']) return self class CreateMailAddressRequest(TeaModel): def __init__( self, account_name: str = None, owner_id: int = None, reply_address: str = None, resource_owner_account: str = None, resource_owner_id: int = None, sendtype: str = None, ): # This parameter is required. self.account_name = account_name self.owner_id = owner_id self.reply_address = reply_address self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # This parameter is required. self.sendtype = sendtype def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.reply_address is not None: result['ReplyAddress'] = self.reply_address if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.sendtype is not None: result['Sendtype'] = self.sendtype return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ReplyAddress') is not None: self.reply_address = m.get('ReplyAddress') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('Sendtype') is not None: self.sendtype = m.get('Sendtype') return self class CreateMailAddressResponseBody(TeaModel): def __init__( self, mail_address_id: str = None, request_id: str = None, ): self.mail_address_id = mail_address_id self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.mail_address_id is not None: result['MailAddressId'] = self.mail_address_id if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('MailAddressId') is not None: self.mail_address_id = m.get('MailAddressId') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class CreateMailAddressResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: CreateMailAddressResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = CreateMailAddressResponseBody() self.body = temp_model.from_map(m['body']) return self class CreateReceiverRequest(TeaModel): def __init__( self, desc: str = None, owner_id: int = None, receivers_alias: str = None, receivers_name: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.desc = desc self.owner_id = owner_id # This parameter is required. self.receivers_alias = receivers_alias # This parameter is required. self.receivers_name = receivers_name self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.desc is not None: result['Desc'] = self.desc if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.receivers_alias is not None: result['ReceiversAlias'] = self.receivers_alias if self.receivers_name is not None: result['ReceiversName'] = self.receivers_name if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('Desc') is not None: self.desc = m.get('Desc') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ReceiversAlias') is not None: self.receivers_alias = m.get('ReceiversAlias') if m.get('ReceiversName') is not None: self.receivers_name = m.get('ReceiversName') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class CreateReceiverResponseBody(TeaModel): def __init__( self, receiver_id: str = None, request_id: str = None, ): self.receiver_id = receiver_id self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.receiver_id is not None: result['ReceiverId'] = self.receiver_id if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('ReceiverId') is not None: self.receiver_id = m.get('ReceiverId') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class CreateReceiverResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: CreateReceiverResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = CreateReceiverResponseBody() self.body = temp_model.from_map(m['body']) return self class CreateTagRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, tag_description: str = None, tag_name: str = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.tag_description = tag_description # This parameter is required. self.tag_name = tag_name def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.tag_description is not None: result['TagDescription'] = self.tag_description if self.tag_name is not None: result['TagName'] = self.tag_name return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('TagDescription') is not None: self.tag_description = m.get('TagDescription') if m.get('TagName') is not None: self.tag_name = m.get('TagName') return self class CreateTagResponseBody(TeaModel): def __init__( self, request_id: str = None, tag_id: str = None, ): self.request_id = request_id self.tag_id = tag_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id if self.tag_id is not None: result['TagId'] = self.tag_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TagId') is not None: self.tag_id = m.get('TagId') return self class CreateTagResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: CreateTagResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = CreateTagResponseBody() self.body = temp_model.from_map(m['body']) return self class CreateUserSuppressionRequest(TeaModel): def __init__( self, address: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # Email address or domain name self.address = address self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.address is not None: result['Address'] = self.address if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('Address') is not None: self.address = m.get('Address') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class CreateUserSuppressionResponseBody(TeaModel): def __init__( self, request_id: str = None, suppression_id: str = None, ): # Request ID self.request_id = request_id # Invalid address number self.suppression_id = suppression_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id if self.suppression_id is not None: result['SuppressionId'] = self.suppression_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('SuppressionId') is not None: self.suppression_id = m.get('SuppressionId') return self class CreateUserSuppressionResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: CreateUserSuppressionResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = CreateUserSuppressionResponseBody() self.body = temp_model.from_map(m['body']) return self class DeleteDomainRequest(TeaModel): def __init__( self, domain_id: int = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # This parameter is required. self.domain_id = domain_id self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.domain_id is not None: result['DomainId'] = self.domain_id if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('DomainId') is not None: self.domain_id = m.get('DomainId') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class DeleteDomainResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class DeleteDomainResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DeleteDomainResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DeleteDomainResponseBody() self.body = temp_model.from_map(m['body']) return self class DeleteInvalidAddressRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, to_address: str = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.to_address = to_address def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.to_address is not None: result['ToAddress'] = self.to_address return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('ToAddress') is not None: self.to_address = m.get('ToAddress') return self class DeleteInvalidAddressResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class DeleteInvalidAddressResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DeleteInvalidAddressResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DeleteInvalidAddressResponseBody() self.body = temp_model.from_map(m['body']) return self class DeleteIpfilterByEdmIdRequest(TeaModel): def __init__( self, from_type: int = None, id: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.from_type = from_type self.id = id self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.from_type is not None: result['FromType'] = self.from_type if self.id is not None: result['Id'] = self.id if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('FromType') is not None: self.from_type = m.get('FromType') if m.get('Id') is not None: self.id = m.get('Id') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class DeleteIpfilterByEdmIdResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class DeleteIpfilterByEdmIdResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DeleteIpfilterByEdmIdResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DeleteIpfilterByEdmIdResponseBody() self.body = temp_model.from_map(m['body']) return self class DeleteMailAddressRequest(TeaModel): def __init__( self, mail_address_id: int = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # This parameter is required. self.mail_address_id = mail_address_id self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.mail_address_id is not None: result['MailAddressId'] = self.mail_address_id if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('MailAddressId') is not None: self.mail_address_id = m.get('MailAddressId') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class DeleteMailAddressResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class DeleteMailAddressResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DeleteMailAddressResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DeleteMailAddressResponseBody() self.body = temp_model.from_map(m['body']) return self class DeleteReceiverRequest(TeaModel): def __init__( self, owner_id: int = None, receiver_id: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.owner_id = owner_id # The ID of the recipient list. # # This parameter is required. self.receiver_id = receiver_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.receiver_id is not None: result['ReceiverId'] = self.receiver_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ReceiverId') is not None: self.receiver_id = m.get('ReceiverId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class DeleteReceiverResponseBody(TeaModel): def __init__( self, request_id: str = None, ): # The ID of the request. self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class DeleteReceiverResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DeleteReceiverResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DeleteReceiverResponseBody() self.body = temp_model.from_map(m['body']) return self class DeleteReceiverDetailRequest(TeaModel): def __init__( self, email: str = None, owner_id: int = None, receiver_id: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.email = email self.owner_id = owner_id # This parameter is required. self.receiver_id = receiver_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.email is not None: result['Email'] = self.email if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.receiver_id is not None: result['ReceiverId'] = self.receiver_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('Email') is not None: self.email = m.get('Email') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ReceiverId') is not None: self.receiver_id = m.get('ReceiverId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class DeleteReceiverDetailResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class DeleteReceiverDetailResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DeleteReceiverDetailResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DeleteReceiverDetailResponseBody() self.body = temp_model.from_map(m['body']) return self class DeleteTagRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, tag_id: int = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # The ID of the tag. # # This parameter is required. self.tag_id = tag_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.tag_id is not None: result['TagId'] = self.tag_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('TagId') is not None: self.tag_id = m.get('TagId') return self class DeleteTagResponseBody(TeaModel): def __init__( self, request_id: str = None, ): # The ID of the request. self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class DeleteTagResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DeleteTagResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DeleteTagResponseBody() self.body = temp_model.from_map(m['body']) return self class DescAccountSummaryRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class DescAccountSummaryResponseBody(TeaModel): def __init__( self, daily_quota: int = None, daily_remain_free_quota: int = None, dayu_status: int = None, domains: int = None, enable_times: int = None, mail_addresses: int = None, max_quota_level: int = None, month_quota: int = None, quota_level: int = None, receivers: int = None, remain_free_quota: int = None, request_id: str = None, sms_record: int = None, sms_sign: int = None, sms_templates: int = None, tags: int = None, templates: int = None, user_status: int = None, ): # Daily quota self.daily_quota = daily_quota # remaining amount of daily free quota self.daily_remain_free_quota = daily_remain_free_quota # Dayu status (deprecated, retained for compatibility reasons.) self.dayu_status = dayu_status # Number of domains self.domains = domains # Effective time self.enable_times = enable_times # Number of sending addresses self.mail_addresses = mail_addresses # Maximum level self.max_quota_level = max_quota_level # Monthly quota self.month_quota = month_quota # Credit level self.quota_level = quota_level # Number of recipients self.receivers = receivers # Remaining amount of total free quota self.remain_free_quota = remain_free_quota # Request ID self.request_id = request_id # Deprecated, retained for compatibility reasons. self.sms_record = sms_record # Deprecated, retained for compatibility reasons. self.sms_sign = sms_sign # Deprecated, retained for compatibility reasons. self.sms_templates = sms_templates # Number of tags self.tags = tags # Number of templates self.templates = templates # User status: # 1 Frozen # 2 In arrears # 4 Restricted from sending # 8 Logically deleted self.user_status = user_status def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.daily_quota is not None: result['DailyQuota'] = self.daily_quota if self.daily_remain_free_quota is not None: result['DailyRemainFreeQuota'] = self.daily_remain_free_quota if self.dayu_status is not None: result['DayuStatus'] = self.dayu_status if self.domains is not None: result['Domains'] = self.domains if self.enable_times is not None: result['EnableTimes'] = self.enable_times if self.mail_addresses is not None: result['MailAddresses'] = self.mail_addresses if self.max_quota_level is not None: result['MaxQuotaLevel'] = self.max_quota_level if self.month_quota is not None: result['MonthQuota'] = self.month_quota if self.quota_level is not None: result['QuotaLevel'] = self.quota_level if self.receivers is not None: result['Receivers'] = self.receivers if self.remain_free_quota is not None: result['RemainFreeQuota'] = self.remain_free_quota if self.request_id is not None: result['RequestId'] = self.request_id if self.sms_record is not None: result['SmsRecord'] = self.sms_record if self.sms_sign is not None: result['SmsSign'] = self.sms_sign if self.sms_templates is not None: result['SmsTemplates'] = self.sms_templates if self.tags is not None: result['Tags'] = self.tags if self.templates is not None: result['Templates'] = self.templates if self.user_status is not None: result['UserStatus'] = self.user_status return result def from_map(self, m: dict = None): m = m or dict() if m.get('DailyQuota') is not None: self.daily_quota = m.get('DailyQuota') if m.get('DailyRemainFreeQuota') is not None: self.daily_remain_free_quota = m.get('DailyRemainFreeQuota') if m.get('DayuStatus') is not None: self.dayu_status = m.get('DayuStatus') if m.get('Domains') is not None: self.domains = m.get('Domains') if m.get('EnableTimes') is not None: self.enable_times = m.get('EnableTimes') if m.get('MailAddresses') is not None: self.mail_addresses = m.get('MailAddresses') if m.get('MaxQuotaLevel') is not None: self.max_quota_level = m.get('MaxQuotaLevel') if m.get('MonthQuota') is not None: self.month_quota = m.get('MonthQuota') if m.get('QuotaLevel') is not None: self.quota_level = m.get('QuotaLevel') if m.get('Receivers') is not None: self.receivers = m.get('Receivers') if m.get('RemainFreeQuota') is not None: self.remain_free_quota = m.get('RemainFreeQuota') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('SmsRecord') is not None: self.sms_record = m.get('SmsRecord') if m.get('SmsSign') is not None: self.sms_sign = m.get('SmsSign') if m.get('SmsTemplates') is not None: self.sms_templates = m.get('SmsTemplates') if m.get('Tags') is not None: self.tags = m.get('Tags') if m.get('Templates') is not None: self.templates = m.get('Templates') if m.get('UserStatus') is not None: self.user_status = m.get('UserStatus') return self class DescAccountSummaryResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DescAccountSummaryResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DescAccountSummaryResponseBody() self.body = temp_model.from_map(m['body']) return self class DescDomainRequest(TeaModel): def __init__( self, domain_id: int = None, owner_id: int = None, require_real_time_dns_records: bool = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # The ID of the domain name. # # This parameter is required. self.domain_id = domain_id self.owner_id = owner_id # Determine whether to perform real-time DNS resolution self.require_real_time_dns_records = require_real_time_dns_records self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.domain_id is not None: result['DomainId'] = self.domain_id if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.require_real_time_dns_records is not None: result['RequireRealTimeDnsRecords'] = self.require_real_time_dns_records if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('DomainId') is not None: self.domain_id = m.get('DomainId') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('RequireRealTimeDnsRecords') is not None: self.require_real_time_dns_records = m.get('RequireRealTimeDnsRecords') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class DescDomainResponseBody(TeaModel): def __init__( self, cname_auth_status: str = None, cname_confirm_status: str = None, cname_record: str = None, create_time: str = None, default_domain: str = None, dkim_auth_status: str = None, dkim_public_key: str = None, dkim_rr: str = None, dmarc_auth_status: int = None, dmarc_host_record: str = None, dmarc_record: str = None, dns_dmarc: str = None, dns_mx: str = None, dns_spf: str = None, dns_txt: str = None, domain_id: str = None, domain_name: str = None, domain_status: str = None, domain_type: str = None, host_record: str = None, icp_status: str = None, mx_auth_status: str = None, mx_record: str = None, request_id: str = None, spf_auth_status: str = None, spf_record: str = None, spf_record_v2: str = None, tl_domain_name: str = None, tracef_record: str = None, ): # Track verification self.cname_auth_status = cname_auth_status # CName verification flag, success: 0, failure: 1. self.cname_confirm_status = cname_confirm_status # CNAME records self.cname_record = cname_record # Creation time self.create_time = create_time # Default domain name self.default_domain = default_domain # DKIM validation flag, success: 0, failure: 1. self.dkim_auth_status = dkim_auth_status # DKIM public key self.dkim_public_key = dkim_public_key # DKIM HostRecord self.dkim_rr = dkim_rr # DMARC validation flag, success: 0, failure: 1. self.dmarc_auth_status = dmarc_auth_status # DMARC host record self.dmarc_host_record = dmarc_host_record # DMARC record self.dmarc_record = dmarc_record # dmarc record value resolved through public DNS self.dns_dmarc = dns_dmarc # MX record value resolved through public DNS self.dns_mx = dns_mx # SPF record value resolved through public DNS self.dns_spf = dns_spf # TXT record value resolved through public DNS. self.dns_txt = dns_txt # The ID of the domain name. self.domain_id = domain_id # domain self.domain_name = domain_name # The status of the domain name. Indicates whether the domain name is verified and available. Valid values: # # 0: indicates that the domain name is verified and available. # # 1: indicates that the domain name fails to be verified and is unavailable. # # 2: indicates that the domain name is available, but not filed or configured with a CNAME record. # # 3: indicates that the domain name is available but not filed. # # 4: indicates that the domain name is available but not configured with a CNAME record. self.domain_status = domain_status # TXT records provided by the Direct Mail console. self.domain_type = domain_type # host record self.host_record = host_record # Filing status. 1 indicates that it has been filed, and 0 indicates that it has not been filed. self.icp_status = icp_status # MX validation flag, success: 0, failure: 1. self.mx_auth_status = mx_auth_status # MX record self.mx_record = mx_record # The ID of the request. self.request_id = request_id # SPF validation flag, success: 0, failure: 1. self.spf_auth_status = spf_auth_status # Spf record self.spf_record = spf_record # SpfRecord self.spf_record_v2 = spf_record_v2 # The primary domain name. self.tl_domain_name = tl_domain_name # The CNAME verification record provided by the Direct Mail console. self.tracef_record = tracef_record def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.cname_auth_status is not None: result['CnameAuthStatus'] = self.cname_auth_status if self.cname_confirm_status is not None: result['CnameConfirmStatus'] = self.cname_confirm_status if self.cname_record is not None: result['CnameRecord'] = self.cname_record if self.create_time is not None: result['CreateTime'] = self.create_time if self.default_domain is not None: result['DefaultDomain'] = self.default_domain if self.dkim_auth_status is not None: result['DkimAuthStatus'] = self.dkim_auth_status if self.dkim_public_key is not None: result['DkimPublicKey'] = self.dkim_public_key if self.dkim_rr is not None: result['DkimRR'] = self.dkim_rr if self.dmarc_auth_status is not None: result['DmarcAuthStatus'] = self.dmarc_auth_status if self.dmarc_host_record is not None: result['DmarcHostRecord'] = self.dmarc_host_record if self.dmarc_record is not None: result['DmarcRecord'] = self.dmarc_record if self.dns_dmarc is not None: result['DnsDmarc'] = self.dns_dmarc if self.dns_mx is not None: result['DnsMx'] = self.dns_mx if self.dns_spf is not None: result['DnsSpf'] = self.dns_spf if self.dns_txt is not None: result['DnsTxt'] = self.dns_txt if self.domain_id is not None: result['DomainId'] = self.domain_id if self.domain_name is not None: result['DomainName'] = self.domain_name if self.domain_status is not None: result['DomainStatus'] = self.domain_status if self.domain_type is not None: result['DomainType'] = self.domain_type if self.host_record is not None: result['HostRecord'] = self.host_record if self.icp_status is not None: result['IcpStatus'] = self.icp_status if self.mx_auth_status is not None: result['MxAuthStatus'] = self.mx_auth_status if self.mx_record is not None: result['MxRecord'] = self.mx_record if self.request_id is not None: result['RequestId'] = self.request_id if self.spf_auth_status is not None: result['SpfAuthStatus'] = self.spf_auth_status if self.spf_record is not None: result['SpfRecord'] = self.spf_record if self.spf_record_v2 is not None: result['SpfRecordV2'] = self.spf_record_v2 if self.tl_domain_name is not None: result['TlDomainName'] = self.tl_domain_name if self.tracef_record is not None: result['TracefRecord'] = self.tracef_record return result def from_map(self, m: dict = None): m = m or dict() if m.get('CnameAuthStatus') is not None: self.cname_auth_status = m.get('CnameAuthStatus') if m.get('CnameConfirmStatus') is not None: self.cname_confirm_status = m.get('CnameConfirmStatus') if m.get('CnameRecord') is not None: self.cname_record = m.get('CnameRecord') if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('DefaultDomain') is not None: self.default_domain = m.get('DefaultDomain') if m.get('DkimAuthStatus') is not None: self.dkim_auth_status = m.get('DkimAuthStatus') if m.get('DkimPublicKey') is not None: self.dkim_public_key = m.get('DkimPublicKey') if m.get('DkimRR') is not None: self.dkim_rr = m.get('DkimRR') if m.get('DmarcAuthStatus') is not None: self.dmarc_auth_status = m.get('DmarcAuthStatus') if m.get('DmarcHostRecord') is not None: self.dmarc_host_record = m.get('DmarcHostRecord') if m.get('DmarcRecord') is not None: self.dmarc_record = m.get('DmarcRecord') if m.get('DnsDmarc') is not None: self.dns_dmarc = m.get('DnsDmarc') if m.get('DnsMx') is not None: self.dns_mx = m.get('DnsMx') if m.get('DnsSpf') is not None: self.dns_spf = m.get('DnsSpf') if m.get('DnsTxt') is not None: self.dns_txt = m.get('DnsTxt') if m.get('DomainId') is not None: self.domain_id = m.get('DomainId') if m.get('DomainName') is not None: self.domain_name = m.get('DomainName') if m.get('DomainStatus') is not None: self.domain_status = m.get('DomainStatus') if m.get('DomainType') is not None: self.domain_type = m.get('DomainType') if m.get('HostRecord') is not None: self.host_record = m.get('HostRecord') if m.get('IcpStatus') is not None: self.icp_status = m.get('IcpStatus') if m.get('MxAuthStatus') is not None: self.mx_auth_status = m.get('MxAuthStatus') if m.get('MxRecord') is not None: self.mx_record = m.get('MxRecord') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('SpfAuthStatus') is not None: self.spf_auth_status = m.get('SpfAuthStatus') if m.get('SpfRecord') is not None: self.spf_record = m.get('SpfRecord') if m.get('SpfRecordV2') is not None: self.spf_record_v2 = m.get('SpfRecordV2') if m.get('TlDomainName') is not None: self.tl_domain_name = m.get('TlDomainName') if m.get('TracefRecord') is not None: self.tracef_record = m.get('TracefRecord') return self class DescDomainResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: DescDomainResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = DescDomainResponseBody() self.body = temp_model.from_map(m['body']) return self class GetIpProtectionRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class GetIpProtectionResponseBody(TeaModel): def __init__( self, ip_protection: str = None, request_id: str = None, ): self.ip_protection = ip_protection self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.ip_protection is not None: result['IpProtection'] = self.ip_protection if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('IpProtection') is not None: self.ip_protection = m.get('IpProtection') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class GetIpProtectionResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: GetIpProtectionResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = GetIpProtectionResponseBody() self.body = temp_model.from_map(m['body']) return self class GetIpfilterListRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class GetIpfilterListResponseBodyDataIpfilters(TeaModel): def __init__( self, create_time: str = None, id: str = None, ip_address: str = None, ): self.create_time = create_time self.id = id self.ip_address = ip_address def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.create_time is not None: result['CreateTime'] = self.create_time if self.id is not None: result['Id'] = self.id if self.ip_address is not None: result['IpAddress'] = self.ip_address return result def from_map(self, m: dict = None): m = m or dict() if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('Id') is not None: self.id = m.get('Id') if m.get('IpAddress') is not None: self.ip_address = m.get('IpAddress') return self class GetIpfilterListResponseBodyData(TeaModel): def __init__( self, ipfilters: List[GetIpfilterListResponseBodyDataIpfilters] = None, ): self.ipfilters = ipfilters def validate(self): if self.ipfilters: for k in self.ipfilters: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['ipfilters'] = [] if self.ipfilters is not None: for k in self.ipfilters: result['ipfilters'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.ipfilters = [] if m.get('ipfilters') is not None: for k in m.get('ipfilters'): temp_model = GetIpfilterListResponseBodyDataIpfilters() self.ipfilters.append(temp_model.from_map(k)) return self class GetIpfilterListResponseBody(TeaModel): def __init__( self, page_number: int = None, page_size: int = None, request_id: str = None, total_count: int = None, data: GetIpfilterListResponseBodyData = None, ): self.page_number = page_number self.page_size = page_size self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = GetIpfilterListResponseBodyData() self.data = temp_model.from_map(m['data']) return self class GetIpfilterListResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: GetIpfilterListResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = GetIpfilterListResponseBody() self.body = temp_model.from_map(m['body']) return self class GetSuppressionListLevelRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class GetSuppressionListLevelResponseBody(TeaModel): def __init__( self, request_id: str = None, suppression_list_level: str = None, ): self.request_id = request_id self.suppression_list_level = suppression_list_level def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id if self.suppression_list_level is not None: result['SuppressionListLevel'] = self.suppression_list_level return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('SuppressionListLevel') is not None: self.suppression_list_level = m.get('SuppressionListLevel') return self class GetSuppressionListLevelResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: GetSuppressionListLevelResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = GetSuppressionListLevelResponseBody() self.body = temp_model.from_map(m['body']) return self class GetTrackListRequest(TeaModel): def __init__( self, account_name: str = None, end_time: str = None, offset: str = None, offset_create_time: str = None, offset_create_time_desc: str = None, owner_id: int = None, page_number: str = None, page_size: str = None, resource_owner_account: str = None, resource_owner_id: int = None, start_time: str = None, tag_name: str = None, total: str = None, ): self.account_name = account_name # This parameter is required. self.end_time = end_time self.offset = offset self.offset_create_time = offset_create_time self.offset_create_time_desc = offset_create_time_desc self.owner_id = owner_id self.page_number = page_number self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # This parameter is required. self.start_time = start_time self.tag_name = tag_name self.total = total def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.end_time is not None: result['EndTime'] = self.end_time if self.offset is not None: result['Offset'] = self.offset if self.offset_create_time is not None: result['OffsetCreateTime'] = self.offset_create_time if self.offset_create_time_desc is not None: result['OffsetCreateTimeDesc'] = self.offset_create_time_desc if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.start_time is not None: result['StartTime'] = self.start_time if self.tag_name is not None: result['TagName'] = self.tag_name if self.total is not None: result['Total'] = self.total return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('EndTime') is not None: self.end_time = m.get('EndTime') if m.get('Offset') is not None: self.offset = m.get('Offset') if m.get('OffsetCreateTime') is not None: self.offset_create_time = m.get('OffsetCreateTime') if m.get('OffsetCreateTimeDesc') is not None: self.offset_create_time_desc = m.get('OffsetCreateTimeDesc') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('StartTime') is not None: self.start_time = m.get('StartTime') if m.get('TagName') is not None: self.tag_name = m.get('TagName') if m.get('Total') is not None: self.total = m.get('Total') return self class GetTrackListResponseBodyDataStat(TeaModel): def __init__( self, create_time: str = None, rcpt_click_count: str = None, rcpt_click_rate: str = None, rcpt_open_count: str = None, rcpt_open_rate: str = None, rcpt_unique_click_count: str = None, rcpt_unique_click_rate: str = None, rcpt_unique_open_count: str = None, rcpt_unique_open_rate: str = None, total_number: str = None, ): self.create_time = create_time self.rcpt_click_count = rcpt_click_count self.rcpt_click_rate = rcpt_click_rate self.rcpt_open_count = rcpt_open_count self.rcpt_open_rate = rcpt_open_rate self.rcpt_unique_click_count = rcpt_unique_click_count self.rcpt_unique_click_rate = rcpt_unique_click_rate self.rcpt_unique_open_count = rcpt_unique_open_count self.rcpt_unique_open_rate = rcpt_unique_open_rate self.total_number = total_number def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.create_time is not None: result['CreateTime'] = self.create_time if self.rcpt_click_count is not None: result['RcptClickCount'] = self.rcpt_click_count if self.rcpt_click_rate is not None: result['RcptClickRate'] = self.rcpt_click_rate if self.rcpt_open_count is not None: result['RcptOpenCount'] = self.rcpt_open_count if self.rcpt_open_rate is not None: result['RcptOpenRate'] = self.rcpt_open_rate if self.rcpt_unique_click_count is not None: result['RcptUniqueClickCount'] = self.rcpt_unique_click_count if self.rcpt_unique_click_rate is not None: result['RcptUniqueClickRate'] = self.rcpt_unique_click_rate if self.rcpt_unique_open_count is not None: result['RcptUniqueOpenCount'] = self.rcpt_unique_open_count if self.rcpt_unique_open_rate is not None: result['RcptUniqueOpenRate'] = self.rcpt_unique_open_rate if self.total_number is not None: result['TotalNumber'] = self.total_number return result def from_map(self, m: dict = None): m = m or dict() if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('RcptClickCount') is not None: self.rcpt_click_count = m.get('RcptClickCount') if m.get('RcptClickRate') is not None: self.rcpt_click_rate = m.get('RcptClickRate') if m.get('RcptOpenCount') is not None: self.rcpt_open_count = m.get('RcptOpenCount') if m.get('RcptOpenRate') is not None: self.rcpt_open_rate = m.get('RcptOpenRate') if m.get('RcptUniqueClickCount') is not None: self.rcpt_unique_click_count = m.get('RcptUniqueClickCount') if m.get('RcptUniqueClickRate') is not None: self.rcpt_unique_click_rate = m.get('RcptUniqueClickRate') if m.get('RcptUniqueOpenCount') is not None: self.rcpt_unique_open_count = m.get('RcptUniqueOpenCount') if m.get('RcptUniqueOpenRate') is not None: self.rcpt_unique_open_rate = m.get('RcptUniqueOpenRate') if m.get('TotalNumber') is not None: self.total_number = m.get('TotalNumber') return self class GetTrackListResponseBodyData(TeaModel): def __init__( self, stat: List[GetTrackListResponseBodyDataStat] = None, ): self.stat = stat def validate(self): if self.stat: for k in self.stat: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['stat'] = [] if self.stat is not None: for k in self.stat: result['stat'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.stat = [] if m.get('stat') is not None: for k in m.get('stat'): temp_model = GetTrackListResponseBodyDataStat() self.stat.append(temp_model.from_map(k)) return self class GetTrackListResponseBody(TeaModel): def __init__( self, offset_create_time: str = None, offset_create_time_desc: str = None, page_no: int = None, page_size: int = None, request_id: str = None, total: int = None, data: GetTrackListResponseBodyData = None, ): self.offset_create_time = offset_create_time self.offset_create_time_desc = offset_create_time_desc self.page_no = page_no self.page_size = page_size self.request_id = request_id self.total = total self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.offset_create_time is not None: result['OffsetCreateTime'] = self.offset_create_time if self.offset_create_time_desc is not None: result['OffsetCreateTimeDesc'] = self.offset_create_time_desc if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total is not None: result['Total'] = self.total if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('OffsetCreateTime') is not None: self.offset_create_time = m.get('OffsetCreateTime') if m.get('OffsetCreateTimeDesc') is not None: self.offset_create_time_desc = m.get('OffsetCreateTimeDesc') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('Total') is not None: self.total = m.get('Total') if m.get('data') is not None: temp_model = GetTrackListResponseBodyData() self.data = temp_model.from_map(m['data']) return self class GetTrackListResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: GetTrackListResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = GetTrackListResponseBody() self.body = temp_model.from_map(m['body']) return self class GetTrackListByMailFromAndTagNameRequest(TeaModel): def __init__( self, account_name: str = None, end_time: str = None, offset: str = None, offset_create_time: str = None, offset_create_time_desc: str = None, owner_id: int = None, page_number: str = None, page_size: str = None, resource_owner_account: str = None, resource_owner_id: int = None, start_time: str = None, tag_name: str = None, total: str = None, ): self.account_name = account_name # This parameter is required. self.end_time = end_time self.offset = offset self.offset_create_time = offset_create_time self.offset_create_time_desc = offset_create_time_desc self.owner_id = owner_id self.page_number = page_number self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # This parameter is required. self.start_time = start_time self.tag_name = tag_name self.total = total def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.end_time is not None: result['EndTime'] = self.end_time if self.offset is not None: result['Offset'] = self.offset if self.offset_create_time is not None: result['OffsetCreateTime'] = self.offset_create_time if self.offset_create_time_desc is not None: result['OffsetCreateTimeDesc'] = self.offset_create_time_desc if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.start_time is not None: result['StartTime'] = self.start_time if self.tag_name is not None: result['TagName'] = self.tag_name if self.total is not None: result['Total'] = self.total return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('EndTime') is not None: self.end_time = m.get('EndTime') if m.get('Offset') is not None: self.offset = m.get('Offset') if m.get('OffsetCreateTime') is not None: self.offset_create_time = m.get('OffsetCreateTime') if m.get('OffsetCreateTimeDesc') is not None: self.offset_create_time_desc = m.get('OffsetCreateTimeDesc') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('StartTime') is not None: self.start_time = m.get('StartTime') if m.get('TagName') is not None: self.tag_name = m.get('TagName') if m.get('Total') is not None: self.total = m.get('Total') return self class GetTrackListByMailFromAndTagNameResponseBodyTrackListStat(TeaModel): def __init__( self, create_time: str = None, rcpt_click_count: str = None, rcpt_click_rate: str = None, rcpt_open_count: str = None, rcpt_open_rate: str = None, rcpt_unique_click_count: str = None, rcpt_unique_click_rate: str = None, rcpt_unique_open_count: str = None, rcpt_unique_open_rate: str = None, total_number: str = None, ): self.create_time = create_time self.rcpt_click_count = rcpt_click_count self.rcpt_click_rate = rcpt_click_rate self.rcpt_open_count = rcpt_open_count self.rcpt_open_rate = rcpt_open_rate self.rcpt_unique_click_count = rcpt_unique_click_count self.rcpt_unique_click_rate = rcpt_unique_click_rate self.rcpt_unique_open_count = rcpt_unique_open_count self.rcpt_unique_open_rate = rcpt_unique_open_rate self.total_number = total_number def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.create_time is not None: result['CreateTime'] = self.create_time if self.rcpt_click_count is not None: result['RcptClickCount'] = self.rcpt_click_count if self.rcpt_click_rate is not None: result['RcptClickRate'] = self.rcpt_click_rate if self.rcpt_open_count is not None: result['RcptOpenCount'] = self.rcpt_open_count if self.rcpt_open_rate is not None: result['RcptOpenRate'] = self.rcpt_open_rate if self.rcpt_unique_click_count is not None: result['RcptUniqueClickCount'] = self.rcpt_unique_click_count if self.rcpt_unique_click_rate is not None: result['RcptUniqueClickRate'] = self.rcpt_unique_click_rate if self.rcpt_unique_open_count is not None: result['RcptUniqueOpenCount'] = self.rcpt_unique_open_count if self.rcpt_unique_open_rate is not None: result['RcptUniqueOpenRate'] = self.rcpt_unique_open_rate if self.total_number is not None: result['TotalNumber'] = self.total_number return result def from_map(self, m: dict = None): m = m or dict() if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('RcptClickCount') is not None: self.rcpt_click_count = m.get('RcptClickCount') if m.get('RcptClickRate') is not None: self.rcpt_click_rate = m.get('RcptClickRate') if m.get('RcptOpenCount') is not None: self.rcpt_open_count = m.get('RcptOpenCount') if m.get('RcptOpenRate') is not None: self.rcpt_open_rate = m.get('RcptOpenRate') if m.get('RcptUniqueClickCount') is not None: self.rcpt_unique_click_count = m.get('RcptUniqueClickCount') if m.get('RcptUniqueClickRate') is not None: self.rcpt_unique_click_rate = m.get('RcptUniqueClickRate') if m.get('RcptUniqueOpenCount') is not None: self.rcpt_unique_open_count = m.get('RcptUniqueOpenCount') if m.get('RcptUniqueOpenRate') is not None: self.rcpt_unique_open_rate = m.get('RcptUniqueOpenRate') if m.get('TotalNumber') is not None: self.total_number = m.get('TotalNumber') return self class GetTrackListByMailFromAndTagNameResponseBodyTrackList(TeaModel): def __init__( self, stat: List[GetTrackListByMailFromAndTagNameResponseBodyTrackListStat] = None, ): self.stat = stat def validate(self): if self.stat: for k in self.stat: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['Stat'] = [] if self.stat is not None: for k in self.stat: result['Stat'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.stat = [] if m.get('Stat') is not None: for k in m.get('Stat'): temp_model = GetTrackListByMailFromAndTagNameResponseBodyTrackListStat() self.stat.append(temp_model.from_map(k)) return self class GetTrackListByMailFromAndTagNameResponseBody(TeaModel): def __init__( self, offset_create_time: str = None, offset_create_time_desc: str = None, page_no: int = None, page_size: int = None, request_id: str = None, total: int = None, track_list: GetTrackListByMailFromAndTagNameResponseBodyTrackList = None, ): self.offset_create_time = offset_create_time self.offset_create_time_desc = offset_create_time_desc self.page_no = page_no self.page_size = page_size self.request_id = request_id self.total = total self.track_list = track_list def validate(self): if self.track_list: self.track_list.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.offset_create_time is not None: result['OffsetCreateTime'] = self.offset_create_time if self.offset_create_time_desc is not None: result['OffsetCreateTimeDesc'] = self.offset_create_time_desc if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total is not None: result['Total'] = self.total if self.track_list is not None: result['TrackList'] = self.track_list.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('OffsetCreateTime') is not None: self.offset_create_time = m.get('OffsetCreateTime') if m.get('OffsetCreateTimeDesc') is not None: self.offset_create_time_desc = m.get('OffsetCreateTimeDesc') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('Total') is not None: self.total = m.get('Total') if m.get('TrackList') is not None: temp_model = GetTrackListByMailFromAndTagNameResponseBodyTrackList() self.track_list = temp_model.from_map(m['TrackList']) return self class GetTrackListByMailFromAndTagNameResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: GetTrackListByMailFromAndTagNameResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = GetTrackListByMailFromAndTagNameResponseBody() self.body = temp_model.from_map(m['body']) return self class GetUserResponseBodyData(TeaModel): def __init__( self, enable_eventbridge: bool = None, ): # Whether EventBridge is enabled self.enable_eventbridge = enable_eventbridge def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.enable_eventbridge is not None: result['EnableEventbridge'] = self.enable_eventbridge return result def from_map(self, m: dict = None): m = m or dict() if m.get('EnableEventbridge') is not None: self.enable_eventbridge = m.get('EnableEventbridge') return self class GetUserResponseBody(TeaModel): def __init__( self, data: GetUserResponseBodyData = None, request_id: str = None, ): # Returned Content self.data = data # Request ID self.request_id = request_id def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.data is not None: result['Data'] = self.data.to_map() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('Data') is not None: temp_model = GetUserResponseBodyData() self.data = temp_model.from_map(m['Data']) if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class GetUserResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: GetUserResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = GetUserResponseBody() self.body = temp_model.from_map(m['body']) return self class ListUserSuppressionRequest(TeaModel): def __init__( self, address: str = None, end_bounce_time: int = None, end_create_time: int = None, owner_id: int = None, page_no: int = None, page_size: int = None, resource_owner_account: str = None, resource_owner_id: int = None, start_bounce_time: int = None, start_create_time: int = None, ): # Email address or domain name self.address = address # End time of the last bounce hit, timestamp, accurate to the second. The span between start and end times cannot exceed 7 days. self.end_bounce_time = end_bounce_time # End creation time, timestamp, accurate to the second. The span between start and end times cannot exceed 7 days. self.end_create_time = end_create_time self.owner_id = owner_id # Current page number self.page_no = page_no # Page size self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # Start time of the last bounce hit, timestamp, accurate to the second. self.start_bounce_time = start_bounce_time # Start creation time, timestamp, accurate to the second. self.start_create_time = start_create_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.address is not None: result['Address'] = self.address if self.end_bounce_time is not None: result['EndBounceTime'] = self.end_bounce_time if self.end_create_time is not None: result['EndCreateTime'] = self.end_create_time if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.start_bounce_time is not None: result['StartBounceTime'] = self.start_bounce_time if self.start_create_time is not None: result['StartCreateTime'] = self.start_create_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('Address') is not None: self.address = m.get('Address') if m.get('EndBounceTime') is not None: self.end_bounce_time = m.get('EndBounceTime') if m.get('EndCreateTime') is not None: self.end_create_time = m.get('EndCreateTime') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('StartBounceTime') is not None: self.start_bounce_time = m.get('StartBounceTime') if m.get('StartCreateTime') is not None: self.start_create_time = m.get('StartCreateTime') return self class ListUserSuppressionResponseBodyDataUserSuppressions(TeaModel): def __init__( self, address: str = None, create_time: int = None, last_bounce_time: int = None, suppression_id: int = None, type: str = None, ): # Email address or domain name self.address = address # Creation time, timestamp, accurate to the second. self.create_time = create_time # Last bounce hit time, timestamp, accurate to the second. self.last_bounce_time = last_bounce_time # Invalid address ID self.suppression_id = suppression_id # Source of entry, invalid address type # - system # - user self.type = type def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.address is not None: result['Address'] = self.address if self.create_time is not None: result['CreateTime'] = self.create_time if self.last_bounce_time is not None: result['LastBounceTime'] = self.last_bounce_time if self.suppression_id is not None: result['SuppressionId'] = self.suppression_id if self.type is not None: result['Type'] = self.type return result def from_map(self, m: dict = None): m = m or dict() if m.get('Address') is not None: self.address = m.get('Address') if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('LastBounceTime') is not None: self.last_bounce_time = m.get('LastBounceTime') if m.get('SuppressionId') is not None: self.suppression_id = m.get('SuppressionId') if m.get('Type') is not None: self.type = m.get('Type') return self class ListUserSuppressionResponseBodyData(TeaModel): def __init__( self, user_suppressions: List[ListUserSuppressionResponseBodyDataUserSuppressions] = None, ): self.user_suppressions = user_suppressions def validate(self): if self.user_suppressions: for k in self.user_suppressions: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['UserSuppressions'] = [] if self.user_suppressions is not None: for k in self.user_suppressions: result['UserSuppressions'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.user_suppressions = [] if m.get('UserSuppressions') is not None: for k in m.get('UserSuppressions'): temp_model = ListUserSuppressionResponseBodyDataUserSuppressions() self.user_suppressions.append(temp_model.from_map(k)) return self class ListUserSuppressionResponseBody(TeaModel): def __init__( self, data: ListUserSuppressionResponseBodyData = None, page_number: int = None, page_size: int = None, request_id: str = None, total_count: int = None, ): # Returned results. self.data = data # Page number self.page_number = page_number # Page size self.page_size = page_size # Request ID self.request_id = request_id # Total count self.total_count = total_count def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.data is not None: result['Data'] = self.data.to_map() if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count return result def from_map(self, m: dict = None): m = m or dict() if m.get('Data') is not None: temp_model = ListUserSuppressionResponseBodyData() self.data = temp_model.from_map(m['Data']) if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') return self class ListUserSuppressionResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: ListUserSuppressionResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = ListUserSuppressionResponseBody() self.body = temp_model.from_map(m['body']) return self class ModifyMailAddressRequest(TeaModel): def __init__( self, mail_address_id: int = None, owner_id: int = None, password: str = None, reply_address: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # This parameter is required. self.mail_address_id = mail_address_id self.owner_id = owner_id self.password = password self.reply_address = reply_address self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.mail_address_id is not None: result['MailAddressId'] = self.mail_address_id if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.password is not None: result['Password'] = self.password if self.reply_address is not None: result['ReplyAddress'] = self.reply_address if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('MailAddressId') is not None: self.mail_address_id = m.get('MailAddressId') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('Password') is not None: self.password = m.get('Password') if m.get('ReplyAddress') is not None: self.reply_address = m.get('ReplyAddress') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class ModifyMailAddressResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class ModifyMailAddressResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: ModifyMailAddressResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = ModifyMailAddressResponseBody() self.body = temp_model.from_map(m['body']) return self class ModifyPWByDomainRequest(TeaModel): def __init__( self, domain_name: str = None, owner_id: int = None, password: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # This parameter is required. self.domain_name = domain_name self.owner_id = owner_id # This parameter is required. self.password = password self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.domain_name is not None: result['DomainName'] = self.domain_name if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.password is not None: result['Password'] = self.password if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('DomainName') is not None: self.domain_name = m.get('DomainName') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('Password') is not None: self.password = m.get('Password') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class ModifyPWByDomainResponseBody(TeaModel): def __init__( self, code: str = None, message: str = None, request_id: str = None, success: bool = None, ): self.code = code self.message = message self.request_id = request_id self.success = success def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.code is not None: result['Code'] = self.code if self.message is not None: result['Message'] = self.message if self.request_id is not None: result['RequestId'] = self.request_id if self.success is not None: result['Success'] = self.success return result def from_map(self, m: dict = None): m = m or dict() if m.get('Code') is not None: self.code = m.get('Code') if m.get('Message') is not None: self.message = m.get('Message') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('Success') is not None: self.success = m.get('Success') return self class ModifyPWByDomainResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: ModifyPWByDomainResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = ModifyPWByDomainResponseBody() self.body = temp_model.from_map(m['body']) return self class ModifyTagRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, tag_description: str = None, tag_id: int = None, tag_name: str = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.tag_description = tag_description # The ID of the tag. # # This parameter is required. self.tag_id = tag_id # The name of the tag. # # This parameter is required. self.tag_name = tag_name def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.tag_description is not None: result['TagDescription'] = self.tag_description if self.tag_id is not None: result['TagId'] = self.tag_id if self.tag_name is not None: result['TagName'] = self.tag_name return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('TagDescription') is not None: self.tag_description = m.get('TagDescription') if m.get('TagId') is not None: self.tag_id = m.get('TagId') if m.get('TagName') is not None: self.tag_name = m.get('TagName') return self class ModifyTagResponseBody(TeaModel): def __init__( self, request_id: str = None, ): # The ID of the request. self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class ModifyTagResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: ModifyTagResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = ModifyTagResponseBody() self.body = temp_model.from_map(m['body']) return self class QueryDomainByParamRequest(TeaModel): def __init__( self, key_word: str = None, owner_id: int = None, page_no: int = None, page_size: int = None, resource_owner_account: str = None, resource_owner_id: int = None, status: int = None, ): self.key_word = key_word self.owner_id = owner_id self.page_no = page_no self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.status = status def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.key_word is not None: result['KeyWord'] = self.key_word if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.status is not None: result['Status'] = self.status return result def from_map(self, m: dict = None): m = m or dict() if m.get('KeyWord') is not None: self.key_word = m.get('KeyWord') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('Status') is not None: self.status = m.get('Status') return self class QueryDomainByParamResponseBodyDataDomain(TeaModel): def __init__( self, cname_auth_status: str = None, confirm_status: str = None, create_time: str = None, domain_id: str = None, domain_name: str = None, domain_record: str = None, domain_status: str = None, icp_status: str = None, mx_auth_status: str = None, spf_auth_status: str = None, utc_create_time: int = None, ): self.cname_auth_status = cname_auth_status self.confirm_status = confirm_status self.create_time = create_time self.domain_id = domain_id self.domain_name = domain_name self.domain_record = domain_record self.domain_status = domain_status self.icp_status = icp_status self.mx_auth_status = mx_auth_status self.spf_auth_status = spf_auth_status self.utc_create_time = utc_create_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.cname_auth_status is not None: result['CnameAuthStatus'] = self.cname_auth_status if self.confirm_status is not None: result['ConfirmStatus'] = self.confirm_status if self.create_time is not None: result['CreateTime'] = self.create_time if self.domain_id is not None: result['DomainId'] = self.domain_id if self.domain_name is not None: result['DomainName'] = self.domain_name if self.domain_record is not None: result['DomainRecord'] = self.domain_record if self.domain_status is not None: result['DomainStatus'] = self.domain_status if self.icp_status is not None: result['IcpStatus'] = self.icp_status if self.mx_auth_status is not None: result['MxAuthStatus'] = self.mx_auth_status if self.spf_auth_status is not None: result['SpfAuthStatus'] = self.spf_auth_status if self.utc_create_time is not None: result['UtcCreateTime'] = self.utc_create_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('CnameAuthStatus') is not None: self.cname_auth_status = m.get('CnameAuthStatus') if m.get('ConfirmStatus') is not None: self.confirm_status = m.get('ConfirmStatus') if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('DomainId') is not None: self.domain_id = m.get('DomainId') if m.get('DomainName') is not None: self.domain_name = m.get('DomainName') if m.get('DomainRecord') is not None: self.domain_record = m.get('DomainRecord') if m.get('DomainStatus') is not None: self.domain_status = m.get('DomainStatus') if m.get('IcpStatus') is not None: self.icp_status = m.get('IcpStatus') if m.get('MxAuthStatus') is not None: self.mx_auth_status = m.get('MxAuthStatus') if m.get('SpfAuthStatus') is not None: self.spf_auth_status = m.get('SpfAuthStatus') if m.get('UtcCreateTime') is not None: self.utc_create_time = m.get('UtcCreateTime') return self class QueryDomainByParamResponseBodyData(TeaModel): def __init__( self, domain: List[QueryDomainByParamResponseBodyDataDomain] = None, ): self.domain = domain def validate(self): if self.domain: for k in self.domain: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['domain'] = [] if self.domain is not None: for k in self.domain: result['domain'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.domain = [] if m.get('domain') is not None: for k in m.get('domain'): temp_model = QueryDomainByParamResponseBodyDataDomain() self.domain.append(temp_model.from_map(k)) return self class QueryDomainByParamResponseBody(TeaModel): def __init__( self, page_number: int = None, page_size: int = None, request_id: str = None, total_count: int = None, data: QueryDomainByParamResponseBodyData = None, ): self.page_number = page_number self.page_size = page_size self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = QueryDomainByParamResponseBodyData() self.data = temp_model.from_map(m['data']) return self class QueryDomainByParamResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: QueryDomainByParamResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = QueryDomainByParamResponseBody() self.body = temp_model.from_map(m['body']) return self class QueryInvalidAddressRequest(TeaModel): def __init__( self, end_time: str = None, key_word: str = None, length: int = None, next_start: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, start_time: str = None, ): self.end_time = end_time self.key_word = key_word self.length = length self.next_start = next_start self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.start_time = start_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.end_time is not None: result['EndTime'] = self.end_time if self.key_word is not None: result['KeyWord'] = self.key_word if self.length is not None: result['Length'] = self.length if self.next_start is not None: result['NextStart'] = self.next_start if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.start_time is not None: result['StartTime'] = self.start_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('EndTime') is not None: self.end_time = m.get('EndTime') if m.get('KeyWord') is not None: self.key_word = m.get('KeyWord') if m.get('Length') is not None: self.length = m.get('Length') if m.get('NextStart') is not None: self.next_start = m.get('NextStart') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('StartTime') is not None: self.start_time = m.get('StartTime') return self class QueryInvalidAddressResponseBodyDataMailDetail(TeaModel): def __init__( self, last_update_time: str = None, to_address: str = None, utc_last_update_time: int = None, ): self.last_update_time = last_update_time self.to_address = to_address self.utc_last_update_time = utc_last_update_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.last_update_time is not None: result['LastUpdateTime'] = self.last_update_time if self.to_address is not None: result['ToAddress'] = self.to_address if self.utc_last_update_time is not None: result['UtcLastUpdateTime'] = self.utc_last_update_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('LastUpdateTime') is not None: self.last_update_time = m.get('LastUpdateTime') if m.get('ToAddress') is not None: self.to_address = m.get('ToAddress') if m.get('UtcLastUpdateTime') is not None: self.utc_last_update_time = m.get('UtcLastUpdateTime') return self class QueryInvalidAddressResponseBodyData(TeaModel): def __init__( self, mail_detail: List[QueryInvalidAddressResponseBodyDataMailDetail] = None, ): self.mail_detail = mail_detail def validate(self): if self.mail_detail: for k in self.mail_detail: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['mailDetail'] = [] if self.mail_detail is not None: for k in self.mail_detail: result['mailDetail'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.mail_detail = [] if m.get('mailDetail') is not None: for k in m.get('mailDetail'): temp_model = QueryInvalidAddressResponseBodyDataMailDetail() self.mail_detail.append(temp_model.from_map(k)) return self class QueryInvalidAddressResponseBody(TeaModel): def __init__( self, next_start: str = None, request_id: str = None, total_count: int = None, data: QueryInvalidAddressResponseBodyData = None, ): self.next_start = next_start self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.next_start is not None: result['NextStart'] = self.next_start if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('NextStart') is not None: self.next_start = m.get('NextStart') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = QueryInvalidAddressResponseBodyData() self.data = temp_model.from_map(m['data']) return self class QueryInvalidAddressResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: QueryInvalidAddressResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = QueryInvalidAddressResponseBody() self.body = temp_model.from_map(m['body']) return self class QueryMailAddressByParamRequest(TeaModel): def __init__( self, key_word: str = None, owner_id: int = None, page_no: int = None, page_size: int = None, resource_owner_account: str = None, resource_owner_id: int = None, sendtype: str = None, ): self.key_word = key_word self.owner_id = owner_id self.page_no = page_no self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.sendtype = sendtype def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.key_word is not None: result['KeyWord'] = self.key_word if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.sendtype is not None: result['Sendtype'] = self.sendtype return result def from_map(self, m: dict = None): m = m or dict() if m.get('KeyWord') is not None: self.key_word = m.get('KeyWord') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('Sendtype') is not None: self.sendtype = m.get('Sendtype') return self class QueryMailAddressByParamResponseBodyDataMailAddress(TeaModel): def __init__( self, account_name: str = None, account_status: str = None, create_time: str = None, daily_count: str = None, daily_req_count: str = None, domain_status: str = None, mail_address_id: str = None, month_count: str = None, month_req_count: str = None, reply_address: str = None, reply_status: str = None, sendtype: str = None, ): self.account_name = account_name self.account_status = account_status self.create_time = create_time self.daily_count = daily_count self.daily_req_count = daily_req_count self.domain_status = domain_status self.mail_address_id = mail_address_id self.month_count = month_count self.month_req_count = month_req_count self.reply_address = reply_address self.reply_status = reply_status self.sendtype = sendtype def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.account_status is not None: result['AccountStatus'] = self.account_status if self.create_time is not None: result['CreateTime'] = self.create_time if self.daily_count is not None: result['DailyCount'] = self.daily_count if self.daily_req_count is not None: result['DailyReqCount'] = self.daily_req_count if self.domain_status is not None: result['DomainStatus'] = self.domain_status if self.mail_address_id is not None: result['MailAddressId'] = self.mail_address_id if self.month_count is not None: result['MonthCount'] = self.month_count if self.month_req_count is not None: result['MonthReqCount'] = self.month_req_count if self.reply_address is not None: result['ReplyAddress'] = self.reply_address if self.reply_status is not None: result['ReplyStatus'] = self.reply_status if self.sendtype is not None: result['Sendtype'] = self.sendtype return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('AccountStatus') is not None: self.account_status = m.get('AccountStatus') if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('DailyCount') is not None: self.daily_count = m.get('DailyCount') if m.get('DailyReqCount') is not None: self.daily_req_count = m.get('DailyReqCount') if m.get('DomainStatus') is not None: self.domain_status = m.get('DomainStatus') if m.get('MailAddressId') is not None: self.mail_address_id = m.get('MailAddressId') if m.get('MonthCount') is not None: self.month_count = m.get('MonthCount') if m.get('MonthReqCount') is not None: self.month_req_count = m.get('MonthReqCount') if m.get('ReplyAddress') is not None: self.reply_address = m.get('ReplyAddress') if m.get('ReplyStatus') is not None: self.reply_status = m.get('ReplyStatus') if m.get('Sendtype') is not None: self.sendtype = m.get('Sendtype') return self class QueryMailAddressByParamResponseBodyData(TeaModel): def __init__( self, mail_address: List[QueryMailAddressByParamResponseBodyDataMailAddress] = None, ): self.mail_address = mail_address def validate(self): if self.mail_address: for k in self.mail_address: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['mailAddress'] = [] if self.mail_address is not None: for k in self.mail_address: result['mailAddress'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.mail_address = [] if m.get('mailAddress') is not None: for k in m.get('mailAddress'): temp_model = QueryMailAddressByParamResponseBodyDataMailAddress() self.mail_address.append(temp_model.from_map(k)) return self class QueryMailAddressByParamResponseBody(TeaModel): def __init__( self, page_number: int = None, page_size: int = None, request_id: str = None, total_count: int = None, data: QueryMailAddressByParamResponseBodyData = None, ): self.page_number = page_number self.page_size = page_size self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = QueryMailAddressByParamResponseBodyData() self.data = temp_model.from_map(m['data']) return self class QueryMailAddressByParamResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: QueryMailAddressByParamResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = QueryMailAddressByParamResponseBody() self.body = temp_model.from_map(m['body']) return self class QueryReceiverByParamRequest(TeaModel): def __init__( self, key_word: str = None, owner_id: int = None, page_no: int = None, page_size: int = None, resource_owner_account: str = None, resource_owner_id: int = None, status: int = None, ): self.key_word = key_word self.owner_id = owner_id self.page_no = page_no self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.status = status def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.key_word is not None: result['KeyWord'] = self.key_word if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.status is not None: result['Status'] = self.status return result def from_map(self, m: dict = None): m = m or dict() if m.get('KeyWord') is not None: self.key_word = m.get('KeyWord') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('Status') is not None: self.status = m.get('Status') return self class QueryReceiverByParamResponseBodyDataReceiver(TeaModel): def __init__( self, count: str = None, create_time: str = None, desc: str = None, receiver_id: str = None, receivers_alias: str = None, receivers_name: str = None, receivers_status: str = None, utc_create_time: int = None, ): self.count = count self.create_time = create_time self.desc = desc self.receiver_id = receiver_id self.receivers_alias = receivers_alias self.receivers_name = receivers_name self.receivers_status = receivers_status self.utc_create_time = utc_create_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.count is not None: result['Count'] = self.count if self.create_time is not None: result['CreateTime'] = self.create_time if self.desc is not None: result['Desc'] = self.desc if self.receiver_id is not None: result['ReceiverId'] = self.receiver_id if self.receivers_alias is not None: result['ReceiversAlias'] = self.receivers_alias if self.receivers_name is not None: result['ReceiversName'] = self.receivers_name if self.receivers_status is not None: result['ReceiversStatus'] = self.receivers_status if self.utc_create_time is not None: result['UtcCreateTime'] = self.utc_create_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('Count') is not None: self.count = m.get('Count') if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('Desc') is not None: self.desc = m.get('Desc') if m.get('ReceiverId') is not None: self.receiver_id = m.get('ReceiverId') if m.get('ReceiversAlias') is not None: self.receivers_alias = m.get('ReceiversAlias') if m.get('ReceiversName') is not None: self.receivers_name = m.get('ReceiversName') if m.get('ReceiversStatus') is not None: self.receivers_status = m.get('ReceiversStatus') if m.get('UtcCreateTime') is not None: self.utc_create_time = m.get('UtcCreateTime') return self class QueryReceiverByParamResponseBodyData(TeaModel): def __init__( self, receiver: List[QueryReceiverByParamResponseBodyDataReceiver] = None, ): self.receiver = receiver def validate(self): if self.receiver: for k in self.receiver: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['receiver'] = [] if self.receiver is not None: for k in self.receiver: result['receiver'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.receiver = [] if m.get('receiver') is not None: for k in m.get('receiver'): temp_model = QueryReceiverByParamResponseBodyDataReceiver() self.receiver.append(temp_model.from_map(k)) return self class QueryReceiverByParamResponseBody(TeaModel): def __init__( self, next_start: str = None, page_size: int = None, request_id: str = None, total_count: int = None, data: QueryReceiverByParamResponseBodyData = None, ): self.next_start = next_start self.page_size = page_size self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.next_start is not None: result['NextStart'] = self.next_start if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('NextStart') is not None: self.next_start = m.get('NextStart') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = QueryReceiverByParamResponseBodyData() self.data = temp_model.from_map(m['data']) return self class QueryReceiverByParamResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: QueryReceiverByParamResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = QueryReceiverByParamResponseBody() self.body = temp_model.from_map(m['body']) return self class QueryReceiverDetailRequest(TeaModel): def __init__( self, key_word: str = None, next_start: str = None, owner_id: int = None, page_size: int = None, receiver_id: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.key_word = key_word self.next_start = next_start self.owner_id = owner_id self.page_size = page_size # This parameter is required. self.receiver_id = receiver_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.key_word is not None: result['KeyWord'] = self.key_word if self.next_start is not None: result['NextStart'] = self.next_start if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_size is not None: result['PageSize'] = self.page_size if self.receiver_id is not None: result['ReceiverId'] = self.receiver_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('KeyWord') is not None: self.key_word = m.get('KeyWord') if m.get('NextStart') is not None: self.next_start = m.get('NextStart') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ReceiverId') is not None: self.receiver_id = m.get('ReceiverId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class QueryReceiverDetailResponseBodyDataDetail(TeaModel): def __init__( self, create_time: str = None, data: str = None, email: str = None, utc_create_time: int = None, ): self.create_time = create_time self.data = data self.email = email self.utc_create_time = utc_create_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.create_time is not None: result['CreateTime'] = self.create_time if self.data is not None: result['Data'] = self.data if self.email is not None: result['Email'] = self.email if self.utc_create_time is not None: result['UtcCreateTime'] = self.utc_create_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('Data') is not None: self.data = m.get('Data') if m.get('Email') is not None: self.email = m.get('Email') if m.get('UtcCreateTime') is not None: self.utc_create_time = m.get('UtcCreateTime') return self class QueryReceiverDetailResponseBodyData(TeaModel): def __init__( self, detail: List[QueryReceiverDetailResponseBodyDataDetail] = None, ): self.detail = detail def validate(self): if self.detail: for k in self.detail: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['detail'] = [] if self.detail is not None: for k in self.detail: result['detail'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.detail = [] if m.get('detail') is not None: for k in m.get('detail'): temp_model = QueryReceiverDetailResponseBodyDataDetail() self.detail.append(temp_model.from_map(k)) return self class QueryReceiverDetailResponseBody(TeaModel): def __init__( self, data_schema: str = None, next_start: str = None, request_id: str = None, total_count: int = None, data: QueryReceiverDetailResponseBodyData = None, ): self.data_schema = data_schema self.next_start = next_start self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.data_schema is not None: result['DataSchema'] = self.data_schema if self.next_start is not None: result['NextStart'] = self.next_start if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('DataSchema') is not None: self.data_schema = m.get('DataSchema') if m.get('NextStart') is not None: self.next_start = m.get('NextStart') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = QueryReceiverDetailResponseBodyData() self.data = temp_model.from_map(m['data']) return self class QueryReceiverDetailResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: QueryReceiverDetailResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = QueryReceiverDetailResponseBody() self.body = temp_model.from_map(m['body']) return self class QueryTagByParamRequest(TeaModel): def __init__( self, key_word: str = None, owner_id: int = None, page_no: int = None, page_size: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.key_word = key_word self.owner_id = owner_id self.page_no = page_no self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.key_word is not None: result['KeyWord'] = self.key_word if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('KeyWord') is not None: self.key_word = m.get('KeyWord') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class QueryTagByParamResponseBodyDataTag(TeaModel): def __init__( self, tag_description: str = None, tag_id: str = None, tag_name: str = None, ): self.tag_description = tag_description self.tag_id = tag_id self.tag_name = tag_name def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.tag_description is not None: result['TagDescription'] = self.tag_description if self.tag_id is not None: result['TagId'] = self.tag_id if self.tag_name is not None: result['TagName'] = self.tag_name return result def from_map(self, m: dict = None): m = m or dict() if m.get('TagDescription') is not None: self.tag_description = m.get('TagDescription') if m.get('TagId') is not None: self.tag_id = m.get('TagId') if m.get('TagName') is not None: self.tag_name = m.get('TagName') return self class QueryTagByParamResponseBodyData(TeaModel): def __init__( self, tag: List[QueryTagByParamResponseBodyDataTag] = None, ): self.tag = tag def validate(self): if self.tag: for k in self.tag: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['tag'] = [] if self.tag is not None: for k in self.tag: result['tag'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.tag = [] if m.get('tag') is not None: for k in m.get('tag'): temp_model = QueryTagByParamResponseBodyDataTag() self.tag.append(temp_model.from_map(k)) return self class QueryTagByParamResponseBody(TeaModel): def __init__( self, page_number: int = None, page_size: int = None, request_id: str = None, total_count: int = None, data: QueryTagByParamResponseBodyData = None, ): self.page_number = page_number self.page_size = page_size self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = QueryTagByParamResponseBodyData() self.data = temp_model.from_map(m['data']) return self class QueryTagByParamResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: QueryTagByParamResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = QueryTagByParamResponseBody() self.body = temp_model.from_map(m['body']) return self class QueryTaskByParamRequest(TeaModel): def __init__( self, key_word: str = None, owner_id: int = None, page_no: int = None, page_size: int = None, resource_owner_account: str = None, resource_owner_id: int = None, status: int = None, ): self.key_word = key_word self.owner_id = owner_id self.page_no = page_no self.page_size = page_size self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.status = status def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.key_word is not None: result['KeyWord'] = self.key_word if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.page_no is not None: result['PageNo'] = self.page_no if self.page_size is not None: result['PageSize'] = self.page_size if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.status is not None: result['Status'] = self.status return result def from_map(self, m: dict = None): m = m or dict() if m.get('KeyWord') is not None: self.key_word = m.get('KeyWord') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('PageNo') is not None: self.page_no = m.get('PageNo') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('Status') is not None: self.status = m.get('Status') return self class QueryTaskByParamResponseBodyDataTask(TeaModel): def __init__( self, address_type: str = None, create_time: str = None, receivers_name: str = None, request_count: str = None, tag_name: str = None, task_id: str = None, task_status: str = None, template_name: str = None, utc_create_time: int = None, ): self.address_type = address_type self.create_time = create_time self.receivers_name = receivers_name self.request_count = request_count self.tag_name = tag_name self.task_id = task_id self.task_status = task_status self.template_name = template_name self.utc_create_time = utc_create_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.address_type is not None: result['AddressType'] = self.address_type if self.create_time is not None: result['CreateTime'] = self.create_time if self.receivers_name is not None: result['ReceiversName'] = self.receivers_name if self.request_count is not None: result['RequestCount'] = self.request_count if self.tag_name is not None: result['TagName'] = self.tag_name if self.task_id is not None: result['TaskId'] = self.task_id if self.task_status is not None: result['TaskStatus'] = self.task_status if self.template_name is not None: result['TemplateName'] = self.template_name if self.utc_create_time is not None: result['UtcCreateTime'] = self.utc_create_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('AddressType') is not None: self.address_type = m.get('AddressType') if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('ReceiversName') is not None: self.receivers_name = m.get('ReceiversName') if m.get('RequestCount') is not None: self.request_count = m.get('RequestCount') if m.get('TagName') is not None: self.tag_name = m.get('TagName') if m.get('TaskId') is not None: self.task_id = m.get('TaskId') if m.get('TaskStatus') is not None: self.task_status = m.get('TaskStatus') if m.get('TemplateName') is not None: self.template_name = m.get('TemplateName') if m.get('UtcCreateTime') is not None: self.utc_create_time = m.get('UtcCreateTime') return self class QueryTaskByParamResponseBodyData(TeaModel): def __init__( self, task: List[QueryTaskByParamResponseBodyDataTask] = None, ): self.task = task def validate(self): if self.task: for k in self.task: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['task'] = [] if self.task is not None: for k in self.task: result['task'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.task = [] if m.get('task') is not None: for k in m.get('task'): temp_model = QueryTaskByParamResponseBodyDataTask() self.task.append(temp_model.from_map(k)) return self class QueryTaskByParamResponseBody(TeaModel): def __init__( self, page_number: int = None, page_size: int = None, request_id: str = None, total_count: int = None, data: QueryTaskByParamResponseBodyData = None, ): self.page_number = page_number self.page_size = page_size self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.page_number is not None: result['PageNumber'] = self.page_number if self.page_size is not None: result['PageSize'] = self.page_size if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('PageNumber') is not None: self.page_number = m.get('PageNumber') if m.get('PageSize') is not None: self.page_size = m.get('PageSize') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = QueryTaskByParamResponseBodyData() self.data = temp_model.from_map(m['data']) return self class QueryTaskByParamResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: QueryTaskByParamResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = QueryTaskByParamResponseBody() self.body = temp_model.from_map(m['body']) return self class RemoveUserSuppressionRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, suppression_ids: str = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.suppression_ids = suppression_ids def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.suppression_ids is not None: result['SuppressionIds'] = self.suppression_ids return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('SuppressionIds') is not None: self.suppression_ids = m.get('SuppressionIds') return self class RemoveUserSuppressionResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class RemoveUserSuppressionResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: RemoveUserSuppressionResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = RemoveUserSuppressionResponseBody() self.body = temp_model.from_map(m['body']) return self class SaveReceiverDetailRequest(TeaModel): def __init__( self, detail: str = None, owner_id: int = None, receiver_id: str = None, resource_owner_account: str = None, resource_owner_id: int = None, ): # This parameter is required. self.detail = detail self.owner_id = owner_id # This parameter is required. self.receiver_id = receiver_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.detail is not None: result['Detail'] = self.detail if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.receiver_id is not None: result['ReceiverId'] = self.receiver_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('Detail') is not None: self.detail = m.get('Detail') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ReceiverId') is not None: self.receiver_id = m.get('ReceiverId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class SaveReceiverDetailResponseBodyDataDetail(TeaModel): def __init__( self, email: str = None, ): self.email = email def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.email is not None: result['Email'] = self.email return result def from_map(self, m: dict = None): m = m or dict() if m.get('Email') is not None: self.email = m.get('Email') return self class SaveReceiverDetailResponseBodyData(TeaModel): def __init__( self, detail: List[SaveReceiverDetailResponseBodyDataDetail] = None, ): self.detail = detail def validate(self): if self.detail: for k in self.detail: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['Detail'] = [] if self.detail is not None: for k in self.detail: result['Detail'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.detail = [] if m.get('Detail') is not None: for k in m.get('Detail'): temp_model = SaveReceiverDetailResponseBodyDataDetail() self.detail.append(temp_model.from_map(k)) return self class SaveReceiverDetailResponseBody(TeaModel): def __init__( self, data: SaveReceiverDetailResponseBodyData = None, error_count: int = None, request_id: str = None, success_count: int = None, ): self.data = data self.error_count = error_count self.request_id = request_id self.success_count = success_count def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.data is not None: result['Data'] = self.data.to_map() if self.error_count is not None: result['ErrorCount'] = self.error_count if self.request_id is not None: result['RequestId'] = self.request_id if self.success_count is not None: result['SuccessCount'] = self.success_count return result def from_map(self, m: dict = None): m = m or dict() if m.get('Data') is not None: temp_model = SaveReceiverDetailResponseBodyData() self.data = temp_model.from_map(m['Data']) if m.get('ErrorCount') is not None: self.error_count = m.get('ErrorCount') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('SuccessCount') is not None: self.success_count = m.get('SuccessCount') return self class SaveReceiverDetailResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: SaveReceiverDetailResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = SaveReceiverDetailResponseBody() self.body = temp_model.from_map(m['body']) return self class SendTestByTemplateRequest(TeaModel): def __init__( self, account_name: str = None, birthday: str = None, email: str = None, gender: str = None, mobile: str = None, nick_name: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, template_id: int = None, user_name: str = None, ): # This parameter is required. self.account_name = account_name self.birthday = birthday # This parameter is required. self.email = email self.gender = gender self.mobile = mobile self.nick_name = nick_name self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # This parameter is required. self.template_id = template_id self.user_name = user_name def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.birthday is not None: result['Birthday'] = self.birthday if self.email is not None: result['Email'] = self.email if self.gender is not None: result['Gender'] = self.gender if self.mobile is not None: result['Mobile'] = self.mobile if self.nick_name is not None: result['NickName'] = self.nick_name if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.template_id is not None: result['TemplateId'] = self.template_id if self.user_name is not None: result['UserName'] = self.user_name return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('Birthday') is not None: self.birthday = m.get('Birthday') if m.get('Email') is not None: self.email = m.get('Email') if m.get('Gender') is not None: self.gender = m.get('Gender') if m.get('Mobile') is not None: self.mobile = m.get('Mobile') if m.get('NickName') is not None: self.nick_name = m.get('NickName') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('TemplateId') is not None: self.template_id = m.get('TemplateId') if m.get('UserName') is not None: self.user_name = m.get('UserName') return self class SendTestByTemplateResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class SendTestByTemplateResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: SendTestByTemplateResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = SendTestByTemplateResponseBody() self.body = temp_model.from_map(m['body']) return self class SenderStatisticsByTagNameAndBatchIDRequest(TeaModel): def __init__( self, account_name: str = None, end_time: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, start_time: str = None, tag_name: str = None, ): self.account_name = account_name # This parameter is required. self.end_time = end_time self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # This parameter is required. self.start_time = start_time self.tag_name = tag_name def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.end_time is not None: result['EndTime'] = self.end_time if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.start_time is not None: result['StartTime'] = self.start_time if self.tag_name is not None: result['TagName'] = self.tag_name return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('EndTime') is not None: self.end_time = m.get('EndTime') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('StartTime') is not None: self.start_time = m.get('StartTime') if m.get('TagName') is not None: self.tag_name = m.get('TagName') return self class SenderStatisticsByTagNameAndBatchIDResponseBodyDataStat(TeaModel): def __init__( self, create_time: str = None, faild_count: str = None, request_count: str = None, succeeded_percent: str = None, success_count: str = None, unavailable_count: str = None, unavailable_percent: str = None, ): self.create_time = create_time self.faild_count = faild_count self.request_count = request_count self.succeeded_percent = succeeded_percent self.success_count = success_count self.unavailable_count = unavailable_count self.unavailable_percent = unavailable_percent def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.create_time is not None: result['CreateTime'] = self.create_time if self.faild_count is not None: result['faildCount'] = self.faild_count if self.request_count is not None: result['requestCount'] = self.request_count if self.succeeded_percent is not None: result['succeededPercent'] = self.succeeded_percent if self.success_count is not None: result['successCount'] = self.success_count if self.unavailable_count is not None: result['unavailableCount'] = self.unavailable_count if self.unavailable_percent is not None: result['unavailablePercent'] = self.unavailable_percent return result def from_map(self, m: dict = None): m = m or dict() if m.get('CreateTime') is not None: self.create_time = m.get('CreateTime') if m.get('faildCount') is not None: self.faild_count = m.get('faildCount') if m.get('requestCount') is not None: self.request_count = m.get('requestCount') if m.get('succeededPercent') is not None: self.succeeded_percent = m.get('succeededPercent') if m.get('successCount') is not None: self.success_count = m.get('successCount') if m.get('unavailableCount') is not None: self.unavailable_count = m.get('unavailableCount') if m.get('unavailablePercent') is not None: self.unavailable_percent = m.get('unavailablePercent') return self class SenderStatisticsByTagNameAndBatchIDResponseBodyData(TeaModel): def __init__( self, stat: List[SenderStatisticsByTagNameAndBatchIDResponseBodyDataStat] = None, ): self.stat = stat def validate(self): if self.stat: for k in self.stat: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['stat'] = [] if self.stat is not None: for k in self.stat: result['stat'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.stat = [] if m.get('stat') is not None: for k in m.get('stat'): temp_model = SenderStatisticsByTagNameAndBatchIDResponseBodyDataStat() self.stat.append(temp_model.from_map(k)) return self class SenderStatisticsByTagNameAndBatchIDResponseBody(TeaModel): def __init__( self, request_id: str = None, total_count: int = None, data: SenderStatisticsByTagNameAndBatchIDResponseBodyData = None, ): self.request_id = request_id self.total_count = total_count self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id if self.total_count is not None: result['TotalCount'] = self.total_count if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('TotalCount') is not None: self.total_count = m.get('TotalCount') if m.get('data') is not None: temp_model = SenderStatisticsByTagNameAndBatchIDResponseBodyData() self.data = temp_model.from_map(m['data']) return self class SenderStatisticsByTagNameAndBatchIDResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: SenderStatisticsByTagNameAndBatchIDResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = SenderStatisticsByTagNameAndBatchIDResponseBody() self.body = temp_model.from_map(m['body']) return self class SenderStatisticsDetailByParamRequest(TeaModel): def __init__( self, account_name: str = None, end_time: str = None, length: int = None, next_start: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, start_time: str = None, status: int = None, tag_name: str = None, to_address: str = None, ): # Sending address. Not filled in represents all addresses. self.account_name = account_name # The end time. The difference between the start time and the end time cannot exceed 30 days. Format: yyyy-MM-dd. self.end_time = end_time # The number of entries to return in the request. Valid values: 1 to 100. self.length = length # The start position of the next page. The offset for the request. If you want to obtain more records, specify the return value of the NextStart parameter for this parameter. self.next_start = next_start self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # The start time. The start time can be up to 30 days earlier than the current time. Format: yyyy-MM-dd. self.start_time = start_time # The delivery status. If you leave this parameter empty, all states are included. Valid values: 0: successful, 2 invalid email address, 3: spam, and 4: failed. self.status = status # The email tag. If you leave this parameter empty, all email tags are included. self.tag_name = tag_name # The recipient address. If you leave this parameter empty, all recipient addresses are included. self.to_address = to_address def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.end_time is not None: result['EndTime'] = self.end_time if self.length is not None: result['Length'] = self.length if self.next_start is not None: result['NextStart'] = self.next_start if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.start_time is not None: result['StartTime'] = self.start_time if self.status is not None: result['Status'] = self.status if self.tag_name is not None: result['TagName'] = self.tag_name if self.to_address is not None: result['ToAddress'] = self.to_address return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('EndTime') is not None: self.end_time = m.get('EndTime') if m.get('Length') is not None: self.length = m.get('Length') if m.get('NextStart') is not None: self.next_start = m.get('NextStart') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('StartTime') is not None: self.start_time = m.get('StartTime') if m.get('Status') is not None: self.status = m.get('Status') if m.get('TagName') is not None: self.tag_name = m.get('TagName') if m.get('ToAddress') is not None: self.to_address = m.get('ToAddress') return self class SenderStatisticsDetailByParamResponseBodyDataMailDetail(TeaModel): def __init__( self, account_name: str = None, error_classification: str = None, last_update_time: str = None, message: str = None, status: int = None, subject: str = None, to_address: str = None, utc_last_update_time: str = None, ): # The sender address. self.account_name = account_name # Detailed classification of error causes: # # - SendOk # - SmtpNxBox # # etc. self.error_classification = error_classification # The most recent update time. self.last_update_time = last_update_time # The details of the email. self.message = message # The delivery status. Valid values: 0: successful, 2 invalid email address, 3: spam, and 4: failed. self.status = status # the subject of email. self.subject = subject # The recipient address. self.to_address = to_address # The most recent update time (timestamp format) self.utc_last_update_time = utc_last_update_time def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.error_classification is not None: result['ErrorClassification'] = self.error_classification if self.last_update_time is not None: result['LastUpdateTime'] = self.last_update_time if self.message is not None: result['Message'] = self.message if self.status is not None: result['Status'] = self.status if self.subject is not None: result['Subject'] = self.subject if self.to_address is not None: result['ToAddress'] = self.to_address if self.utc_last_update_time is not None: result['UtcLastUpdateTime'] = self.utc_last_update_time return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('ErrorClassification') is not None: self.error_classification = m.get('ErrorClassification') if m.get('LastUpdateTime') is not None: self.last_update_time = m.get('LastUpdateTime') if m.get('Message') is not None: self.message = m.get('Message') if m.get('Status') is not None: self.status = m.get('Status') if m.get('Subject') is not None: self.subject = m.get('Subject') if m.get('ToAddress') is not None: self.to_address = m.get('ToAddress') if m.get('UtcLastUpdateTime') is not None: self.utc_last_update_time = m.get('UtcLastUpdateTime') return self class SenderStatisticsDetailByParamResponseBodyData(TeaModel): def __init__( self, mail_detail: List[SenderStatisticsDetailByParamResponseBodyDataMailDetail] = None, ): self.mail_detail = mail_detail def validate(self): if self.mail_detail: for k in self.mail_detail: if k: k.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() result['mailDetail'] = [] if self.mail_detail is not None: for k in self.mail_detail: result['mailDetail'].append(k.to_map() if k else None) return result def from_map(self, m: dict = None): m = m or dict() self.mail_detail = [] if m.get('mailDetail') is not None: for k in m.get('mailDetail'): temp_model = SenderStatisticsDetailByParamResponseBodyDataMailDetail() self.mail_detail.append(temp_model.from_map(k)) return self class SenderStatisticsDetailByParamResponseBody(TeaModel): def __init__( self, next_start: str = None, request_id: str = None, data: SenderStatisticsDetailByParamResponseBodyData = None, ): # The start position of the next page. The return value of the NextStart parameter indicates the start position of the next page. If you want to obtain more records, specify the return value in the next request. self.next_start = next_start # The ID of the request. self.request_id = request_id # The response parameters. self.data = data def validate(self): if self.data: self.data.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.next_start is not None: result['NextStart'] = self.next_start if self.request_id is not None: result['RequestId'] = self.request_id if self.data is not None: result['data'] = self.data.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('NextStart') is not None: self.next_start = m.get('NextStart') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('data') is not None: temp_model = SenderStatisticsDetailByParamResponseBodyData() self.data = temp_model.from_map(m['data']) return self class SenderStatisticsDetailByParamResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: SenderStatisticsDetailByParamResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = SenderStatisticsDetailByParamResponseBody() self.body = temp_model.from_map(m['body']) return self class SetSuppressionListLevelRequest(TeaModel): def __init__( self, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, suppression_list_level: str = None, ): self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id self.suppression_list_level = suppression_list_level def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.suppression_list_level is not None: result['SuppressionListLevel'] = self.suppression_list_level return result def from_map(self, m: dict = None): m = m or dict() if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('SuppressionListLevel') is not None: self.suppression_list_level = m.get('SuppressionListLevel') return self class SetSuppressionListLevelResponseBody(TeaModel): def __init__( self, request_id: str = None, suppression_list_level: str = None, ): self.request_id = request_id self.suppression_list_level = suppression_list_level def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id if self.suppression_list_level is not None: result['SuppressionListLevel'] = self.suppression_list_level return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') if m.get('SuppressionListLevel') is not None: self.suppression_list_level = m.get('SuppressionListLevel') return self class SetSuppressionListLevelResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: SetSuppressionListLevelResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = SetSuppressionListLevelResponseBody() self.body = temp_model.from_map(m['body']) return self class SingleSendMailRequest(TeaModel): def __init__( self, account_name: str = None, address_type: int = None, click_trace: str = None, from_alias: str = None, headers: str = None, html_body: str = None, owner_id: int = None, reply_address: str = None, reply_address_alias: str = None, reply_to_address: bool = None, resource_owner_account: str = None, resource_owner_id: int = None, subject: str = None, tag_name: str = None, text_body: str = None, to_address: str = None, un_subscribe_filter_level: str = None, un_subscribe_link_type: str = None, ): # This parameter is required. self.account_name = account_name # This parameter is required. self.address_type = address_type self.click_trace = click_trace self.from_alias = from_alias self.headers = headers self.html_body = html_body self.owner_id = owner_id self.reply_address = reply_address self.reply_address_alias = reply_address_alias # This parameter is required. self.reply_to_address = reply_to_address self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id # This parameter is required. self.subject = subject self.tag_name = tag_name self.text_body = text_body # This parameter is required. self.to_address = to_address self.un_subscribe_filter_level = un_subscribe_filter_level self.un_subscribe_link_type = un_subscribe_link_type def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.account_name is not None: result['AccountName'] = self.account_name if self.address_type is not None: result['AddressType'] = self.address_type if self.click_trace is not None: result['ClickTrace'] = self.click_trace if self.from_alias is not None: result['FromAlias'] = self.from_alias if self.headers is not None: result['Headers'] = self.headers if self.html_body is not None: result['HtmlBody'] = self.html_body if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.reply_address is not None: result['ReplyAddress'] = self.reply_address if self.reply_address_alias is not None: result['ReplyAddressAlias'] = self.reply_address_alias if self.reply_to_address is not None: result['ReplyToAddress'] = self.reply_to_address if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id if self.subject is not None: result['Subject'] = self.subject if self.tag_name is not None: result['TagName'] = self.tag_name if self.text_body is not None: result['TextBody'] = self.text_body if self.to_address is not None: result['ToAddress'] = self.to_address if self.un_subscribe_filter_level is not None: result['UnSubscribeFilterLevel'] = self.un_subscribe_filter_level if self.un_subscribe_link_type is not None: result['UnSubscribeLinkType'] = self.un_subscribe_link_type return result def from_map(self, m: dict = None): m = m or dict() if m.get('AccountName') is not None: self.account_name = m.get('AccountName') if m.get('AddressType') is not None: self.address_type = m.get('AddressType') if m.get('ClickTrace') is not None: self.click_trace = m.get('ClickTrace') if m.get('FromAlias') is not None: self.from_alias = m.get('FromAlias') if m.get('Headers') is not None: self.headers = m.get('Headers') if m.get('HtmlBody') is not None: self.html_body = m.get('HtmlBody') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ReplyAddress') is not None: self.reply_address = m.get('ReplyAddress') if m.get('ReplyAddressAlias') is not None: self.reply_address_alias = m.get('ReplyAddressAlias') if m.get('ReplyToAddress') is not None: self.reply_to_address = m.get('ReplyToAddress') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') if m.get('Subject') is not None: self.subject = m.get('Subject') if m.get('TagName') is not None: self.tag_name = m.get('TagName') if m.get('TextBody') is not None: self.text_body = m.get('TextBody') if m.get('ToAddress') is not None: self.to_address = m.get('ToAddress') if m.get('UnSubscribeFilterLevel') is not None: self.un_subscribe_filter_level = m.get('UnSubscribeFilterLevel') if m.get('UnSubscribeLinkType') is not None: self.un_subscribe_link_type = m.get('UnSubscribeLinkType') return self class SingleSendMailResponseBody(TeaModel): def __init__( self, env_id: str = None, request_id: str = None, ): self.env_id = env_id self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.env_id is not None: result['EnvId'] = self.env_id if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('EnvId') is not None: self.env_id = m.get('EnvId') if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class SingleSendMailResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: SingleSendMailResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = SingleSendMailResponseBody() self.body = temp_model.from_map(m['body']) return self class UpdateIpProtectionRequest(TeaModel): def __init__( self, ip_protection: str = None, owner_id: int = None, resource_owner_account: str = None, resource_owner_id: int = None, ): self.ip_protection = ip_protection self.owner_id = owner_id self.resource_owner_account = resource_owner_account self.resource_owner_id = resource_owner_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.ip_protection is not None: result['IpProtection'] = self.ip_protection if self.owner_id is not None: result['OwnerId'] = self.owner_id if self.resource_owner_account is not None: result['ResourceOwnerAccount'] = self.resource_owner_account if self.resource_owner_id is not None: result['ResourceOwnerId'] = self.resource_owner_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('IpProtection') is not None: self.ip_protection = m.get('IpProtection') if m.get('OwnerId') is not None: self.owner_id = m.get('OwnerId') if m.get('ResourceOwnerAccount') is not None: self.resource_owner_account = m.get('ResourceOwnerAccount') if m.get('ResourceOwnerId') is not None: self.resource_owner_id = m.get('ResourceOwnerId') return self class UpdateIpProtectionResponseBody(TeaModel): def __init__( self, request_id: str = None, ): self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class UpdateIpProtectionResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: UpdateIpProtectionResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = UpdateIpProtectionResponseBody() self.body = temp_model.from_map(m['body']) return self class UpdateUserRequestUser(TeaModel): def __init__( self, enable_eventbridge: bool = None, ): # Whether EventBridge is enabled self.enable_eventbridge = enable_eventbridge def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.enable_eventbridge is not None: result['EnableEventbridge'] = self.enable_eventbridge return result def from_map(self, m: dict = None): m = m or dict() if m.get('EnableEventbridge') is not None: self.enable_eventbridge = m.get('EnableEventbridge') return self class UpdateUserRequest(TeaModel): def __init__( self, user: UpdateUserRequestUser = None, ): # User Information self.user = user def validate(self): if self.user: self.user.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.user is not None: result['User'] = self.user.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('User') is not None: temp_model = UpdateUserRequestUser() self.user = temp_model.from_map(m['User']) return self class UpdateUserShrinkRequest(TeaModel): def __init__( self, user_shrink: str = None, ): # User Information self.user_shrink = user_shrink def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.user_shrink is not None: result['User'] = self.user_shrink return result def from_map(self, m: dict = None): m = m or dict() if m.get('User') is not None: self.user_shrink = m.get('User') return self class UpdateUserResponseBody(TeaModel): def __init__( self, request_id: str = None, ): # Id of the request self.request_id = request_id def validate(self): pass def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.request_id is not None: result['RequestId'] = self.request_id return result def from_map(self, m: dict = None): m = m or dict() if m.get('RequestId') is not None: self.request_id = m.get('RequestId') return self class UpdateUserResponse(TeaModel): def __init__( self, headers: Dict[str, str] = None, status_code: int = None, body: UpdateUserResponseBody = None, ): self.headers = headers self.status_code = status_code self.body = body def validate(self): if self.body: self.body.validate() def to_map(self): _map = super().to_map() if _map is not None: return _map result = dict() if self.headers is not None: result['headers'] = self.headers if self.status_code is not None: result['statusCode'] = self.status_code if self.body is not None: result['body'] = self.body.to_map() return result def from_map(self, m: dict = None): m = m or dict() if m.get('headers') is not None: self.headers = m.get('headers') if m.get('statusCode') is not None: self.status_code = m.get('statusCode') if m.get('body') is not None: temp_model = UpdateUserResponseBody() self.body = temp_model.from_map(m['body']) return self