第一次提交:阿龙电竞 Django 后端最新版本

This commit is contained in:
XingQue
2026-06-14 02:23:24 +08:00
commit 4f7bf00224
9654 changed files with 5417000 additions and 0 deletions

View File

@@ -0,0 +1,294 @@
# -*- coding: utf8 -*-
# Copyright (c) 2017-2025 Tencent. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# CAM 后台鉴权失败
AUTHFAILURE_UNAUTHORIZEDOPERATION = 'AuthFailure.UnauthorizedOperation'
# 操作失败。
FAILEDOPERATION = 'FailedOperation'
# 附件太大,请参考单个附件以及附件总量大小限制。
FAILEDOPERATION_ATTACHCONTENTTOOLARGE = 'FailedOperation.AttachContentToolarge'
# 邮件地址在黑名单中。
FAILEDOPERATION_EMAILADDRINBLACKLIST = 'FailedOperation.EmailAddrInBlacklist'
# 邮件内容太大,请减少发送邮件内容。
FAILEDOPERATION_EMAILCONTENTTOOLARGE = 'FailedOperation.EmailContentToolarge'
# 超出当日总量发送限制。
FAILEDOPERATION_EXCEEDSENDLIMIT = 'FailedOperation.ExceedSendLimit'
# 超出最大模板数量限制。
FAILEDOPERATION_EXCEEDTEMPLATELIMIT = 'FailedOperation.ExceedTemplateLimit'
# 触发频率控制,短时间内对同一地址发送过多邮件。
FAILEDOPERATION_FREQUENCYLIMIT = 'FailedOperation.FrequencyLimit'
# 拒信率过高被临时block。
FAILEDOPERATION_HIGHREJECTIONRATE = 'FailedOperation.HighRejectionRate'
# 邮件包含不合规链接
FAILEDOPERATION_ILLEGALURL = 'FailedOperation.IllegalURL'
# 邮箱地址错误。
FAILEDOPERATION_INCORRECTEMAIL = 'FailedOperation.IncorrectEmail'
# 发件人格式不正确。请参考文档示例填写。
FAILEDOPERATION_INCORRECTSENDER = 'FailedOperation.IncorrectSender'
# 余额不足,账号欠费等。
FAILEDOPERATION_INSUFFICIENTBALANCE = 'FailedOperation.InsufficientBalance'
# 套餐包额度不足。
FAILEDOPERATION_INSUFFICIENTQUOTA = 'FailedOperation.InsufficientQuota'
# 不支持的附件名称,请检查附件名称是否含有特殊字符,详情请参考[附录附件说明](https://cloud.tencent.com/document/product/1288/51951)。
FAILEDOPERATION_INVALIDATTACHNAME = 'FailedOperation.InvalidAttachName'
# 超过查询限制Limit最大支持100。
FAILEDOPERATION_INVALIDLIMIT = 'FailedOperation.InvalidLimit'
# 模板ID无效或者不可用。
FAILEDOPERATION_INVALIDTEMPLATEID = 'FailedOperation.InvalidTemplateID'
# 缺少发信内容TemplateData和Simple不能同时为空)。
FAILEDOPERATION_MISSINGEMAILCONTENT = 'FailedOperation.MissingEmailContent'
# 没有附件发送权限,请检查。
FAILEDOPERATION_NOATTACHPERMISSION = 'FailedOperation.NoAttachPermission'
# 发件sender没有经过认证无法发送。
FAILEDOPERATION_NOTAUTHENTICATEDSENDER = 'FailedOperation.NotAuthenticatedSender'
# 不支持查询该日期邮件记录仅支持查询90天之内的数据。
FAILEDOPERATION_NOTSUPPORTDATE = 'FailedOperation.NotSupportDate'
# 协议检查错误,请检查协议是否正确。
FAILEDOPERATION_PROTOCOLCHECKERR = 'FailedOperation.ProtocolCheckErr'
# 收件人已退订。
FAILEDOPERATION_RECEIVERHASUNSUBSCRIBED = 'FailedOperation.ReceiverHasUnsubscribed'
# 邮件被收信人拒绝。
FAILEDOPERATION_REJECTEDBYRECIPIENTS = 'FailedOperation.RejectedByRecipients'
# 您的发送遇到问题,请联系腾讯云提交工单沟通原因并解决。
FAILEDOPERATION_SENDEMAILERR = 'FailedOperation.SendEmailErr'
# 临时性错误,请求未生效,请重试。
FAILEDOPERATION_SERVICENOTAVAILABLE = 'FailedOperation.ServiceNotAvailable'
# 模板内容太大,请减少模板内容。
FAILEDOPERATION_TEMPLATECONTENTTOOLARGE = 'FailedOperation.TemplateContentToolarge'
# 因触发了对应的收件服务商限制邮件推送平台会对该服务商发信暂停10分钟10分钟后自动解除。
FAILEDOPERATION_TEMPORARYBLOCKED = 'FailedOperation.TemporaryBlocked'
# 附件数量太多单封邮件最多支持10个附件。
FAILEDOPERATION_TOOMANYATTACHMENTS = 'FailedOperation.TooManyAttachments'
# 收件人数太多最多支持同时发送50人。
FAILEDOPERATION_TOOMANYRECIPIENTS = 'FailedOperation.TooManyRecipients'
# 禁止到达率低用户在邮件内容中带有URL 网页链接
FAILEDOPERATION_URLFORBIDDEN = 'FailedOperation.URLForbidden'
# 不支持的邮箱类型。
FAILEDOPERATION_UNSUPPORTMAILTYPE = 'FailedOperation.UnsupportMailType'
# 仅支持使用模板发送邮件。
FAILEDOPERATION_WITHOUTPERMISSION = 'FailedOperation.WithOutPermission'
# TemplateData字段格式不正确请保持为json格式。
FAILEDOPERATION_WRONGCONTENTJSON = 'FailedOperation.WrongContentJson'
# 内部错误。
INTERNALERROR = 'InternalError'
# 参数错误。
INVALIDPARAMETER = 'InvalidParameter'
# 参数取值错误。
INVALIDPARAMETERVALUE = 'InvalidParameterValue'
# 附件内容错误请检查base64内容是否正确。
INVALIDPARAMETERVALUE_ATTACHCONTENTISWRONG = 'InvalidParameterValue.AttachContentIsWrong'
# 开始时间不能早于当前时间。
INVALIDPARAMETERVALUE_BEGINTIMEBEFORENOW = 'InvalidParameterValue.BeginTimeBeforeNow'
# 该域名已被其他腾讯云账号创建。
INVALIDPARAMETERVALUE_CREATEDBYOTHER = 'InvalidParameterValue.CreatedByOther'
# 收件或者发件地址为空,请检查邮件地址。
INVALIDPARAMETERVALUE_EMAILADDRESSISNULL = 'InvalidParameterValue.EmailAddressIsNULL'
# 邮件内容错误请检查TEXT/HTML base64是否正确。
INVALIDPARAMETERVALUE_EMAILCONTENTISWRONG = 'InvalidParameterValue.EmailContentIsWrong'
# 邮件地址不合法,请检查邮件地址格式。
INVALIDPARAMETERVALUE_ILLEGALEMAILADDRESS = 'InvalidParameterValue.IllegalEmailAddress'
# 发信人别名错误。
INVALIDPARAMETERVALUE_ILLEGALSENDERNAME = 'InvalidParameterValue.IllegalSenderName'
# 收件人地址附带的模板参数不能包含html标签。
INVALIDPARAMETERVALUE_INVALIDTEMPLATEDATA = 'InvalidParameterValue.InValidTemplateData'
# 域名取值错误。
INVALIDPARAMETERVALUE_INVALIDEMAILIDENTITY = 'InvalidParameterValue.InvalidEmailIdentity'
# 密码长度为10~20位且必须至少包含2位不重复的数字、小写字母、大写字母。
INVALIDPARAMETERVALUE_INVALIDSMTPPASSWORD = 'InvalidParameterValue.InvalidSmtpPassWord'
# 您没有这个发件地址,请检查是否存在。
INVALIDPARAMETERVALUE_NOSUCHSENDER = 'InvalidParameterValue.NoSuchSender'
# 该域名还没有创建,请先新建发信域名。
INVALIDPARAMETERVALUE_NOTEXISTDOMAIN = 'InvalidParameterValue.NotExistDomain'
# 收件人列表描述不合法,描述不可包含特殊字符,字符长度范围:1~300。
INVALIDPARAMETERVALUE_RECEIVERDESCILLEGAL = 'InvalidParameterValue.ReceiverDescIllegal'
# 收件人地址错误。
INVALIDPARAMETERVALUE_RECEIVEREMAILINVALID = 'InvalidParameterValue.ReceiverEmailInvalid'
# 收件人列表名字不合法,请检查字符内容及大小。
INVALIDPARAMETERVALUE_RECEIVERNAMEILLEGAL = 'InvalidParameterValue.ReceiverNameIllegal'
# 该域名已经创建过了,请勿重复创建。
INVALIDPARAMETERVALUE_REPEATCREATION = 'InvalidParameterValue.RepeatCreation'
# 该邮件地址已经创建过了,请勿重复创建。
INVALIDPARAMETERVALUE_REPEATEMAILADDRESS = 'InvalidParameterValue.RepeatEmailAddress'
# 收件人列表名称重复。
INVALIDPARAMETERVALUE_REPEATRECEIVERNAME = 'InvalidParameterValue.RepeatReceiverName'
# 邮件主题长度必须为1-100。
INVALIDPARAMETERVALUE_SUBJECTLENGTHERROR = 'InvalidParameterValue.SubjectLengthError'
# 模板资源为空。
INVALIDPARAMETERVALUE_TEMPLATECONTENTISNULL = 'InvalidParameterValue.TemplateContentIsNULL'
# 模板内容错误请检查base64内容是否正确。
INVALIDPARAMETERVALUE_TEMPLATECONTENTISWRONG = 'InvalidParameterValue.TemplateContentIsWrong'
# 模板参数必须为json格式。
INVALIDPARAMETERVALUE_TEMPLATEDATAERROR = 'InvalidParameterValue.TemplateDataError'
# 模板参数变量名与之前不一致。
INVALIDPARAMETERVALUE_TEMPLATEDATAINCONSISTENT = 'InvalidParameterValue.TemplateDataInconsistent'
# 单条收件人地址附带的模板参数(整个 JSON 结构) 长度超过限制 800 bytes
INVALIDPARAMETERVALUE_TEMPLATEDATALENLIMIT = 'InvalidParameterValue.TemplateDataLenLimit'
# 模板名字不合法,请检查字符内容及大小。
INVALIDPARAMETERVALUE_TEMPLATENAMEILLEGAL = 'InvalidParameterValue.TemplateNameIllegal'
# 模板名字不能为空。
INVALIDPARAMETERVALUE_TEMPLATENAMEISNULL = 'InvalidParameterValue.TemplateNameIsNULL'
# 不存在该模板,请先创建模板。
INVALIDPARAMETERVALUE_TEMPLATENOTEXIST = 'InvalidParameterValue.TemplateNotExist'
# 模板变量与收件人列表参数不一一对应。
INVALIDPARAMETERVALUE_TEMPLATENOTMATCHDATA = 'InvalidParameterValue.TemplateNotMatchData'
# 搜索日期错误,请检查日期及格式是否有效。
INVALIDPARAMETERVALUE_WRONGDATE = 'InvalidParameterValue.WrongDate'
# 超过配额限制。
LIMITEXCEEDED = 'LimitExceeded'
# 收件人列表数量超过限制。
LIMITEXCEEDED_EXCEEDRECEIVERLIMIT = 'LimitExceeded.ExceedReceiverLimit'
# 该收件人列表包含的收件人地址总量超过限制。
LIMITEXCEEDED_RECEIVERDETAILCOUNTLIMIT = 'LimitExceeded.ReceiverDetailCountLimit'
# 请求的收件人地址数量超过限制。
LIMITEXCEEDED_RECEIVERDETAILREQUESTLIMIT = 'LimitExceeded.ReceiverDetailRequestLimit'
# 缺少参数错误。
MISSINGPARAMETER = 'MissingParameter'
# 周期发送任务需选择开始时间和间隔时间。
MISSINGPARAMETER_CYCLEPARAMNECESSARY = 'MissingParameter.CycleParamNecessary'
# 收件人地址必须传。
MISSINGPARAMETER_EMAILSNECESSARY = 'MissingParameter.EmailsNecessary'
# 收件人列表Id必传。
MISSINGPARAMETER_RECEIVERIDNECESSARY = 'MissingParameter.ReceiverIdNecessary'
# 发件地址、收件人列表,发件模板必须传。
MISSINGPARAMETER_SENDPARAMNECESSARY = 'MissingParameter.SendParamNecessary'
# 定时发送任务需选择开始时间。
MISSINGPARAMETER_TIMEDPARAMNECESSARY = 'MissingParameter.TimedParamNecessary'
# 操作被拒绝。
OPERATIONDENIED = 'OperationDenied'
# 域名验证失败,请检查域名是否通过验证。
OPERATIONDENIED_DOMAINNOTVERIFIED = 'OperationDenied.DomainNotVerified'
# 超出最大发信域名限制。
OPERATIONDENIED_EXCEEDDOMAINLIMIT = 'OperationDenied.ExceedDomainLimit'
# 超出最大发信地址限制。
OPERATIONDENIED_EXCEEDSENDERLIMIT = 'OperationDenied.ExceedSenderLimit'
# 不允许删除域名
OPERATIONDENIED_NOTALLOWDELETE = 'OperationDenied.NotAllowDelete'
# 收件人列表正在上传中,请稍后操作。
OPERATIONDENIED_RECEIVERISOPERATING = 'OperationDenied.ReceiverIsOperating'
# 收件人列表不存在。
OPERATIONDENIED_RECEIVERNOTEXIST = 'OperationDenied.ReceiverNotExist'
# 收件人列表空或状态不是上传完成。
OPERATIONDENIED_RECEIVERSTATUSERROR = 'OperationDenied.ReceiverStatusError'
# 不能与上一次设置密码相同。
OPERATIONDENIED_REPEATPASSWORD = 'OperationDenied.RepeatPassWord'
# 发信地址不存在或者状态不是通过状态。
OPERATIONDENIED_SENDADDRESSSTATUSERROR = 'OperationDenied.SendAddressStatusError'
# 发信模板不存在或者状态不是审核通过状态。
OPERATIONDENIED_TEMPLATESTATUSERROR = 'OperationDenied.TemplateStatusError'
# 请求的次数超过了频率限制。
REQUESTLIMITEXCEEDED = 'RequestLimitExceeded'
# 资源不足。
RESOURCEINSUFFICIENT = 'ResourceInsufficient'
# 资源不存在。
RESOURCENOTFOUND = 'ResourceNotFound'
# 资源不可用。
RESOURCEUNAVAILABLE = 'ResourceUnavailable'
# 未知参数错误。
UNKNOWNPARAMETER = 'UnknownParameter'
# 操作不支持。
UNSUPPORTEDOPERATION = 'UnsupportedOperation'

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,832 @@
# -*- coding: utf8 -*-
# Copyright (c) 2017-2025 Tencent. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import json
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.common.abstract_client import AbstractClient
from tencentcloud.ses.v20201002 import models
class SesClient(AbstractClient):
_apiVersion = '2020-10-02'
_endpoint = 'ses.tencentcloudapi.com'
_service = 'ses'
def BatchSendEmail(self, request):
r"""您可以通过此API批量发送TEXT或者HTML邮件适用于营销类、通知类邮件。默认仅支持使用模板发送邮件。批量发送之前需先创建收件人列表和收件人地址并通过收件人列表id来进行发送。批量发送任务支持定时发送和周期重复发送定时发送需传TimedParam周期重复发送需传CycleParam
:param request: Request instance for BatchSendEmail.
:type request: :class:`tencentcloud.ses.v20201002.models.BatchSendEmailRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.BatchSendEmailResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("BatchSendEmail", params, headers=headers)
response = json.loads(body)
model = models.BatchSendEmailResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateAddressUnsubscribeConfig(self, request):
r"""创建地址级退订配置
:param request: Request instance for CreateAddressUnsubscribeConfig.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateAddressUnsubscribeConfigRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateAddressUnsubscribeConfigResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateAddressUnsubscribeConfig", params, headers=headers)
response = json.loads(body)
model = models.CreateAddressUnsubscribeConfigResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateCustomBlacklist(self, request):
r"""添加自定义黑名单
:param request: Request instance for CreateCustomBlacklist.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateCustomBlacklistRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateCustomBlacklistResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateCustomBlacklist", params, headers=headers)
response = json.loads(body)
model = models.CreateCustomBlacklistResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateEmailAddress(self, request):
r"""在验证了发信域名之后您需要一个发信地址来发送邮件。例如发信域名是mail.qcloud.com那么发信地址可以为 service@mail.qcloud.com。如果您想要收件人在收件箱列表中显示您的别名例如"腾讯云邮件通知"。那么发信地址为: 别名 空格 尖括号 邮箱地址。请注意中间需要有空格
:param request: Request instance for CreateEmailAddress.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateEmailAddressRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateEmailAddressResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateEmailAddress", params, headers=headers)
response = json.loads(body)
model = models.CreateEmailAddressResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateEmailIdentity(self, request):
r"""在使用身份发送电子邮件之前您需要有一个电子邮件域名该域名可以是您的网站或者移动应用的域名。您首先必须进行验证证明自己是该域名的所有者并且授权给腾讯云SES发送许可才可以从该域名发送电子邮件。
:param request: Request instance for CreateEmailIdentity.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateEmailIdentityRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateEmailIdentityResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateEmailIdentity", params, headers=headers)
response = json.loads(body)
model = models.CreateEmailIdentityResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateEmailTemplate(self, request):
r"""创建模板该模板可以是TXT或者HTML请注意如果HTML不要包含外部文件的CSS。模板中的变量使用 {{变量名}} 表示。
注意:模板需要审核通过才可以使用。
:param request: Request instance for CreateEmailTemplate.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateEmailTemplateRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateEmailTemplateResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateEmailTemplate", params, headers=headers)
response = json.loads(body)
model = models.CreateEmailTemplateResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateReceiver(self, request):
r"""创建收件人列表,收件人列表是发送批量邮件的目标邮件地址列表。创建列表后,需要上传收件人邮箱地址。之后创建发送任务,关联列表,便可以实现批量发送邮件的功能
:param request: Request instance for CreateReceiver.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateReceiverRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateReceiverResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateReceiver", params, headers=headers)
response = json.loads(body)
model = models.CreateReceiverResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateReceiverDetail(self, request):
r"""在创建完收件人列表后向这个收件人列表中批量增加收件人邮箱地址一次最大支持2万异步完成处理。数据量比较大的时候上传可能需要一点时间可以通过查询收件人列表了解上传状态和上传数量。本接口与接口CreateReceiverDetailWithData的功能特性基本一致只是不支持上传发信时的模板参数。用户首先调用创建收件人列表接口-CreateReceiver后然后调用本接口传入收件人地址最后使用批量发送邮件接口-BatchSendEmail即可完成批量发信。本接口也支持追加收件人地址也不支持去重需要用户自己保证收件人地址不重复。本接口一次请求的收件人地址数量限制为2W条但收件人列表中收件人地址的总量不能超过一定的数量目前是限制5万条。
:param request: Request instance for CreateReceiverDetail.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateReceiverDetailRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateReceiverDetailResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateReceiverDetail", params, headers=headers)
response = json.loads(body)
model = models.CreateReceiverDetailResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateReceiverDetailWithData(self, request):
r"""添加收件人地址附带模板参数,使用本接口在添加收件人地址的同时传入模板参数,使每一个收件人地址在发信的时候使用的模板变量取值不同。用户首先调用创建收件人列表接口-CreateReceiver后然后调用本接口传入收件人地址和发信时的模板参数最后使用批量发送邮件接口-BatchSendEmail即可完成批量发信。需要注意的是在使用本接口后BatchSendEmail接口中的Template参数不需再传。用户也可以在控制台上邮件发送-收件人列表菜单中通过导入文件的方式导入收件人地址和模板变量和参数值。本接口一次请求的收件人地址数量限制为2W条本接口同时也可以用来向已经上传完成的收件人列表追加收件人地址但收件人列表中收件人地址的总量不能超过一定的数量目前是限制5万条。本接口不支持去除重复的收件人地址用户需要自己保证上传和追加地址不重复不与之前上传的地址重复。
:param request: Request instance for CreateReceiverDetailWithData.
:type request: :class:`tencentcloud.ses.v20201002.models.CreateReceiverDetailWithDataRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.CreateReceiverDetailWithDataResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateReceiverDetailWithData", params, headers=headers)
response = json.loads(body)
model = models.CreateReceiverDetailWithDataResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DeleteAddressUnsubscribeConfig(self, request):
r"""删除地址级退订配置
:param request: Request instance for DeleteAddressUnsubscribeConfig.
:type request: :class:`tencentcloud.ses.v20201002.models.DeleteAddressUnsubscribeConfigRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.DeleteAddressUnsubscribeConfigResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DeleteAddressUnsubscribeConfig", params, headers=headers)
response = json.loads(body)
model = models.DeleteAddressUnsubscribeConfigResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DeleteBlackList(self, request):
r"""邮箱被拉黑之后,用户如果确认收件邮箱有效或者已经处于激活状态,可以从腾讯云地址库中删除该黑名单之后继续投递。
:param request: Request instance for DeleteBlackList.
:type request: :class:`tencentcloud.ses.v20201002.models.DeleteBlackListRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.DeleteBlackListResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DeleteBlackList", params, headers=headers)
response = json.loads(body)
model = models.DeleteBlackListResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DeleteCustomBlackList(self, request):
r"""删除自定义黑名单邮箱地址
:param request: Request instance for DeleteCustomBlackList.
:type request: :class:`tencentcloud.ses.v20201002.models.DeleteCustomBlackListRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.DeleteCustomBlackListResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DeleteCustomBlackList", params, headers=headers)
response = json.loads(body)
model = models.DeleteCustomBlackListResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DeleteEmailAddress(self, request):
r"""删除发信人地址
:param request: Request instance for DeleteEmailAddress.
:type request: :class:`tencentcloud.ses.v20201002.models.DeleteEmailAddressRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.DeleteEmailAddressResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DeleteEmailAddress", params, headers=headers)
response = json.loads(body)
model = models.DeleteEmailAddressResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DeleteEmailIdentity(self, request):
r"""删除发信域名,删除后,将不可再使用该域名进行发信
:param request: Request instance for DeleteEmailIdentity.
:type request: :class:`tencentcloud.ses.v20201002.models.DeleteEmailIdentityRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.DeleteEmailIdentityResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DeleteEmailIdentity", params, headers=headers)
response = json.loads(body)
model = models.DeleteEmailIdentityResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DeleteEmailTemplate(self, request):
r"""删除发信模板
:param request: Request instance for DeleteEmailTemplate.
:type request: :class:`tencentcloud.ses.v20201002.models.DeleteEmailTemplateRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.DeleteEmailTemplateResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DeleteEmailTemplate", params, headers=headers)
response = json.loads(body)
model = models.DeleteEmailTemplateResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DeleteReceiver(self, request):
r"""根据收件id删除收件人列表,同时删除列表中的所有收件邮箱
:param request: Request instance for DeleteReceiver.
:type request: :class:`tencentcloud.ses.v20201002.models.DeleteReceiverRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.DeleteReceiverResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DeleteReceiver", params, headers=headers)
response = json.loads(body)
model = models.DeleteReceiverResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def GetEmailIdentity(self, request):
r"""获取某个发信域名的配置详情
:param request: Request instance for GetEmailIdentity.
:type request: :class:`tencentcloud.ses.v20201002.models.GetEmailIdentityRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.GetEmailIdentityResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("GetEmailIdentity", params, headers=headers)
response = json.loads(body)
model = models.GetEmailIdentityResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def GetEmailTemplate(self, request):
r"""根据模板ID获取模板详情
:param request: Request instance for GetEmailTemplate.
:type request: :class:`tencentcloud.ses.v20201002.models.GetEmailTemplateRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.GetEmailTemplateResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("GetEmailTemplate", params, headers=headers)
response = json.loads(body)
model = models.GetEmailTemplateResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def GetSendEmailStatus(self, request):
r"""获取邮件发送状态。仅支持查询30天之内的数据
:param request: Request instance for GetSendEmailStatus.
:type request: :class:`tencentcloud.ses.v20201002.models.GetSendEmailStatusRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.GetSendEmailStatusResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("GetSendEmailStatus", params, headers=headers)
response = json.loads(body)
model = models.GetSendEmailStatusResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def GetStatisticsReport(self, request):
r"""获取近期发送的统计情况,包含发送量、送达率、打开率、退信率等一系列数据。
:param request: Request instance for GetStatisticsReport.
:type request: :class:`tencentcloud.ses.v20201002.models.GetStatisticsReportRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.GetStatisticsReportResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("GetStatisticsReport", params, headers=headers)
response = json.loads(body)
model = models.GetStatisticsReportResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListAddressUnsubscribeConfig(self, request):
r"""获取地址级退订配置列表
:param request: Request instance for ListAddressUnsubscribeConfig.
:type request: :class:`tencentcloud.ses.v20201002.models.ListAddressUnsubscribeConfigRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListAddressUnsubscribeConfigResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListAddressUnsubscribeConfig", params, headers=headers)
response = json.loads(body)
model = models.ListAddressUnsubscribeConfigResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListBlackEmailAddress(self, request):
r"""腾讯云发送的邮件一旦被收件方判断为硬退(Hard Bounce),腾讯云会拉黑该地址,并不允许所有用户向该地址发送邮件。成为邮箱黑名单。如果业务方确认是误判,可以从黑名单中删除。
:param request: Request instance for ListBlackEmailAddress.
:type request: :class:`tencentcloud.ses.v20201002.models.ListBlackEmailAddressRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListBlackEmailAddressResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListBlackEmailAddress", params, headers=headers)
response = json.loads(body)
model = models.ListBlackEmailAddressResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListCustomBlacklist(self, request):
r"""获取自定义黑名单列表
:param request: Request instance for ListCustomBlacklist.
:type request: :class:`tencentcloud.ses.v20201002.models.ListCustomBlacklistRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListCustomBlacklistResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListCustomBlacklist", params, headers=headers)
response = json.loads(body)
model = models.ListCustomBlacklistResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListEmailAddress(self, request):
r"""获取发信地址列表
:param request: Request instance for ListEmailAddress.
:type request: :class:`tencentcloud.ses.v20201002.models.ListEmailAddressRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListEmailAddressResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListEmailAddress", params, headers=headers)
response = json.loads(body)
model = models.ListEmailAddressResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListEmailIdentities(self, request):
r"""获取当前发信域名列表,包含已验证通过与未验证的域名
:param request: Request instance for ListEmailIdentities.
:type request: :class:`tencentcloud.ses.v20201002.models.ListEmailIdentitiesRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListEmailIdentitiesResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListEmailIdentities", params, headers=headers)
response = json.loads(body)
model = models.ListEmailIdentitiesResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListEmailTemplates(self, request):
r"""获取当前邮件模板列表
:param request: Request instance for ListEmailTemplates.
:type request: :class:`tencentcloud.ses.v20201002.models.ListEmailTemplatesRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListEmailTemplatesResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListEmailTemplates", params, headers=headers)
response = json.loads(body)
model = models.ListEmailTemplatesResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListReceiverDetails(self, request):
r"""根据收件人列表id查询收件人列表中的所有收件人邮箱地址分页查询可以根据收件邮箱地址来过滤查询
:param request: Request instance for ListReceiverDetails.
:type request: :class:`tencentcloud.ses.v20201002.models.ListReceiverDetailsRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListReceiverDetailsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListReceiverDetails", params, headers=headers)
response = json.loads(body)
model = models.ListReceiverDetailsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListReceivers(self, request):
r"""根据条件查询收件人列表,支持分页,模糊查询,状态查询
:param request: Request instance for ListReceivers.
:type request: :class:`tencentcloud.ses.v20201002.models.ListReceiversRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListReceiversResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListReceivers", params, headers=headers)
response = json.loads(body)
model = models.ListReceiversResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def ListSendTasks(self, request):
r"""分页查询批量发送邮件任务,包含即时发送任务,定时发送任务,周期重复发送任务,查询发送情况,包括请求数量,已发数量,缓存数量,任务状态等信息
:param request: Request instance for ListSendTasks.
:type request: :class:`tencentcloud.ses.v20201002.models.ListSendTasksRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.ListSendTasksResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ListSendTasks", params, headers=headers)
response = json.loads(body)
model = models.ListSendTasksResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def SendEmail(self, request):
r"""您可以通过此API发送HTML或者TEXT邮件适用于触发类邮件验证码、交易类。默认仅支持使用模板发送邮件。
:param request: Request instance for SendEmail.
:type request: :class:`tencentcloud.ses.v20201002.models.SendEmailRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.SendEmailResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("SendEmail", params, headers=headers)
response = json.loads(body)
model = models.SendEmailResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def UpdateAddressUnsubscribeConfig(self, request):
r"""用于更新地址级退订配置
:param request: Request instance for UpdateAddressUnsubscribeConfig.
:type request: :class:`tencentcloud.ses.v20201002.models.UpdateAddressUnsubscribeConfigRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.UpdateAddressUnsubscribeConfigResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("UpdateAddressUnsubscribeConfig", params, headers=headers)
response = json.loads(body)
model = models.UpdateAddressUnsubscribeConfigResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def UpdateCustomBlackList(self, request):
r"""更新自定义黑名单
:param request: Request instance for UpdateCustomBlackList.
:type request: :class:`tencentcloud.ses.v20201002.models.UpdateCustomBlackListRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.UpdateCustomBlackListResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("UpdateCustomBlackList", params, headers=headers)
response = json.loads(body)
model = models.UpdateCustomBlackListResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def UpdateEmailIdentity(self, request):
r"""您已经成功配置好了您的DNS接下来请求腾讯云验证您的DNS配置是否正确
:param request: Request instance for UpdateEmailIdentity.
:type request: :class:`tencentcloud.ses.v20201002.models.UpdateEmailIdentityRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.UpdateEmailIdentityResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("UpdateEmailIdentity", params, headers=headers)
response = json.loads(body)
model = models.UpdateEmailIdentityResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def UpdateEmailSmtpPassWord(self, request):
r"""设置邮箱的smtp密码。若要通过smtp发送邮件必须为邮箱设置smtp密码。初始时邮箱没有设置smtp密码不能使用smtp的方式发送邮件。设置smtp密码后可以修改密码。
:param request: Request instance for UpdateEmailSmtpPassWord.
:type request: :class:`tencentcloud.ses.v20201002.models.UpdateEmailSmtpPassWordRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.UpdateEmailSmtpPassWordResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("UpdateEmailSmtpPassWord", params, headers=headers)
response = json.loads(body)
model = models.UpdateEmailSmtpPassWordResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def UpdateEmailTemplate(self, request):
r"""更新邮件模板,更新后需再次审核
:param request: Request instance for UpdateEmailTemplate.
:type request: :class:`tencentcloud.ses.v20201002.models.UpdateEmailTemplateRequest`
:rtype: :class:`tencentcloud.ses.v20201002.models.UpdateEmailTemplateResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("UpdateEmailTemplate", params, headers=headers)
response = json.loads(body)
model = models.UpdateEmailTemplateResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))

View File

@@ -0,0 +1,657 @@
# -*- coding: utf8 -*-
# Copyright (c) 2017-2025 Tencent. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from tencentcloud.common.abstract_client_async import AbstractClient
from tencentcloud.ses.v20201002 import models
from typing import Dict
class SesClient(AbstractClient):
_apiVersion = '2020-10-02'
_endpoint = 'ses.tencentcloudapi.com'
_service = 'ses'
async def BatchSendEmail(
self,
request: models.BatchSendEmailRequest,
opts: Dict = None,
) -> models.BatchSendEmailResponse:
"""
您可以通过此API批量发送TEXT或者HTML邮件适用于营销类、通知类邮件。默认仅支持使用模板发送邮件。批量发送之前需先创建收件人列表和收件人地址并通过收件人列表id来进行发送。批量发送任务支持定时发送和周期重复发送定时发送需传TimedParam周期重复发送需传CycleParam
"""
kwargs = {}
kwargs["action"] = "BatchSendEmail"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.BatchSendEmailResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateAddressUnsubscribeConfig(
self,
request: models.CreateAddressUnsubscribeConfigRequest,
opts: Dict = None,
) -> models.CreateAddressUnsubscribeConfigResponse:
"""
创建地址级退订配置
"""
kwargs = {}
kwargs["action"] = "CreateAddressUnsubscribeConfig"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateAddressUnsubscribeConfigResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateCustomBlacklist(
self,
request: models.CreateCustomBlacklistRequest,
opts: Dict = None,
) -> models.CreateCustomBlacklistResponse:
"""
添加自定义黑名单
"""
kwargs = {}
kwargs["action"] = "CreateCustomBlacklist"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateCustomBlacklistResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateEmailAddress(
self,
request: models.CreateEmailAddressRequest,
opts: Dict = None,
) -> models.CreateEmailAddressResponse:
"""
在验证了发信域名之后您需要一个发信地址来发送邮件。例如发信域名是mail.qcloud.com那么发信地址可以为 service@mail.qcloud.com。如果您想要收件人在收件箱列表中显示您的别名例如"腾讯云邮件通知"。那么发信地址为: 别名 空格 尖括号 邮箱地址。请注意中间需要有空格
"""
kwargs = {}
kwargs["action"] = "CreateEmailAddress"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateEmailAddressResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateEmailIdentity(
self,
request: models.CreateEmailIdentityRequest,
opts: Dict = None,
) -> models.CreateEmailIdentityResponse:
"""
在使用身份发送电子邮件之前您需要有一个电子邮件域名该域名可以是您的网站或者移动应用的域名。您首先必须进行验证证明自己是该域名的所有者并且授权给腾讯云SES发送许可才可以从该域名发送电子邮件。
"""
kwargs = {}
kwargs["action"] = "CreateEmailIdentity"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateEmailIdentityResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateEmailTemplate(
self,
request: models.CreateEmailTemplateRequest,
opts: Dict = None,
) -> models.CreateEmailTemplateResponse:
"""
创建模板该模板可以是TXT或者HTML请注意如果HTML不要包含外部文件的CSS。模板中的变量使用 {{变量名}} 表示。
注意:模板需要审核通过才可以使用。
"""
kwargs = {}
kwargs["action"] = "CreateEmailTemplate"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateEmailTemplateResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateReceiver(
self,
request: models.CreateReceiverRequest,
opts: Dict = None,
) -> models.CreateReceiverResponse:
"""
创建收件人列表,收件人列表是发送批量邮件的目标邮件地址列表。创建列表后,需要上传收件人邮箱地址。之后创建发送任务,关联列表,便可以实现批量发送邮件的功能
"""
kwargs = {}
kwargs["action"] = "CreateReceiver"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateReceiverResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateReceiverDetail(
self,
request: models.CreateReceiverDetailRequest,
opts: Dict = None,
) -> models.CreateReceiverDetailResponse:
"""
在创建完收件人列表后向这个收件人列表中批量增加收件人邮箱地址一次最大支持2万异步完成处理。数据量比较大的时候上传可能需要一点时间可以通过查询收件人列表了解上传状态和上传数量。本接口与接口CreateReceiverDetailWithData的功能特性基本一致只是不支持上传发信时的模板参数。用户首先调用创建收件人列表接口-CreateReceiver后然后调用本接口传入收件人地址最后使用批量发送邮件接口-BatchSendEmail即可完成批量发信。本接口也支持追加收件人地址也不支持去重需要用户自己保证收件人地址不重复。本接口一次请求的收件人地址数量限制为2W条但收件人列表中收件人地址的总量不能超过一定的数量目前是限制5万条。
"""
kwargs = {}
kwargs["action"] = "CreateReceiverDetail"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateReceiverDetailResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateReceiverDetailWithData(
self,
request: models.CreateReceiverDetailWithDataRequest,
opts: Dict = None,
) -> models.CreateReceiverDetailWithDataResponse:
"""
添加收件人地址附带模板参数,使用本接口在添加收件人地址的同时传入模板参数,使每一个收件人地址在发信的时候使用的模板变量取值不同。用户首先调用创建收件人列表接口-CreateReceiver后然后调用本接口传入收件人地址和发信时的模板参数最后使用批量发送邮件接口-BatchSendEmail即可完成批量发信。需要注意的是在使用本接口后BatchSendEmail接口中的Template参数不需再传。用户也可以在控制台上邮件发送-收件人列表菜单中通过导入文件的方式导入收件人地址和模板变量和参数值。本接口一次请求的收件人地址数量限制为2W条本接口同时也可以用来向已经上传完成的收件人列表追加收件人地址但收件人列表中收件人地址的总量不能超过一定的数量目前是限制5万条。本接口不支持去除重复的收件人地址用户需要自己保证上传和追加地址不重复不与之前上传的地址重复。
"""
kwargs = {}
kwargs["action"] = "CreateReceiverDetailWithData"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateReceiverDetailWithDataResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DeleteAddressUnsubscribeConfig(
self,
request: models.DeleteAddressUnsubscribeConfigRequest,
opts: Dict = None,
) -> models.DeleteAddressUnsubscribeConfigResponse:
"""
删除地址级退订配置
"""
kwargs = {}
kwargs["action"] = "DeleteAddressUnsubscribeConfig"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DeleteAddressUnsubscribeConfigResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DeleteBlackList(
self,
request: models.DeleteBlackListRequest,
opts: Dict = None,
) -> models.DeleteBlackListResponse:
"""
邮箱被拉黑之后,用户如果确认收件邮箱有效或者已经处于激活状态,可以从腾讯云地址库中删除该黑名单之后继续投递。
"""
kwargs = {}
kwargs["action"] = "DeleteBlackList"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DeleteBlackListResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DeleteCustomBlackList(
self,
request: models.DeleteCustomBlackListRequest,
opts: Dict = None,
) -> models.DeleteCustomBlackListResponse:
"""
删除自定义黑名单邮箱地址
"""
kwargs = {}
kwargs["action"] = "DeleteCustomBlackList"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DeleteCustomBlackListResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DeleteEmailAddress(
self,
request: models.DeleteEmailAddressRequest,
opts: Dict = None,
) -> models.DeleteEmailAddressResponse:
"""
删除发信人地址
"""
kwargs = {}
kwargs["action"] = "DeleteEmailAddress"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DeleteEmailAddressResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DeleteEmailIdentity(
self,
request: models.DeleteEmailIdentityRequest,
opts: Dict = None,
) -> models.DeleteEmailIdentityResponse:
"""
删除发信域名,删除后,将不可再使用该域名进行发信
"""
kwargs = {}
kwargs["action"] = "DeleteEmailIdentity"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DeleteEmailIdentityResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DeleteEmailTemplate(
self,
request: models.DeleteEmailTemplateRequest,
opts: Dict = None,
) -> models.DeleteEmailTemplateResponse:
"""
删除发信模板
"""
kwargs = {}
kwargs["action"] = "DeleteEmailTemplate"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DeleteEmailTemplateResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DeleteReceiver(
self,
request: models.DeleteReceiverRequest,
opts: Dict = None,
) -> models.DeleteReceiverResponse:
"""
根据收件id删除收件人列表,同时删除列表中的所有收件邮箱
"""
kwargs = {}
kwargs["action"] = "DeleteReceiver"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DeleteReceiverResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def GetEmailIdentity(
self,
request: models.GetEmailIdentityRequest,
opts: Dict = None,
) -> models.GetEmailIdentityResponse:
"""
获取某个发信域名的配置详情
"""
kwargs = {}
kwargs["action"] = "GetEmailIdentity"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.GetEmailIdentityResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def GetEmailTemplate(
self,
request: models.GetEmailTemplateRequest,
opts: Dict = None,
) -> models.GetEmailTemplateResponse:
"""
根据模板ID获取模板详情
"""
kwargs = {}
kwargs["action"] = "GetEmailTemplate"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.GetEmailTemplateResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def GetSendEmailStatus(
self,
request: models.GetSendEmailStatusRequest,
opts: Dict = None,
) -> models.GetSendEmailStatusResponse:
"""
获取邮件发送状态。仅支持查询30天之内的数据
"""
kwargs = {}
kwargs["action"] = "GetSendEmailStatus"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.GetSendEmailStatusResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def GetStatisticsReport(
self,
request: models.GetStatisticsReportRequest,
opts: Dict = None,
) -> models.GetStatisticsReportResponse:
"""
获取近期发送的统计情况,包含发送量、送达率、打开率、退信率等一系列数据。
"""
kwargs = {}
kwargs["action"] = "GetStatisticsReport"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.GetStatisticsReportResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListAddressUnsubscribeConfig(
self,
request: models.ListAddressUnsubscribeConfigRequest,
opts: Dict = None,
) -> models.ListAddressUnsubscribeConfigResponse:
"""
获取地址级退订配置列表
"""
kwargs = {}
kwargs["action"] = "ListAddressUnsubscribeConfig"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListAddressUnsubscribeConfigResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListBlackEmailAddress(
self,
request: models.ListBlackEmailAddressRequest,
opts: Dict = None,
) -> models.ListBlackEmailAddressResponse:
"""
腾讯云发送的邮件一旦被收件方判断为硬退(Hard Bounce),腾讯云会拉黑该地址,并不允许所有用户向该地址发送邮件。成为邮箱黑名单。如果业务方确认是误判,可以从黑名单中删除。
"""
kwargs = {}
kwargs["action"] = "ListBlackEmailAddress"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListBlackEmailAddressResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListCustomBlacklist(
self,
request: models.ListCustomBlacklistRequest,
opts: Dict = None,
) -> models.ListCustomBlacklistResponse:
"""
获取自定义黑名单列表
"""
kwargs = {}
kwargs["action"] = "ListCustomBlacklist"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListCustomBlacklistResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListEmailAddress(
self,
request: models.ListEmailAddressRequest,
opts: Dict = None,
) -> models.ListEmailAddressResponse:
"""
获取发信地址列表
"""
kwargs = {}
kwargs["action"] = "ListEmailAddress"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListEmailAddressResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListEmailIdentities(
self,
request: models.ListEmailIdentitiesRequest,
opts: Dict = None,
) -> models.ListEmailIdentitiesResponse:
"""
获取当前发信域名列表,包含已验证通过与未验证的域名
"""
kwargs = {}
kwargs["action"] = "ListEmailIdentities"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListEmailIdentitiesResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListEmailTemplates(
self,
request: models.ListEmailTemplatesRequest,
opts: Dict = None,
) -> models.ListEmailTemplatesResponse:
"""
获取当前邮件模板列表
"""
kwargs = {}
kwargs["action"] = "ListEmailTemplates"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListEmailTemplatesResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListReceiverDetails(
self,
request: models.ListReceiverDetailsRequest,
opts: Dict = None,
) -> models.ListReceiverDetailsResponse:
"""
根据收件人列表id查询收件人列表中的所有收件人邮箱地址分页查询可以根据收件邮箱地址来过滤查询
"""
kwargs = {}
kwargs["action"] = "ListReceiverDetails"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListReceiverDetailsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListReceivers(
self,
request: models.ListReceiversRequest,
opts: Dict = None,
) -> models.ListReceiversResponse:
"""
根据条件查询收件人列表,支持分页,模糊查询,状态查询
"""
kwargs = {}
kwargs["action"] = "ListReceivers"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListReceiversResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def ListSendTasks(
self,
request: models.ListSendTasksRequest,
opts: Dict = None,
) -> models.ListSendTasksResponse:
"""
分页查询批量发送邮件任务,包含即时发送任务,定时发送任务,周期重复发送任务,查询发送情况,包括请求数量,已发数量,缓存数量,任务状态等信息
"""
kwargs = {}
kwargs["action"] = "ListSendTasks"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ListSendTasksResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def SendEmail(
self,
request: models.SendEmailRequest,
opts: Dict = None,
) -> models.SendEmailResponse:
"""
您可以通过此API发送HTML或者TEXT邮件适用于触发类邮件验证码、交易类。默认仅支持使用模板发送邮件。
"""
kwargs = {}
kwargs["action"] = "SendEmail"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.SendEmailResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def UpdateAddressUnsubscribeConfig(
self,
request: models.UpdateAddressUnsubscribeConfigRequest,
opts: Dict = None,
) -> models.UpdateAddressUnsubscribeConfigResponse:
"""
用于更新地址级退订配置
"""
kwargs = {}
kwargs["action"] = "UpdateAddressUnsubscribeConfig"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.UpdateAddressUnsubscribeConfigResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def UpdateCustomBlackList(
self,
request: models.UpdateCustomBlackListRequest,
opts: Dict = None,
) -> models.UpdateCustomBlackListResponse:
"""
更新自定义黑名单
"""
kwargs = {}
kwargs["action"] = "UpdateCustomBlackList"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.UpdateCustomBlackListResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def UpdateEmailIdentity(
self,
request: models.UpdateEmailIdentityRequest,
opts: Dict = None,
) -> models.UpdateEmailIdentityResponse:
"""
您已经成功配置好了您的DNS接下来请求腾讯云验证您的DNS配置是否正确
"""
kwargs = {}
kwargs["action"] = "UpdateEmailIdentity"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.UpdateEmailIdentityResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def UpdateEmailSmtpPassWord(
self,
request: models.UpdateEmailSmtpPassWordRequest,
opts: Dict = None,
) -> models.UpdateEmailSmtpPassWordResponse:
"""
设置邮箱的smtp密码。若要通过smtp发送邮件必须为邮箱设置smtp密码。初始时邮箱没有设置smtp密码不能使用smtp的方式发送邮件。设置smtp密码后可以修改密码。
"""
kwargs = {}
kwargs["action"] = "UpdateEmailSmtpPassWord"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.UpdateEmailSmtpPassWordResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def UpdateEmailTemplate(
self,
request: models.UpdateEmailTemplateRequest,
opts: Dict = None,
) -> models.UpdateEmailTemplateResponse:
"""
更新邮件模板,更新后需再次审核
"""
kwargs = {}
kwargs["action"] = "UpdateEmailTemplate"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.UpdateEmailTemplateResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)