summaryrefslogtreecommitdiff
path: root/data/en_us/dysmsapi/2017-05-25
diff options
context:
space:
mode:
authorZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
committerZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
commit1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch)
tree5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/en_us/dysmsapi/2017-05-25
parent7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff)
downloadafterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz
afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip
update APIs 20260712
Diffstat (limited to 'data/en_us/dysmsapi/2017-05-25')
-rw-r--r--data/en_us/dysmsapi/2017-05-25/api-docs.php16709
1 files changed, 7499 insertions, 9210 deletions
diff --git a/data/en_us/dysmsapi/2017-05-25/api-docs.php b/data/en_us/dysmsapi/2017-05-25/api-docs.php
index 37bf5ff..449c784 100644
--- a/data/en_us/dysmsapi/2017-05-25/api-docs.php
+++ b/data/en_us/dysmsapi/2017-05-25/api-docs.php
@@ -1,858 +1,519 @@
<?php return [
'version' => '1.0',
- 'info' => [
- 'style' => 'RPC',
- 'product' => 'Dysmsapi',
- 'version' => '2017-05-25',
- ],
+ 'info' => ['style' => 'RPC', 'product' => 'Dysmsapi', 'version' => '2017-05-25'],
'directories' => [
[
- 'id' => 402523,
- 'title' => null,
+ 'children' => ['SubmitSmsQualification', 'QuerySmsQualificationRecord', 'QuerySingleSmsQualification', 'UpdateSmsQualification', 'DeleteSmsQualification', 'RequiredPhoneCode', 'ValidPhoneCode'],
'type' => 'directory',
- 'children' => [
- 'SubmitSmsQualification',
- 'QuerySmsQualificationRecord',
- 'QuerySingleSmsQualification',
- 'UpdateSmsQualification',
- 'DeleteSmsQualification',
- 'RequiredPhoneCode',
- 'ValidPhoneCode',
- ],
+ 'title' => 'Qualification management',
],
[
- 'id' => 402531,
- 'title' => null,
+ 'children' => ['CreateSmsAuthorizationLetter', 'QuerySmsAuthorizationLetter'],
'type' => 'directory',
- 'children' => [
- 'CreateSmsAuthorizationLetter',
- 'QuerySmsAuthorizationLetter',
- ],
+ 'title' => 'Power of attorney',
],
[
- 'id' => 402534,
- 'title' => null,
+ 'children' => ['CreateSmsSign', 'GetSmsSign', 'QuerySmsSignList', 'UpdateSmsSign', 'DeleteSmsSign', 'ChangeSignatureQualification', 'AddSmsSign', 'ModifySmsSign', 'QuerySmsSign'],
'type' => 'directory',
- 'children' => [
- 'CreateSmsSign',
- 'GetSmsSign',
- 'QuerySmsSignList',
- 'UpdateSmsSign',
- 'DeleteSmsSign',
- 'ChangeSignatureQualification',
- 'AddSmsSign',
- 'ModifySmsSign',
- 'QuerySmsSign',
- ],
+ 'title' => 'Signature management',
],
[
- 'id' => 402544,
- 'title' => null,
+ 'children' => ['CreateSmsTrademark', 'QuerySmsTrademark', 'CreateSmsAppIcpRecord', 'QuerySmsAppIcpRecord'],
'type' => 'directory',
- 'children' => [
- 'CreateSmsTrademark',
- 'QuerySmsTrademark',
- 'CreateSmsAppIcpRecord',
- 'QuerySmsAppIcpRecord',
- ],
+ 'title' => 'Trademark and ICP filing',
],
[
- 'id' => 402549,
- 'title' => null,
+ 'children' => ['CreateSmsTemplate', 'GetSmsTemplate', 'QuerySmsTemplateList', 'UpdateSmsTemplate', 'DeleteSmsTemplate', 'AddSmsTemplate', 'ModifySmsTemplate', 'QuerySmsTemplate'],
'type' => 'directory',
- 'children' => [
- 'CreateSmsTemplate',
- 'GetSmsTemplate',
- 'QuerySmsTemplateList',
- 'UpdateSmsTemplate',
- 'DeleteSmsTemplate',
- 'AddSmsTemplate',
- 'ModifySmsTemplate',
- 'QuerySmsTemplate',
- ],
+ 'title' => 'Template management',
],
[
- 'id' => 402558,
- 'title' => null,
+ 'children' => ['SendSms', 'SendBatchSms'],
'type' => 'directory',
- 'children' => [
- 'SendSms',
- 'SendBatchSms',
- ],
+ 'title' => 'SMS sending',
],
[
- 'id' => 402561,
- 'title' => null,
+ 'children' => ['QuerySendDetails', 'QuerySendStatistics'],
'type' => 'directory',
- 'children' => [
- 'QuerySendDetails',
- 'QuerySendStatistics',
- ],
+ 'title' => 'Sending query',
],
[
- 'id' => 402564,
- 'title' => null,
+ 'children' => ['CreateDigitalSignOrder', 'QueryDigitalSignByName', 'CreateDigitalSmsTemplate'],
'type' => 'directory',
- 'children' => [
- 'CreateDigitalSignOrder',
- 'QueryDigitalSignByName',
- 'CreateDigitalSmsTemplate',
- ],
+ 'title' => 'Digital SMS',
],
[
- 'id' => 402568,
- 'title' => null,
+ 'children' => ['GetOSSInfoForCardTemplate', 'GetMediaResourceId', 'CreateCardSmsTemplate', 'QueryCardSmsTemplate', 'CheckMobilesCardSupport', 'QueryMobilesCardSupport', 'GetCardSmsLink', 'GetCardSmsDetails', 'QueryCardSmsTemplateReport', 'SendCardSms', 'SendBatchCardSms'],
'type' => 'directory',
- 'children' => [
- 'GetOSSInfoForCardTemplate',
- 'GetMediaResourceId',
- 'CreateCardSmsTemplate',
- 'QueryCardSmsTemplate',
- 'CheckMobilesCardSupport',
- 'QueryMobilesCardSupport',
- 'GetCardSmsLink',
- 'GetCardSmsDetails',
- 'QueryCardSmsTemplateReport',
- 'SendCardSms',
- 'SendBatchCardSms',
- ],
+ 'title' => 'Card SMS',
],
[
- 'id' => 402580,
- 'title' => null,
+ 'children' => ['GetQualificationOssInfo', 'GetSmsOcrOssInfo'],
'type' => 'directory',
- 'children' => [
- 'GetQualificationOssInfo',
- 'GetOSSInfoForUploadFile',
- 'GetSmsOcrOssInfo',
- ],
+ 'title' => 'Retrieve OSS upload information',
],
[
- 'id' => 402584,
- 'title' => null,
+ 'children' => ['SmsConversionIntl', 'ConversionDataIntl'],
'type' => 'directory',
- 'children' => [
- 'SmsConversionIntl',
- 'ConversionDataIntl',
- ],
+ 'title' => 'Domestic-to-international SMS conversion rate',
],
[
- 'id' => 402587,
- 'title' => null,
+ 'children' => ['AddShortUrl', 'DeleteShortUrl', 'QueryShortUrl'],
'type' => 'directory',
- 'children' => [
- 'AddShortUrl',
- 'DeleteShortUrl',
- 'QueryShortUrl',
- ],
+ 'title' => 'Short URL management',
],
[
- 'id' => 402591,
- 'title' => null,
+ 'children' => ['GetOSSInfoForUploadFile', 'ListTagResources', 'TagResources', 'UntagResources'],
+ 'title' => 'Others',
'type' => 'directory',
- 'children' => [
- 'ListTagResources',
- 'TagResources',
- 'UntagResources',
- ],
- ],
- [
- 'id' => 0,
- 'title' => '其它',
- 'type' => 'directory',
- 'children' => [
- 'GetSmsTemplateList',
- ],
],
],
'components' => [
'schemas' => [],
],
'apis' => [
- 'SubmitSmsQualification' => [
- 'summary' => '创建资质对客openAPI',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'AddShortUrl' => [
+ 'summary' => 'Creates a short URL.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '264876',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '102437',
+ 'abilityTreeNodes' => ['FEATUREdysmsQAI8QG'],
],
'parameters' => [
[
- 'name' => 'QualificationName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '资质名称,名称不能重复',
- 'description' => '资质名称,名称不能重复',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值示例值',
- ],
+ 'name' => 'SourceUrl',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The URL that you want to shorten. Maximum length: 1,000 characters.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'Short Message Service does not currently support this API operation.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'https://www.****.com/product/sms', 'title' => ''],
],
[
- 'name' => 'UseBySelf',
- 'in' => 'query',
- 'schema' => [
- 'title' => '资质是自用还是他用,true:自用,false:他用',
- 'description' => '资质是自用还是他用,true:自用,false:他用',
- 'type' => 'boolean',
- 'required' => true,
- 'example' => 'true',
- ],
+ 'name' => 'ShortUrlName',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the short URL. Maximum length: 13 characters.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里短链测试', 'title' => ''],
],
[
- 'name' => 'CompanyType',
- 'in' => 'query',
- 'schema' => [
- 'title' => '企业类型, COMPANY:公司;NON_PROFIT_ORGANIZATION:政府或者事业单位',
- 'description' => '企业类型, COMPANY:公司;NON_PROFIT_ORGANIZATION:政府或者事业单位',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'COMPANY',
- ],
+ 'name' => 'EffectiveDays',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The validity period of the short URL, in days. The maximum value is 90.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '7', 'title' => ''],
],
- [
- 'name' => 'BusinessLicensePics',
- 'in' => 'query',
- 'style' => 'json',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '企业营业证件信息,非大客户必填',
- 'description' => '企业营业证件信息,非大客户必填',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Type' => [
- 'title' => '营业证件类型,businessLicense:营业执照;organizationCodeLicense:组织机构代码证;taxRegistrationLicense:税务登记证;socialCreditLicense:社会信用代码证书;newStyleBusinessLicense:三证合一;signLegalLicense:签名归属方的事业单位法人证书;otherLicense:其他类型执照证书',
- 'description' => '营业证件类型,businessLicense:营业执照;organizationCodeLicense:组织机构代码证;taxRegistrationLicense:税务登记证;socialCreditLicense:社会信用代码证书;newStyleBusinessLicense:三证合一;signLegalLicense:签名归属方的事业单位法人证书;otherLicense:其他类型执照证书',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'businessLicense',
- ],
- 'LicensePic' => [
- 'title' => '营业证件图片标识的osskey',
- 'description' => '营业证件图片标识的osskey',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- A value of `OK` indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error Code List](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The message that describes the status.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The details of the short URL.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SourceUrl' => ['description' => 'The source URL that was shortened.', 'type' => 'string', 'example' => 'https://www.****.com/product/sms', 'title' => ''],
+ 'ExpireDate' => ['description' => 'The expiration time of the short URL.'."\n"
+ ."\n"
+ .'> The value of **ExpireDate** is always on the hour.', 'type' => 'string', 'example' => '2021-09-19 00:00:00', 'title' => ''],
+ 'ShortUrl' => ['description' => 'The generated short URL.', 'type' => 'string', 'example' => 'http://****.cn/6y8uy7', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- 'required' => false,
],
- 'required' => false,
+ 'description' => '',
+ 'title' => '',
'example' => '',
],
],
- [
- 'name' => 'CompanyName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '公司名称',
- 'description' => '公司名称',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值',
- ],
- ],
- [
- 'name' => 'OrganizationCode',
- 'in' => 'query',
- 'schema' => [
- 'title' => '社会统一信用代码',
- 'description' => '社会统一信用代码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '910X********0012',
- ],
- ],
- [
- 'name' => 'BussinessLicenseExpDate',
- 'in' => 'query',
- 'schema' => [
- 'title' => '企业营业时间开始和结束字符串,格式示例2023-01-01~2033-01-01',
- 'description' => '企业营业时间开始和结束字符串,格式示例2023-01-01~2033-01-01',
- 'type' => 'string',
- 'required' => true,
- 'example' => '2023-01-01~2033-01-01',
- ],
- ],
- [
- 'name' => 'LegalPersonIdCardFrontSide',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人身份证照片国徽面',
- 'description' => '法人身份证照片国徽面',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png',
- ],
- ],
- [
- 'name' => 'LegalPersonIdCardBackSide',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人身份证照片人像面',
- 'description' => '法人身份证照片人像面',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png',
- ],
- ],
- [
- 'name' => 'LegalPersonName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人姓名',
- 'description' => '法人姓名',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值',
- ],
- ],
- [
- 'name' => 'LegalPersonIDCardNo',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人身份证号码',
- 'description' => '法人身份证号码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '511391********5123',
- ],
- ],
- [
- 'name' => 'LegalPersonIdCardEffTime',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人身份证有效期',
- 'description' => '法人身份证有效期',
- 'type' => 'string',
- 'required' => true,
- 'example' => '2023-01-01~2033-01-01',
- ],
- ],
- [
- 'name' => 'LegalPersonIDCardType',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
- 'description' => '法人身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'identityCard',
- ],
- ],
- [
- 'name' => 'AdminIDCardPic',
- 'in' => 'query',
- 'schema' => [
- 'title' => '经办人身份证照片人像面',
- 'description' => '经办人身份证照片人像面',
- 'type' => 'string',
- 'required' => true,
- 'example' => '123456/111.png',
- ],
- ],
- [
- 'name' => 'AdminIDCardFrontFace',
- 'in' => 'query',
- 'schema' => [
- 'title' => '经办人身份证照片国徽面',
- 'description' => '经办人身份证照片国徽面',
- 'type' => 'string',
- 'required' => true,
- 'example' => '123456/111.png',
- ],
- ],
- [
- 'name' => 'AdminName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '经办人姓名',
- 'description' => '经办人姓名',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值',
- ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
],
- [
- 'name' => 'AdminIDCardNo',
- 'in' => 'query',
- 'schema' => [
- 'title' => '经办人身份证号码',
- 'description' => '经办人身份证号码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '511391********5123',
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\",\\n \\"Data\\": {\\n \\"SourceUrl\\": \\"https://www.****.com/product/sms\\",\\n \\"ExpireDate\\": \\"2021-09-19 00:00:00\\",\\n \\"ShortUrl\\": \\"http://****.cn/6y8uy7\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'AddShortUrl',
+ 'description' => '><notice>'."\n"
+ ."\n"
+ .'Short Message Service does not currently support this API operation.'."\n"
+ ."\n"
+ .'></notice>'."\n"
+ ."\n"
+ .'- You can create up to 3,000 short URLs per calendar day.'."\n"
+ ."\n"
+ .'- After a short URL is generated, it must pass a security review, which typically takes 10 minutes to 2 hours. You cannot access the short URL until it passes this review.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddShortUrl'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:AddShortUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'AddSmsSign' => [
+ 'summary' => 'This API has been discontinued.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- 'name' => 'AdminIDCardType',
- 'in' => 'query',
- 'schema' => [
- 'title' => '管理员身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
- 'description' => '管理员身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'identityCard',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '102438',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
+ ],
+ 'parameters' => [
[
- 'name' => 'AdminIDCardExpDate',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'title' => '经办人身份证有效期,格式示例2023-01-01~2033-01-01',
- 'description' => '经办人身份证有效期,格式示例2023-01-01~2033-01-01',
- 'type' => 'string',
- 'required' => true,
- 'example' => '2023-01-01~2033-01-01',
- ],
+ 'schema' => ['description' => 'The signature name. The signature name must comply with the [Signature specifications](~~108076#section-0p8-qn8-mmy~~).'."\n"
+ ."\n"
+ .'> - Signature names are case-insensitive. For example, [Aliyun Communication] and [aliyun communication] are considered the same name.'."\n"
+ .'> - When your verification code signature and general-purpose signature have the same name, the system uses the general-purpose signature to send SMS messages by default.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里云', 'title' => ''],
],
[
- 'name' => 'AdminPhoneNo',
+ 'name' => 'SignSource',
'in' => 'query',
- 'schema' => [
- 'title' => '经办人手机号码',
- 'description' => '经办人手机号码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '137****1234',
- ],
+ 'schema' => ['description' => 'The source of the signature. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Full name or abbreviation of an enterprise or public institution.'."\n"
+ .'- **1**: Full name or abbreviation of a website registered with the Ministry of Industry and Information Technology (MIIT).'."\n"
+ .'- **2**: Full name or abbreviation of an app.'."\n"
+ .'- **3**: Full name or abbreviation of an official account or mini program.'."\n"
+ .'- **4**: Full name or abbreviation of an e-commerce platform store name.'."\n"
+ .'- **5**: Full name or abbreviation of a trademark name.'."\n"
+ ."\n"
+ .'For detailed descriptions of signature sources, see [Signature source](https://help.aliyun.com/en/sms/user-guide/signature-specifications-1?spm=a2c4g.11186623.0.0.4f9710fder2gR7#section-xup-k46-yi4).'."\n"
+ ."\n"
+ .'>This API does not support applying for signatures whose signature source is **Test or learning** or **Online trial**. If you need to apply for signatures with these two sources, go to the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/domestic/text/sign/add/qualification) to submit your application.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'CertifyCode',
+ 'name' => 'Remark',
'in' => 'query',
- 'schema' => [
- 'title' => '手机号验证码',
- 'description' => '手机号验证码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '1234',
- ],
+ 'schema' => ['description' => 'The description of the SMS signature scenario. The description cannot exceed 200 characters in length.'."\n"
+ ."\n"
+ .'This is reference information for signature review. Providing a complete application description helps reviewers understand your business scenario and improves review efficiency. Guidelines for filling in:'."\n"
+ ."\n"
+ .'- You can provide the use cases of a business that has been launched.'."\n"
+ ."\n"
+ .'- You can provide real-world SMS message examples to reflect your business scenarios.'."\n"
+ ."\n"
+ .'- You can provide the parameter values passed to variables and describe the business use cases and the reasons for choosing these variable attributes in detail.'."\n"
+ ."\n"
+ .'- You can provide the website links, registered domain names, or app store download links of your actual business.'."\n"
+ ."\n"
+ .'- For login scenarios, you can provide a test account and password.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '当前的短信签名应用于双11大促推广营销', 'title' => ''],
],
[
- 'name' => 'OtherFiles',
- 'in' => 'query',
- 'style' => 'json',
+ 'name' => 'SignFileList',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'title' => '更多资料',
- 'description' => '更多资料',
+ 'description' => 'The list of signature files.',
'type' => 'array',
'items' => [
+ 'description' => 'The signature data.',
'type' => 'object',
'properties' => [
- 'LicensePic' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png',
- ],
+ 'FileContents' => ['description' => 'The Base64-encoded string of the qualification certificate file for the signature. The image size cannot exceed 2 MB. In some scenarios, you need to upload a certificate file when you apply for a signature.'."\n"
+ ."\n"
+ .'For detailed specifications, see [File upload specifications](~~463316~~).', 'type' => 'string', 'required' => true, 'example' => 'R0lGODlhHAAmAKIHAKqqqsvLy0hISObm5vf394uL****', 'title' => ''],
+ 'FileSuffix' => ['description' => 'The format of the signature certificate file. Multiple images can be uploaded. Currently, JPG, PNG, GIF, and JPEG formats are supported. In some scenarios, you need to upload a certificate file when you apply for a signature.'."\n"
+ ."\n"
+ .'> If the signature is for third-party use or if you are an individual-certified user whose self-use signature source is an enterprise or public institution name, you also need to upload a certificate file and a power of attorney. For more information, see [Certificate file](~~108076~~) and [Power of attorney](~~56741~~).', 'type' => 'string', 'required' => true, 'example' => 'jpg', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'required' => false,
+ 'required' => true,
+ 'maxItems' => 10,
+ 'title' => '',
'example' => '',
],
],
[
- 'name' => 'WhetherShare',
+ 'name' => 'SignType',
'in' => 'query',
- 'schema' => [
- 'title' => '是否同意与其他业务线共享',
- 'description' => '是否同意与其他业务线共享',
- 'type' => 'boolean',
- 'required' => true,
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'false',
- ],
- ],
- [
- 'name' => 'Remark',
- 'in' => 'query',
- 'schema' => [
- 'title' => '备注',
- 'description' => '备注',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
+ 'schema' => ['description' => 'The type of the signature.'."\n"
+ ."\n"
+ .'- **0**: Verification code'."\n"
+ .'- **1**: General-purpose', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1000****',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
- ],
+ 'Code' => ['description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'* OK is returned if the request is successful.'."\n"
+ .'* For other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'SignName' => ['description' => 'The signature name.', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'AdminBackOssFileNotUploadError',
- 'errorMessage' => 'Administrator ID card portrait photo not uploaded.',
- ],
- [
- 'errorCode' => 'AdminDateNotValid',
- 'errorMessage' => 'Current time is outside the administrator ID card validity period.',
- ],
- [
- 'errorCode' => 'AdminIdcardExpdateNotMatchRegexError',
- 'errorMessage' => 'Invalid administrator ID card expiration time format.',
- ],
- [
- 'errorCode' => 'AdminIdcardFrontFaceFileError',
- 'errorMessage' => 'Invalid format for administrator\'s ID card national emblem photo.',
- ],
- [
- 'errorCode' => 'AdminIdcardFrontFaceNullError',
- 'errorMessage' => 'Administrator\'s ID card national emblem photo cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminIdcardNoNullError',
- 'errorMessage' => 'Administrator\'s ID number cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminIdcardNotMatchRegex',
- 'errorMessage' => 'Invalid administrator ID number format.',
- ],
- [
- 'errorCode' => 'AdminIdcardPicsFileError',
- 'errorMessage' => 'Invalid format for administrator\'s ID card portrait photo.',
- ],
- [
- 'errorCode' => 'AdminIdcardPicsNullError',
- 'errorMessage' => 'Administrator\'s ID card portrait photo cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminIdcardTypeError',
- 'errorMessage' => 'Invalid administrator ID card type.',
- ],
- [
- 'errorCode' => 'AdminNameNullError',
- 'errorMessage' => 'Administrator\'s name cannot be empty.',
- ],
- [
- 'errorCode' => 'BusinessLicenseDateNotMatchRegexError',
- 'errorMessage' => 'Invalid business license expiration time format.',
- ],
- [
- 'errorCode' => 'BusinessLicenseDateNotValid',
- 'errorMessage' => 'Current time is outside the business license validity period.',
- ],
- [
- 'errorCode' => 'BusinessLicenseOssFileNotUploadError',
- 'errorMessage' => 'Business license file not uploaded.',
- ],
- [
- 'errorCode' => 'BusinessLicensePicsFileError',
- 'errorMessage' => 'Invalid business license file format.',
- ],
- [
- 'errorCode' => 'BusinessLicensePicsNullError',
- 'errorMessage' => 'Business license documents cannot be empty.',
- ],
- [
- 'errorCode' => 'BusinessLicenseTypeError',
- 'errorMessage' => 'Invalid business license type.',
- ],
- [
- 'errorCode' => 'CertifyCodeError',
- 'errorMessage' => 'SMS verification code is incorrect.',
- ],
- [
- 'errorCode' => 'CompanyNameNullError',
- 'errorMessage' => 'Company name cannot be empty.',
- ],
- [
- 'errorCode' => 'CompanyTypeError',
- 'errorMessage' => 'Invalid company type.',
- ],
- [
- 'errorCode' => 'QualificationNameNullError',
- 'errorMessage' => 'Qualification name cannot be empty.',
- ],
- [
- 'errorCode' => 'QualificationNameNotMatchRegex',
- 'errorMessage' => 'Qualification names must be in Chinese, English, or alphanumeric combinations. Symbols or pure numbers are not supported.',
- ],
- [
- 'errorCode' => 'QualificationNameAlreadyExist',
- 'errorMessage' => 'The qualification name already exists. Please modify and resubmit.',
- ],
- [
- 'errorCode' => 'OtherFileTypeError',
- 'errorMessage' => 'Invalid file format for other documents.',
- ],
- [
- 'errorCode' => 'LegalPersonIdcardTypeError',
- 'errorMessage' => 'Invalid legal person ID card type.',
- ],
- [
- 'errorCode' => 'LegalIdCardNoNullError',
- 'errorMessage' => 'Legal person\'s ID number cannot be empty.',
- ],
- [
- 'errorCode' => 'LegalIdCardNotMatchRegex',
- 'errorMessage' => 'Invalid legal person ID number format.',
- ],
- [
- 'errorCode' => 'LegalPersonNameNullError',
- 'errorMessage' => 'Legal person\'s name cannot be empty.',
- ],
- [
- 'errorCode' => 'OrganizationCodeNullError',
- 'errorMessage' => 'Unified Social Credit Code cannot be empty.',
- ],
- [
- 'errorCode' => 'LegalPersonIdcardEfftimeNotMatchRegexError',
- 'errorMessage' => 'Invalid legal person ID card expiration time format.',
- ],
- [
- 'errorCode' => 'LegalDateNotValid',
- 'errorMessage' => 'Current time is outside the legal person ID card validity period.',
- ],
- [
- 'errorCode' => 'LegalFrontOssFileNotUploadError',
- 'errorMessage' => 'Legal person ID card national emblem photo not uploaded.',
- ],
- [
- 'errorCode' => 'LegalBackOssFileNotUploadError',
- 'errorMessage' => 'Legal person ID card portrait photo not uploaded.',
- ],
- [
- 'errorCode' => 'AdminFrontOssFileNotUploadError',
- 'errorMessage' => 'Administrator ID card national emblem photo not uploaded.',
- ],
- [
- 'errorCode' => 'OtherOssFileNotUploadError',
- 'errorMessage' => 'Other files not uploaded.',
- ],
- [
- 'errorCode' => 'GrayCustAccessError',
- 'errorMessage' => 'This customer is not authorized to use the OpenAPI. Please contact support for whitelisting.',
- ],
- [
- 'errorCode' => 'CustNotExistError',
- 'errorMessage' => 'Customer\'s cloud communication information is invalid.',
- ],
- [
- 'errorCode' => 'NotEnterpriseCertifyCustCheckError',
- 'errorMessage' => 'Non-enterprise certified customers are not allowed to access.',
- ],
- [
- 'errorCode' => 'PhoneNoCertifyCodeNullError',
- 'errorMessage' => 'Phone number and verification code cannot be empty.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedCompanyStateInvalid',
- 'errorMessage' => 'Four Elements Verification Failed: Company is not in normal operation.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedFourElementsError',
- 'errorMessage' => 'Four Elements Verification Failed: Authentication Failed.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedMismatch',
- 'errorMessage' => 'Four Elements Verification Failed: Mismatch between Legal Representative and Company Information.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedNoCompany',
- 'errorMessage' => 'Four Elements Verification Failed: Company Not Found.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedNoLegalPerson',
- 'errorMessage' => 'Four Elements Verification Failed: Legal Representative Not Found.',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","type":"json"}]',
+ 'title' => 'Apply for an SMS signature (discontinued)',
+ 'description' => '- In accordance with the regulations of the Ministry of Industry and Information Technology (MIIT) and the [relevant requirements](~~2806975~~) of carriers, Alibaba Cloud has made functional modifications to signature-related APIs. To improve the review efficiency and approval rate of your signatures, use the new API [CreateSmsSign - Apply for an SMS signature](~~2807427~~).'."\n"
+ ."\n"
+ .'- An individual user can apply for one signature per natural day under the same Alibaba Cloud account. Enterprise users have no limit on the number of applications. For details about the differences in rights and interests between individual users and enterprise users, see [Usage notes](~~55324~~).'."\n"
+ ."\n"
+ .'- The signature information applied for through the API is synchronized to the SMS console. For operations on signatures in the console, see [SMS signatures](~~108073~~).'."\n"
+ ."\n"
+ .'- After you submit a signature application, you can call the [QuerySmsSign](~~419283~~) API to query the review status and details of the signature. You can also [configure receipt messages](~~101508~~) and use [SignSmsReport](~~120998~~) to obtain signature review status messages.'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ .'The single-user QPS limit for this API is 1 call per second. If the limit is exceeded, API calls will be throttled, which may affect your business. Call this API at a reasonable rate.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-15T04:21:05.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-15T04:21:02.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-15T04:03:26.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-15T04:02:05.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:25.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:18.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:05.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddSmsSign'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:AddSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"1000****\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
- 'QuerySmsQualificationRecord' => [
- 'summary' => '查询资质审核列表页',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'AddSmsTemplate' => [
+ 'summary' => 'An SMS template is the detailed content received by the recipient, including variables and template content. You can apply for verification code, notification, or promotional SMS templates based on your business needs. SMS can only be sent after the template is approved.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => true,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '264880',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- 'FEATUREdysms2H0K7P',
- ],
+ 'abilityTreeCode' => '102439',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'QualificationGroupName',
+ 'name' => 'TemplateType',
'in' => 'query',
- 'schema' => [
- 'title' => '资质组名称',
- 'description' => '资质组名称',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
+ 'schema' => ['description' => 'The SMS type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code.'."\n"
+ .'- **1**: notification SMS.'."\n"
+ .'- **2**: promotional SMS.'."\n"
+ .'- **3**: international/Hong Kong, Macao, and Taiwan messages.'."\n"
+ ."\n"
+ .'> Only enterprise-verified users can apply for promotional SMS and international/Hong Kong, Macao, and Taiwan messages. For details about the differences between individual and enterprise user privileges, see [Usage notes](~~55324~~).', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '0', 'title' => ''],
],
[
- 'name' => 'CompanyName',
+ 'name' => 'TemplateName',
'in' => 'query',
- 'schema' => [
- 'title' => '公司名',
- 'description' => '公司名',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值',
- ],
+ 'schema' => ['description' => 'The template name. The length must not exceed 30 characters.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '验证码', 'title' => ''],
],
[
- 'name' => 'State',
+ 'name' => 'TemplateContent',
'in' => 'query',
- 'schema' => [
- 'title' => '审核状态。INT:审核中FAILED:审核失败,PASSED:审核通过,NOT_FINISH:资料待补充,CANCELED:已撤回',
- 'description' => '审核状态。INT:审核中FAILED:审核失败,PASSED:审核通过,NOT_FINISH:资料待补充,CANCELED:已撤回',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'PASSED',
- ],
+ 'schema' => ['description' => 'The template content. The length must not exceed 500 characters.'."\n"
+ ."\n"
+ .'The template content and variable content must comply with the [SMS template specifications](~~463161~~); otherwise, the template review will fail. You can also view common template examples on the [Apply for template](https://dysms.console.aliyun.com/domestic/text/template/add) page. Using example templates can improve review efficiency and success rate. For variable specifications, see [TemplateContent parameter variable specifications](~~2806243~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '您正在申请手机注册,验证码为:${code},5分钟内有效!', 'title' => ''],
],
[
- 'name' => 'WorkOrderId',
+ 'name' => 'Remark',
'in' => 'query',
+ 'schema' => ['description' => 'The description for the SMS template application. The length must not exceed 100 characters.'."\n"
+ ."\n"
+ .'This is reference information for template review. Providing a complete application description helps reviewers understand your business scenario and improves review efficiency. Guidelines:'."\n"
+ ."\n"
+ .'- You can provide the usage scenario of business that has been launched.'."\n"
+ .'- You can provide SMS examples for real scenarios to demonstrate your business scenario.'."\n"
+ .'- You can provide the variable parameter content, describing the business usage scenario in detail and the reason for choosing this variable attribute.'."\n"
+ .'- You can provide website links of actual business, registered domain addresses, app market download links, and so on.'."\n"
+ .'- For login scenarios, you can provide a test account and password.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '申请验证码短信', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '工单ID',
- 'description' => '工单ID',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '2001****',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'* The value OK indicates that the request was successful.'."\n"
+ .'* For other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'TemplateCode' => ['description' => 'The SMS template code.'."\n"
+ ."\n"
+ .'After submitting the template application, you can use the SMS template code to query the template review details through the [QuerySmsTemplate](~~419289~~) operation. You can also [configure receipt messages](~~101508~~) and obtain the template review status messages through [TemplateSmsReport](~~120999~~).', 'type' => 'string', 'example' => 'SMS_46817****', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'LegalPersonName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人姓名',
- 'description' => '法人姓名',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'TemplateParameterCountIllegal', 'errorMessage' => 'The verification code template only supports 1 verification code as a variable', 'description' => 'Verification code templates support only one variable, which must be a verification code.'],
+ ],
+ ],
+ 'staticInfo' => [
+ 'substitutions' => ['Dysmsapi::2017-05-25::CreateSmsTemplate'],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"TemplateCode\\": \\"SMS_46817****\\"\\n}","type":"json"}]',
+ 'title' => 'Apply for SMS template (discontinued)',
+ 'description' => '- In accordance with the regulations of the Ministry of Industry and Information Technology and the [related requirements](~~2806975~~) of carriers, Alibaba Cloud has revamped the functionality of template-related APIs. To improve the review efficiency and approval rate of your templates, please use the new operation [CreateSmsTemplate - Apply for SMS template](~~2807431~~).'."\n"
+ ."\n"
+ .'- You can submit a maximum of 100 SMS template applications per natural day via the API. It is recommended that each application be submitted at intervals of at least 30 seconds. There is no limit on the number of submissions when applying for SMS templates through the [console](https://dysms.console.aliyun.com/domestic/text/template).'."\n"
+ ."\n"
+ .'- Template information applied for through the API is synchronized to the SMS service console. For related template operations in the console, see [SMS templates](~~108085~~).'."\n"
+ ."\n"
+ .'- After submitting the template application, you can query the template review status and details through the [QuerySmsTemplate](~~419289~~) operation. You can also [configure receipt messages](~~101508~~) and obtain the template review status messages through [TemplateSmsReport](~~120999~~).'."\n"
+ ."\n"
+ .'- Domestic SMS templates and international/Hong Kong, Macao, and Taiwan SMS templates are not interchangeable (cannot be mixed). Please apply for templates based on your business usage scenarios.'."\n"
+ ."\n"
+ .'- Only enterprise-verified users can apply for promotional SMS and international/Hong Kong, Macao, and Taiwan messages. For details about the differences between individual and enterprise user privileges, see [Usage notes](~~55324~~).'."\n"
+ ."\n"
+ .'### QPS limits'."\n"
+ .'The per-user QPS limit for this operation is 1,000 calls per second. If the limit is exceeded, API calls will be throttled, which may affect your business. Please call the operation reasonably.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-15T04:21:06.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-15T04:21:02.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:25.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:18.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:05.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddSmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:AddSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'ChangeSignatureQualification' => [
+ 'summary' => 'Updates the qualification and authorization letter for a signature.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'UseBySelf',
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '268874',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SignatureName',
'in' => 'query',
- 'schema' => [
- 'title' => '是否自用',
- 'description' => '是否自用',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => 'The signature.', 'type' => 'string', 'required' => true, 'example' => '阿里云', 'title' => ''],
],
[
- 'name' => 'PageNo',
+ 'name' => 'QualificationId',
'in' => 'query',
- 'schema' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The ID of the qualification, which is returned when you apply for it. You can also find this ID on the [Qualification Management](https://dysms.console.aliyun.com/domestic/text/qualification) page in the console for messages to the Chinese mainland.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1*****2', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'AuthorizationLetterId',
'in' => 'query',
- 'schema' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '20',
- ],
+ 'schema' => ['description' => 'The ID of the authorization letter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000********1234', 'title' => ''],
],
],
'responses' => [
@@ -860,154 +521,73 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'AccessDeniedDetail' => ['description' => 'Details of the access denial. This field is returned only if RAM authentication fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID. Alibaba Cloud generates this unique identifier to help you troubleshoot issues.', 'type' => 'string', 'example' => '0A974B78-02BF-4C79-ADF3-90CFBA1B55B1', 'title' => ''],
'Data' => [
- 'description' => '',
'type' => 'object',
'properties' => [
- 'PageSize' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '20',
- ],
- 'Total' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '25',
- ],
- 'PageNo' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'List' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'LegalPersonName' => [
- 'title' => '法人名称',
- 'description' => '法人名称',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'AuditRemark' => [
- 'title' => '审核备注',
- 'description' => '审核备注',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'CompanyName' => [
- 'title' => '公司名称或实人认证姓名',
- 'description' => '公司名称或实人认证姓名',
- 'type' => 'string',
- 'example' => '示例值示例值示例值',
- ],
- 'WorkOrderId' => [
- 'title' => '工单ID',
- 'description' => '工单ID',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '2001****',
- ],
- 'StateName' => [
- 'title' => '审核状态名',
- 'description' => '审核状态名',
- 'type' => 'string',
- 'example' => 'INT',
- ],
- 'AuditTime' => [
- 'title' => '审核时间',
- 'description' => '审核时间',
- 'type' => 'string',
- 'example' => '2024-12-26 17:29:04',
- ],
- 'CreateDate' => [
- 'title' => '创建时间',
- 'description' => '创建时间',
- 'type' => 'string',
- 'example' => '2025-02-20 11:59:30',
- ],
- 'QualificationGroupName' => [
- 'title' => '资质组名称',
- 'description' => '资质组名称',
- 'type' => 'string',
- 'example' => '示例值示例值示例值',
- ],
- 'GroupId' => [
- 'title' => '资质组ID',
- 'description' => '资质组ID',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '10000****',
- ],
- 'UseBySelf' => [
- 'title' => '是否自用',
- 'description' => '是否自用',
- 'type' => 'string',
- 'example' => 'true',
- ],
- ],
- ],
- 'example' => '',
- ],
+ 'Data' => ['description' => 'This field is not used. You can ignore it.', 'type' => 'object', 'title' => '', 'example' => ''],
+ 'ErrMessage' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the call was successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'ErrCode' => ['description' => 'The status code of the request.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
],
- ],
- 'Code' => [
+ 'description' => 'The returned data structure.',
'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
+ 'example' => '',
],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- A value of `OK` indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see the error code list in this topic or the [API Error Codes](~~101346~~) topic.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
'Success' => [
- 'title' => '',
- 'description' => '',
+ 'description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'type' => 'boolean',
'example' => 'true',
+ 'title' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"PageSize\\": 20,\\n \\"Total\\": 25,\\n \\"PageNo\\": 1,\\n \\"List\\": [\\n {\\n \\"LegalPersonName\\": \\"李华\\",\\n \\"AuditRemark\\": \\"无\\",\\n \\"CompanyName\\": \\"阿里云云通信有限公司\\",\\n \\"WorkOrderId\\": 0,\\n \\"StateName\\": \\"INIT\\",\\n \\"AuditTime\\": \\"2024-12-26 17:29:04\\",\\n \\"CreateDate\\": \\"2025-02-20 11:59:30\\",\\n \\"QualificationGroupName\\": \\"阿里云云通信有限公司李华\\",\\n \\"GroupId\\": 0,\\n \\"UseBySelf\\": \\"true\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- ],
- 'QuerySingleSmsQualification' => [
- 'summary' => '查询单个资质详情',
- 'methods' => [
- 'post',
- 'get',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'QualificationNotExist', 'errorMessage' => 'Can\'t query qualification information.', 'description' => 'Can\'t query qualification information'],
+ ['errorCode' => 'SmsAuthorizationLetterNotExist', 'errorMessage' => 'Authorization does not belong to the customer.', 'description' => ''],
+ ['errorCode' => 'SmsSignatureNotExist', 'errorMessage' => 'Signature does not exist.', 'description' => 'Signature does not exist'],
+ ['errorCode' => 'SmsQualificationRegisterFailed', 'errorMessage' => 'The registration of the current qualification fails. Please modify the qualification and re-bind the qualification before completing the signature registration process again.', 'description' => 'The registration of the current qualification fails. Please modify the qualification and re-bind the qualification before completing the signature registration process again.'],
+ ['errorCode' => 'SmsQualificationNotPassed', 'errorMessage' => 'The qualification has not been approved and cannot be bound to the signature.', 'description' => 'The qualification has not been approved and cannot be bound to the signature.'],
+ ['errorCode' => 'SmsPassedAuthorizationLetterNotMatch', 'errorMessage' => 'Please bind audited authorization letter whose the social credit code is same to the the social credit code of qualification.', 'description' => 'Please bind and unify the qualification authorization letter with the same and available social credit code.'."\n"],
+ ['errorCode' => 'QualificationNotComplete', 'errorMessage' => 'The qualification elements are incomplete.', 'description' => 'The qualification elements are incomplete, and the missing elements are []'],
+ ['errorCode' => 'SmsSignNotAuthorized', 'errorMessage' => 'the signature is not in the sign scope of the authorization letter.', 'description' => 'The signature is not within the scope of the authorization.'],
+ ['errorCode' => 'SMS_STATUS_ILLEGAL', 'errorMessage' => 'When replacing the qualification and power of attorney of the signature, the signature status must be approved.', 'description' => 'When replacing the qualification and power of attorney of the signature, the signature status must be approved.'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"0A974B78-02BF-4C79-ADF3-90CFBA1B55B1\\",\\n \\"Data\\": {\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"ErrMessage\\": \\"OK\\",\\n \\"Success\\": true,\\n \\"ErrCode\\": \\"OK\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Replace the Qualification and Letter of Authorization for a Signature (to be unpublished)',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
+ 'ramActions' => [],
+ ],
+ 'CheckMobilesCardSupport' => [
+ 'summary' => 'Checks whether phone numbers support card SMS.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -1019,36 +599,29 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '264878',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '125700',
+ 'abilityTreeNodes' => ['FEATUREdysmsB35KN5'],
],
'parameters' => [
[
- 'name' => 'QualificationGroupId',
+ 'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'title' => '资质id',
- 'description' => '资质id',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '10000****',
- ],
+ 'schema' => ['description' => 'The code of the card SMS template.'."\n"
+ .'Log on to the SMS Service console and go to the [Domestic Card SMS](https://dysms.console.aliyun.com/domestic/card) page. On the **Template Management** tab, you can view the list of card SMS templates.'."\n"
+ ."\n"
+ .'>The template must be added and approved.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'CARD_SMS_****', 'title' => ''],
],
[
- 'name' => 'OrderId',
+ 'name' => 'Mobiles',
'in' => 'query',
+ 'style' => 'flat',
'schema' => [
- 'title' => '工单id',
- 'description' => '工单id',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '2001****',
+ 'description' => 'The list of phone numbers to be queried.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The phone number to be queried. The parameter must be in the format of {"#6#mobile":"1380000****"}. Otherwise, a phone number format error is returned. Up to 10,000 phone numbers can be queried in a single request.', 'type' => 'object', 'required' => false, 'example' => '{"#6#mobile":"1322587****"}', 'title' => ''],
+ 'required' => true,
+ 'title' => '',
+ 'example' => '',
],
],
],
@@ -1057,268 +630,102 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ .'- The value OK indicates that the request was successful.'."\n"
+ .'- For information about other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID, which is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate issues.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Data' => [
- 'title' => '',
- 'description' => '',
+ 'description' => 'The returned data.'."\n",
'type' => 'object',
'properties' => [
- 'AdminIDCardExpDate' => [
- 'title' => '经办人身份证有效期',
- 'description' => '经办人身份证有效期',
- 'type' => 'string',
- 'example' => '2023-01-01~2033-01-01',
- ],
- 'BusinessType' => [
- 'title' => '行业类型,在当前模式下是可以用产品线code来区分',
- 'description' => '行业类型,在当前模式下是可以用产品线code来区分',
- 'type' => 'string',
- 'example' => 'dysms',
- ],
- 'AdminIDCardFrontFace' => [
- 'title' => '经办人身份证国徽面,产品需求,要求身份证可以分正反面上传',
- 'description' => '经办人身份证国徽面,产品需求,要求身份证可以分正反面上传',
- 'type' => 'string',
- 'example' => 'https://******.aliyuncs.com/******',
- ],
- 'Remark' => [
- 'title' => '备注',
- 'description' => '备注',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'LegalPersonName' => [
- 'title' => '法人姓名',
- 'description' => '法人姓名',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- 'CompanyName' => [
- 'title' => '公司名称',
- 'description' => '公司名称',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'LegalPersonIDCardNo' => [
- 'title' => '法人身份证号码',
- 'description' => '法人身份证号码',
- 'type' => 'string',
- 'example' => '511391********5123'."\n",
- ],
- 'BusinessLicensePics' => [
- 'title' => '证件信息',
- 'description' => '证件信息',
+ 'queryResult' => [
+ 'description' => 'The list of query results.',
'type' => 'array',
'items' => [
+ 'description' => 'The query data.',
'type' => 'object',
'properties' => [
- 'Type' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'businessLicense',
- ],
- 'LicensePic' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '123456/111.png',
- ],
- 'PicUrl' => [
- 'title' => '文件的完整路径',
- 'description' => '文件的完整路径',
- 'type' => 'string',
- 'example' => 'https://******.aliyuncs.com/******'."\n",
- ],
+ 'mobile' => ['description' => 'The phone number.', 'type' => 'string', 'example' => '1390000****', 'title' => ''],
+ 'support' => ['description' => 'Indicates whether card SMS is supported. Valid values:'."\n"
+ ."\n"
+ .'- **true**: Card SMS is supported.'."\n"
+ ."\n"
+ .'- **false**: Card SMS is not supported.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- 'example' => '',
- ],
- 'AdminIDCardNo' => [
- 'title' => '经办人身份证号码',
- 'description' => '经办人身份证号码',
- 'type' => 'string',
- 'example' => '511391********5123',
- ],
- 'OrganizationCode' => [
- 'title' => '社会统一信用代码',
- 'description' => '社会统一信用代码',
- 'type' => 'string',
- 'example' => '910X********0012'."\n",
- ],
- 'LegalPersonIdCardEffTime' => [
- 'title' => '法人身份证有效期',
- 'description' => '法人身份证有效期',
- 'type' => 'string',
- 'example' => '2023-01-01~2033-01-01',
- ],
- 'AdminPhoneNo' => [
- 'title' => '经办人手机号码',
- 'description' => '经办人手机号码',
- 'type' => 'string',
- 'example' => '137*******',
- ],
- 'QualificationName' => [
- 'title' => '资质名称',
- 'description' => '资质名称',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'AdminName' => [
- 'title' => '经办人姓名',
- 'description' => '经办人姓名',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'CompanyType' => [
- 'title' => '企业类型, COMPANY:公司,政府或者事业单位:NON_PROFIT_ORGANIZATION',
- 'description' => '企业类型, COMPANY:公司,政府或者事业单位:NON_PROFIT_ORGANIZATION',
- 'type' => 'string',
- 'example' => 'COMPANY',
- ],
- 'AdminIDCardType' => [
- 'title' => '管理员身份证类型',
- 'description' => '管理员身份证类型',
- 'type' => 'string',
- 'example' => 'identityCard',
- ],
- 'UseBySelf' => [
- 'title' => '是否自用',
- 'description' => '是否自用',
- 'type' => 'boolean',
- 'example' => 'false',
- ],
- 'EffTimeStr' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '2023-01-01~2033-01-01'."\n",
- ],
- 'QualificationGroupId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '10000****',
- ],
- 'WhetherShare' => [
'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'false',
- ],
- 'WorkOrderId' => [
- 'title' => '乾坤袋工单ID',
- 'description' => '乾坤袋工单ID',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '2001****',
- ],
- 'State' => [
- 'title' => '当前审核状态',
- 'description' => '当前审核状态',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'NOT_FINISH' => '',
- 'FAILED' => '',
- 'CANCELED' => '',
- 'INT' => '',
- 'PASSED' => '',
- ],
- 'example' => 'PASSED',
- ],
- 'OtherFiles' => [
- 'title' => '更多资料',
- 'description' => '更多资料',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'LicensePic' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '123456/111.png',
- ],
- 'PicUrl' => [
- 'title' => '文件的完整路径',
- 'description' => '文件的完整路径',
- 'type' => 'string',
- 'example' => 'https://******.aliyuncs.com/******',
- ],
- ],
- ],
'example' => '',
],
- 'LegalPersonIDCardType' => [
- 'title' => '法人身份证类型',
- 'description' => '法人身份证类型',
- 'type' => 'string',
- 'example' => 'identityCard',
- ],
- 'AdminIDCardPic' => [
- 'title' => '经办人身份证图片地址,正反面合一',
- 'description' => '经办人身份证图片地址,正反面合一',
- 'type' => 'string',
- 'example' => 'https://******.aliyuncs.com/******',
- ],
],
- 'example' => '',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"AdminIDCardExpDate\\": \\"2023-01-01~2033-01-01\\",\\n \\"BusinessType\\": \\"dysms\\",\\n \\"AdminIDCardFrontFace\\": \\"https://******.aliyuncs.com/******\\",\\n \\"Remark\\": \\"无\\",\\n \\"LegalPersonName\\": \\"李华\\",\\n \\"CompanyName\\": \\"阿里云云通信有限公司\\",\\n \\"LegalPersonIDCardNo\\": \\"511391********5123\\\\n\\",\\n \\"BusinessLicensePics\\": [\\n {\\n \\"Type\\": \\"businessLicense\\",\\n \\"LicensePic\\": \\"123456/111.png\\",\\n \\"PicUrl\\": \\"https://******.aliyuncs.com/******\\\\n\\"\\n }\\n ],\\n \\"AdminIDCardNo\\": \\"511391********5123\\",\\n \\"OrganizationCode\\": \\"910X********0012\\\\n\\",\\n \\"LegalPersonIdCardEffTime\\": \\"2023-01-01~2033-01-01\\",\\n \\"AdminPhoneNo\\": \\"137*******\\",\\n \\"QualificationName\\": \\"阿里云云通信有限公司资质李华\\\\n\\",\\n \\"AdminName\\": \\"李华\\",\\n \\"CompanyType\\": \\"COMPANY\\",\\n \\"AdminIDCardType\\": \\"identityCard\\",\\n \\"UseBySelf\\": false,\\n \\"EffTimeStr\\": \\"2023-01-01~2033-01-01\\\\n\\",\\n \\"QualificationGroupId\\": 0,\\n \\"WhetherShare\\": false,\\n \\"WorkOrderId\\": 0,\\n \\"State\\": \\"PASSED\\",\\n \\"OtherFiles\\": [\\n {\\n \\"LicensePic\\": \\"123456/111.png\\",\\n \\"PicUrl\\": \\"https://******.aliyuncs.com/******\\"\\n }\\n ],\\n \\"LegalPersonIDCardType\\": \\"identityCard\\",\\n \\"AdminIDCardPic\\": \\"https://******.aliyuncs.com/******\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- ],
- 'UpdateSmsQualification' => [
- 'summary' => '修改资质对客openAPI',
- 'methods' => [
- 'post',
- 'get',
+ 'errorCodes' => [
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"queryResult\\": [\\n {\\n \\"mobile\\": \\"1390000****\\",\\n \\"support\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Check whether phone numbers support card SMS (Old API)',
+ 'description' => '- Alibaba Cloud accounts that have not activated card SMS cannot call this API.'."\n"
+ .'- Card SMS is currently in the internal invitation phase. Contact your Alibaba Cloud account manager to apply for activation or [contact Alibaba Cloud pre-sales](https://help.aliyun.com/document_detail/464625.html).'."\n"
+ .'- We recommend that you use the new API [QueryMobilesCardSupport](~~QueryMobilesCardSupport~~) to query whether phone numbers support card SMS.'."\n"
+ .'### QPS limit'."\n"
+ .'The per-user QPS limit for this API is 2,000 calls per second. If the limit is exceeded, API calls are throttled, which may affect your business. Make calls reasonably.',
+ 'requestParamsDescription' => 'Complete request parameter example:'."\n"
+ ."\n"
+ .'```'."\n"
+ .'{'."\n"
+ .' "Mobiles": ['."\n"
+ .' {'."\n"
+ .' "#6#mobile": "137******00"'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "#6#mobile": "130******00"'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "TemplateCode": "CARD_SMS_6***9"'."\n"
+ .'}'."\n"
+ .'```',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckMobilesCardSupport'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:CheckMobilesCardSupport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'ConversionDataIntl' => [
+ 'summary' => 'Reports SMS conversion rate statistics to the Alibaba Cloud SMS platform.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -1327,845 +734,711 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '264875',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '176602',
+ 'abilityTreeNodes' => ['FEATUREdysmsWO2BNU'],
],
'parameters' => [
[
- 'name' => 'QualificationGroupId',
+ 'name' => 'ReportTime',
'in' => 'query',
- 'schema' => [
- 'title' => '资质组ID',
- 'description' => '资质组ID',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '10000****',
- ],
+ 'schema' => ['description' => 'The point in time when the conversion rate is observed. The value must be a Unix timestamp in milliseconds, represented as a long integer.'."\n"
+ ."\n"
+ .'>If you do not specify this parameter, the current timestamp is used by default.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1349055900000', 'title' => ''],
],
[
- 'name' => 'OrderId',
+ 'name' => 'ConversionRate',
'in' => 'query',
- 'schema' => [
- 'title' => '工单ID',
- 'description' => '工单ID',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '2001*****',
- ],
+ 'schema' => ['description' => 'The conversion rate monitoring value.'."\n"
+ .'>This parameter is of the double type. Valid values: \\[0,1].', 'type' => 'string', 'required' => true, 'example' => '0.53', 'title' => ''],
],
- [
- 'name' => 'BusinessLicensePics',
- 'in' => 'query',
- 'style' => 'json',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '企业证件信息',
- 'description' => '企业证件信息',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Type' => [
- 'title' => '企业证件类型,businessLicense:营业执照;organizationCodeLicense:组织机构代码证;taxRegistrationLicense:税务登记证;socialCreditLicense:社会信用代码证书;newStyleBusinessLicense:三证合一;signLegalLicense:签名归属方的事业单位法人证书;otherLicense:其他类型执照证书',
- 'description' => '企业证件类型,businessLicense:营业执照;organizationCodeLicense:组织机构代码证;taxRegistrationLicense:税务登记证;socialCreditLicense:社会信用代码证书;newStyleBusinessLicense:三证合一;signLegalLicense:签名归属方的事业单位法人证书;otherLicense:其他类型执照证书',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'businessLicense',
- ],
- 'LicensePic' => [
- 'title' => '证件图片标识的osskey',
- 'description' => '证件图片标识的osskey',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png',
- ],
- ],
- 'required' => false,
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF'."\n", 'title' => ''],
+ 'Code' => ['description' => '状态码。取值:'."\n"
+ ."\n"
+ .'- OK:代表请求成功。'."\n"
+ ."\n"
+ .'- 其他错误码,请参见[错误码列表](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
],
- 'required' => false,
+ 'description' => '',
+ 'title' => '',
'example' => '',
],
],
- [
- 'name' => 'CompanyName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '公司名称',
- 'description' => '公司名称',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值示例值',
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\\\n\\",\\n \\"Code\\": \\"OK\\"\\n}","type":"json"}]',
+ 'title' => 'Report conversion rate data for international SMS sent from China',
+ 'description' => '指标说明:转化率=OTP 转化量/OTP 发送量。'."\n"
+ .'- OTP发送量:验证码发送量。'."\n"
+ .'- OTP转化量:验证码转换量。(用户成功获取验证码,并进行回传)'."\n"
+ .'>转化率反馈功能会对业务系统有一定的侵入性,为了防止调用转化率 API 的抖动影响业务逻辑,请考虑: '."\n"
+ .'>- 使用异步模式(例如:队列或事件驱动)调用 API。 '."\n"
+ .'>- 添加可降级的方案保护业务逻辑(例如:手动降级开工或者使用断路器自动降级)。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ConversionDataIntl'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:ConversionDataIntl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'CreateCardSmsTemplate' => [
+ 'summary' => 'Creates a card SMS template.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- 'name' => 'BussinessLicenseExpDate',
- 'in' => 'query',
- 'schema' => [
- 'title' => '企业营业时间开始和结束字符串,格式示例2023-01-01~2033-01-01',
- 'description' => '企业营业时间开始和结束字符串,格式示例2023-01-01~2033-01-01',
- 'type' => 'string',
- 'required' => false,
- 'example' => '2023-01-01~2033-01-01',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '102440',
+ 'abilityTreeNodes' => ['FEATUREdysms17QZIS'],
+ ],
+ 'parameters' => [
[
- 'name' => 'LegalPersonIdCardFrontSide',
+ 'name' => 'TemplateName',
'in' => 'query',
- 'schema' => [
- 'title' => '法人身份照片证国徽面',
- 'description' => '法人身份照片证国徽面',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png'."\n",
- ],
+ 'schema' => ['description' => 'The name of the card SMS template.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里云图文类模板', 'title' => ''],
],
[
- 'name' => 'LegalPersonIdCardBackSide',
+ 'name' => 'Template',
'in' => 'query',
- 'schema' => [
- 'title' => '法人身份证照片人像面',
- 'description' => '法人身份证照片人像面',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png'."\n",
- ],
+ 'style' => 'json',
+ 'schema' => ['description' => 'The content of the card SMS template.'."\n"
+ ."\n"
+ .'> - For more information about the `Template`, `ExtendInfo`, `TemplateContent`, `TmpCard`, and `Action` fields, see [Card SMS template parameters](~~434929~~).'."\n"
+ .'>'."\n"
+ .'> - The content structure varies based on the type of card SMS template. For more information, see [Card SMS template examples](~~435361~~).', 'type' => 'object', 'required' => true, 'docRequired' => true, 'example' => '{'."\n"
+ .' "extendInfo":{'."\n"
+ .' "scene":"HMOVM图文",'."\n"
+ .' "purpose":"2",'."\n"
+ .' "userExt":{'."\n"
+ .' "outId":"1234554321"'."\n"
+ .' }'."\n"
+ .' },'."\n"
+ .' "templateContent":{'."\n"
+ .' "pages":['."\n"
+ .' {'."\n"
+ .'"tmpCards":['."\n"
+ .' {'."\n"
+ .' "type":"IMAGE",'."\n"
+ .' "srcType":1,'."\n"
+ .' "src":"28755",'."\n"
+ .' "actionType":"OPEN_APP",'."\n"
+ .' "action":{'."\n"
+ .' "target":"https://s.tb.cn/c.KxzZ",'."\n"
+ .' "merchantName":"测试-图文模板",'."\n"
+ .' "packageName":['."\n"
+ .' "com.taobao.taobao"],'."\n"
+ .' "floorUrl":"https://s.tb.cn/c.KxzZ"'."\n"
+ .' },'."\n"
+ .' "positionNumber":1'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "type":"TEXT",'."\n"
+ .' "content":"测试- BENZ AMG 2020 试驾邀请",'."\n"
+ .' "isTextTitle":true,'."\n"
+ .' "positionNumber":2'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "type":"TEXT",'."\n"
+ .' "content":"测试-梅赛德斯-奔驰,创新激情永不灭。作为汽车 XXXX",'."\n"
+ .' "isTextTitle":false,'."\n"
+ .' "positionNumber":3'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "type":"BUTTON",'."\n"
+ .' "content":"预约试驾",'."\n"
+ .' "actionType":"OPEN_BROWSER",'."\n"
+ .' "action":{'."\n"
+ .' "target":"https://www.mercedes-benz.com.cn",'."\n"
+ .' "merchantName":"测试-正在跳转梅赛德斯-奔驰"'."\n"
+ .'},'."\n"
+ .' "positionNumber":4'."\n"
+ .' }]'."\n"
+ .' }]'."\n"
+ .' },'."\n"
+ .' "cardSignName":"阿里云",'."\n"
+ .' "cardType":5,'."\n"
+ .' "companyName": "投放企业名称"'."\n"
+ .'}', 'title' => ''],
],
[
- 'name' => 'LegalPersonName',
+ 'name' => 'Memo',
'in' => 'query',
- 'schema' => [
- 'title' => '法人姓名',
- 'description' => '法人姓名',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
+ 'schema' => ['description' => 'A description of the template.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => '图文类模板', 'title' => ''],
],
[
- 'name' => 'LegalPersonIDCardNo',
+ 'name' => 'Factorys',
'in' => 'query',
+ 'schema' => ['description' => 'The vendors to which the template will be submitted. Valid values:'."\n"
+ ."\n"
+ .'- **HuaWei**: Huawei'."\n"
+ ."\n"
+ .'- **XiaoMi**: Xiaomi'."\n"
+ ."\n"
+ .'- **OPPO**: OPPO'."\n"
+ ."\n"
+ .'- **VIVO**: VIVO'."\n"
+ ."\n"
+ .'- **MEIZU**: MEIZU'."\n"
+ ."\n"
+ .'- **HONOR**: HONOR'."\n"
+ ."\n"
+ .'> If you do not specify this parameter, the system automatically submits the template to all supported mobile phone vendors.', 'type' => 'string', 'required' => false, 'example' => '["HuaWei","XiaoMi"] ', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '法人身份证号码',
- 'description' => '法人身份证号码',
- 'type' => 'string',
- 'required' => false,
- 'example' => ' '."\n"
- .'511391********5123'."\n",
+ 'description' => 'The data object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The request status code. Valid values:'."\n"
+ ."\n"
+ .'- OK: The request was successful.'."\n"
+ ."\n"
+ .'- For a list of other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The data returned by the operation.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TemplateCode' => ['description' => 'The code for the card SMS template. You can view the **Template Code** on the **Card SMS** > [template management](https://dysms.console.aliyun.com/domestic/card) page in the console.'."\n"
+ ."\n"
+ .'> The card SMS template must be approved before it can be used.', 'type' => 'string', 'example' => 'CARD_SMS_2****', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'LegalPersonIdCardEffTime',
- 'in' => 'query',
- 'schema' => [
- 'title' => '法人身份证有效期,格式示例2023-01-01~2033-01-01',
- 'description' => '法人身份证有效期,格式示例2023-01-01~2033-01-01',
- 'type' => 'string',
- 'required' => false,
- 'example' => '2023-01-01~2033-01-01',
+ ],
+ 'errorCodes' => [
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"TemplateCode\\": \\"CARD_SMS_2****\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'CreateCardSmsTemplate',
+ 'description' => '- The card SMS feature is currently available by invitation only. To enable this feature, contact your Alibaba Cloud business manager or our [pre-sales consultation](https://help.aliyun.com/document_detail/464625.html?spm=a2c4g.11186623.0.0.213273d4Xe6UEu#section-81n-72q-ybm) team.'."\n"
+ ."\n"
+ .'- This operation saves a card SMS template, submits it to mobile phone vendors for review, and returns a template code.'."\n"
+ ."\n"
+ .'- If a card SMS template contains a type or event that a vendor does not support, the system does not submit the template to that vendor for review. For more information, see [Supported template types by vendor](~~434611~~).'."\n"
+ ."\n"
+ .'- For more examples of card SMS templates, see [Card SMS template examples](~~435361~~).'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ ."\n"
+ .'The QPS limit for a single user is 300. API calls that exceed this limit are throttled, which may impact your business. Plan your calls accordingly.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [
+ ['createdAt' => '2026-02-04T08:10:39.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-06T14:40:53.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-06T14:40:42.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-24T02:44:52.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-24T02:44:41.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCardSmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateCardSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'CreateDigitalSignOrder' => [
+ 'summary' => 'Creates an order to add, update, or delete a digital message signature.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'autoTest' => true, 'tenantRelevance' => 'tenant'],
+ 'parameters' => [
[
- 'name' => 'LegalPersonIDCardType',
+ 'name' => 'OrderType',
'in' => 'query',
'schema' => [
- 'title' => '法人身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
- 'description' => '法人身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
+ 'description' => 'The operation to perform on the signature. Valid values:'."\n"
+ ."\n"
+ .'- `UPDATE_DIGITALSMS_SIGN`: Update a signature.'."\n"
+ ."\n"
+ .'- `DELETE_DIGITALSMS_SIGN`: Delete a signature.'."\n"
+ ."\n"
+ .'- `CREATE_DIGITALSMS_SIGN`: Create a signature.',
+ 'enumValueTitles' => ['UPDATE_DIGITALSMS_SIGN' => 'Update', 'DELETE_DIGITALSMS_SIGN' => 'Delete', 'CREATE_DIGITALSMS_SIGN' => 'Create'],
'type' => 'string',
'required' => false,
- 'example' => 'identityCard',
+ 'example' => 'CREATE_DIGITALSMS_SIGN',
+ 'title' => '',
],
],
[
- 'name' => 'AdminIDCardPic',
+ 'name' => 'Submitter',
'in' => 'query',
- 'schema' => [
- 'title' => '经办人身份证照片人像面',
- 'description' => '经办人身份证照片人像面',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png'."\n",
- ],
+ 'schema' => ['description' => 'The ID of the user who submits the order.', 'type' => 'string', 'required' => false, 'example' => '110000001750080', 'title' => ''],
],
[
- 'name' => 'AdminIDCardFrontFace',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'title' => '经办人身份证照片国徽面',
- 'description' => '经办人身份证照片国徽面',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png'."\n",
- ],
+ 'schema' => ['description' => 'The signature name. This parameter is required for creating, updating, and deleting signatures.'."\n"
+ ."\n"
+ .'1. The name must be 2 to 16 characters in length.'."\n"
+ ."\n"
+ .'2. The name can contain Chinese characters, letters, and digits.'."\n"
+ ."\n"
+ .'- Special characters are not allowed, including $, &, %, #, @, !, ^, \\*, (, ), \\_, +, -, =, {, }, \\[, ], |, ;, :, \', ", <, >, ,, ., /, ?, \\~, and .'."\n"
+ ."\n"
+ .'- The name cannot be only letters.'."\n"
+ ."\n"
+ .'- The name cannot be only digits. Spaces are not allowed.'."\n"
+ ."\n"
+ .'- Emojis are not allowed.', 'type' => 'string', 'required' => false, 'example' => '阿里云商城', 'title' => ''],
],
[
- 'name' => 'AdminName',
+ 'name' => 'QualificationId',
'in' => 'query',
- 'schema' => [
- 'title' => '经办人姓名',
- 'description' => '经办人姓名',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值',
- ],
+ 'schema' => ['description' => 'The ID of the qualification.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '41', 'title' => ''],
],
[
- 'name' => 'AdminIDCardNo',
+ 'name' => 'QualificationVersion',
'in' => 'query',
- 'schema' => [
- 'title' => '经办人身份证号码',
- 'description' => '经办人身份证号码',
- 'type' => 'string',
- 'required' => false,
- 'example' => '511391********5123'."\n",
- ],
+ 'schema' => ['description' => 'The version of the qualification.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '49', 'title' => ''],
],
[
- 'name' => 'AdminIDCardExpDate',
+ 'name' => 'OrderContext',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'title' => '经办人身份证有效期,格式示例2023-01-01~2033-01-01',
- 'description' => '经办人身份证有效期,格式示例2023-01-01~2033-01-01',
- 'type' => 'string',
+ 'description' => 'The qualification information. This object is required when you create a signature, or when you update a signature\'s qualification information.'."\n"
+ ."\n"
+ .'- qualificationCompanyName: Company name. The name can be up to 150 characters long. It cannot consist of only digits or contain symbols other than the middle dot (·), Chinese brackets (【】), Chinese parentheses (()), English parentheses (()), and spaces.'."\n"
+ ."\n"
+ .'- `qualificationOrganizationCode`: The 18-character Unified Social Credit Identifier (USCI). It must be an 18-digit code or a code that consists of 18 uppercase or lowercase letters and digits.'."\n"
+ ."\n"
+ .'- `qualificationAdminName`: The name of the agent or legal representative. The name must be in Chinese.'."\n"
+ ."\n"
+ .'- `qualificationAdminIDCard`: The 18-digit ID card number of the agent. Only PRC ID cards are supported.'."\n"
+ ."\n"
+ .'- `qualificationLegalPersonName`: The name of the legal representative or agent.'."\n"
+ ."\n"
+ .'- `qualificationLegalPersonIDCard`: The 18-digit ID card number of the legal representative. Only PRC ID cards are supported.',
+ 'enumValueTitles' => [],
+ 'type' => 'object',
'required' => false,
- 'example' => '2023-01-01~2033-01-01'."\n"
- ."\n",
+ 'example' => '{'."\n"
+ .' "qualificationCompanyName": "阿里阿巴",'."\n"
+ .' "qualificationOrganizationCode": "91330106MA2A0XABCD",'."\n"
+ .' "qualificationLegalPersonName": "张三",'."\n"
+ .' "qualificationLegalPersonIDCard": "110105199001011234",'."\n"
+ .' "qualificationAdminName": "李四",'."\n"
+ .' "qualificationAdminIDCard": "11010519900101****"'."\n"
+ .'}',
+ 'title' => '',
],
],
[
- 'name' => 'AdminPhoneNo',
+ 'name' => 'SignIndustry',
'in' => 'query',
'schema' => [
- 'title' => '经办人手机号码',
- 'description' => '经办人手机号码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '137********',
+ 'description' => 'The industry type. This parameter is required when you create or update a signature. It is optional when you delete a signature. Valid values:'."\n"
+ ."\n"
+ .'- `0`: General (GENERAL)'."\n"
+ ."\n"
+ .'- `1`: E-commerce and retail (ECOMMERCE)',
+ 'enumValueTitles' => ['General (GENERAL)', 'E-commerce and retail (ECOMMERCE)'],
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '0',
+ 'title' => '',
],
],
[
- 'name' => 'CertifyCode',
+ 'name' => 'SignId',
'in' => 'query',
- 'schema' => [
- 'title' => '手机号验证码',
- 'description' => '手机号验证码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '1234',
- ],
+ 'schema' => ['description' => 'The unique ID of the signature.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '80', 'title' => ''],
],
[
- 'name' => 'AdminIDCardType',
+ 'name' => 'SignSource',
'in' => 'query',
'schema' => [
- 'title' => '管理员身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
- 'description' => '管理员身份证类型。identityCard:中国居民身份证;passport:护照;homeReturnPermit:港澳居民来往内地通行证;TaiwanCompatriotPermit:台湾居民来往大陆通行证;residencePermit:港澳台居民居住证";other:其他',
- 'type' => 'string',
+ 'description' => 'The signature source. This parameter is required when you create or update a signature. It is optional when you delete a signature. Valid values:'."\n"
+ ."\n"
+ .'- `0`: Enterprises and public institutions'."\n"
+ ."\n"
+ .'- `2`: App',
+ 'enumValueTitles' => ['Enterprises and public institutions', 2 => 'App', 5 => 'Brand name', 7 => 'E-commerce or flagship store'],
+ 'type' => 'integer',
+ 'format' => 'int64',
'required' => false,
- 'example' => 'identityCard',
+ 'example' => '0',
+ 'title' => '',
],
],
[
- 'name' => 'OtherFiles',
+ 'name' => 'ExtendMessage',
'in' => 'query',
- 'style' => 'json',
- 'schema' => [
- 'title' => '更多资料',
- 'description' => '更多资料',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'LicensePic' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456/111.png'."\n",
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- 'example' => '',
- ],
+ 'schema' => ['description' => 'Reserved for future use.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The response object.',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '10000****',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details about the access denial. This parameter is returned only if the RAM user is not authorized.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '2D0133B9-6C0D-0BAE-8161-1EEF9E2D4069', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'example', 'title' => ''],
+ 'Data' => ['description' => 'The returned data.'."\n"
+ ."\n"
+ .'- `signName`: The name of the signature.'."\n"
+ ."\n"
+ .'- `signOrderId`: The ID of the signature order.'."\n"
+ ."\n"
+ .'- `signCode`: The code of the signature.'."\n"
+ ."\n"
+ .'- `signId`: The ID of the signature.', 'type' => 'object', 'example' => '{\'signId\': \'2006746****\', \'signCode\': \'SIGN_100000184736042_174416475****_hpMd1\', \'signOrderId\': 2246979****, \'signName\': u\'\\u8d5b\\u745e\\u5a05\\u808c\\u80a4\\u7ba1\\u7406\'}', 'title' => ''],
+ 'Code' => ['description' => 'The status code.'."\n"
+ ."\n"
+ .'- If the request is successful, `OK` is returned.'."\n"
+ ."\n"
+ .'- For more information about other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
'Success' => [
- 'title' => '',
- 'description' => '',
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.',
+ 'enumValueTitles' => ['true' => 'Success', 'false' => 'Failure'],
'type' => 'boolean',
'example' => 'true',
+ 'title' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'QualificationNameNullError',
- 'errorMessage' => 'Qualification name cannot be empty.',
- ],
- [
- 'errorCode' => 'BusinessLicensePicsNullError',
- 'errorMessage' => 'Business license documents cannot be empty.',
- ],
- [
- 'errorCode' => 'OtherFileTypeError',
- 'errorMessage' => 'Invalid file format for other documents.',
- ],
- [
- 'errorCode' => 'QualificationNameAlreadyExist',
- 'errorMessage' => 'The qualification name already exists. Please modify and resubmit.',
- ],
- [
- 'errorCode' => 'QualificationNameNotMatchRegex',
- 'errorMessage' => 'Qualification names must be in Chinese, English, or alphanumeric combinations. Symbols or pure numbers are not supported.',
- ],
- [
- 'errorCode' => 'AdminIdcardTypeError',
- 'errorMessage' => 'Invalid administrator ID card type.',
- ],
- [
- 'errorCode' => 'BusinessLicensePicsFileError',
- 'errorMessage' => 'Invalid business license file format.',
- ],
- [
- 'errorCode' => 'BusinessLicenseTypeError',
- 'errorMessage' => 'Invalid business license type.',
- ],
- [
- 'errorCode' => 'LegalIdCardNoNullError',
- 'errorMessage' => 'Legal person\'s ID number cannot be empty.',
- ],
- [
- 'errorCode' => 'LegalPersonIdcardTypeError',
- 'errorMessage' => 'Invalid legal person ID card type.',
- ],
- [
- 'errorCode' => 'CompanyNameNullError',
- 'errorMessage' => 'Company name cannot be empty.',
- ],
- [
- 'errorCode' => 'CompanyTypeError',
- 'errorMessage' => 'Invalid company type.',
- ],
- [
- 'errorCode' => 'LegalIdCardNotMatchRegex',
- 'errorMessage' => 'Invalid legal person ID number format.',
- ],
- [
- 'errorCode' => 'LegalPersonNameNullError',
- 'errorMessage' => 'Legal person\'s name cannot be empty.',
- ],
- [
- 'errorCode' => 'OrganizationCodeNullError',
- 'errorMessage' => 'Unified Social Credit Code cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminIdcardFrontFaceFileError',
- 'errorMessage' => 'Invalid format for administrator\'s ID card national emblem photo.',
- ],
- [
- 'errorCode' => 'AdminIdcardFrontFaceNullError',
- 'errorMessage' => 'Administrator\'s ID card national emblem photo cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminIdcardPicsFileError',
- 'errorMessage' => 'Invalid format for administrator\'s ID card portrait photo.',
- ],
- [
- 'errorCode' => 'AdminIdcardPicsNullError',
- 'errorMessage' => 'Administrator\'s ID card portrait photo cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminNameNullError',
- 'errorMessage' => 'Administrator\'s name cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminIdcardExpdateNotMatchRegexError',
- 'errorMessage' => 'Invalid administrator ID card expiration time format.',
- ],
- [
- 'errorCode' => 'AdminIdcardNoNullError',
- 'errorMessage' => 'Administrator\'s ID number cannot be empty.',
- ],
- [
- 'errorCode' => 'AdminIdcardNotMatchRegex',
- 'errorMessage' => 'Invalid administrator ID number format.',
- ],
- [
- 'errorCode' => 'BusinessLicenseDateNotMatchRegexError',
- 'errorMessage' => 'Invalid business license expiration time format.',
- ],
- [
- 'errorCode' => 'LegalPersonIdcardEfftimeNotMatchRegexError',
- 'errorMessage' => 'Invalid legal person ID card expiration time format.',
- ],
- [
- 'errorCode' => 'AdminDateNotValid',
- 'errorMessage' => 'Current time is outside the administrator ID card validity period.',
- ],
- [
- 'errorCode' => 'BusinessLicenseDateNotValid',
- 'errorMessage' => 'Current time is outside the business license validity period.',
- ],
- [
- 'errorCode' => 'BusinessLicenseOssFileNotUploadError',
- 'errorMessage' => 'Business license file not uploaded.',
- ],
- [
- 'errorCode' => 'LegalDateNotValid',
- 'errorMessage' => 'Current time is outside the legal person ID card validity period.',
- ],
- [
- 'errorCode' => 'LegalFrontOssFileNotUploadError',
- 'errorMessage' => 'Legal person ID card national emblem photo not uploaded.',
- ],
- [
- 'errorCode' => 'AdminBackOssFileNotUploadError',
- 'errorMessage' => 'Administrator ID card portrait photo not uploaded.',
- ],
- [
- 'errorCode' => 'AdminFrontOssFileNotUploadError',
- 'errorMessage' => 'Administrator ID card national emblem photo not uploaded.',
- ],
- [
- 'errorCode' => 'CustNotExistError',
- 'errorMessage' => 'Customer\'s cloud communication information is invalid.',
- ],
- [
- 'errorCode' => 'GrayCustAccessError',
- 'errorMessage' => 'This customer is not authorized to use the OpenAPI. Please contact support for whitelisting.',
- ],
- [
- 'errorCode' => 'LegalBackOssFileNotUploadError',
- 'errorMessage' => 'Legal person ID card portrait photo not uploaded.',
- ],
- [
- 'errorCode' => 'OtherOssFileNotUploadError',
- 'errorMessage' => 'Other files not uploaded.',
- ],
- [
- 'errorCode' => 'CertifyCodeError',
- 'errorMessage' => 'SMS verification code is incorrect.',
- ],
- [
- 'errorCode' => 'NotEnterpriseCertifyCustCheckError',
- 'errorMessage' => 'Non-enterprise certified customers are not allowed to access.',
- ],
- [
- 'errorCode' => 'PhoneNoCertifyCodeNullError',
- 'errorMessage' => 'Phone number and verification code cannot be empty.',
- ],
- [
- 'errorCode' => 'SameQualificationGroupError',
- 'errorMessage' => 'A qualification with the same company and administrator information already exists.',
- ],
- [
- 'errorCode' => 'WorkOrderIdExpired',
- 'errorMessage' => 'Qualification details have changed. Please re-query the qualification list and resubmit.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedCompanyStateInvalid',
- 'errorMessage' => 'Four Elements Verification Failed: Company is not in normal operation.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedFourElementsError',
- 'errorMessage' => 'Four Elements Verification Failed: Authentication Failed.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedMismatch',
- 'errorMessage' => 'Four Elements Verification Failed: Mismatch between Legal Representative and Company Information.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedNoCompany',
- 'errorMessage' => 'Four Elements Verification Failed: Company Not Found.',
- ],
- [
- 'errorCode' => 'CompanyVerificationFailedNoLegalPerson',
- 'errorMessage' => 'Four Elements Verification Failed: Legal Representative Not Found.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"10000****\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Digital Message SMS Signature Management ',
+ 'description' => 'Creates, updates, or deletes a signature.',
+ 'requestParamsDescription' => 'The qualification information. This object is required when you create a signature, or when you update a signature\'s qualification information.'."\n"
+ ."\n"
+ .'Example in JSON format:'."\n"
+ .'`{ "qualificationCompanyName": "Aliaba", "qualificationOrganizationCode": "91330106MA2A0XABCD", "qualificationLegalPersonName": "Zhang San", "qualificationLegalPersonIDCard": "110105199001011234", "qualificationAdminName": "Li Si", "qualificationAdminIDCard": "1101051990010100000" }`'."\n"
+ ."\n"
+ .'- qualificationCompanyName The name of the company. The only supported symbols are the middle dot (·), Chinese brackets (【】), Chinese parentheses (()), English parentheses (()), and spaces. The value cannot consist of only digits, and its length cannot exceed 150 characters.'."\n"
+ ."\n"
+ .'- `qualificationOrganizationCode`: The 18-character USCI. It must be an 18-digit code or a code that consists of 18 uppercase or lowercase letters and digits.'."\n"
+ ."\n"
+ .'- `qualificationAdminName`: The name of the agent or legal representative. The name must be in Chinese.'."\n"
+ ."\n"
+ .'- `qualificationAdminIDCard`: The 18-digit ID card number of the agent. Only PRC ID cards are supported.'."\n"
+ ."\n"
+ .'- `qualificationLegalPersonName`: The name of the legal representative or agent.'."\n"
+ ."\n"
+ .'- `qualificationLegalPersonIDCard`: The 18-digit ID card number of the legal representative. Only PRC ID cards are supported.',
+ 'extraInfo' => 'After you commit a sign request, you can use the GetSmsSign API to query the sign filing status and details. You can also [configure receipt messages](https://dysmsnext.console.aliyun.com/general/audit). '."\n"
+ ."\n"
+ .'Core processing logic: '."\n"
+ ."\n"
+ .'1. Delete sign: When you delete a sign via the API, the operation synchronizes with the Short Message Service console, and the sign record is removed from the page. If any carrier has a “filing in progress” status for this sign, deletion is not supported. Please wait for the result before retrying. '."\n"
+ .'2. Associated template invalidation: The system automatically queries all SMS templates associated with this sign and updates their status in batch to “Out Of Effect.” '."\n"
+ .'3. Mark reason: In the status change records of the associated templates, the reason for invalidation is appended as: “The sign associated with the template was deleted.” '."\n"
+ ."\n"
+ .'● Limits and notes: '."\n"
+ ."\n"
+ .'1. Permission: Only the Alibaba Cloud account that owns the sign can perform the delete operation. '."\n"
+ .'2. Irreversible: Deleted signs cannot be recovered. If you need to use the sign again, you must submit a new request. '."\n"
+ .'3. Sending impact: After the sign is deleted and its associated templates become invalid, all text message sending requests based on these templates will fail. You must confirm the impact scope before performing this operation.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"None\\",\\n \\"RequestId\\": \\"2D0133B9-6C0D-0BAE-8161-1EEF9E2D4069\\",\\n \\"Message\\": \\"example\\",\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
- 'DeleteSmsQualification' => [
- 'summary' => '删除资质对客openAPI',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'CreateDigitalSmsTemplate' => [
+ 'summary' => 'Creates a digital SMS template.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
+ 'operationType' => 'write',
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '264874',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '102441',
+ 'abilityTreeNodes' => ['FEATUREdysms0VSOON'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'QualificationGroupId',
+ 'name' => 'TemplateName',
'in' => 'query',
- 'schema' => [
- 'title' => '资质组ID',
- 'description' => '资质组ID',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '10000****',
- ],
+ 'schema' => ['description' => 'The template name. The name can contain up to 20 characters.', 'type' => 'string', 'required' => true, 'example' => '****模板', 'title' => ''],
],
[
- 'name' => 'OrderId',
+ 'name' => 'Remark',
'in' => 'query',
+ 'schema' => ['description' => 'The application description. Describe your business use case for the template.', 'type' => 'string', 'required' => true, 'example' => '***业务需要', 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateContents',
+ 'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'title' => '工单ID',
- 'description' => '工单ID',
- 'type' => 'integer',
- 'format' => 'int64',
+ 'maxItems' => 10,
+ 'description' => 'An array of objects that define the template content.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The template content.',
+ 'type' => 'object',
+ 'properties' => [
+ 'FileContents' => ['description' => 'The file content, converted to a Base64 string. The file must be UTF-8 encoded before the Base64 conversion.', 'type' => 'string', 'required' => false, 'example' => '字符', 'title' => ''],
+ 'FileSuffix' => ['description' => 'The file suffix. Supported formats are `txt` for text; `gif`, `jpg`, and `png` for images; `mp3` for audio; and `mp4` for video. You can upload only one video file per template.', 'type' => 'string', 'required' => false, 'example' => 'txt', 'title' => ''],
+ 'FileName' => ['description' => 'The file name without the extension.', 'type' => 'string', 'required' => false, 'example' => 'file-1', 'title' => ''],
+ 'FileSize' => ['description' => 'The file size, in bytes.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1840901', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
'required' => true,
- 'example' => '2001****',
+ 'title' => '',
+ 'example' => '',
],
],
+ [
+ 'name' => 'SignName',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => ['description' => 'The signature.', 'type' => 'string', 'required' => false, 'example' => '签名', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => '',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
- ],
+ 'Code' => ['description' => 'The status code of the request. A value of `OK` indicates a successful request.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The response message. `success` indicates a successful request. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID. This unique identifier is generated by Alibaba Cloud and can be used to troubleshoot issues.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'TemplateCode' => ['description' => 'The template code.', 'type' => 'string', 'example' => 'DIGITAL_SMS_0001', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'QualificationNotExist',
- 'errorMessage' => 'Qualification does not exist.',
- ],
- [
- 'errorCode' => 'BindSignDeleteFailed',
- 'errorMessage' => 'The qualification is bound to a signature and cannot be deleted temporarily.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Digital SMS Template Creation ',
+ 'description' => 'Use this operation to create a reusable template for your digital SMS messages.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": true,\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"TemplateCode\\": \\"DIGITAL_SMS_0001\\"\\n}","type":"json"}]',
],
- 'RequiredPhoneCode' => [
- 'summary' => '验证手机验证码',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'CreateSmsAppIcpRecord' => [
+ 'summary' => 'The process for using a live app as a signature source has changed. If you use an app as the signature source, you must call this operation to create an ICP filing record for it.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '264879',
- 'abilityTreeNodes' => [
- 'FEATUREdysms59DLHO',
- ],
+ 'abilityTreeCode' => '289841',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'PhoneNo',
+ 'name' => 'AppIcpRecordPic',
'in' => 'query',
- 'schema' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => '137****1234',
- ],
+ 'schema' => ['title' => 'OSS key of the APP-ICP filing details screenshot ', 'description' => 'The fileKey for the screenshot of your app\'s ICP filing details.'."\n"
+ ."\n"
+ .'1. To look up your ICP filing, go to the [MIIT service platform](https://beian.miit.gov.cn/#/Integrated/recordQuery), search for your filing, and open its details page.'."\n"
+ ."\n"
+ .'2. The ICP filing screenshot must be uploaded to OSS and meet the following requirements:'."\n"
+ ."\n"
+ .'- The filename cannot contain Chinese characters or special characters.'."\n"
+ ."\n"
+ .'- The file must be an image in `jpg`, `png`, `gif`, or `jpeg` format. The file size cannot exceed 5 MB.'."\n"
+ ."\n"
+ .'- The screenshot must show the full URL.'."\n"
+ ."\n"
+ .'- For **Record Type**, select "APP".'."\n"
+ ."\n"
+ .'- The **principal unit name** must be identical to the company or institution name on the qualification documents associated with the signature.'."\n"
+ ."\n"
+ .'- The screenshot must clearly show the complete ICP record/license number.'."\n"
+ ."\n"
+ .'- The **service name** must be identical to the **signature name**.'."\n"
+ ."\n"
+ .'3. To obtain the fileKey, see [Upload files through OSS](~~2833114~~).', 'type' => 'string', 'required' => true, 'example' => ' '."\n"
+ .'123456/test1719383196031.jpg'."\n"],
],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '90E63D28-E31D-1EB2-8939-A9486641****',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '-',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
- ],
- ],
- ],
+ [
+ 'name' => 'AppServiceName',
+ 'in' => 'query',
+ 'schema' => ['title' => 'App service name', 'description' => 'The service name from your ICP filing. The name must not exceed 15 characters.', 'type' => 'string', 'required' => true, 'example' => '阿里云'],
],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"90E63D28-E31D-1EB2-8939-A9486641****\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"-\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- ],
- 'ValidPhoneCode' => [
- 'summary' => '发送手机验证码',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
[
- 'AK' => [],
+ 'name' => 'AppPrincipalUnitName',
+ 'in' => 'query',
+ 'schema' => ['title' => 'Sponsoring Organization Name ', 'description' => 'The principal unit name from your ICP filing. The name must not exceed 50 characters.', 'type' => 'string', 'required' => true, 'example' => '阿里云计算有限公司'],
],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '264877',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
+ [
+ 'name' => 'AppIcpLicenseNumber',
+ 'in' => 'query',
+ 'schema' => ['title' => 'ICP Filing/License Number ', 'description' => 'The ICP record/license number. The number must not exceed 15 characters.', 'type' => 'string', 'required' => true, 'example' => '浙B2-20080101'],
],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
- ],
- 'parameters' => [
[
- 'name' => 'PhoneNo',
+ 'name' => 'AppApprovalDate',
'in' => 'query',
- 'schema' => [
- 'title' => '手机号',
- 'description' => '手机号',
- 'type' => 'string',
- 'required' => true,
- 'example' => '137****1234',
- ],
+ 'schema' => ['title' => 'Review pass date, for example, 2025-09-01', 'description' => 'The ICP filing approval date.', 'type' => 'string', 'required' => true, 'example' => '2025-05-22'],
],
[
- 'name' => 'CertifyCode',
+ 'name' => 'Domain',
'in' => 'query',
- 'schema' => [
- 'title' => '验证码',
- 'description' => '验证码',
- 'type' => 'string',
- 'required' => true,
- 'example' => '1234',
- ],
+ 'schema' => ['title' => 'Link to the APP Application Store', 'description' => 'The app store link.'."\n"
+ ."\n"
+ .'> - The link must start with `http://` or `https://`.', 'type' => 'string', 'required' => true, 'example' => 'https://apps.apple.com/cn/app/阿里云/id981011420'],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => '',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '90E63D28-E31D-1EB2-8939-A9486641****'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
- ],
+ 'AccessDeniedDetail' => ['description' => 'Details about the access denial.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID. Alibaba Cloud generates this unique identifier for each request. Use this ID to troubleshoot issues.', 'type' => 'string', 'title' => '', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990'."\n"],
+ 'Message' => ['description' => 'The message returned with the request status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Data' => ['description' => 'The ID of the app\'s ICP filing record.', 'type' => 'string', 'title' => '', 'example' => '10000*******'],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- A value of `OK` indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see the [error code list](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **`true`**'."\n"
+ ."\n"
+ .'- **`false`**', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"90E63D28-E31D-1EB2-8939-A9486641****\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": true,\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'AppIcpRecordOssFileNotUploadError', 'errorMessage' => 'The APP-ICP record screenshot file is not uploaded.', 'description' => ''],
+ ['errorCode' => 'AppIcpRecordDateNotMatchRegex', 'errorMessage' => 'The format of the APP-ICP record approval date is incorrect.', 'description' => ''],
+ ['errorCode' => 'AppPrincipalUnitNameNotMatchRegex', 'errorMessage' => 'The principal unit name of the APP cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AppPrincipalUnitNameOverLimit', 'errorMessage' => 'The principal unit name of the APP exceeds the length limit.', 'description' => ''],
+ ['errorCode' => 'AppIcpLicenseNumberNotMatchRegex', 'errorMessage' => 'The ICP record/license number cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AppIcpLicenseNumberOverLimit', 'errorMessage' => 'The ICP record/license number exceeds the length limit.', 'description' => ''],
+ ['errorCode' => 'AppDomainNotMatchRegex', 'errorMessage' => 'The APP app store link cannot be empty and must start with http:// or https://.', 'description' => ''],
+ ['errorCode' => 'AppDomainOverLimit', 'errorMessage' => 'The APP app store link exceeds the length limit.', 'description' => ''],
+ ['errorCode' => 'AppApprovalDateNotValid', 'errorMessage' => 'The validity period of the APP-ICP record is not within the valid range.', 'description' => ''],
+ ['errorCode' => 'AppIcpRecordPicsFileError', 'errorMessage' => 'The format of the APP-ICP record screenshot file is incorrect.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Create an ICP Filing Entity ',
+ 'description' => '><notice>To use a **live app** as a signature source, you must now provide its ICP filing information.></notice> This requires you to upload a screenshot of the app\'s ICP filing.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"10000*******\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
'CreateSmsAuthorizationLetter' => [
- 'summary' => '创建委托授权书',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'summary' => 'If the qualification is intended for use by a third party or the requested signature involves third-party rights, you must obtain third-party authorization and create an authorization letter before submitting the application.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -2175,42 +1448,32 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
- 'riskType' => 'none',
- 'chargeType' => 'free',
'abilityTreeCode' => '264691',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
'name' => 'AuthorizationLetterPic',
'in' => 'query',
- 'schema' => [
- 'title' => '上传oss的委托授权书图片标识',
- 'description' => '上传oss的委托授权书图片标识',
- 'type' => 'string',
- 'required' => true,
- 'example' => '1000088*****/1234qfac.png',
- ],
+ 'schema' => ['title' => '', 'description' => 'The fileKey of the authorization letter.'."\n"
+ ."\n"
+ .'1. The authorization letter file uploaded to OSS. Download the [Authorization Letter Template](https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250414/bvpcmo/%E6%8E%88%E6%9D%83%E5%A7%94%E6%89%98%E4%B9%A6%E6%A8%A1%E7%89%88.doc), then fill it out and stamp it according to the [specifications](~~56741~~) before uploading. File upload requirements:'."\n"
+ .'- The name of the file to be uploaded cannot contain Chinese characters or special characters.'."\n"
+ .'- Only images in JPG, PNG, GIF, or JPEG format are supported, and the image must not exceed 5 MB.'."\n"
+ ."\n"
+ .'2. To obtain the fileKey, see [Upload files through OSS](~~2833114~~).', 'type' => 'string', 'required' => true, 'example' => '123456/test1719383196031.jpg'],
],
[
'name' => 'SignList',
'in' => 'query',
'style' => 'json',
'schema' => [
- 'title' => '委托授权签名列表,签名数量限制100个以内',
- 'description' => '委托授权签名列表,签名数量限制100个以内',
+ 'title' => '',
+ 'description' => 'The list of authorized signatures. The number of signatures cannot exceed 100.'."\n"
+ ."\n"
+ .'> We recommend that you authorize all signatures that may be used at once in the authorization letter. This prevents subsequent signature applications from falling outside the scope of the authorization letter, which would cause review failure and require you to supplement the authorization letter.',
'type' => 'array',
- 'items' => [
- 'title' => '签名内容,签名长度限2-12个字符,不支持包含“测试”“test”【】[] 、,。括号和空格等特殊字符',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '',
- ],
+ 'items' => ['title' => '', 'description' => 'The SMS signature name. Comply with the [Signature Specifications](~~108076~~). The length is limited to 2 to 12 characters. Words such as "测试" and "test" are not supported. Symbols such as 【】, (), and [] cannot be added. Special characters such as `、, ,, 。, and spaces` are not supported.', 'type' => 'string', 'required' => false, 'example' => '菜鸟网络'],
'required' => true,
'example' => '',
],
@@ -2218,57 +1481,29 @@
[
'name' => 'AuthorizationLetterExpDate',
'in' => 'query',
- 'schema' => [
- 'title' => '委托授权书有效期',
- 'description' => '委托授权书有效期',
- 'type' => 'string',
- 'required' => true,
- 'example' => '2023-01-01~2026-01-01',
- ],
+ 'schema' => ['title' => '', 'description' => 'The validity period of the authorization letter. Format: `YYYY-MM-DD~YYYY-MM-DD`.'."\n"
+ ."\n"
+ .'> The recommended validity period is 1 to 3 years. Set a reasonable time period and avoid making the validity period too long or too short.', 'type' => 'string', 'required' => true, 'example' => '2023-01-01~2026-01-01'],
],
[
'name' => 'Authorization',
'in' => 'query',
- 'schema' => [
- 'title' => '授权方,授权方命名长度不超过1000个字符,暂不支持包含除中点(·)、空格、中文括号【】、英文括号()外的任何符号或纯数字输入',
- 'description' => '授权方,授权方命名长度不超过1000个字符,暂不支持包含除中点(·)、空格、中文括号【】、英文括号()外的任何符号或纯数字输入',
- 'type' => 'string',
- 'required' => true,
- 'example' => '阿里云有限公司',
- ],
+ 'schema' => ['title' => '', 'description' => 'The authorizing party, that is, the owner of the signature. Only the middle dot `·`, Chinese `【】()`, English `()`, and spaces are supported. Other symbols or purely numeric input are not allowed. The length cannot exceed 150 characters.', 'type' => 'string', 'required' => true, 'example' => '菜鸟网络科技有限公司'],
],
[
'name' => 'OrganizationCode',
'in' => 'query',
- 'schema' => [
- 'title' => '授权方社会统一信用代码,长度不超过150个字符',
- 'description' => '授权方社会统一信用代码,长度不超过150个字符',
- 'type' => 'string',
- 'required' => true,
- 'example' => '9****************A',
- ],
+ 'schema' => ['title' => '', 'description' => 'The unified social credit code of the authorizing party. The length cannot exceed 150 characters. The credit code must be consistent with the unified social credit code field in the qualification information bound to the signature. Otherwise, the signature creation will fail.', 'type' => 'string', 'required' => true, 'example' => '9****************A'],
],
[
'name' => 'ProxyAuthorization',
'in' => 'query',
- 'schema' => [
- 'title' => '被授权方,被授权方命名长度不超过1000个字符,暂不支持包含除中点(·)、空格、中文括号【】、英文括号()外的任何符号或纯数字输入',
- 'description' => '被授权方,被授权方命名长度不超过1000个字符,暂不支持包含除中点(·)、空格、中文括号【】、英文括号()外的任何符号或纯数字输入',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'xxx公司',
- ],
+ 'schema' => ['title' => '', 'description' => 'The authorized party, that is, the signature applicant. Only the middle dot `·`, Chinese `【】()`, English `()`, and spaces are supported. Other symbols or purely numeric input are not allowed. The length cannot exceed 150 characters.', 'type' => 'string', 'required' => true, 'example' => '支付宝(中国)网络技术有限公司'],
],
[
'name' => 'AuthorizationLetterName',
'in' => 'query',
- 'schema' => [
- 'title' => '委托授权书命名非空,不超过100个字符,支持中文、英文或与数字组合进行命名,暂不支持任何符号或纯数字输入',
- 'description' => '委托授权书命名非空,不超过100个字符,支持中文、英文或与数字组合进行命名,暂不支持任何符号或纯数字输入',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'xxx公司授权书',
- ],
+ 'schema' => ['title' => '', 'description' => 'The name of the authorization letter. The name cannot be the same as any of your other authorization letters. Only Chinese characters, English characters, or a combination with numbers are supported. Symbols or purely numeric input are not allowed. The length cannot exceed 100 characters.', 'type' => 'string', 'required' => true, 'example' => '菜鸟公司授权书'],
],
],
'responses' => [
@@ -2276,339 +1511,67 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '10000****',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The detailed information about the access denial. This field is returned only when RAM verification fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the current request, which is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate issues.', 'type' => 'string', 'title' => '', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990'."\n"],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Data' => ['description' => 'The ID of the authorization letter.', 'type' => 'string', 'title' => '', 'example' => '10000****'],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- OK indicates that the request was successful.'."\n"
+ .'- For other error codes, see the error code list in this chapter or [API Error Codes](~~101346~~) of this product.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Success' => [
- 'title' => '',
- 'description' => '',
+ 'description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ .'- **false**: The call failed.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
+ 'title' => '',
'example' => 'true',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'AuthorizationLetterNameRepeat',
- 'errorMessage' => 'The authorization letter name is duplicated.',
- ],
- [
- 'errorCode' => 'AuthorizationLetterDateNotMatchRegex',
- 'errorMessage' => 'The format of the authorization letter\'s effective and expiry date is incorrect.',
- ],
- [
- 'errorCode' => 'AuthorizationLetterDateNotValid',
- 'errorMessage' => 'The current time is not within the validity period of the authorization letter.',
- ],
- [
- 'errorCode' => 'AuthorizationLetterNameNotMatchRegex',
- 'errorMessage' => 'The authorization letter name cannot be empty and must consist of Chinese, English characters or a combination with numbers, symbols or purely numeric input are not supported.',
- ],
- [
- 'errorCode' => 'AuthorizationLetterNameOverLimit',
- 'errorMessage' => 'The authorization letter name exceeds the 100-character length limit.',
- ],
- [
- 'errorCode' => 'AuthorizationNotMatchRegex',
- 'errorMessage' => 'The authorizer name cannot be empty and currently does not support any symbols except middle dots, spaces, Chinese brackets, and English parentheses or purely numeric input.',
- ],
- [
- 'errorCode' => 'AuthorizationOssFileNotUploadError',
- 'errorMessage' => 'The authorization letter file has not been uploaded.',
- ],
- [
- 'errorCode' => 'AuthorizationOverLimit',
- 'errorMessage' => 'The authorizer exceeds the 1000-character length limit.',
- ],
- [
- 'errorCode' => 'ProxyAuthorizationOverLimit',
- 'errorMessage' => 'The authorized party exceeds the 1000-character length limit.',
- ],
- [
- 'errorCode' => 'ProxyAuthorizationNotMatchRegex',
- 'errorMessage' => 'The authorized party name currently does not support any symbols except middle dots, spaces, Chinese brackets, and English parentheses or purely numeric input.',
- ],
- [
- 'errorCode' => 'SignNumOverLimit',
- 'errorMessage' => 'The signature exceeds the limit of 100 entries.',
- ],
- [
- 'errorCode' => 'SignNotMatchRegex',
- 'errorMessage' => 'The signature length is limited to 2-12 characters and does not support some special characters.',
- ],
- [
- 'errorCode' => 'OrganizationCodeOverLimit',
- 'errorMessage' => 'The organization code is limited to 150 characters.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
+ ['errorCode' => 'AuthorizationLetterNameRepeat', 'errorMessage' => 'The authorization letter name is duplicated.', 'description' => ''],
+ ['errorCode' => 'AuthorizationLetterDateNotMatchRegex', 'errorMessage' => 'The format of the authorization letter\'s effective and expiry date is incorrect.', 'description' => ''],
+ ['errorCode' => 'AuthorizationLetterDateNotValid', 'errorMessage' => 'The current time is not within the validity period of the authorization letter.', 'description' => ''],
+ ['errorCode' => 'AuthorizationLetterNameNotMatchRegex', 'errorMessage' => 'The authorization letter name cannot be empty and must consist of Chinese, English characters or a combination with numbers, symbols or purely numeric input are not supported.', 'description' => ''],
+ ['errorCode' => 'AuthorizationLetterNameOverLimit', 'errorMessage' => 'The authorization letter name exceeds the 100-character length limit.', 'description' => ''],
+ ['errorCode' => 'AuthorizationNotMatchRegex', 'errorMessage' => 'The authorizer name cannot be empty and currently does not support any symbols except middle dots, spaces, Chinese brackets, and English parentheses or purely numeric input.', 'description' => ''],
+ ['errorCode' => 'AuthorizationOssFileNotUploadError', 'errorMessage' => 'The authorization letter file has not been uploaded.', 'description' => ''],
+ ['errorCode' => 'AuthorizationOverLimit', 'errorMessage' => 'The authorizer exceeds the 1000-character length limit.', 'description' => ''],
+ ['errorCode' => 'ProxyAuthorizationOverLimit', 'errorMessage' => 'The authorized party exceeds the 1000-character length limit.', 'description' => ''],
+ ['errorCode' => 'ProxyAuthorizationNotMatchRegex', 'errorMessage' => 'The authorized party name currently does not support any symbols except middle dots, spaces, Chinese brackets, and English parentheses or purely numeric input.', 'description' => ''],
+ ['errorCode' => 'SignNumOverLimit', 'errorMessage' => 'The signature exceeds the limit of 100 entries.', 'description' => ''],
+ ['errorCode' => 'SignNotMatchRegex', 'errorMessage' => 'The signature length is limited to 2-12 characters and does not support some special characters.', 'description' => ''],
+ ['errorCode' => 'OrganizationCodeOverLimit', 'errorMessage' => 'The organization code is limited to 150 characters.', 'description' => 'Social credit code is not allowed to exceed 150 characters'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"10000****\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- ],
- 'QuerySmsAuthorizationLetter' => [
- 'summary' => '查询委托授权书',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '264690',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
- ],
- 'parameters' => [
- [
- 'name' => 'AuthorizationLetterIdList',
- 'in' => 'query',
- 'style' => 'json',
- 'schema' => [
- 'title' => '委托授权书id列表',
- 'description' => '委托授权书id列表',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '10000*****',
- ],
- 'required' => false,
- 'example' => '',
- ],
- ],
- [
- 'name' => 'SignName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '签名名称(支持命中签名范围查询)',
- 'description' => '签名名称(支持命中签名范围查询)',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
- ],
- [
- 'name' => 'OrganizationCode',
- 'in' => 'query',
- 'schema' => [
- 'title' => '授权方社会统一信用代码',
- 'description' => '授权方社会统一信用代码',
- 'type' => 'string',
- 'required' => false,
- 'example' => '9****************A',
- ],
- ],
- [
- 'name' => 'State',
- 'in' => 'query',
- 'schema' => [
- 'title' => '授权书审核状态,INT:审核中,PASSED:审核通过',
- 'description' => '授权书审核状态,INT:审核中,PASSED:审核通过',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'INT' => '',
- 'PASSED' => '',
- ],
- 'example' => 'PASSED',
- ],
- ],
- [
- 'name' => 'Status',
- 'in' => 'query',
- 'schema' => [
- 'title' => '授权书可用状态,VALID可用,INVALID不可用',
- 'description' => '授权书可用状态,VALID可用,INVALID不可用',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'VALID' => '',
- 'INVALID' => '',
- ],
- 'example' => 'VALID',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071D',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Authorization' => [
- 'title' => '委托授权方',
- 'description' => '委托授权方',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'Status' => [
- 'title' => '委托授权书可用状态(可用VALID/不可用INVALID)',
- 'description' => '委托授权书可用状态(可用VALID/不可用INVALID)',
- 'type' => 'string',
- 'example' => 'VALID',
- ],
- 'SignScope' => [
- 'title' => '委托授权签名范围',
- 'description' => '委托授权签名范围',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- 'State' => [
- 'title' => '委托授权书审核状态(初始化INT/审核通过PASSED)',
- 'description' => '委托授权书审核状态(初始化INT/审核通过PASSED)',
- 'type' => 'string',
- 'example' => 'PASSED',
- ],
- 'AuthorizationLetterExpDate' => [
- 'title' => '委托授权书有效期',
- 'description' => '委托授权书有效期',
- 'type' => 'string',
- 'example' => '2023-01-01~2026-01-01',
- ],
- 'AuthorizationLetterPic' => [
- 'title' => '委托授权书图片地址',
- 'description' => '委托授权书图片地址',
- 'type' => 'string',
- 'example' => '1000045****/111.png',
- ],
- 'OrganizationCode' => [
- 'title' => '授权方统一社会信用代码',
- 'description' => '授权方统一社会信用代码',
- 'type' => 'string',
- 'example' => '9****************A',
- ],
- 'ProxyAuthorization' => [
- 'title' => '被委托授权方',
- 'description' => '被委托授权方',
- 'type' => 'string',
- 'example' => '示例值示例值示例值',
- ],
- 'AuthorizationLetterId' => [
- 'title' => '委托授权书id',
- 'description' => '委托授权书id',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '10000******',
- ],
- 'AuthorizationLetterName' => [
- 'title' => '委托授权书命名',
- 'description' => '委托授权书命名',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- ],
- ],
- 'example' => '',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
- 'example' => 'true',
- ],
- ],
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071D\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": [\\n {\\n \\"Authorization\\": \\"菜鸟网络科技有限公司\\",\\n \\"Status\\": \\"VALID\\",\\n \\"SignScope\\": \\"菜鸟网络、菜鸟驿站、菜鸟裹裹\\",\\n \\"State\\": \\"PASSED\\",\\n \\"AuthorizationLetterExpDate\\": \\"2023-01-01~2026-01-01\\",\\n \\"AuthorizationLetterPic\\": \\"1000045****/111.png\\",\\n \\"OrganizationCode\\": \\"9****************A\\",\\n \\"ProxyAuthorization\\": \\"支付宝(中国)网络技术有限公司\\",\\n \\"AuthorizationLetterId\\": 0,\\n \\"AuthorizationLetterName\\": \\"菜鸟公司授权书\\"\\n }\\n ],\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Create an Authorization Letter',
+ 'description' => '- Before use, please read the [Authorization Letter Specifications](~~56741~~). Download the [Authorization Letter Template](https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250414/bvpcmo/%E6%8E%88%E6%9D%83%E5%A7%94%E6%89%98%E4%B9%A6%E6%A8%A1%E7%89%88.doc), fill it out and stamp it according to the specifications, and then upload it.'."\n"
+ .'- The authorization letter you create can be used when applying for SMS qualifications or SMS signatures. If your qualification or signature is intended for use by a third party, you must create and submit an authorization letter.'."\n"
+ .'- After creating an authorization letter, you can call [QuerySmsAuthorizationLetter](~~QuerySmsAuthorizationLetter~~) to query the details of the created authorization letter. Authorization letter information created through the API is synchronized to the Short Message Service console.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
],
'CreateSmsSign' => [
- 'summary' => 'Create SMS Signature',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'An SMS signature identifies the sender of an SMS message. Before sending SMS messages, you must apply for a signature and a template. The system prepends the approved SMS signature to the message content and sends them together to the recipient.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -2621,174 +1584,119 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '218492',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'Signature name. Please adhere to the [Signature Specifications](https://help.aliyun.com/zh/sms/user-guide/signature-specifications-1?spm=a2c4g.11186623.0.0.4f9710fder2gR7#section-0p8-qn8-mmy).'."\n"
- ."\n"
- .'> - Signature names are case-insensitive; e.g., 【Aliyun Communication】 and 【aliyun communication】 are considered identical.'."\n"
- .'> - If your verification code signature and general signature names are the same, the system defaults to using the general signature for sending SMS messages.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'Aliyun',
- ],
+ 'schema' => ['description' => 'The signature name. The signature name must comply with the [signature specifications](~~108076#section-0p8-qn8-mmy~~):'."\n"
+ ."\n"
+ .'- The name must be 2 to 12 characters in length and cannot contain words such as "test".'."\n"
+ ."\n"
+ .'- The name cannot contain symbols such as 【】, (), or []. Special characters such as commas, periods, and spaces are not supported.'."\n"
+ ."\n"
+ .'> - Signature names are case-sensitive. For example, 【Aliyun通信】 and 【aliyun通信】 are treated as two different signatures.'."\n"
+ .'> - If your verification code signature and general-purpose signature have the same name, the system uses the general-purpose signature to send SMS messages by default.', 'type' => 'string', 'required' => true, 'example' => '阿里云验证码', 'title' => ''],
],
[
'name' => 'Remark',
'in' => 'query',
- 'schema' => [
- 'description' => 'Explanation of the SMS signature scenario, with a maximum length of 200 characters.'."\n"
- ."\n"
- .'> The scenario explanation is one of the reference materials for signature review. Please provide a detailed description of the usage scenarios for your live services, along with links to verify these services such as website URLs with MIIT备案, app store display links, full names of public accounts or mini-programs, etc. For login scenarios, test account credentials are also required. A comprehensive application explanation enhances the efficiency of signature and template reviews. Refer to the **Application Scenario** column in the [Signature Source](https://help.aliyun.com/zh/sms/user-guide/signature-specifications-1?spm=a2c4g.11186623.0.i2#section-xup-k46-yi4) table for filling in SMS scenarios.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SMS signature for the login scenario using verification code.',
- 'maxLength' => 500,
- ],
+ 'schema' => ['description' => 'The description of the SMS signature scenario. This is one of the reference materials for signature review. The description can be up to 200 characters in length.'."\n"
+ .'> - You can describe the scenarios of your online service and provide links to the actual business website or marketplace download page.'."\n"
+ .'> - You can provide a complete SMS example that reflects your business scenario.'."\n"
+ .'> - You can provide the pass parameter content of variables and describe in detail the business scenario and the reason for selecting the variable property.'."\n"
+ .'> - If the signature involves a government or public institution, specify the landline phone number of the institution.'."\n"
+ ."\n"
+ .'A well-documented application description improves the review efficiency for signatures and templates. Failure to follow the specifications or leaving this field empty may affect the approval of your signature.', 'type' => 'string', 'required' => false, 'maxLength' => 500, 'example' => '登录场景使用验证码', 'title' => ''],
],
[
'name' => 'SignType',
'in' => 'query',
- 'schema' => [
- 'description' => 'Signature type. Values:'."\n"
- ."\n"
- .'- **0**: Verification Code'."\n"
- ."\n"
- .'- **1**: General (Default)'."\n"
- ."\n"
- .'> It is recommended to use the default value: **General**.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- 'default' => '1',
- ],
+ 'schema' => ['description' => 'The signature type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code.'."\n"
+ ."\n"
+ .'- **1**: general-purpose (default).'."\n"
+ ."\n"
+ .'We recommend that you use the default value: **general-purpose**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''],
],
[
'name' => 'MoreData',
'in' => 'query',
'style' => 'json',
'schema' => [
- 'description' => 'Additional information to supplement uploaded business proof documents or screenshots, which helps reviewers understand your business details.'."\n"
- ."\n"
- .'This parameter is optional; please fill it out based on your actual needs.',
+ 'description' => 'The supplementary materials. Upload business proof files or business screenshots to help reviewers understand your business details. See [Signature application materials](~~108076#section-xup-k46-yi4~~) and upload the relevant materials.',
'type' => 'array',
- 'items' => [
- 'description' => 'Information about files uploaded to OSS.'."\n"
- .'For file upload operations, refer to [Upload Files via OSS](https://help.aliyun.com/zh/sms/upload-files-through-oss).',
- 'type' => 'string',
- 'required' => false,
- 'example' => '10098689758*****/1234qwe.png',
- ],
+ 'items' => ['description' => 'The information about the file uploaded to OSS. For file upload operations, see [Upload files to OSS](~~2833114~~).', 'type' => 'string', 'required' => false, 'example' => '10098689758*****/123qwe.png', 'title' => ''],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
[
'name' => 'QualificationId',
'in' => 'query',
- 'schema' => [
- 'description' => 'Approved or under-review qualification ID.'."\n"
- ."\n"
- .'> - Before applying for an SMS signature, please first [Apply for Qualification](https://help.aliyun.com/zh/sms/user-guide/new-qualification?spm=a2c4g.11186623.0.0.718d187bbkpMRK).'."\n"
- .'> - You can view the qualification ID on the [Qualification Management](https://dysms.console.aliyun.com/domestic/text/qualification) page.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '8563**',
- ],
+ 'schema' => ['description' => 'The ID of the approved qualification.'."\n"
+ ."\n"
+ .'> - Before applying for an SMS signature, [apply for a qualification](~~2539801~~).'."\n"
+ .'> - You can view the qualification ID on the [Qualification Management](https://dysms.console.aliyun.com/domestic/text/qualification) page.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '8563**', 'title' => ''],
],
[
'name' => 'ApplySceneContent',
'in' => 'query',
- 'schema' => [
- 'description' => 'Application scenarios, instructions as follows:'."\n"
- .'- For registered websites, enter the domain name with HTTP or HTTPS that has been registered with the MIIT.'."\n"
- ."\n"
- .'- For launched apps, provide a display link from the app store with HTTP or HTTPS, ensuring the app is online.'."\n"
- ."\n"
- .'- For public accounts or mini-programs, input the full name, ensuring they are online.'."\n"
- ."\n"
- .'- For e-commerce platform store names, applicable only to enterprise users, provide a display link with HTTP or HTTPS for the store.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'http://www.aliyun.com/',
- ],
+ 'schema' => ['description' => '><notice> The signature source of launched apps is no longer supported.></notice>'."\n"
+ .'The app store link. If the signature source is a launched app, that is, SignSource is set to 2, specify a link that starts with http:// or https:// and make sure the app is already launched.', 'type' => 'string', 'required' => false, 'example' => 'http://www.aliyun.com/', 'title' => ''],
],
[
'name' => 'SignSource',
'in' => 'query',
'schema' => [
- 'description' => 'Signature source. Values:'."\n"
+ 'description' => 'The signature source. Valid values:'."\n"
."\n"
- .'- **0**: Full name or abbreviation of an enterprise or institution.'."\n"
- .'- **1**: Full name or abbreviation of a MIIT-registered website.'."\n"
- .'- **2**: Full name or abbreviation of an App.'."\n"
- .'- **3**: Full name or abbreviation of an official account or mini-program.'."\n"
- .'- **4**: Full name or abbreviation of an e-commerce platform store.'."\n"
- .'- **5**: Full name or abbreviation of a trademark.'."\n"
+ .'- **0**: full name or abbreviation of an enterprise or public institution. **(Recommended)**'."\n"
+ .'- **5**: full name or abbreviation of a trademark.'."\n"
+ .'- **2**: full name or abbreviation of an app. **(Not recommended)**'."\n"
."\n"
- .'For detailed information on signature sources, refer to [Signature Source](https://help.aliyun.com/zh/sms/user-guide/signature-specifications-1?spm=a2c4g.11186623.0.0.4f9710fder2gR7#section-xup-k46-yi4).'."\n"
- ."\n"
- .'> This interface does not support applying for signatures with sources as **Test or Learning** and **Trial Use**. If you need to apply for signatures with these sources, please go to the [SMS Service Console](https://dysms.console.aliyun.com/domestic/text/sign/add/qualification).',
+ .'For more information about signature sources, see [Signature sources](~~108076#section-fow-bfu-wo9~~).',
+ 'enumValueTitles' => [],
'type' => 'integer',
'format' => 'int32',
'required' => true,
- 'example' => '1',
- 'enum' => [
- '0',
- '1',
- '2',
- '3',
- '4',
- '5',
- ],
+ 'enum' => ['0', '1', '2', '3', '4', '5'],
+ 'example' => '0',
+ 'title' => '',
],
],
[
'name' => 'ThirdParty',
'in' => 'query',
- 'schema' => [
- 'description' => 'Choose whether the applied signature is for self-use or third-party use.'."\n"
- ."\n"
- .'- false: Self-use (default)'."\n"
- ."\n"
- .'- true: Third-party use'."\n"
- .'><notice>Please select self-use qualification ID when the signature is for self-use; choose third-party use qualification ID when it\'s for third-party use.></notice>',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- 'default' => 'false',
- ],
+ 'schema' => ['description' => 'The signature purpose. Valid values:'."\n"
+ ."\n"
+ .'- false: for personal use (default). The signature is the enterprise name, website, or product name verified under this account.'."\n"
+ ."\n"
+ .'- true: for third-party use. The signature is the enterprise name, website, or product name not verified under this account.'."\n"
+ .'><notice>If the signature is for personal use, select a qualification ID for personal use. If the signature is for third-party use, select a qualification ID for third-party use.></notice>.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
'name' => 'AuthorizationLetterId',
'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
+ 'schema' => ['description' => 'The ID of the power of attorney. When the signature is for third-party use, this parameter is required. Otherwise, the signature review will not pass. The unified social credit code in the power of attorney must match the unified social credit code in the qualification information bound to the signature. Otherwise, the signature creation fails.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000********1234', 'title' => ''],
],
[
'name' => 'TrademarkId',
'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
+ 'schema' => ['description' => 'The trademark entity ID.'."\n"
+ .'> - 1. This parameter is required when SignSource is set to 5.'."\n"
+ .'> - 2. You can obtain the trademark entity ID by calling the [CreateSmsTrademark](~~CreateSmsTrademark~~) operation.'."\n"
+ .'> - 3. Based on carrier real-name registration requirements, provide the relevant field information. Otherwise, the probability of review rejection or carrier registration failure increases significantly.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000009081***', 'title' => ''],
],
[
'name' => 'AppIcpRecordId',
'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
+ 'schema' => ['description' => 'The APP-ICP filing entity ID.'."\n"
+ .'> - This parameter is required when SignSource is set to 2.'."\n"
+ .'> - You can obtain the filing entity ID by calling the [CreateSmsAppIcpRecord](~~CreateSmsAppIcpRecord~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10000****029', 'title' => ''],
],
],
'responses' => [
@@ -2796,558 +1704,352 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The ID of this call request, which is a unique identifier generated by Alibaba Cloud for the request and can be used for troubleshooting and issue localization.',
- 'type' => 'string',
- 'example' => 'CCA2BCFF-2BA7-427C-90EE-AC6994748607',
- ],
- 'Code' => [
- 'description' => 'Request status code.'."\n"
- ."\n"
- .'- OK indicates a successful request.'."\n"
- .'- For other error codes, refer to the [Error Code List](~~101346~~).',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'successful',
- ],
- 'SignName' => [
- 'description' => 'Signature name.',
- 'type' => 'string',
- 'example' => 'Aliyun',
- ],
- 'OrderId' => [
- 'description' => 'Work order number.'."\n"
- ."\n"
- .'This parameter is used by auditors when querying the audit. You will need to provide this work order number if you require expedited review.',
- 'type' => 'string',
- 'example' => '2004415****',
- ],
+ 'RequestId' => ['description' => 'The request ID. It is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot issues.', 'type' => 'string', 'example' => 'CCA2BCFF-2BA7-427C-90EE-AC6994748623', 'title' => ''],
+ 'Code' => ['description' => 'The request status code. Valid values:'."\n"
+ ."\n"
+ .'- OK: The request was successful.'."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'successful', 'title' => ''],
+ 'SignName' => ['description' => 'The signature name.', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
+ 'OrderId' => ['description' => 'The ticket number.'."\n"
+ ."\n"
+ .'Reviewers use this parameter when querying reviews. Provide this ticket number if you need to expedite the review.', 'type' => 'string', 'example' => '2004415****', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- [
- 'errorCode' => 'ParameterMismatch.ThirdParty',
- 'errorMessage' => 'The type of signature, whether for personal use or for a third party, should be consistent with the qualifications.',
- ],
- [
- 'errorCode' => 'SignName.Exists',
- 'errorMessage' => 'Sorry, this signature already exists and cannot be applied for again.',
- ],
- [
- 'errorCode' => 'InvalidQualification',
- 'errorMessage' => 'The qualification should be approved.',
- ],
- [
- 'errorCode' => 'InvalidSignName',
- 'errorMessage' => 'The signature cannot contain spaces, special '."\n"
- .'symbols, or all numbers.',
- ],
- [
- 'errorCode' => 'InvalidApplySceneContent',
- 'errorMessage' => 'For certain signature sources, the '."\n"
- .'applySceneContent should be an HTTP or HTTPS link.',
- ],
- [
- 'errorCode' => 'MissApplySceneContent',
- 'errorMessage' => 'In some signature sources, the applySceneContent is required.',
- ],
- [
- 'errorCode' => 'MissingSignName',
- 'errorMessage' => 'The signature name cannot be empty.',
- ],
- [
- 'errorCode' => 'SmsAuthorizationLetterNotMatch',
- 'errorMessage' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification.',
- ],
- [
- 'errorCode' => 'SmsAuthorizationLetterNotExist',
- 'errorMessage' => 'Authorization does not belong to the customer.',
- ],
- [
- 'errorCode' => 'SmsSignNotAuthorized',
- 'errorMessage' => 'the signature is not in the sign scope of the authorization letter.',
- ],
- [
- 'errorCode' => 'TrademarkNotExist',
- 'errorMessage' => 'The trademark does not exist.',
- ],
- [
- 'errorCode' => 'AppIcpRecordNotExist',
- 'errorMessage' => 'The APP-ICP record does not exist.',
- ],
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
+ ['errorCode' => 'ParameterMismatch.ThirdParty', 'errorMessage' => 'The type of signature, whether for personal use or for a third party, should be consistent with the qualifications.', 'description' => 'Whether the signature is used by a third party should be consistent with the qualification.'],
+ ['errorCode' => 'SignName.Exists', 'errorMessage' => 'Sorry, this signature already exists and cannot be applied for again.', 'description' => 'Sorry, this signature already exists and cannot be reapplied.'],
+ ['errorCode' => 'InvalidQualification', 'errorMessage' => 'The qualification should be approved.', 'description' => 'Invalid qualification, qualification should be approved.'],
+ ['errorCode' => 'InvalidSignName', 'errorMessage' => 'The signature cannot contain spaces, special '."\n"
+ .'symbols, or all numbers.', 'description' => 'The signature cannot contain special characters such as simplified Chinese, English, or spaces other than digits, and cannot be all digits.'],
+ ['errorCode' => 'InvalidApplySceneContent', 'errorMessage' => 'For certain signature sources, the '."\n"
+ .'applySceneContent should be an HTTP or HTTPS link.', 'description' => 'invalid application scenario, under some signature sources,'."\n"
+ .'The application scenario should be an HTTP or HTTPS link.'],
+ ['errorCode' => 'MissApplySceneContent', 'errorMessage' => 'In some signature sources, the applySceneContent is required.', 'description' => 'Under some signature sources, the application scenario is required.'],
+ ['errorCode' => 'MissingSignName', 'errorMessage' => 'The signature name cannot be empty.', 'description' => 'Signature name cannot be empty'],
+ ['errorCode' => 'SmsAuthorizationLetterNotMatch', 'errorMessage' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification.', 'description' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification'],
+ ['errorCode' => 'SmsAuthorizationLetterNotExist', 'errorMessage' => 'Authorization does not belong to the customer.', 'description' => ''],
+ ['errorCode' => 'SmsSignNotAuthorized', 'errorMessage' => 'the signature is not in the sign scope of the authorization letter.', 'description' => 'The signature is not within the scope of the authorization.'],
+ ['errorCode' => 'TrademarkNotExist', 'errorMessage' => 'The trademark does not exist.', 'description' => ''],
+ ['errorCode' => 'AppIcpRecordNotExist', 'errorMessage' => 'The APP-ICP record does not exist.', 'description' => ''],
],
404 => [
- [
- 'errorCode' => 'QualificationNotFound',
- 'errorMessage' => 'Qualification does not exist.',
- ],
+ ['errorCode' => 'QualificationNotFound', 'errorMessage' => 'Qualification does not exist.', 'description' => 'Qualification does not exist.'],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CCA2BCFF-2BA7-427C-90EE-AC6994748623\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"successful\\",\\n \\"SignName\\": \\"阿里云\\",\\n \\"OrderId\\": \\"2004415****\\"\\n}","type":"json"}]',
- 'title' => 'Apply for SMS Signature (New Interface)',
- 'description' => '- For details about the announcement of changes to the new and original interfaces, see [Announcement on Updates to SMS Service Signature & Template Interfaces](https://help.aliyun.com/zh/sms/product-overview/announcement-on-sms-service-update-signature-template-interface).'."\n"
+ 'title' => 'Apply for an SMS signature (new operation)',
+ 'description' => '- For details about the changes between the new and original operations, see [Announcement on updating signature and template operations for Short Message Service](~~2806975~~).'."\n"
."\n"
- .'- Individual authenticated users can apply for one formal signature per natural day under the same Alibaba Cloud account, while enterprise authenticated users have no current restrictions. For details on the differences in rights between individual and enterprise users, please refer to [User Guide](https://help.aliyun.com/zh/sms/user-guide/usage-notes?spm).'."\n"
+ .'- Users who verify your identity - Individual account can apply for one formal signature per calendar day per Alibaba Cloud account. Users who verify your identity - Enterprise account currently have no such limit. For details about the differences between individual and enterprise user privileges, see [Before you begin](~~55324~~).'."\n"
."\n"
- .'- Signature information applied through the interface will be synchronized in the SMS service console. For operations related to signatures in the console, see [SMS Signatures](https://help.aliyun.com/zh/sms/user-guide/create-signatures?spm).'."\n"
+ .'- Read the [Signature specifications](~~108076~~) to learn about the SMS signature review standards.'."\n"
+ .'- Signatures applied for through the API are synchronized to the Short Message Service console. For console-related operations, see [SMS signatures](~~108073~~).'."\n"
."\n"
- .'- After submitting the signature application, you can query the signature review status and details via the [GetSmsSign](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-getsmssign?spm) interface. You can also [Configure Receipt Messages](https://help.aliyun.com/zh/sms/developer-reference/configure-delivery-receipts-1?spm) and obtain signature review status messages through SignSmsReport.',
- ],
- 'GetSmsSign' => [
- 'summary' => 'Query SMS Signature Details',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'- After you submit a signature application, you can call the [GetSmsSign](~~2807429~~) operation to query the signature review status and details. You can also [configure receipt messages](~~101508~~) and use [SignSmsReport](~~120998~~) to obtain the signature review status messages.',
+ 'changeSet' => [
+ ['createdAt' => '2025-12-16T07:31:35.000Z', 'description' => 'Error codes changed, Request parameters changed'],
+ ['createdAt' => '2025-12-11T12:44:31.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T12:44:31.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:22.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:22.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:07.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:07:46.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:42.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:37.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:01.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSmsSign'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreateSmsTemplate' => [
+ 'summary' => 'A message template defines the content of an SMS message. This content includes the message text and any variables. You can create templates for various business needs, such as sending verification codes, notifications, or promotional messages. A template must be approved before you can use it to send messages.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218493',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '218485',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
],
'parameters' => [
[
- 'name' => 'SignName',
+ 'name' => 'TemplateName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The template name. The name must be 30 characters or less.', 'type' => 'string', 'required' => true, 'example' => '验证码', 'maxLength' => 30, 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateContent',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The template content. The content must be 500 characters or less.'."\n"
+ ."\n"
+ .'The template content and variables must comply with the [SMS Template Specifications](~~463161~~). Templates that do not comply may be rejected. You can find common template examples on the [Apply for Template](https://dysms.console.aliyun.com/domestic/text/template/add) page. Using these examples can speed up the review process and increase the approval rate. For variable specifications, see [Variable Specifications for the TemplateContent Parameter](~~2806243~~).', 'type' => 'string', 'required' => true, 'example' => '您正在申请手机注册,验证码为:${code},5分钟内有效!'."\n", 'maxLength' => 500, 'title' => ''],
+ ],
+ [
+ 'name' => 'Remark',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Describe the business scenario for the SMS messages, or provide a URL for online scenarios. You must also provide a complete SMS example with actual values for any variables. Complete information increases the chance of template approval. Templates that do not provide this information as specified may be rejected.', 'type' => 'string', 'required' => false, 'example' => '申请验证码短信', 'maxLength' => 500, 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateType',
'in' => 'query',
'schema' => [
- 'description' => 'Signature name. Must be an SMS signature already applied for by this account.'."\n"
+ 'description' => 'The SMS type. Valid values:'."\n"
."\n"
- .'- Obtain from the return parameters after calling the [CreateSmsSign](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-createsmssign?spm) API.'."\n"
- .'- View the signature on the [Signature Management](https://dysms.console.aliyun.com/domestic/text/sign) page.',
- 'type' => 'string',
+ .'- **0**: verification code.'."\n"
+ ."\n"
+ .'- **1**: notification message.'."\n"
+ ."\n"
+ .'- **2**: promotional message.'."\n"
+ ."\n"
+ .'- **3**: international/Hong Kong, Macao, and Taiwan messages.'."\n"
+ ."\n"
+ .'> Only enterprise-verified users can apply for promotional messages or international/Hong Kong, Macao, and Taiwan messages. For more information about the differences in privileges between individual and enterprise users, see [Usage Notes](https://help.aliyun.com/zh/sms/user-guide/usage-notes?spm=a2c4g.11186623.0.0.67447f576NJnE8).',
+ 'type' => 'integer',
+ 'format' => 'int32',
'required' => true,
'docRequired' => true,
- 'example' => 'Aliyun',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'RequestId' => [
- 'description' => 'The ID of this call request, which is a unique identifier generated by Alibaba Cloud for the request and can be used for troubleshooting and issue localization.',
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'Code' => [
- 'description' => 'Request status code.'."\n"
- ."\n"
- .'- OK indicates a successful request.'."\n"
- .'- For other error codes, see [API Error Codes](~~101346~~).',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'SignName' => [
- 'description' => 'SMS signature name.',
- 'type' => 'string',
- 'example' => 'Aliyun',
- ],
- 'SignStatus' => [
- 'description' => 'Signature review status. Values:'."\n"
- ."\n"
- .'- **0**: Under review.'."\n"
- .'- **1**: Approved.'."\n"
- .'- **2**: Review failed, please check the Reason parameter for the failure cause.'."\n"
- .'- **10**: Review canceled.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '2',
- ],
- 'CreateDate' => [
- 'description' => 'Creation date and time of the SMS signature.',
- 'type' => 'string',
- 'example' => '2024-06-03 10:02:34',
- ],
- 'OrderId' => [
- 'description' => 'Work order number.'."\n"
- ."\n"
- .'Used by reviewers when querying the review. You need to provide this work order number if you require expedited review.',
- 'type' => 'string',
- 'example' => '20044156924',
- ],
- 'QualificationId' => [
- 'description' => 'Credential ID, the credential ID associated when applying for the signature.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '2004393****',
- ],
- 'Remark' => [
- 'description' => 'Explanation of the SMS signature scenario, with a maximum length of 200 characters.',
- 'type' => 'string',
- 'example' => 'Send verification code text message during login.',
- ],
- 'AuditInfo' => [
- 'description' => 'Audit information.',
- 'type' => 'object',
- 'properties' => [
- 'RejectInfo' => [
- 'description' => 'Reasons for not passing the review.',
- 'type' => 'string',
- 'example' => 'reason for rejection.',
- ],
- 'AuditDate' => [
- 'description' => 'Audit date and time.',
- 'type' => 'string',
- 'example' => '2024-06-03 12:02:34'."\n",
- ],
- ],
- ],
- 'FileUrlList' => [
- 'description' => '更多资料信息,补充上传业务证明文件或业务截图文件列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => 'Information of files uploaded to OSS.',
- 'type' => 'string',
- 'example' => '10098689758*****/1234qwe.png'."\n",
- ],
- ],
- 'SignCode' => [
- 'description' => 'SMS signature code.',
- 'type' => 'string',
- 'example' => 'SIGN_100000077042023_17174665*****_ZM2kG',
- ],
- 'SignTag' => [
- 'description' => 'Signature tag indicating whether the signature is user-defined, system-provided, test, or trial. Values:'."\n"
- ."\n"
- .'- 2: User-defined signature'."\n"
- .'- 3: System-provided signature'."\n"
- .'- 4: Test signature'."\n"
- .'- 5: Trial signature',
- 'type' => 'string',
- 'example' => '2',
- ],
- 'ApplyScene' => [
- 'description' => 'Content of application scenarios.',
- 'type' => 'string',
- 'example' => 'http://www.aliyun.com/'."\n",
- ],
- 'ThirdParty' => [
- 'description' => 'Signature usage indication—self-use or third-party use.'."\n"
- ."\n"
- .'- false: Self-use (default)'."\n"
- ."\n"
- .'- true: Third-party use',
- 'type' => 'boolean',
- 'example' => 'false',
- ],
- 'SignUsage' => [
- 'description' => 'scenarios for using signatures.',
- 'type' => 'string',
- 'example' => 'App.',
- ],
- 'RegisterResult' => [
- 'type' => 'integer',
- 'format' => 'int32',
- ],
- 'AuthorizationLetterId' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- 'AuthorizationLetterAuditPass' => [
- 'type' => 'boolean',
- ],
- 'SignIspRegisterDetailList' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'RegisterStatus' => [
- 'type' => 'integer',
- 'format' => 'int32',
- ],
- 'OperatorCode' => [
- 'type' => 'string',
- ],
- 'OperatorCompleteTime' => [
- 'type' => 'string',
- ],
- 'RegisterStatusReasons' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'ReasonCode' => [
- 'type' => 'string',
- ],
- 'ReasonDescList' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'string',
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- 'TrademarkId' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- 'AppIcpRecordId' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- ],
- ],
- ],
- ],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- ],
- 404 => [
- [
- 'errorCode' => 'SignatureNotFound',
- 'errorMessage' => 'The signature does not exist.',
+ 'example' => '0',
+ 'enum' => ['0', '1', '2', '3'],
+ 'title' => '',
],
],
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SignName\\": \\"登录验证\\",\\n \\"SignStatus\\": 2,\\n \\"CreateDate\\": \\"2024-06-03 10:02:34\\",\\n \\"OrderId\\": \\"20044156924\\",\\n \\"QualificationId\\": 0,\\n \\"Remark\\": \\"登录场景验证码\\",\\n \\"AuditInfo\\": {\\n \\"RejectInfo\\": \\"通过资质信息,不能判断是否可以申请此签名。\\",\\n \\"AuditDate\\": \\"2024-06-03 12:02:34\\\\n\\"\\n },\\n \\"FileUrlList\\": [\\n \\"10098689758*****/1234qwe.png\\\\n\\"\\n ],\\n \\"SignCode\\": \\"SIGN_100000077042023_17174665*****_ZM2kG\\",\\n \\"SignTag\\": \\"2\\",\\n \\"ApplyScene\\": \\"http://www.aliyun.com/\\\\n\\",\\n \\"ThirdParty\\": false,\\n \\"SignUsage\\": \\"已注册商标名称。\\",\\n \\"RegisterResult\\": 1,\\n \\"AuthorizationLetterId\\": 0,\\n \\"AuthorizationLetterAuditPass\\": true,\\n \\"SignIspRegisterDetailList\\": [\\n {\\n \\"RegisterStatus\\": 0,\\n \\"OperatorCode\\": \\"telecom\\",\\n \\"OperatorCompleteTime\\": \\"2025-06-13 15:55:26\\",\\n \\"RegisterStatusReasons\\": [\\n {\\n \\"ReasonCode\\": \\"REGISTER_TIMEOUT\\",\\n \\"ReasonDescList\\": [\\n \\"报备超时。\\"\\n ]\\n }\\n ]\\n }\\n ],\\n \\"TrademarkId\\": 0,\\n \\"AppIcpRecordId\\": 0\\n}","type":"json"}]',
- 'title' => 'Query Signature Details (New Interface)',
- 'description' => '- For details about the changes of this new interface and the original one, please refer to [Announcement on the Update of SMS Signature & Template Interfaces](https://help.aliyun.com/zh/sms/product-overview/announcement-on-sms-service-update-signature-template-interface).'."\n"
- ."\n"
- .'- Review Time: Generally, after submitting the signature, Alibaba Cloud expects to complete the review within 2 hours (Review Business Hours: Monday to Sunday 9:00~21:00, with legal holidays postponed). It is recommended to submit your application before 18:00.'."\n"
- ."\n"
- .'- If the signature fails the review, the reason for the failure will be returned. Please refer to [Handling Suggestions for Failed SMS Reviews](https://help.aliyun.com/zh/sms/user-guide/causes-of-application-failures-and-suggestions?spm), invoke the [UpdateSmsSign](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-updatesmssign?spm) API, or modify the unapproved SMS signature on the [Signature Management](https://dysms.console.aliyun.com/domestic/text/sign) page.',
- ],
- 'QuerySmsSignList' => [
- 'summary' => 'Queries message signatures by page.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
[
- 'AK' => [],
+ 'name' => 'RelatedSignName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the signature to associate with the template. The signature must be an approved signature.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'- This parameter is required if **TemplateType** is set to **0**, **1**, or **2**.'."\n"
+ ."\n"
+ .'- Associating a signature can expedite the review process. The signature associated here is unrelated to the one you select when sending SMS messages.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'string', 'required' => false, 'example' => '验证码签名', 'title' => ''],
],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '118916',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
+ [
+ 'name' => 'TemplateRule',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The rules for variables in the template. For instructions on how to define these rules, see [Sample Document](~~2806243~~).'."\n"
+ ."\n"
+ .'> - This parameter is required if the message template contains variables.', 'type' => 'string', 'required' => false, 'example' => '{"code":"characterWithNumber2"}'."\n", 'title' => ''],
],
- ],
- 'parameters' => [
[
- 'name' => 'PageIndex',
+ 'name' => 'MoreData',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The page number. Default value: **1**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
+ 'description' => 'Additional information. You can upload supporting documents or business screenshots to help reviewers better understand your business scenario. If you are applying for a promotional message template (where `TemplateType` is `2`), you must upload user authorization materials. For more information, see [Specifications for Uploading User Authorization Materials](~~312341~~).',
+ 'type' => 'array',
+ 'items' => ['description' => 'The OSS object key for the uploaded file. For instructions on how to upload a file, see [Upload a file to OSS](~~2833114~~).', 'type' => 'string', 'required' => false, 'example' => '10098689758*****/1234qwe.png', 'title' => ''],
'required' => false,
- 'minimum' => '1',
- 'example' => '1',
- 'minLength' => 1,
- 'default' => '1',
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'PageSize',
+ 'name' => 'ApplySceneContent',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of signatures per page. Valid values: **1 to 50**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'maximum' => '50',
- 'minimum' => '1',
- 'example' => '10',
- 'default' => '10',
- ],
+ 'schema' => ['description' => 'The business scenario.'."\n"
+ ."\n"
+ .'- If the associated signature\'s use case is "Live App", `ApplySceneContent` must be an app URL that starts with `http://` or `https://`.'."\n"
+ ."\n"
+ .'- This parameter is required if the associated signature\'s use case is "Registered Trademark Name" or "organization name".', 'type' => 'string', 'required' => false, 'example' => 'http://www.aliyun.com/'."\n", 'title' => ''],
+ ],
+ [
+ 'name' => 'IntlType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The type of the template for international/Hong Kong, Macao, and Taiwan messages. This parameter is required when **TemplateType** is set to **3**. Valid values:'."\n"
+ ."\n"
+ .'- **0**: notification message.'."\n"
+ ."\n"
+ .'- **1**: promotional message.'."\n"
+ ."\n"
+ .'- **2**: verification code.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''],
+ ],
+ [
+ 'name' => 'TrafficDriving',
+ 'in' => 'query',
+ 'schema' => ['description' => '><warning>'."\n"
+ ."\n"
+ .'To control the security of SMS content, messages that contain traffic-driving information, such as phone numbers and links, may be blocked by carriers, which can lead to delivery failures. To reduce this risk, we recommend that you avoid including such information in message templates.'."\n"
+ ."\n"
+ .'></warning>'."\n"
+ ."\n"
+ .'A JSON string that contains a list of traffic-driving information.'."\n"
+ .'><notice>The value must be a JSON array serialized into a string.></notice>'."\n"
+ ."\n"
+ .'### 1. Fields'."\n"
+ ."\n"
+ .'{'."\n"
+ .'"trafficDrivingType":"traffic driving type",'."\n"
+ .'"trafficDrivingContent":"traffic driving content",'."\n"
+ .'"variableName":"variable name",'."\n"
+ .'"companyName":"organization name",'."\n"
+ .'"organizationCode":"unified social credit code",'."\n"
+ .'"icpNo":"ICP filing or license number",'."\n"
+ .'"icpPicOssKey":"OSS key of the ICP filing screenshot",'."\n"
+ .'"companyDifferentFromSignQuaReason":"Reason for the discrepancy between the organization name and the signature qualification"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'### 2. Notes'."\n"
+ ."\n"
+ .'- If the content is not a variable, do not pass the `variableName` parameter.'."\n"
+ ."\n"
+ .'- If the organization name is different from the one in the signature qualification, pass the `companyDifferentFromSignQuaReason` parameter.'."\n"
+ ."\n"
+ .'- If `trafficDrivingType` is set to `DOMAIN`, all parameters in this object are required.'."\n"
+ ."\n"
+ .'- If `trafficDrivingType` is set to another value, pass the `trafficDrivingType`, `trafficDrivingContent`, `variableName` (if applicable), `companyName`, `organizationCode`, and `companyDifferentFromSignQuaReason` (if applicable) parameters.'."\n"
+ ."\n"
+ .'### 3. trafficDrivingType enum values'."\n"
+ ."\n"
+ .'><warning>'."\n"
+ ."\n"
+ .'Due to regulatory requirements, mobile phone numbers are not supported.'."\n"
+ ."\n"
+ .'></warning>'."\n"
+ ."\n"
+ .'- DOMAIN: A domain link.'."\n"
+ ."\n"
+ .'- FIXED\\_PHONE: Fixed-line phone.'."\n"
+ ."\n"
+ .'- 400\\_PHONE: Phone number prefixed with 400.'."\n"
+ ."\n"
+ .'- 800\\_PHONE: Phone number prefixed with 800.'."\n"
+ ."\n"
+ .'- 95\\_PHONE: Phone number prefixed with 95.'."\n"
+ ."\n"
+ .'- 96\\_PHONE: Phone number prefixed with 96.'."\n"
+ ."\n"
+ .'- 1\\_PHONE: A 3- to 8-digit phone number that starts with 1.'."\n"
+ ."\n"
+ .'- OTHER\\_PHONE: Other phone number.', 'type' => 'string', 'required' => false, 'example' => '[{"trafficDrivingType":"DOMAIN","trafficDrivingContent":"aliyun.com","companyName":"阿里云计算有限公司","organizationCode":"91330****73959654P","icpNo":"浙B2-20****01-4","icpPicOssKey":"db7784d8-cb0c-498f-****-295f1ad6d665_mf29l7nf.png", "companyDifferentFromSignQuaReason":"这是一段说明文字"},{"trafficDrivingType":"1_PHONE","trafficDrivingContent":"1**86","variableName":"my1Phone","companyName":"阿里云计算有限公司","organizationCode":"91330****73959654P","companyDifferentFromSignQuaReason":"这是一段说明文字"}]', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The returned data.'."\n",
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E47708****',
- ],
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'SmsSignList' => [
- 'description' => 'The queried message signatures.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'SignName' => [
- 'description' => 'The name of the signature.'."\n",
- 'type' => 'string',
- 'example' => 'Aliyun',
- ],
- 'AuditStatus' => [
- 'description' => 'The approval status of the signature. Valid values:'."\n"
- ."\n"
- .'* **AUDIT_STATE_INIT**: The signature is pending approval.'."\n"
- .'* **AUDIT_STATE_PASS**: The signature is approved.'."\n"
- .'* **AUDIT_STATE_NOT_PASS**: The signature is rejected. You can view the reason in the Reason response parameter.'."\n"
- .'* **AUDIT_STATE_CANCEL**: The approval is canceled.'."\n",
- 'type' => 'string',
- 'example' => 'AUDIT_STATE_NOT_PASS',
- ],
- 'CreateDate' => [
- 'description' => 'The time when the signature was created. Format: yyyy-MM-dd HH:mm:ss.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-08 16:44:13',
- ],
- 'Reason' => [
- 'description' => 'The approval remarks.'."\n"
- ."\n"
- .'* If the value of AuditStatus is **AUDIT_STATE_PASS** or **AUDIT_STATE_INIT**, the value of Reason is No Approval Remarks.'."\n"
- .'* If the value of AuditStatus is **AUDIT_STATE_NOT_PASS**, the reason why the signature is rejected is returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'RejectSubInfo' => [
- 'description' => 'The remarks about the rejection.'."\n",
- 'type' => 'string',
- 'example' => 'The document cannot verify the authenticity of the information. Please upload it again.',
- ],
- 'RejectDate' => [
- 'description' => 'The time when the signature was rejected. Format: yyyy-MM-dd HH:mm:ss.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-08 19:02:13',
- ],
- 'RejectInfo' => [
- 'description' => 'The reason why the signature was rejected.'."\n",
- 'type' => 'string',
- 'example' => 'The document cannot verify the authenticity of the information. Please upload it again.',
- ],
- ],
- ],
- 'BusinessType' => [
- 'description' => 'The type of the signature scenario. The return value ends with "type". Valid values:'."\n"
- ."\n"
- .'* Verification code type'."\n"
- .'* General-purpose type'."\n",
- 'type' => 'string',
- 'example' => 'Verification code type',
- ],
- 'OrderId' => [
- 'description' => 'The ticket ID.'."\n",
- 'type' => 'string',
- 'example' => '236****5',
- ],
- 'AuthorizationLetterId' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- 'authorizationLetterAuditPass' => [
- 'type' => 'boolean',
- ],
- 'TrademarkId' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- 'AppIcpRecordId' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- ],
- ],
- ],
- 'TotalCount' => [
- 'description' => 'The total number of signatures.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'CurrentPage' => [
- 'description' => 'The page number. Default value: **1**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'PageSize' => [
- 'description' => 'The number of signatures per page. Valid values: **1 to 50**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
+ 'RequestId' => ['description' => 'The ID of the request. Alibaba Cloud generates a unique ID for each request. You can use this ID to troubleshoot issues.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE991', 'title' => ''],
+ 'Code' => ['description' => 'The status code of the request. Valid values:'."\n"
+ ."\n"
+ .'- OK: The request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see the **Error codes** list in this topic or [API Error Codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'successful', 'title' => ''],
+ 'TemplateName' => ['description' => 'The name of the message template.', 'type' => 'string', 'example' => '验证码模板', 'title' => ''],
+ 'TemplateCode' => ['description' => 'The code of the message template.'."\n"
+ ."\n"
+ .'After you submit a template application, you can use the template code to call the [GetSmsTemplate](~~2807433~~) operation and query the review details of the template. You can also [configure delivery receipts](~~101508~~) to receive the review status of the template in the [TemplateSmsReport](~~120999~~) message.', 'type' => 'string', 'example' => 'SMS_10000****', 'title' => ''],
+ 'OrderId' => ['description' => 'The ticket ID.'."\n"
+ ."\n"
+ .'Reviewers use this ID to check the review status. You must provide this ID when you request an expedited review.', 'type' => 'string', 'example' => '2005020****', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\\\n\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SmsSignList\\": [\\n {\\n \\"SignName\\": \\"阿里云\\",\\n \\"AuditStatus\\": \\"AUDIT_STATE_NOT_PASS\\",\\n \\"CreateDate\\": \\"2020-06-04 11:42:17\\",\\n \\"Reason\\": {\\n \\"RejectSubInfo\\": \\"文件不能证明信息真实性,请重新上传。\\",\\n \\"RejectDate\\": \\"2020-06-04 13:35:10\\",\\n \\"RejectInfo\\": \\"文件不能证明信息真实性,请重新上传。\\"\\n },\\n \\"BusinessType\\": \\"验证码类型\\",\\n \\"OrderId\\": \\"2005098****\\",\\n \\"AuthorizationLetterId\\": 0,\\n \\"authorizationLetterAuditPass\\": true,\\n \\"TrademarkId\\": 0,\\n \\"AppIcpRecordId\\": 0\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 10\\n}","errorExample":""},{"type":"xml","example":"<QuerySmsSignListResponse>\\n <RequestId>819BE656-D2E0-4858-8B21-B2E47708****</RequestId>\\n <Code>OK</Code>\\n <Message>OK</Message>\\n <SmsSignList>\\n <SignName>阿里云</SignName>\\n <AuditStatus>AUDIT_STATE_NOT_PASS</AuditStatus>\\n <CreateDate>2020-01-08 16:44:13</CreateDate>\\n <Reason>\\n <RejectSubInfo>文件不能证明信息真实性,请重新上传。</RejectSubInfo>\\n <RejectDate>2020-01-08 19:02:13</RejectDate>\\n <RejectInfo>文件不能证明信息真实性,请重新上传。</RejectInfo>\\n </Reason>\\n <BusinessType>验证码类型</BusinessType>\\n <OrderId>236****5</OrderId>\\n </SmsSignList>\\n</QuerySmsSignListResponse>","errorExample":""}]',
- 'title' => 'QuerySmsSignList',
- 'description' => 'You can call this operation to query the details of message signatures, including the name, creation time, and approval status of each signature. If a message template is rejected, the reason is returned. Modify the message signature based on the reason.'."\n"
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
+ ['errorCode' => 'AssocSignUnapproved', 'errorMessage' => 'Associated signature must be approved.', 'description' => 'The associated signature needs to use the approved signature.'],
+ ['errorCode' => 'InvalidTemplateRule.Format', 'errorMessage' => 'The parameter TemplateRule format must be JSON.', 'description' => 'Template variable rules must be filled with JSON-formatted data.'],
+ ['errorCode' => 'InvalidMoreData', 'errorMessage' => 'Specified parameter MoreData is not valid.', 'description' => 'The uploaded more information is invalid.'],
+ ['errorCode' => 'TemplateVarLimitExceeded', 'errorMessage' => 'The verification code template only supports one variable.', 'description' => 'The verification code template only supports one variable.'],
+ ['errorCode' => 'InvalidTemplateContent.Format', 'errorMessage' => 'Invalid template content format.', 'description' => 'The template content is not in the correct format.'],
+ ['errorCode' => 'InvalidTemplateRule', 'errorMessage' => 'The template variable format is non-standard. Please refer to the variable format specifications in the help documentation.', 'description' => 'The template variable does not meet the specifications. Please check the SMS template specification document and pass in the template variable that meets the requirements.'],
+ ['errorCode' => 'ServiceNotOpened', 'errorMessage' => 'This product service is not opened.', 'description' => 'Product service not activated'],
+ ],
+ 404 => [
+ ['errorCode' => 'MissingTemplateName', 'errorMessage' => 'The template name cannot be empty.', 'description' => 'Template name cannot be empty.'],
+ ['errorCode' => 'SmsSignatureNotFound', 'errorMessage' => 'The associated SMS signature does not exist.', 'description' => 'The associated SMS signature does not exist.'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE991\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"successful\\",\\n \\"TemplateName\\": \\"验证码模板\\",\\n \\"TemplateCode\\": \\"SMS_10000****\\",\\n \\"OrderId\\": \\"2005020****\\"\\n}","type":"json"}]',
+ 'title' => 'Apply for SMS Template (New Interface)',
+ 'description' => '- For details on the API changes for signatures and templates, see the [Announcement on Signature and Template API Updates for Short Message Service](~~2806975~~).'."\n"
."\n"
- .'### QPS limit'."\n"
+ .'- Wait at least 30 seconds between API calls when applying for a message template.'."\n"
."\n"
- .'You can call this operation up to 10 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- ],
- 'UpdateSmsSign' => [
- 'summary' => 'Update Text SMS Signature',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'- Message templates you apply for via the API are synchronized to the Short Message Service console. For details on how to manage message templates in the console, see [Message templates](~~108085~~).'."\n"
+ ."\n"
+ .'- After you submit a template for review, you can call the [GetSmsTemplate](~~2807433~~) API to query the template\'s review status and details. You can also [configure status reports](~~101508~~) to receive the template\'s review status through [TemplateSmsReport](~~120999~~).'."\n"
+ ."\n"
+ .'- Message templates for Chinese mainland messages and international messages are not interchangeable. Apply for message templates based on your use case.'."\n"
+ ."\n"
+ .'- Only enterprise-verified users can apply for message templates for promotional messages and international messages. For details on the permission differences between individual and enterprise users, see [Usage notes](~~55324~~).',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-12T14:41:31.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:41:26.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:37:16.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:37:06.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:37:03.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T08:38:21.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T07:59:59.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreateSmsTrademark' => [
+ 'summary' => 'Creates a trademark entity. This operation is used when you need to upload trademark information when the signature source is set to trademark.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -3356,162 +2058,54 @@
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '219280',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '289843',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'SignName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Signature not yet approved.',
- 'type' => 'string',
- 'required' => true,
- 'example' => '阿里云验证码',
- ],
- ],
- [
- 'name' => 'Remark',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Explanation of the SMS signature scenario, with a maximum length of 200 characters.'."\n"
- ."\n"
- .'> The scenario explanation is one of the reference information for signature review. Please provide a detailed description of the usage scenarios of the launched business, along with verifiable information such as website links, registered domain addresses, app store download links, full names of public accounts or mini-programs, etc. For login scenarios, test account credentials are also required. A well-informed application explanation will enhance the efficiency of signature and template reviews. Refer to the **Application Scenarios** column in the [Signature Source](https://help.aliyun.com/zh/sms/user-guide/signature-specifications-1?spm=a2c4g.11186623.0.i2#section-xup-k46-yi4) table for filling in SMS scenarios.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '登录场景申请验证码',
- 'maxLength' => 500,
- ],
- ],
- [
- 'name' => 'SignType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Signature type. It is recommended to use the default value.'."\n"
- ."\n"
- .'- **0**: Verification code'."\n"
- .'- **1**: General (default)',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- 'default' => '1',
- ],
- ],
- [
- 'name' => 'MoreData',
- 'in' => 'query',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'Additional materials, such as uploading business proof documents or screenshots of business operations, to help reviewers understand your business details.',
- 'type' => 'array',
- 'items' => [
- 'description' => 'Information about files uploaded to OSS.'."\n"
- .'For file upload operations, refer to [Upload Files via OSS](https://help.aliyun.com/zh/sms/upload-files-through-oss).',
- 'type' => 'string',
- 'required' => false,
- 'example' => '10098689758*****/1234qwe.png'."\n",
- ],
- 'required' => false,
- ],
- ],
- [
- 'name' => 'QualificationId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Approved or under-review qualification ID.'."\n"
- ."\n"
- .'> - Before applying for an SMS signature, please first [apply for qualifications](https://help.aliyun.com/zh/sms/user-guide/new-qualification?spm=a2c4g.11186623.0.0.718d187bbkpMRK).'."\n"
- .'> - You can view the qualification ID on the [Qualification Management](https://dysms.console.aliyun.com/domestic/text/qualification) page.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '8563**',
- ],
- ],
- [
- 'name' => 'ApplySceneContent',
+ 'name' => 'TrademarkPic',
'in' => 'query',
- 'schema' => [
- 'description' => 'Application scenarios, instructions as follows:'."\n"
- .'- For registered websites, please enter the domain name registered with MIIT, including HTTP or HTTPS.'."\n"
- .'- For launched apps, provide the display link from the app store with HTTP or HTTPS, ensuring the app is online.'."\n"
- .'- For public accounts or mini-programs, fill in the full name, ensuring they are online.'."\n"
- .'- For e-commerce platform store names (for enterprise users only), provide the display link with HTTP or HTTPS.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'http://www.aliyun.com/'."\n",
- ],
+ 'schema' => ['title' => '', 'description' => 'The fileKey of the trademark details screenshot.'."\n"
+ ."\n"
+ .'1. How to query a trademark:'."\n"
+ .'- Log on to the China Trademark Network, click **Trademark Online Query**, and take a screenshot of the trademark details.'."\n"
+ .'- Accept the terms of use and enter the **Application/Registration Number** to query.'."\n"
+ .'- Click the **Application/Registration Number** to view the details.'."\n"
+ ."\n"
+ .'2. Information about the trademark file uploaded to OSS. File upload requirements:'."\n"
+ .'- The name of the file to be uploaded cannot contain Chinese characters or special characters.'."\n"
+ .'- Only images in JPG, PNG, GIF, and JPEG formats are supported, and the image size cannot exceed 5 MB.'."\n"
+ .'- The screenshot must contain the complete URL.'."\n"
+ .'- The trademark image must be clear and identical to the **signature name**.'."\n"
+ .'- The **applicant name** must be identical to the name of the enterprise or institution associated with the signature.'."\n"
+ .'- The trademark status must be registered trademark.'."\n"
+ ."\n"
+ .'3. To obtain the fileKey, see [Upload files to OSS](~~2833114~~).', 'type' => 'string', 'required' => true, 'example' => '123456/test1719383196031.jpg'],
],
[
- 'name' => 'SignSource',
+ 'name' => 'TrademarkRegistrationNumber',
'in' => 'query',
- 'schema' => [
- 'description' => 'Source of the signature. Values:'."\n"
- ."\n"
- .'- **0**: Full name or abbreviation of enterprises and institutions.'."\n"
- .'- **1**: Full name or abbreviation of MIIT-registered websites.'."\n"
- .'- **2**: Full name or abbreviation of app applications.'."\n"
- .'- **3**: Full name or abbreviation of public accounts or mini-programs.'."\n"
- .'- **4**: Full name or abbreviation of e-commerce platform store names.'."\n"
- .'- **5**: Full name or abbreviation of trademarks.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'example' => '1',
- 'enum' => [
- '0',
- '1',
- '2',
- '3',
- '4',
- '5',
- ],
- ],
+ 'schema' => ['title' => '', 'description' => 'The trademark registration number. The value can be up to 15 characters in length.', 'type' => 'string', 'required' => true, 'example' => '766905'],
],
[
- 'name' => 'ThirdParty',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Whether the signature is for self-use or others.'."\n"
- ."\n"
- .'- false: Self-use'."\n"
- .'- true: Others'."\n"
- .'><notice>When the signature is for self-use, select the self-use qualification ID; when it\'s for others, choose the others\' qualification ID.></notice>',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- 'default' => 'false',
- ],
- ],
- [
- 'name' => 'AuthorizationLetterId',
+ 'name' => 'TrademarkName',
'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
+ 'schema' => ['title' => '', 'description' => 'The trademark name. The value can be up to 15 characters in length.', 'type' => 'string', 'required' => true, 'example' => '阿里云'],
],
[
- 'name' => 'TrademarkId',
+ 'name' => 'TrademarkApplicantName',
'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
+ 'schema' => ['title' => '', 'description' => 'The name of the applicant. The value can be up to 50 characters in length.', 'type' => 'string', 'required' => true, 'example' => '阿里巴巴(中国)有限公司'],
],
[
- 'name' => 'AppIcpRecordId',
+ 'name' => 'TrademarkEffExpDate',
'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
+ 'schema' => ['title' => '', 'description' => 'The effective and expiration dates of the exclusive right.', 'type' => 'string', 'required' => true, 'example' => '2010-12-14~2030-12-13'],
],
],
'responses' => [
@@ -3519,148 +2113,80 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The ID of this call request, uniquely generated by Alibaba Cloud, which can be used for troubleshooting and issue localization.',
- 'type' => 'string',
- 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D0D',
- ],
- 'Code' => [
- 'description' => 'Request status code.'."\n"
- ."\n"
- .'* OK indicates a successful request.'."\n"
- .'* For other error codes, refer to [Error Code List](~~101346~~).',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'SignName' => [
- 'description' => 'The modified signature name.',
- 'type' => 'string',
- 'example' => '登录验证',
- ],
- 'OrderId' => [
- 'description' => 'Work order number.'."\n"
- ."\n"
- .'This parameter is used by auditors when querying audits. You need to provide this work order number for expedited review.',
- 'type' => 'string',
- 'example' => '2004417****',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details about the access denial.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'title' => '', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990'],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Data' => ['description' => 'The trademark ID.', 'type' => 'string', 'title' => '', 'example' => '10000*******'],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'* If OK is returned, the request was successful.'."\n"
+ .'* For other error codes, see the error code list in this topic or [API error codes](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- [
- 'errorCode' => 'ParameterMismatch.ThirdParty',
- 'errorMessage' => 'The type of signature, whether for personal use or for a third party, should be consistent with the qualifications.',
- ],
- [
- 'errorCode' => 'SignName.Exists',
- 'errorMessage' => 'Sorry, this signature already exists and cannot be applied for again.',
- ],
- [
- 'errorCode' => 'InvalidQualification',
- 'errorMessage' => 'The qualification should be approved.',
- ],
- [
- 'errorCode' => 'InvalidApplySceneContent',
- 'errorMessage' => 'For certain signature sources, the '."\n"
- .'applySceneContent should be an HTTP or HTTPS link.',
- ],
- [
- 'errorCode' => 'InvalidSignName',
- 'errorMessage' => 'The signature cannot contain spaces, special '."\n"
- .'symbols, or all numbers.',
- ],
- [
- 'errorCode' => 'MissApplySceneContent',
- 'errorMessage' => 'In some signature sources, the applySceneContent is required.',
- ],
- [
- 'errorCode' => 'MissingSignName',
- 'errorMessage' => 'The signature name cannot be empty.',
- ],
- [
- 'errorCode' => 'SmsAuthorizationLetterNotMatch',
- 'errorMessage' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification.',
- ],
- [
- 'errorCode' => 'SmsAuthorizationLetterNotExist',
- 'errorMessage' => 'Authorization does not belong to the customer.',
- ],
- [
- 'errorCode' => 'SmsSignNotAuthorized',
- 'errorMessage' => 'the signature is not in the sign scope of the authorization letter.',
- ],
- [
- 'errorCode' => 'TrademarkNotExist',
- 'errorMessage' => 'The trademark does not exist.',
- ],
- [
- 'errorCode' => 'AppIcpRecordNotExist',
- 'errorMessage' => 'The APP-ICP record does not exist.',
- ],
- ],
- 404 => [
- [
- 'errorCode' => 'QualificationNotFound',
- 'errorMessage' => 'Qualification does not exist.',
- ],
- ],
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D1D\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SignName\\": \\"登录验证\\",\\n \\"OrderId\\": \\"2004417****\\"\\n}","type":"json"}]',
- 'title' => 'Update SMS Signature (New Interface)',
- 'description' => '- For details about the changes of this new interface and the original one, please refer to [Announcement on the Update of SMS Signature & Template Interfaces](https://help.aliyun.com/zh/sms/product-overview/announcement-on-sms-service-update-signature-template-interface).'."\n"
- .'- Only signatures that have not passed the review can be modified. Please refer to [Handling Suggestions for Failed SMS Reviews](https://help.aliyun.com/zh/sms/user-guide/causes-of-application-failures-and-suggestions?spm) and call this interface to modify and resubmit for review after modification.'."\n"
- .'- Signature information applied through the interface will be synchronized in the SMS service console. For operations related to signatures in the console, please see [SMS Signatures](https://help.aliyun.com/zh/sms/user-guide/create-signatures?spm).',
+ ['errorCode' => 'TrademarkOssFileNotUploadError', 'errorMessage' => 'The trademark screenshot file is not uploaded.', 'description' => ''],
+ ['errorCode' => 'TrademarkLetterDateNotMatchRegex', 'errorMessage' => 'The format of the trademark\'s validity period is incorrect.', 'description' => ''],
+ ['errorCode' => 'TrademarkNameNotMatchRegex', 'errorMessage' => 'The trademark name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'TrademarkNameOverLimit', 'errorMessage' => 'The trademark name exceeds the length limit.', 'description' => ''],
+ ['errorCode' => 'TrademarkRegistrationNumberNotMatchRegex', 'errorMessage' => 'The trademark registration number cannot be empty.', 'description' => ''],
+ ['errorCode' => 'TrademarkRegistrationNumberOverLimit', 'errorMessage' => 'The trademark registration number exceeds the length limit.', 'description' => ''],
+ ['errorCode' => 'TrademarkApplicantNameNotMatchRegex', 'errorMessage' => 'The trademark applicant cannot be empty.', 'description' => ''],
+ ['errorCode' => 'TrademarkApplicantNameOverLimit', 'errorMessage' => 'The trademark applicant exceeds the length limit.', 'description' => ''],
+ ['errorCode' => 'TrademarkDateNotValid', 'errorMessage' => 'The trademark\'s validity period is not within the valid range.', 'description' => ''],
+ ['errorCode' => 'TrademarkPicsFileError', 'errorMessage' => 'The format of the trademark screenshot file is incorrect.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Create a trademark entity',
+ 'description' => 'The trademark must be searchable on the China Trademark Network of the Trademark Office of the China National Intellectual Property Administration, and the trademark owner must match the enterprise name.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"10000*******\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
- 'DeleteSmsSign' => [
- 'summary' => 'Deletes a signature.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'DeleteShortUrl' => [
+ 'summary' => 'Deletes a short URL. After deletion, the short URL is no longer usable and cannot be resolved to the source URL.',
+ 'methods' => ['post', 'get', 'delete'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
+ 'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102444',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '102443',
+ 'abilityTreeNodes' => ['FEATUREdysmsAF8QUN'],
],
'parameters' => [
[
- 'name' => 'SignName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The signature.'."\n"
- ."\n"
- .'> The signature must be submitted by the current Alibaba Cloud account, and has been approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Aliyun',
- ],
+ 'name' => 'SourceUrl',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The source URL. The URL must not exceed 1,000 characters.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'Short Message Service does not currently support this API operation.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'https://www.****.com/product/sms', 'title' => ''],
],
],
'responses' => [
@@ -3668,111 +2194,87 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D****',
- ],
- 'SignName' => [
- 'description' => 'The signature.'."\n",
- 'type' => 'string',
- 'example' => 'Aliyun',
- ],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- `OK` indicates the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The data returned.',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
+ ],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8D****\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\'1.0\' encoding=\'UTF-8\'?>\\r\\n<DeleteSmsSignResponse>\\r\\n <Message>OK</Message>\\r\\n <RequestId>F655A8D5-B967-440B-8683-DAD6FF8D****</RequestId>\\r\\n <SignName>阿里云</SignName>\\r\\n <Code>OK</Code>\\r\\n</DeleteSmsSignResponse>","errorExample":""}]',
- 'title' => 'DeleteSmsSign',
- 'description' => '* You cannot delete a signature that has not been approved.'."\n"
- .'* After you delete a signature, you cannot recover it. Proceed with caution.'."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\"\\n}","type":"json"}]',
+ 'title' => 'DeleteShortUrl',
+ 'description' => '><notice>'."\n"
."\n"
- .'### QPS limits'."\n"
+ .'Short Message Service does not currently support this API operation.'."\n"
."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
+ .'></notice>'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ ."\n"
+ .'The QPS limit for a single user is 100. Calls that exceed this limit are subject to rate limiting, which may affect your business. To prevent disruptions, call this operation at a reasonable frequency.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'ChangeSignatureQualification' => [
- 'summary' => '更换签名的资质和授权书',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteShortUrl'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:DeleteShortUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'DeleteSmsQualification' => [
+ 'summary' => 'If you no longer use an SMS qualification or need to delete it for other reasons, call this API or delete the SMS qualification in the Short Message Service console.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '268874',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '264874',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'SignatureName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '签名',
- 'description' => '签名',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值',
- ],
- ],
- [
- 'name' => 'QualificationId',
+ 'name' => 'QualificationGroupId',
'in' => 'query',
- 'schema' => [
- 'title' => '资质id',
- 'description' => '资质id',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1*****2',
- ],
+ 'schema' => ['title' => '', 'description' => 'The qualification ID, which is the ID returned when you [apply for a qualification](~~SubmitSmsQualification~~). You can obtain the qualification ID under the current account by calling the [QuerySmsQualificationRecord](~~QuerySmsQualificationRecord~~) operation, or on the [Qualification Management](https://dysms.console.aliyun.com/domestic/text/qualification) page of Domestic Messages in the console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000****'],
],
[
- 'name' => 'AuthorizationLetterId',
+ 'name' => 'OrderId',
'in' => 'query',
- 'schema' => [
- 'title' => '授权委托书id',
- 'description' => '授权委托书id',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1000********1234',
- ],
+ 'schema' => ['title' => '', 'description' => 'The review ticket ID. You can obtain the qualification and its corresponding review ticket ID under the current account by calling the [QuerySmsQualificationRecord](~~QuerySmsQualificationRecord~~) operation, or on the [Qualification Management](https://dysms.console.aliyun.com/domestic/text/qualification) page of Domestic Messages in the console.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '2001****'],
],
],
'responses' => [
@@ -3780,480 +2282,378 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'Message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '0A974B78-02BF-4C79-ADF3-90CFBA1B55B1',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details about the access denial. This field is returned only when the RAM verification fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request, which is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate problems.', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n"],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Data' => [
- 'type' => 'object',
- 'properties' => [
- 'Data' => [
- 'type' => 'object',
- ],
- 'ErrMessage' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'Success' => [
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'ErrCode' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- ],
- ],
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
+ 'description' => 'Indicates whether the deletion is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: success.'."\n"
+ .'- **false**: failure.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
+ 'title' => '',
+ 'example' => 'true',
],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- The value OK indicates that the request was successful.'."\n"
+ .'- For more information, see the error code list in this topic or the product [error code list](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Success' => [
- 'description' => '',
+ 'description' => 'Indicates whether the API call is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call is successful.'."\n"
+ .'- **false**: The call fails.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
+ 'title' => '',
'example' => 'true',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'QualificationNotExist',
- 'errorMessage' => 'Can\'t query qualification information.',
- ],
- [
- 'errorCode' => 'SmsAuthorizationLetterNotExist',
- 'errorMessage' => 'Authorization does not belong to the customer.',
- ],
- [
- 'errorCode' => 'SmsSignatureNotExist',
- 'errorMessage' => 'Signature does not exist.',
- ],
- [
- 'errorCode' => 'SmsQualificationRegisterFailed',
- 'errorMessage' => 'The registration of the current qualification fails. Please modify the qualification and re-bind the qualification before completing the signature registration process again.',
- ],
- [
- 'errorCode' => 'SmsQualificationNotPassed',
- 'errorMessage' => 'The qualification has not been approved and cannot be bound to the signature.',
- ],
- [
- 'errorCode' => 'SmsPassedAuthorizationLetterNotMatch',
- 'errorMessage' => 'Please bind audited authorization letter whose the social credit code is same to the the social credit code of qualification.',
- ],
- [
- 'errorCode' => 'QualificationNotComplete',
- 'errorMessage' => 'The qualification elements are incomplete.',
- ],
- [
- 'errorCode' => 'SmsSignNotAuthorized',
- 'errorMessage' => 'the signature is not in the sign scope of the authorization letter.',
- ],
- [
- 'errorCode' => 'SMS_STATUS_ILLEGAL',
- 'errorMessage' => 'When replacing the qualification and power of attorney of the signature, the signature status must be approved.',
- ],
+ ['errorCode' => 'QualificationNotExist', 'errorMessage' => 'Qualification does not exist.', 'description' => ''],
+ ['errorCode' => 'BindSignDeleteFailed', 'errorMessage' => 'The qualification is bound to a signature and cannot be deleted temporarily.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"0A974B78-02BF-4C79-ADF3-90CFBA1B55B1\\",\\n \\"Data\\": {\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"ErrMessage\\": \\"OK\\",\\n \\"Success\\": true,\\n \\"ErrCode\\": \\"OK\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": true,\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Delete an SMS qualification',
+ 'description' => '><warning>Once a qualification is deleted, it cannot be restored or selected when you apply for signatures later. Proceed with caution.></warning>'."\n"
+ .'- Qualifications under review cannot be modified or deleted. You can withdraw the application in the Short Message Service [console](https://dysms.console.aliyun.com/domestic/text/qualification) before performing the operation.'."\n"
+ .'- Approved qualifications that have been bound to signatures cannot be deleted.'."\n"
+ .'- Rejected qualifications can be directly resubmitted for review after you [modify the qualification information](~~UpdateSmsQualification~~).',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
],
- 'AddSmsSign' => [
- 'summary' => 'Creates a signature.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'DeleteSmsSign' => [
+ 'summary' => 'If you no longer use an SMS signature and need to delete it, call this operation or delete the SMS signature in the SMS Service console.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
- 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102438',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '102444',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the signature.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* The signature name is not case-sensitive. For example, \\[Alibaba Cloud Communication] and \\[alibaba cloud communication] are considered as the same name.'."\n"
- ."\n"
- .'* If your verification code signature and general-purpose signature have the same name, the system uses the general-purpose signature to send messages by default.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Aliyun',
- ],
+ 'schema' => ['description' => 'The SMS signature. You can delete signatures that are in the Withdrawn, Failed, or Approved state. You cannot delete signatures that are in the Pending Approval state.'."\n"
+ ."\n"
+ .'You can call the [QuerySmsSignList](~~419282~~) operation to query the signatures that have been applied for under the current account, or view the signature list on the [Signature Management](https://dysms.console.aliyun.com/domestic/text/sign) page in the SMS console.'."\n"
+ .'><notice>Deleted SMS signatures cannot be recovered, and the signature can no longer be used to send SMS messages. Proceed with caution.></notice>', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里云', 'title' => ''],
],
- [
- 'name' => 'SignSource',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The source of the signature. Valid values:'."\n"
- ."\n"
- .'* **0**: the full name or abbreviation of an enterprise or institution'."\n"
- .'* **1**: the full name or abbreviation of a website that has obtained an ICP filing from the Ministry of Industry and Information Technology (MIIT) of China'."\n"
- .'* **2**: the full name or abbreviation of an app'."\n"
- .'* **3**: the full name or abbreviation of an official account or mini-program'."\n"
- .'* **4**: the full name or abbreviation of an e-commerce store'."\n"
- .'* **5**: the full name or abbreviation of a trademark'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '1',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'* The value OK indicates that the request was successful.'."\n"
+ .'* For information about other return values, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D****', 'title' => ''],
+ 'SignName' => ['description' => 'The name of the deleted signature.', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'Remark',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The description of the signature application. The description cannot exceed 200 characters in length. The description is one of the reference information for signature review. We recommend that you describe the use scenarios of your services in detail, and provide information that can verify the services, such as a website URL, a domain name with an ICP filing, an app download URL, an official account name, or a mini program name. For sign-in scenarios, you must also provide an account and password for tests. A detailed description can improve the review efficiency of signatures and templates.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'This is the abbreviation of our company.',
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8D****\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","type":"json"}]',
+ 'title' => 'Delete an SMS signature',
+ 'description' => '- You can delete signatures that are in the Withdrawn, Failed, or Approved state. You cannot delete signatures that are in the Pending Approval state.'."\n"
+ .'- Deleted SMS signatures cannot be recovered, and the signature can no longer be used to send SMS messages. Proceed with caution.'."\n"
+ .'- Signature deletion operations performed via the API are synchronized to the SMS Service console. For information about how to manage templates in the console, see [SMS signatures](~~108073~~).',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSmsSign'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:DeleteSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'DeleteSmsTemplate' => [
+ 'summary' => 'Deletes an SMS template that you no longer need.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- 'name' => 'SignFileList',
- 'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => 'The signature files.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The list of signature files.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'FileContents' => [
- 'description' => 'The Base64-encoded string of the qualification document. An image cannot exceed 2 MB in size. In some scenarios, you must upload supporting documents to apply for signatures. For more information, see [SMS signature specifications](~~108076~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'R0lGODlhHAAmAKIHAKqqqsvLy0hISObm5vf394uL****',
- ],
- 'FileSuffix' => [
- 'description' => 'The format of the qualification document. You can upload multiple images. Images in JPG, PNG, GIF, or JPEG format are supported.'."\n"
- ."\n"
- .'In some scenarios, you must upload supporting documents to apply for signatures. For more information, see [SMS signature specifications](~~108076~~).'."\n"
- ."\n"
- .'> If you apply for a signature for other users or if the signature source is the name of an enterprise or public institution, you must upload a certificate and a letter of authorization. For more information, see [Certificate](~~108076~~) and [Letter of authorization](~~56741~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'jpg',
- ],
- ],
- 'required' => false,
- ],
- 'required' => true,
- 'maxItems' => 10,
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '102445',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
+ ],
+ 'parameters' => [
[
- 'name' => 'SignType',
+ 'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the signature. Valid values:'."\n"
- ."\n"
- .'* **0**: verification code'."\n"
- .'* **1**: general-purpose'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The SMS template code. You can delete SMS templates that are recalled, rejected, or approved. You cannot delete SMS templates that are being reviewed.'."\n"
+ ."\n"
+ .'- You can call the [QuerySmsTemplateList](~~419288~~) operation to obtain the SMS template code.'."\n"
+ ."\n"
+ .'- You can also obtain the SMS template code on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page of the Short Message Service (SMS) console.'."\n"
+ .'><notice>Deleted SMS templates cannot be recovered and cannot be used to send messages. Proceed with caution.></notice>.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SMS_152550****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The returned data.'."\n",
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'SignName' => [
- 'description' => 'The name of the signature.'."\n",
- 'type' => 'string',
- 'example' => 'Aliyun',
- ],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'- 返回OK代表请求成功。'."\n"
+ .'- 其他错误码,请参见[API错误码](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'CCA2BCFF-2BA7-427C-90EE-AC6994748607', 'title' => ''],
+ 'TemplateCode' => ['description' => '已删除的模板Code。', 'type' => 'string', 'example' => 'SMS_152550****', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","type":"json"}]',
- 'title' => 'AddSmsSign',
- 'description' => 'You can call the AddSmsSign operation or use the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/dysms.htm#/overview) to create an SMS signature. The signature must comply with the [SMS signature specifications](~~108076~~). You can call the QuerySmsSign operation or use the SMS console to query the review status of the signature.'."\n"
- ."\n"
- .'For more information, see [Usage notes](~~55324~~).'."\n"
- ."\n"
- .'### QPS limit'."\n"
- ."\n"
- .'You can call this operation only once per second. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* You cannot cancel the review of a signature.'."\n"
- ."\n"
- .'* Individual users can create only one verification code signature, and can create only one general-purpose signature within a natural day. If you need to apply for multiple signatures, we recommend that you upgrade your account to an enterprise user.'."\n"
- ."\n"
- .'* If you need to use the same signature for messages sent to recipients both in and outside the Chinese mainland, the signature must be a general-purpose signature.'."\n"
- ."\n"
- .'* If you apply for a signature or message template, you must specify the signature scenario or template type. You must also provide the information of your services, such as a website URL, a domain name with an ICP filing, an application download URL, or the name of your WeChat official account or mini program. For sign-in scenarios, you must also provide an account and password for tests. A detailed description can improve the review efficiency of signatures and templates.'."\n"
- ."\n"
- .'* An SMS signature must undergo a thorough review process before it can be approved for use.'."\n",
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"CCA2BCFF-2BA7-427C-90EE-AC6994748607\\",\\n \\"TemplateCode\\": \\"SMS_152550****\\"\\n}","type":"json"}]',
+ 'title' => 'Delete an SMS template',
+ 'description' => '- 支持删除已撤回、审核失败或审核通过的模板,审核中的短信模板不支持删除。'."\n"
+ .'- 删除短信模板后不可恢复,且后续不可再使用该模板发送短信,请谨慎操作。'."\n"
+ .'- 通过接口删除模板的操作会在短信服务控制台同步,在控制台对模板的相关操作,请参见[短信模板](~~108085~~)。'."\n"
+ ."\n\n"
+ .'### QPS限制'."\n"
+ .'本接口的单用户QPS限制为1000次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'ModifySmsSign' => [
- 'summary' => 'Modifies a rejected signature and submit it for approval. Signatures that are pending approval or have been approved cannot be modified.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:DeleteSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetCardSmsDetails' => [
+ 'summary' => 'Queries the card SMS sending records and sending status of a single phone number.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '102449',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- ],
+ 'systemTags' => ['operationType' => 'none'],
'parameters' => [
[
- 'name' => 'SignName',
+ 'name' => 'CurrentPage',
'in' => 'query',
- 'schema' => [
- 'description' => 'The signature.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Aliyun',
- ],
+ 'schema' => ['description' => 'The current page number when you paginate sending records.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'SignSource',
+ 'name' => 'PageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The source of the signature. Valid values:'."\n"
- ."\n"
- .'* **0**: full name or abbreviation of an enterprise or institution.'."\n"
- .'* **1**: full name or abbreviation of a website with Ministry of Industry and Information Technology (MIIT) filing.'."\n"
- .'* **2**: full name or abbreviation of an app.'."\n"
- .'* **3**: full name or abbreviation of a WeChat official account or applet.'."\n"
- .'* **4**: full name or abbreviation of an e-commerce store.'."\n"
- .'* **5**: full name or abbreviation of a trademark.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The number of card SMS records to display on each page when you paginate sending records.'."\n"
+ ."\n"
+ .'Valid values: 1 to 50.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'Remark',
+ 'name' => 'SendDate',
'in' => 'query',
- 'schema' => [
- 'description' => 'The scenario description of your released services. Provide the information of your services, such as a website URL, a domain name with an ICP filing, an app download URL, or the name of your WeChat official account or mini program. For sign-in scenarios, you must also provide an account and password for tests. A detailed description can improve the review efficiency of signatures and templates.'."\n"
- ."\n"
- .'> The description can be up to 200 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'This is the abbreviation of our company.',
- ],
+ 'schema' => ['description' => 'The card SMS sending date. Records from the last 30 days can be queried.'."\n"
+ ."\n"
+ .'Format: yyyyMMdd. For example, 20240112.', 'type' => 'string', 'required' => true, 'example' => '20240112', 'title' => ''],
],
[
- 'name' => 'SignFileList',
- 'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => 'The list of signature files.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The signature files.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'FileContents' => [
- 'description' => 'The base64-encoded string of the signed files. The size of the image cannot exceed 2 MB.'."\n"
- ."\n"
- .'In some scenarios, documents are required to prove your identity. For more information, see [Signature specifications](~~108076~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'R0lGODlhHAAmAKIHAKqqqsvLy0hISObm5vf394uLiwAA',
- ],
- 'FileSuffix' => [
- 'description' => 'The format of the documents. You can upload multiple images. JPG, PNG, GIF, and JPEG are supported.'."\n"
- ."\n"
- .'In some scenarios, documents are required to prove your identity. For more information, see [Signature specifications](~~108076~~).'."\n"
- ."\n"
- .'> If the signature is used for other purposes or the signature source is an enterprise or public institution, you must upload some documents and an authorization letter. For more information, see [Documents](~~108076~~) and [Letter of authorization](~~56741~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'jpg',
- ],
- ],
- 'required' => false,
- ],
- 'required' => true,
- 'maxItems' => 10,
- ],
+ 'name' => 'PhoneNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The domestic mobile phone number that received the SMS. Format: an 11-digit mobile phone number. For example, 1390000****.', 'type' => 'string', 'required' => true, 'example' => '1390000****', 'title' => ''],
],
[
- 'name' => 'SignType',
+ 'name' => 'BizCardId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the signature. Valid values:'."\n"
- ."\n"
- .'* **0**: verification-code signature'."\n"
- .'* **1**: general-purpose signature'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- 'default' => '1',
- ],
+ 'schema' => ['description' => 'The card SMS sending ID. When you send a card SMS by calling the [SendCardSms](~~434120~~) or [SendBatchCardSms](~~434119~~) operation, obtain the BizCardId field from the response.', 'type' => 'string', 'required' => false, 'example' => '123456^0', 'title' => ''],
+ ],
+ [
+ 'name' => 'BizSmsId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The text SMS sending ID. When you send a card SMS by calling the [SendCardSms](~~434120~~) or [SendBatchCardSms](~~434119~~) operation, obtain the BizSmsId field from the response.', 'type' => 'string', 'required' => false, 'example' => '1234576^0', 'title' => ''],
+ ],
+ [
+ 'name' => 'BizDigitId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The digital SMS sending ID. When you send a card SMS by calling the [SendCardSms](~~434120~~) or [SendBatchCardSms](~~434119~~) operation, obtain the BizDigitalId field from the response.', 'type' => 'string', 'required' => false, 'example' => '12346^0', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned information.',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* For more information about other response codes, see [API error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'SignName' => [
- 'description' => 'The signature.'."\n",
- 'type' => 'string',
- 'example' => 'Aliyun',
+ 'AccessDeniedDetail' => ['description' => 'The access denied details. This parameter is returned only when the RAM check fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'Message' => ['title' => '', 'description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK'."\n"],
+ 'CardSendDetailDTO' => [
+ 'title' => '',
+ 'description' => 'The card SMS sending result.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TotalCount' => ['title' => '', 'description' => 'The total count.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'],
+ 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'],
+ 'CurrentPage' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'],
+ 'Records' => [
+ 'description' => 'The list of card SMS sending records.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The card SMS sending record.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TemplateCode' => ['title' => '', 'description' => 'The template code.', 'type' => 'string', 'example' => 'CARD_SMS_6***'],
+ 'RenderDate' => ['title' => '', 'description' => 'The render time.', 'type' => 'string', 'example' => '2024-09-27 12:13:39'],
+ 'ReceiveDate' => ['title' => '', 'description' => 'The receive time.', 'type' => 'string', 'example' => '2024-09-27 11:26:35'],
+ 'RenderStatus' => ['title' => '', 'description' => 'The parsing status. Valid values:'."\n"
+ ."\n"
+ .'- 0: not parsed.'."\n"
+ .'- 1: parsed successfully.'."\n"
+ .'- 3: not parsed.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'],
+ 'ReceiveType' => ['title' => '', 'description' => 'The SMS receive type.', 'type' => 'string', 'example' => 'CARD_SMS'],
+ 'SendStatus' => ['title' => '', 'description' => 'The sending status. Valid values:'."\n"
+ ."\n"
+ .'- 1: sending.'."\n"
+ .'- 2: sending failed.'."\n"
+ .'- 3: sending succeeded.'."\n"
+ .'- 4: addressing failed.', 'type' => 'integer', 'format' => 'int64', 'example' => '3'],
+ 'OutId' => ['title' => '', 'description' => 'The outId passed by the customer.', 'type' => 'string', 'example' => '12345678'],
+ 'PhoneNumber' => ['title' => '', 'description' => 'The phone number that received the SMS.', 'type' => 'string', 'example' => '156****9080'],
+ 'SmsContent' => ['title' => '', 'description' => 'The SMS content. Only text SMS has a value.', 'type' => 'string', 'example' => '您收到一条短信消息'],
+ 'SendDate' => ['title' => '', 'description' => 'The SMS sending time.', 'type' => 'string', 'example' => '2024-09-27 11:26:32'],
+ 'ErrCode' => ['title' => '', 'description' => 'The sending error code.', 'type' => 'string', 'example' => 'Success'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
+ 'title' => '',
+ ],
+ ],
+ 'example' => '',
],
+ 'Code' => ['title' => '', 'description' => 'The request status code.'."\n"
+ .'* OK indicates that the request was successful.'."\n"
+ .'* For other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK'."\n"],
+ 'Success' => ['description' => 'Indicates whether the call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'errorCodes' => [
+ 400 => [
+ ['errorMessage' => 'Incorrect phone number format.', 'errorCode' => 'InvalidParam.PhoneNumber', 'description' => 'Incorrect phone number format'],
+ ['errorMessage' => 'PageSize must be less than or equal to 50.', 'errorCode' => 'InvalidParam.PageSize', 'description' => 'pageSize must be less than or equal to 50'],
+ ['errorMessage' => 'Only the last 30 days can be queried.', 'errorCode' => 'InvalidParam.SendDate', 'description' => 'Only the data of the last 30 days can be queried'],
+ ['errorMessage' => 'At most, only one parameter can be passed among bizCardId, bizSmsId, and bizDigitId.', 'errorCode' => 'InvalidParameter', 'description' => 'At most, only one parameter can be passed among bizCardId, bizSmsId, and bizDigitId.'],
+ ],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\'1.0\' encoding=\'UTF-8\'?>\\r\\n<ModifySmsSignResponse>\\r\\n <Message>OK</Message>\\r\\n <RequestId>44DF7A95-603F-4651-9298-BE1850BEB53F</RequestId>\\r\\n <Code>OK</Code>\\r\\n <SignName>阿里云</SignName>\\r\\n</ModifySmsSignResponse>","errorExample":""}]',
- 'title' => 'ModifySmsSign',
- 'description' => 'You can call the operation or use the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm#/overview) to modify an existing signature and submit the signature for approval. The signature must comply with the [signature specifications](~~108076~~).'."\n"
- ."\n"
- .'For more information, see [Usage notes](~~55324~~).'."\n"
- ."\n"
- .'### QPS limits'."\n"
- ."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* Signatures pending approval cannot be modified.'."\n"
- ."\n"
- .'* You cannot modify a signature after it is approved. If you no longer need the signature, you can delete it.'."\n"
- ."\n"
- .'* If you are an individual user, you cannot apply for a new signature on the same day that your signature is rejected or deleted. We recommend that you modify the rejected signature and submit it again.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
- ],
- 'QuerySmsSign' => [
- 'summary' => 'Queries the status of a signature.',
- 'methods' => [
- 'post',
- 'get',
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"Message\\": \\"OK\\\\n\\",\\n \\"CardSendDetailDTO\\": {\\n \\"TotalCount\\": 10,\\n \\"PageSize\\": 10,\\n \\"CurrentPage\\": 1,\\n \\"Records\\": [\\n {\\n \\"TemplateCode\\": \\"CARD_SMS_6***\\",\\n \\"RenderDate\\": \\"2024-09-27 12:13:39\\",\\n \\"ReceiveDate\\": \\"2024-09-27 11:26:35\\",\\n \\"RenderStatus\\": 1,\\n \\"ReceiveType\\": \\"CARD_SMS\\",\\n \\"SendStatus\\": 3,\\n \\"OutId\\": \\"12345678\\",\\n \\"PhoneNumber\\": \\"156****9080\\",\\n \\"SmsContent\\": \\"您收到一条短信消息\\",\\n \\"SendDate\\": \\"2024-09-27 11:26:32\\",\\n \\"ErrCode\\": \\"Success\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"OK\\\\n\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Queries the card SMS sending records and sending status of a single phone number',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCardSmsDetails'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:GetCardSmsDetails',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetCardSmsLink' => [
+ 'summary' => 'Retrieves the short URL for a card message.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -4265,280 +2665,272 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102459',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '125584',
+ 'abilityTreeNodes' => ['FEATUREdysms17QZIS'],
],
'parameters' => [
[
- 'name' => 'SignName',
+ 'name' => 'CardTemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The signature.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Aliyun',
- ],
+ 'schema' => ['description' => 'The code of the card message template. In the console, go to the [Card Messages > Template Management](https://dysms.console.aliyun.com/domestic/card) page and select the code of an approved card message template.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'CARD_SMS_****', 'title' => ''],
+ ],
+ [
+ 'name' => 'OutId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The external extension field.', 'type' => 'string', 'required' => false, 'example' => 'BC20220608102511660860762****', 'title' => ''],
+ ],
+ [
+ 'name' => 'PhoneNumberJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The phone number, user ID, or internal system identifier.'."\n"
+ ."\n"
+ .'> - Supports up to 10,000 phone numbers.'."\n"
+ .'> - You can also specify a custom identifier of up to 60 characters.'."\n"
+ .'> - For OPPO templates, you can submit up to 10 requests at a time.', 'type' => 'string', 'required' => false, 'example' => '[\\"1390000****'."\n"
+ .'\\",\\"1370000****'."\n"
+ .'\\"]', 'title' => ''],
+ ],
+ [
+ 'name' => 'SignNameJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The signature name of the SMS message.'."\n"
+ .'In the console, go to the [Domestic Messages > Signature Management](https://dysms.console.aliyun.com/domestic/text/sign) tab and view the name in the **Signature Name** column. You can also call the [QuerySmsSignList](https://www.alibabacloud.com/help/en/sms/developer-reference/api-dysmsapi-2017-05-25-querysmssignlist) operation to view SMS signature names.'."\n"
+ ."\n"
+ .'> The signature must be added and approved. The number of SMS signatures must match the number of phone numbers, and each signature must correspond to a phone number.', 'type' => 'string', 'required' => true, 'example' => '[\\"阿里云\\", \\"阿里云2\\"]', 'title' => ''],
+ ],
+ [
+ 'name' => 'CardTemplateParamJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The variables of the card message template.', 'type' => 'string', 'required' => false, 'example' => ' [{\\"customUrl\\":\\"https://alibaba.com\\",\\"dyncParams\\": \\"{\\\\\\"动参key\\\\\\":\\\\\\"动参value\\\\\\"}\\"},{\\"customUrl\\":\\"https://alibaba.com\\",\\"dyncParams\\": \\"{\\\\\\"动参key\\\\\\":\\\\\\"动参value\\\\\\"}\\"}]', 'title' => ''],
+ ],
+ [
+ 'name' => 'CardCodeType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The encoding type of the short URL for the card message. Valid values:'."\n"
+ .'- 1: bulk sending.'."\n"
+ .'- 2: personalized.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''],
+ ],
+ [
+ 'name' => 'CardLinkType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The type of the short URL for the card message. Valid values:'."\n"
+ .'- 1: standard short URL.'."\n"
+ .'- 2: custom short URL.'."\n"
+ ."\n"
+ .'> If **CardLinkType** is left empty, the default value is standard short URL. To generate a custom short URL, contact Alibaba Cloud operations to register in advance.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'Domain',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The short URL domain assigned to the sending account. The domain must be registered in advance.'."\n"
+ ."\n"
+ .'> - When **CardLinkType** is set to **2**, the **Domain** parameter is required.'."\n"
+ .'> - If the **Domain** parameter is left empty, the system default domain is used. The value can be up to 100 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'xxx.com', 'title' => ''],
+ ],
+ [
+ 'name' => 'CustomShortCodeJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The custom short code. The value must be 4 to 8 digits or letters.'."\n"
+ ."\n"
+ .'> This parameter is required when the generation type is custom short URL.', 'type' => 'string', 'required' => false, 'example' => 'abCde', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => '返回数据。',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'CC89A90C-978F-46AC-B80D-54738371E7CA',
- ],
- 'SignStatus' => [
- 'description' => 'The status of the signature. Valid values:'."\n"
- ."\n"
- .'* **0**: The signature is pending approval.'."\n"
- .'* **1**: The signature is approved.'."\n"
- .'* **2**: The signature is rejected. The Reason parameter indicates the reason why the signature is rejected.'."\n"
- .'* **10**: The signature is cancelled.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'CreateDate' => [
- 'description' => 'The date and time when the signature was created.'."\n",
- 'type' => 'string',
- 'example' => ' 2019-01-08 16:44:13',
- ],
- 'Reason' => [
- 'description' => 'The remarks of the review. Valid values:'."\n"
- ."\n"
- .'* If the signature is in the **Approved** or **Pending Approval** state, No Remarks is returned.'."\n"
- .'* If the signature is in the **Not Approved** state, the reason why the signature is rejected is returned.'."\n",
- 'type' => 'string',
- 'example' => 'The document cannot verify the authenticity of the information. Please upload it again.',
- ],
- 'SignName' => [
- 'description' => 'The signature.'."\n",
- 'type' => 'string',
- 'example' => 'Aliyun',
+ 'Code' => ['description' => '请求状态码。取值:'."\n"
+ .'- OK:代表请求成功。'."\n"
+ .'- 其他错误码,请参见[错误码列表](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。'."\n", 'type' => 'string', 'example' => 'CC89A90C-978F-46AC-B80D-54738371E7CA', 'title' => ''],
+ 'Success' => ['description' => '接口调用是否成功。取值:'."\n"
+ ."\n"
+ .'- **true**:调用成功。'."\n"
+ .'- **false**:调用失败。', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'description' => '返回数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CardTmpState' => ['description' => '卡片短信模板审核状态。取值:'."\n"
+ .'- **0**:审核中。'."\n"
+ .'- **1**:审核通过。'."\n"
+ .'- **2**:审核不通过。'."\n"
+ ."\n"
+ .'> 未审核通过的短信走回落流程。', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'NotMediaMobiles' => ['description' => '不支持卡片短信的手机号。', 'type' => 'string', 'example' => '1390000****', 'title' => ''],
+ 'CardPhoneNumbers' => ['description' => '支持卡片短信的手机号码。', 'type' => 'string', 'example' => '[\\"1390000****\\",\\"1370000****\\"]', 'title' => ''],
+ 'CardSmsLinks' => ['description' => '卡片短信短链。', 'type' => 'string', 'example' => '[\\"mw2m.cn/LAaGGa\\",\\"mw2m.cn/LAAaes\\"]', 'title' => ''],
+ 'CardSignNames' => ['description' => '用于申请卡片短信短链的短信签名,在发送时签名、接收号码、卡片短信短链要一一对应。', 'type' => 'string', 'example' => '["阿里云","阿里云2"]', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'errorCodes' => [
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
+ ],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CC89A90C-978F-46AC-B80D-54738371E7CA\\",\\n \\"SignStatus\\": 1,\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"CreateDate\\": \\" 2019-01-08 16:44:13\\",\\n \\"Reason\\": \\"文件不能证明信息真实性,请重新上传\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\'1.0\' encoding=\'UTF-8\'?>\\r\\n<QuerySmsSignResponse>\\r\\n\\t<Message>OK</Message>\\r\\n\\t<RequestId>CC89A90C-978F-46AC-B80D-54738371E7CA</RequestId>\\r\\n\\t<SignStatus>1</SignStatus>\\r\\n\\t<CreateDate>2019-01-08 16:44:13</CreateDate>\\r\\n\\t<Code>OK</Code>\\r\\n\\t<SignName>阿里云</SignName>\\r\\n\\t<Reason>文件不能证明信息真实性,请重新上传</Reason>\\r\\n</QuerySmsSignResponse>","errorExample":""}]',
- 'title' => 'QuerySmsSign',
- 'description' => 'After you apply for an SMS signature, you can query its status by using the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm) or calling the operation. If the signature is rejected, you can modify the signature based on the reason why it is rejected.'."\n"
- ."\n"
- .'### QPS limits'."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"CC89A90C-978F-46AC-B80D-54738371E7CA\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"CardTmpState\\": 0,\\n \\"NotMediaMobiles\\": \\"1390000****\\",\\n \\"CardPhoneNumbers\\": \\"[\\\\\\\\\\\\\\"1390000****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"1370000****\\\\\\\\\\\\\\"]\\",\\n \\"CardSmsLinks\\": \\"[\\\\\\\\\\\\\\"mw2m.cn/LAaGGa\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"mw2m.cn/LAAaes\\\\\\\\\\\\\\"]\\",\\n \\"CardSignNames\\": \\"[\\\\\\"阿里云\\\\\\",\\\\\\"阿里云2\\\\\\"]\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Retrieve the short URL for a card message',
+ 'description' => '- 目前卡片短信在内部邀约阶段,请联系您的阿里云商务经理申请开通或联系[阿里云售前咨询](https://help.aliyun.com/document_detail/464625.html?spm=a2c4g.11186623.0.0.213273d4Xe6UEu#section-81n-72q-ybm)。'."\n"
."\n"
- .'You can call this API operation up to 500 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
- ],
- 'CreateSmsTrademark' => [
- 'summary' => '创建商标对客openAPI',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
+ .'### QPS限制'."\n"
+ .'- 本接口的单用户QPS限制为1000次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '8000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCardSmsLink'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetCardSmsLink',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetMediaResourceId' => [
+ 'summary' => 'Converts images and videos uploaded to OSS storage for card SMS into resource data for unified management, and returns a resource ID. You can manage the returned resource ID as needed.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '289843',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '102446',
+ 'abilityTreeNodes' => ['FEATUREdysms17QZIS'],
],
'parameters' => [
[
- 'name' => 'TrademarkPic',
+ 'name' => 'ResourceType',
'in' => 'query',
- 'schema' => [
- 'title' => '商标详情截图osskey',
- 'description' => '商标详情截图osskey',
- 'type' => 'string',
- 'required' => true,
- 'example' => '123456/test1719383196031.jpg',
- ],
+ 'schema' => ['description' => 'The resource type.'."\n"
+ ."\n"
+ .'- **1**: Text'."\n"
+ .'- **2**: Image. Small images must not exceed 100 KB. Large images must not exceed 2 MB. Images must be clear. Supported formats: JPG, JPEG, PNG.'."\n"
+ .'- **3**: Audio'."\n"
+ .'- **4**: Video. Supported format: MP4.'."\n"
+ .'> '."\n"
+ .'> - If the resource type is image, **img_rate** is required.'."\n"
+ .'> - 1:1 ratio: oneToOne'."\n"
+ .'> - 16:9 ratio: sixteenToNine'."\n"
+ .'> - 3:1 ratio: threeToOne'."\n"
+ .'> - 48:65 ratio: fortyEightToSixtyFiv.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'maximum' => '10000', 'minimum' => '0', 'example' => '1', 'title' => ''],
],
[
- 'name' => 'TrademarkRegistrationNumber',
+ 'name' => 'OssKey',
'in' => 'query',
- 'schema' => [
- 'title' => '商标注册号',
- 'description' => '商标注册号',
- 'type' => 'string',
- 'required' => true,
- 'example' => '766905',
- ],
+ 'schema' => ['description' => 'The address of the resource to retrieve.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'oss://alicom-fc-media/1947741454322274/alicom-fc-media/pic/202205191526575398603697152.png', 'title' => ''],
],
[
- 'name' => 'TrademarkName',
+ 'name' => 'FileSize',
'in' => 'query',
- 'schema' => [
- 'title' => '商标名称',
- 'description' => '商标名称',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值示例值',
- ],
+ 'schema' => ['description' => 'The file size. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'maximum' => '9223372036854775807', 'minimum' => '0', 'example' => '12', 'title' => ''],
],
[
- 'name' => 'TrademarkApplicantName',
+ 'name' => 'ExtendInfo',
'in' => 'query',
- 'schema' => [
- 'title' => '申请人名称',
- 'description' => '申请人名称',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值',
- ],
+ 'schema' => ['description' => 'The extended field.'."\n"
+ ."\n"
+ .'> Required when the resource type is **image**.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => '{\\"img_rate\\":\\"oneToOne\\"}', 'title' => ''],
],
[
- 'name' => 'TrademarkEffExpDate',
+ 'name' => 'Memo',
'in' => 'query',
- 'schema' => [
- 'title' => '专用权生失效日期',
- 'description' => '专用权生失效日期',
- 'type' => 'string',
- 'required' => true,
- 'example' => '2010-12-14~2030-12-13',
- ],
+ 'schema' => ['description' => 'The description of the uploaded resource.', 'type' => 'string', 'required' => false, 'example' => '图片信息', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => '返回数据。',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'- 返回OK代表请求成功。'."\n"
+ .'- 其他错误码,请参见[错误码列表](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'F07CF237-F6E3-5F77-B91B-F9B7C5DE84AB', 'title' => ''],
+ 'Success' => ['description' => '调用接口是否成功。取值:'."\n"
+ ."\n"
+ .'- **true**:调用成功。'."\n"
+ ."\n"
+ .'- **false**:调用失败。', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Data' => [
+ 'description' => '返回数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceId' => ['description' => '资源ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'ResUrlDownload' => ['description' => '资源下载地址。', 'type' => 'string', 'example' => 'http://test-example.com/download.jpg', 'title' => ''],
+ ],
'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '10000*******',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'TrademarkOssFileNotUploadError',
- 'errorMessage' => 'The trademark screenshot file is not uploaded.',
- ],
- [
- 'errorCode' => 'TrademarkLetterDateNotMatchRegex',
- 'errorMessage' => 'The format of the trademark\'s validity period is incorrect.',
- ],
- [
- 'errorCode' => 'TrademarkNameNotMatchRegex',
- 'errorMessage' => 'The trademark name cannot be empty.',
- ],
- [
- 'errorCode' => 'TrademarkNameOverLimit',
- 'errorMessage' => 'The trademark name exceeds the length limit.',
- ],
- [
- 'errorCode' => 'TrademarkRegistrationNumberNotMatchRegex',
- 'errorMessage' => 'The trademark registration number cannot be empty.',
- ],
- [
- 'errorCode' => 'TrademarkRegistrationNumberOverLimit',
- 'errorMessage' => 'The trademark registration number exceeds the length limit.',
- ],
- [
- 'errorCode' => 'TrademarkApplicantNameNotMatchRegex',
- 'errorMessage' => 'The trademark applicant cannot be empty.',
- ],
- [
- 'errorCode' => 'TrademarkApplicantNameOverLimit',
- 'errorMessage' => 'The trademark applicant exceeds the length limit.',
- ],
- [
- 'errorCode' => 'TrademarkDateNotValid',
- 'errorMessage' => 'The trademark\'s validity period is not within the valid range.',
- ],
- [
- 'errorCode' => 'TrademarkPicsFileError',
- 'errorMessage' => 'The format of the trademark screenshot file is incorrect.',
- ],
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"F07CF237-F6E3-5F77-B91B-F9B7C5DE84AB\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"ResourceId\\": 0,\\n \\"ResUrlDownload\\": \\"http://test-example.com/download.jpg\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Retrieve a media resource ID',
+ 'description' => '### QPS限制'."\n"
+ .'本接口的单用户QPS限制为300次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMediaResourceId'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetMediaResourceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"10000*******\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
- 'QuerySmsTrademark' => [
- 'summary' => '查询商标对客openAPI',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'GetOSSInfoForCardTemplate' => [
+ 'summary' => 'Retrieves the OSS resource configuration information for card messages. This information is used for subsequent OSS file upload operations.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -4550,226 +2942,184 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '289842',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
- ],
- 'parameters' => [
- [
- 'name' => 'TrademarkIdList',
- 'in' => 'query',
- 'style' => 'json',
- 'schema' => [
- 'title' => '商标实体id列表',
- 'description' => '商标实体id列表',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '100000***',
- ],
- 'required' => true,
- 'example' => '',
- ],
- ],
+ 'abilityTreeCode' => '102447',
+ 'abilityTreeNodes' => ['FEATUREdysms17QZIS'],
],
+ 'parameters' => [],
'responses' => [
200 => [
'schema' => [
+ 'description' => '返回数据。',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '569E9DBD-23FF-1785-99AD-E4B23608C104',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'- OK:代表请求成功。'."\n"
+ .'- 其他错误码,请参见[API错误码](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D0D', 'title' => ''],
+ 'Success' => ['description' => '调用接口是否成功。取值:'."\n"
+ ."\n"
+ .'- **true**:调用成功。'."\n"
+ ."\n"
+ .'- **false**:调用失败。', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'TrademarkPicUrl' => [
- 'title' => '商标截图url地址',
- 'description' => '商标截图url地址',
- 'type' => 'string',
- 'example' => 'https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D',
- ],
- 'TrademarkRegistrationNumber' => [
- 'title' => '商标注册号',
- 'description' => '商标注册号',
- 'type' => 'string',
- 'example' => '1234',
- ],
- 'TrademarkName' => [
- 'title' => '商标名称',
- 'description' => '商标名称',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'TrademarkPic' => [
- 'title' => '商标截图Osskey(给签名传工单用)',
- 'description' => '商标截图Osskey(给签名传工单用)',
- 'type' => 'string',
- 'example' => '100000*****802/afdebd46-****-46e4-899d-b4375826c898_mhk9oz0p_1762****31542.png',
- ],
- 'TrademarkEffExpDate' => [
- 'title' => '专用权生失效日期',
- 'description' => '专用权生失效日期',
- 'type' => 'string',
- 'example' => '2025-11-01~2025-12-19',
- ],
- 'TrademarkId' => [
- 'title' => '商标材料id',
- 'description' => '商标材料id',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '10000*******',
- ],
- 'TrademarkApplicantName' => [
- 'title' => '申请人名称',
- 'description' => '申请人名称',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- ],
+ 'description' => '返回数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Signature' => ['description' => '短信签名。', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
+ 'Host' => ['description' => '访问地址。', 'type' => 'string', 'example' => 'http://***.aliyuncs.com'."\n", 'title' => ''],
+ 'Policy' => ['description' => '签名策略。', 'type' => 'string', 'example' => 'eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0yNlQwMzo0NDoyMy4xNTlaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0sWyJzdGFydHMtd2l0aCIsIiRrZXkiLCIxNDIwNjM0******************', 'title' => ''],
+ 'ExpireTime' => ['description' => '超时时间戳。单位:秒。', 'type' => 'string', 'example' => '1634209418', 'title' => ''],
+ 'AliUid' => ['description' => '阿里云账号ID。', 'type' => 'string', 'example' => '168**********184'."\n", 'title' => ''],
+ 'AccessKeyId' => ['description' => '签名使用的AccessKey ID。', 'type' => 'string', 'example' => 'LTAI************', 'title' => ''],
+ 'StartPath' => ['description' => '策略路径。', 'type' => 'string', 'example' => '168**********184', 'title' => ''],
+ 'Bucket' => ['description' => 'OSS文件保存桶名称。', 'type' => 'string', 'example' => 'alicom-cardsms-resources', 'title' => ''],
],
- 'example' => '',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"569E9DBD-23FF-1785-99AD-E4B23608C104\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": [\\n {\\n \\"TrademarkPicUrl\\": \\"https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D\\",\\n \\"TrademarkRegistrationNumber\\": \\"1234\\",\\n \\"TrademarkName\\": \\"示例商标\\",\\n \\"TrademarkPic\\": \\"100000*****802/afdebd46-****-46e4-899d-b4375826c898_mhk9oz0p_1762****31542.png\\",\\n \\"TrademarkEffExpDate\\": \\"2025-11-01~2025-12-19\\",\\n \\"TrademarkId\\": 0,\\n \\"TrademarkApplicantName\\": \\"阿里云\\"\\n }\\n ],\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- ],
- 'CreateSmsAppIcpRecord' => [
- 'summary' => '创建APP-ICP备案对客openAPI',
- 'methods' => [
- 'post',
- 'get',
+ 'errorCodes' => [
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D0D\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Signature\\": \\"阿里云\\",\\n \\"Host\\": \\"http://***.aliyuncs.com\\\\n\\",\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0yNlQwMzo0NDoyMy4xNTlaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0sWyJzdGFydHMtd2l0aCIsIiRrZXkiLCIxNDIwNjM0******************\\",\\n \\"ExpireTime\\": \\"1634209418\\",\\n \\"AliUid\\": \\"168**********184\\\\n\\",\\n \\"AccessKeyId\\": \\"LTAI************\\",\\n \\"StartPath\\": \\"168**********184\\",\\n \\"Bucket\\": \\"alicom-cardsms-resources\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Retrieve OSS upload information',
+ 'description' => '- 您在调用卡片短信相关API接口前,首先需要开通卡片短信功能,目前卡片短信在内部邀约阶段,请联系您的阿里云商务经理申请开通或联系[阿里云售前咨询](https://help.aliyun.com/document_detail/464625.html)。'."\n"
+ ."\n"
+ .'- 卡片短信模板中使用的图片、视频等素材资源可上传到OSS文件系统保存。文件上传操作,请参见[OSS文件上传](~~437303~~)。'."\n"
+ ."\n"
+ .'### QPS限制'."\n"
+ .'本接口的单用户QPS限制为300次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。',
+ 'requestParamsDescription' => '### Request parameter description'."\n"
+ .'The GetOSSInfoForCardTemplate operation has no request parameters. Call the operation directly to retrieve the OSS upload information.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOSSInfoForCardTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetOSSInfoForCardTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetOSSInfoForUploadFile' => [
+ 'summary' => 'Obtains OSS resource configuration information, which will be used for subsequent OSS file upload operations.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '289841',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '218013',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P', 'FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'AppIcpRecordPic',
- 'in' => 'query',
- 'schema' => [
- 'title' => 'app-icp备案详情截图osskey',
- 'description' => 'app-icp备案详情截图osskey',
- 'type' => 'string',
- 'required' => true,
- 'example' => ' '."\n"
- .'123456/test1719383196031.jpg'."\n",
- ],
- ],
- [
- 'name' => 'AppServiceName',
+ 'name' => 'BizType',
'in' => 'query',
- 'schema' => [
- 'title' => 'app服务名称',
- 'description' => 'app服务名称',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值示例值',
- ],
+ 'schema' => ['description' => 'The business type. Default value: **fcMediaSms**.'."\n"
+ ."\n"
+ .'When you create a signature or template and upload **More Materials**, the value is **fcMediaSms**.', 'type' => 'string', 'required' => false, 'example' => 'fcMediaSms', 'default' => 'fcMediaSms', 'title' => ''],
],
- [
- 'name' => 'AppPrincipalUnitName',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '主办单位名称',
- 'description' => '主办单位名称',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值示例值',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['description' => 'The ID of the request, which is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate issues.', 'type' => 'string', 'example' => 'A90E4451-FED7-49D2-87C8-00700EDCFD0D', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Model' => [
+ 'description' => 'The returned result.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Policy' => ['description' => 'The signature policy.', 'type' => 'string', 'example' => 'eyJleHBpcmF0aW9uIjoiMjAyN***Ni0yNVQwNjozNzoyNS45NzBaI**iY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0sWyJzdGFydHMtd2l0***sIiRrZXkiLCIiXV19', 'title' => ''],
+ 'StartPath' => ['description' => 'The policy path.', 'type' => 'string', 'example' => '123456', 'title' => ''],
+ 'AccessKeyId' => ['description' => 'The AccessKey ID used for the signature.', 'type' => 'string', 'example' => 'LTAI************'."\n", 'title' => ''],
+ 'Signature' => ['description' => 'The signature information calculated based on the **AccessKey Secret** and **Policy**. When you call an OSS API operation, OSS verifies the signature information to confirm the validity of the POST request.', 'type' => 'string', 'example' => 'BXnwCWPrhVb*****aoZHZfli5KE=', 'title' => ''],
+ 'Host' => ['description' => 'The host address.', 'type' => 'string', 'example' => 'https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com', 'title' => ''],
+ 'ExpireTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '1719297445', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- **OK** indicates that the request is successful.'."\n"
+ .'- For information about other error codes, see [Error codes](https://help.aliyun.com/document_detail/101346.htm).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the API call is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call is successful.'."\n"
+ .'- **false**: The call fails.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'AppIcpLicenseNumber',
- 'in' => 'query',
- 'schema' => [
- 'title' => 'ICP备案/许可证号',
- 'description' => 'ICP备案/许可证号',
- 'type' => 'string',
- 'required' => true,
- 'example' => '示例值示例值',
- ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700EDCFD0D\\",\\n \\"Message\\": \\"OK\\",\\n \\"Model\\": {\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyN***Ni0yNVQwNjozNzoyNS45NzBaI**iY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0sWyJzdGFydHMtd2l0***sIiRrZXkiLCIiXV19\\",\\n \\"StartPath\\": \\"123456\\",\\n \\"AccessKeyId\\": \\"LTAI************\\\\n\\",\\n \\"Signature\\": \\"BXnwCWPrhVb*****aoZHZfli5KE=\\",\\n \\"Host\\": \\"https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com\\",\\n \\"ExpireTime\\": \\"1719297445\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Obtain OSS Configuration Information for Signature/Template Materials',
+ 'description' => '- When you create a signature or template, you can upload materials such as login pages with links, backend page screenshots, software copyrights, and supplementary agreements. These materials help reviewers understand the details of your business. If you have multiple materials, you can combine them into one file. The supported formats are png, jpg, jpeg, doc, docx, and pdf.'."\n"
+ ."\n"
+ .'- Additional materials required for creating a signature or template can be uploaded to the OSS file system for storage. For information about file upload operations, see [Upload files to OSS](~~2833114~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOSSInfoForUploadFile'],
],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
+ ],
+ 'GetQualificationOssInfo' => [
+ 'summary' => 'Obtains the OSS resource configuration information for qualification materials. This configuration information will be used for subsequent uploads of qualification files such as authorization letters and enterprise certificates.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'AppApprovalDate',
- 'in' => 'query',
- 'schema' => [
- 'title' => '审核通过日期,示例2025-09-01',
- 'description' => '审核通过日期,示例2025-09-01',
- 'type' => 'string',
- 'required' => true,
- 'example' => '2025-05-22',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '264692',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
+ ],
+ 'parameters' => [
[
- 'name' => 'Domain',
+ 'name' => 'BizType',
'in' => 'query',
- 'schema' => [
- 'title' => 'APP应用商店链接',
- 'description' => 'APP应用商店链接',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'https://alicom-ops.alibaba-inc.com/dyorder/audit-domain/rule_manage',
- ],
+ 'schema' => ['title' => '', 'description' => 'The business type. When applying for a qualification or creating an authorization letter file, enter **dysms**.', 'type' => 'string', 'required' => true, 'example' => 'dysms'],
],
],
'responses' => [
@@ -4777,102 +3127,63 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990'."\n",
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details about the access denial. This parameter is returned only if the RAM check fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request, which is a unique identifier generated by Alibaba Cloud for the request. It can be used to troubleshoot and locate issues.', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Data' => [
'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '10000*******',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
+ 'description' => 'The OSS configuration information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Policy' => ['title' => '', 'description' => 'The signature policy.', 'type' => 'string', 'example' => 'eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********'],
+ 'Expire' => ['title' => '', 'description' => 'The expiration timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1741521339'],
+ 'StartPath' => ['title' => '', 'description' => 'The policy path.', 'type' => 'string', 'example' => '1000********001'],
+ 'AccessKeyId' => ['title' => '', 'description' => 'The AccessKey ID used for the signature.', 'type' => 'string', 'example' => 'bypFNbG******'],
+ 'Signature' => ['title' => '', 'description' => 'The signature information calculated based on the AccessKey secret and the policy. When you call the OSS API, OSS verifies the signature information to confirm the validity of the request.', 'type' => 'string', 'example' => 'QvNTGC9DSLTeByP+ZWW******'],
+ 'Host' => ['title' => '', 'description' => 'The host address.', 'type' => 'string', 'example' => 'http://***.oss-cn-zhangjiakou.aliyuncs.com'],
+ ],
+ 'example' => '',
],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- If OK is returned, the request is successful.'."\n"
+ .'- For other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => 'Indicates whether the API call is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call is successful.'."\n"
+ ."\n"
+ .'- **false**: The call fails.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'AppIcpRecordOssFileNotUploadError',
- 'errorMessage' => 'The APP-ICP record screenshot file is not uploaded.',
- ],
- [
- 'errorCode' => 'AppIcpRecordDateNotMatchRegex',
- 'errorMessage' => 'The format of the APP-ICP record approval date is incorrect.',
- ],
- [
- 'errorCode' => 'AppPrincipalUnitNameNotMatchRegex',
- 'errorMessage' => 'The principal unit name of the APP cannot be empty.',
- ],
- [
- 'errorCode' => 'AppPrincipalUnitNameOverLimit',
- 'errorMessage' => 'The principal unit name of the APP exceeds the length limit.',
- ],
- [
- 'errorCode' => 'AppIcpLicenseNumberNotMatchRegex',
- 'errorMessage' => 'The ICP record/license number cannot be empty.',
- ],
- [
- 'errorCode' => 'AppIcpLicenseNumberOverLimit',
- 'errorMessage' => 'The ICP record/license number exceeds the length limit.',
- ],
- [
- 'errorCode' => 'AppDomainNotMatchRegex',
- 'errorMessage' => 'The APP app store link cannot be empty and must start with http:// or https://.',
- ],
- [
- 'errorCode' => 'AppDomainOverLimit',
- 'errorMessage' => 'The APP app store link exceeds the length limit.',
- ],
- [
- 'errorCode' => 'AppApprovalDateNotValid',
- 'errorMessage' => 'The validity period of the APP-ICP record is not within the valid range.',
- ],
- [
- 'errorCode' => 'AppIcpRecordPicsFileError',
- 'errorMessage' => 'The format of the APP-ICP record screenshot file is incorrect.',
- ],
+ ['errorCode' => 'OssBiztypeNotSupportError', 'errorMessage' => 'Retrieving OSS configuration does not support this biz type.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"10000*******\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********\\",\\n \\"Expire\\": 1741521339,\\n \\"StartPath\\": \\"1000********001\\",\\n \\"AccessKeyId\\": \\"bypFNbG******\\",\\n \\"Signature\\": \\"QvNTGC9DSLTeByP+ZWW******\\",\\n \\"Host\\": \\"http://***.oss-cn-zhangjiakou.aliyuncs.com\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Obtain the OSS configuration information for qualification materials/authorization letters',
+ 'description' => '- When you apply for a qualification or signature, if the purpose is for other use or involves a third party, you must provide an [authorization letter](~~56741~~).'."\n"
+ .'- After you use this API to obtain the OSS resource configuration information, upload the related qualification materials through OSS. For more information, see [Upload files through OSS](~~2833114~~).'."\n"
+ .'- The names of files to be uploaded cannot contain Chinese characters or special symbols.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
],
- 'QuerySmsAppIcpRecord' => [
- 'summary' => '查询APP-ICP备案对客openAPI',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'GetSmsOcrOssInfo' => [
+ 'summary' => 'Retrieves the OSS information for OCR.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -4884,31 +3195,23 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '289840',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '287263',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'AppIcpRecordIdList',
+ 'name' => 'TaskType',
'in' => 'query',
- 'style' => 'json',
'schema' => [
- 'title' => 'app-icp备案实体id列表',
- 'description' => 'app-icp备案实体id列表',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '100000***',
- ],
- 'required' => true,
- 'example' => '',
+ 'title' => '',
+ 'description' => 'The OCR task type. Valid values:'."\n"
+ .'- ICP_DOMAIN: ICP filing screenshot for domain-type links.',
+ 'enumValueTitles' => ['ICP_DOMAIN' => 'ICP filing screenshot for domain-type links.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ICP_DOMAIN',
],
],
],
@@ -4917,269 +3220,89 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'C9955E63-8BFF-101D-80A1-E6998DFEFF1A',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息,只有 RAM 校验失败才会返回此字段。', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'RequestId' => ['description' => '本次调用请求的 ID,是由阿里云为该请求生成的唯一标识符,可用于排查和定位问题。', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-xxxx-132E-8909-1FDC071DA'],
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Model' => [
'title' => '',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'AppIcpRecordId' => [
- 'title' => 'app-icp备案材料id',
- 'description' => 'app-icp备案材料id',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '51',
- ],
- 'AppIcpRecordPic' => [
- 'title' => 'app-icp备案截图图片Osskey(给签名传工单用)',
- 'description' => 'app-icp备案截图图片Osskey(给签名传工单用)',
- 'type' => 'string',
- 'example' => '10000025*****02/ac181696-****-49c6-90dc-50689267aa00_mhsjd8b8_17*****662348.jpeg',
- ],
- 'AppIcpRecordPicUrl' => [
- 'title' => 'app-icp备案截图url地址',
- 'description' => 'app-icp备案截图url地址',
- 'type' => 'string',
- 'example' => 'https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D',
- ],
- 'AppPrincipalUnitName' => [
- 'title' => '主办单位名称',
- 'description' => '主办单位名称',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'AppIcpLicenseNumber' => [
- 'title' => 'ICP备案/许可证号',
- 'description' => 'ICP备案/许可证号',
- 'type' => 'string',
- 'example' => '123',
- ],
- 'Domain' => [
- 'title' => 'APP应用商店链接',
- 'description' => 'APP应用商店链接',
- 'type' => 'string',
- 'example' => 'https://test',
- ],
- 'AppApprovalDate' => [
- 'title' => '审核通过日期,示例2025-09-01',
- 'description' => '审核通过日期,示例2025-09-01',
- 'type' => 'string',
- 'example' => '2020-01-01',
- ],
- 'AppServiceName' => [
- 'title' => 'app服务名称',
- 'description' => 'app服务名称',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- ],
+ 'description' => 'OSS配置信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Policy' => ['description' => '签名策略。', 'type' => 'string', 'title' => '', 'example' => 'eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********'],
+ 'StartPath' => ['description' => '策略路径。', 'type' => 'string', 'title' => '', 'example' => '1000********001'],
+ 'Bucket' => ['description' => 'bucket名称。', 'type' => 'string', 'title' => '', 'example' => '示例值'],
+ 'AccessKeyId' => ['description' => '签名使用的 AccessKey ID。', 'type' => 'string', 'title' => '', 'example' => 'bypFNbG******'],
+ 'Signature' => ['description' => '根据 AccessKey Secret 和 Policy 计算出的签名信息。调用 OSS API 时,OSS 验证该签名信息,从而确认请求的合法性。', 'type' => 'string', 'title' => '', 'example' => 'QvNTGC9DSLTeByP+ZWW******'],
+ 'Host' => ['description' => 'Host 地址。', 'type' => 'string', 'title' => '', 'example' => 'http://***.oss-cn-zhangjiakou.aliyuncs.com'],
+ 'ExpireTime' => ['description' => '过期时间戳,单位:秒。', 'type' => 'string', 'title' => '', 'example' => '1741521339'],
],
'example' => '',
],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'- 返回 OK 代表请求成功。'."\n"
+ ."\n"
+ .'- 其他错误码,请参见 [API 错误码](https://www.alibabacloud.com/help/en/sms/developer-reference/api-error-codes)。', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => '调用接口是否成功。取值:'."\n"
+ ."\n"
+ .'- true:调用成功。'."\n"
+ ."\n"
+ .'- false:调用失败。', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve OSS information for OCR image recognition',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"C9955E63-8BFF-101D-80A1-E6998DFEFF1A\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": [\\n {\\n \\"AppIcpRecordId\\": 51,\\n \\"AppIcpRecordPic\\": \\"10000025*****02/ac181696-****-49c6-90dc-50689267aa00_mhsjd8b8_17*****662348.jpeg\\",\\n \\"AppIcpRecordPicUrl\\": \\"https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D\\",\\n \\"AppPrincipalUnitName\\": \\"阿里云\\",\\n \\"AppIcpLicenseNumber\\": \\"123\\",\\n \\"Domain\\": \\"https://apps.apple.com/cn/app/阿里云/id981011420\\",\\n \\"AppApprovalDate\\": \\"2020-01-01\\",\\n \\"AppServiceName\\": \\"测试\\"\\n }\\n ],\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- ],
- 'CreateSmsTemplate' => [
- 'summary' => 'Create SMS Template',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetSmsOcrOssInfo',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"None\\",\\n \\"RequestId\\": \\"25D5AFDE-xxxx-132E-8909-1FDC071DA\\",\\n \\"Message\\": \\"OK\\",\\n \\"Model\\": {\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********\\",\\n \\"StartPath\\": \\"1000********001\\",\\n \\"Bucket\\": \\"示例值\\",\\n \\"AccessKeyId\\": \\"bypFNbG******\\",\\n \\"Signature\\": \\"QvNTGC9DSLTeByP+ZWW******\\",\\n \\"Host\\": \\"http://***.oss-cn-zhangjiakou.aliyuncs.com\\",\\n \\"ExpireTime\\": \\"1741521339\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ ],
+ 'GetSmsSign' => [
+ 'summary' => 'Queries the review details of a signature after you apply for it.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218485',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
+ 'abilityTreeCode' => '218493',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'TemplateName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Template name, up to 30 characters in length.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'aliyunCode',
- 'maxLength' => 30,
- ],
- ],
- [
- 'name' => 'TemplateContent',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Template content, up to 500 characters in length.'."\n"
- ."\n"
- .'Both the template content and variable content must comply with SMS specifications; otherwise, the template will fail the review. You can also view common template examples on the template application page. Using sample templates can enhance review efficiency and success rates. For variable specifications, see [TemplateContent Variable Parameter Filling Specifications](https://help.aliyun.com/zh/sms/templaterule-template-variable-parameter-filling-example).',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'You are applying for mobile registration. The verification code is: ${code}. It is valid for 5 minutes!'."\n"
- ."\n",
- 'maxLength' => 500,
- ],
- ],
- [
- 'name' => 'Remark',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Please describe the business scenario where you use SMS or provide an online link to the scenario, along with a complete example of the SMS (with variable contents filled), as complete information helps increase the template approval rate. Failure to follow guidelines or leaving this field blank may affect the approval of your template.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Request verification code SMS.'."\n"
- ."\n",
- 'maxLength' => 500,
- ],
- ],
- [
- 'name' => 'TemplateType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'SMS type. Values:'."\n"
- ."\n"
- .'- **0**: Verification code.'."\n"
- .'- **1**: SMS notification.'."\n"
- .'- **2**: Promotional message.'."\n"
- .'- **3**: International/Hong Kong, Macao, and Taiwan messages.'."\n"
- ."\n"
- .'> Only enterprise-verified users can apply for promotional messages and international/Hong Kong, Macao, and Taiwan messages. For details on the differences between personal and enterprise user rights, please refer to [Usage Instructions](https://help.aliyun.com/zh/sms/user-guide/usage-notes?spm=a2c4g.11186623.0.0.67447f576NJnE8).',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '0',
- 'enum' => [
- '0',
- '1',
- '2',
- '3',
- ],
- ],
- ],
- [
- 'name' => 'RelatedSignName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The signature name that the template needs to be associated with. The associated SMS signature must have passed the review.'."\n"
- ."\n"
- .'This parameter is mandatory when the TemplateType parameter is **0**, **1**, or **2**.'."\n"
- ."\n"
- .'<notice>Associating a signature can expedite the review process. Note that this associated signature is unrelated to the signature selected when sending SMS messages.</notice>',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Aliyun',
- ],
- ],
- [
- 'name' => 'TemplateRule',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Template variable rules.'."\n"
- ."\n"
- .'For filling in variable rules, refer to the [Sample Documentation](https://help.aliyun.com/zh/sms/templaterule-template-variable-parameter-filling-example).',
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"code":"characterWithNumber"}'."\n",
- ],
- ],
- [
- 'name' => 'MoreData',
- 'in' => 'query',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'Additional materials you can upload, such as business proof documents or screenshots, to help reviewers understand your business details.'."\n"
- ."\n"
- .'This parameter is optional; please fill it in according to actual needs.',
- 'type' => 'array',
- 'items' => [
- 'description' => 'Information about files uploaded to OSS.'."\n"
- .'For file upload operations, refer to [Upload Files via OSS](https://help.aliyun.com/zh/sms/upload-files-through-oss).',
- 'type' => 'string',
- 'required' => false,
- 'example' => '10098689758*****/1234qwe.png',
- ],
- 'required' => false,
- ],
- ],
- [
- 'name' => 'ApplySceneContent',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'If there is an applicable scenario, you can fill it in.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'http://www.aliyun.com/'."\n",
- ],
- ],
- [
- 'name' => 'IntlType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'International/Hong Kong, Macao, and Taiwan template type. When the **TemplateType** parameter is **3**, this parameter is required for international/Hong Kong, Macao, and Taiwan templates, with values:'."\n"
- .'- **0**: Verification code.'."\n"
- .'- **1**: SMS notification.'."\n"
- .'- **2**: Promotional message.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '0',
- ],
- ],
- [
- 'name' => 'TrafficDriving',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- ],
+ 'schema' => ['description' => 'The signature name. The signature must be applied for by your account.'."\n"
+ ."\n"
+ .'- After you call the [CreateSmsSign](~~2807427~~) operation, obtain the signature name from the response.'."\n"
+ .'- View the signature on the [Signatures](https://dysms.console.aliyun.com/domestic/text/sign) page.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里云', 'title' => ''],
],
],
'responses' => [
@@ -5187,120 +3310,212 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The ID generated by Alibaba Cloud for this request, which is a unique identifier that can be used for troubleshooting and issue定位.',
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'Code' => [
- 'description' => 'Request status code.'."\n"
- ."\n"
- .'* OK indicates a successful request.'."\n"
- .'* For other error codes, refer to the **Error Codes** section of this chapter or the product\'s [API Error Codes](~~101346~~).',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'successful',
+ 'RequestId' => ['description' => '本次调用请求的ID,是由阿里云为该请求生成的唯一标识符,可用于排查和定位问题。', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'Code' => ['description' => '请求状态码。取值:'."\n"
+ ."\n"
+ .'- OK:代表请求成功。'."\n"
+ .'- 其他错误码,请参见[API错误码](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'SignName' => ['description' => '短信签名名称。', 'type' => 'string', 'example' => '登录验证', 'title' => ''],
+ 'SignStatus' => ['description' => '签名审核状态。取值:'."\n"
+ ."\n"
+ .'- **0**:审核中。'."\n"
+ .'- **1**:审核通过。'."\n"
+ .'- **2**:审核失败,请在返回参数`AuditInfo.RejectInfo`中查看审核失败原因。'."\n"
+ .'- **10**:取消审核。', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'CreateDate' => ['description' => '短信签名的创建日期和时间。', 'type' => 'string', 'example' => '2024-06-03 10:02:34', 'title' => ''],
+ 'OrderId' => ['description' => '工单号。'."\n"
+ ."\n"
+ .'审核人员查询审核时会用到此参数。您需要审核加急时需要提供此工单号。', 'type' => 'string', 'example' => '20044156924', 'title' => ''],
+ 'QualificationId' => ['description' => '资质ID。申请签名时关联的资质ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '2004393****', 'title' => ''],
+ 'Remark' => ['description' => '短信签名场景说明,长度不超过200个字符。', 'type' => 'string', 'example' => '登录场景验证码', 'title' => ''],
+ 'AuditInfo' => [
+ 'description' => '审核信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RejectInfo' => ['description' => '审批未通过的原因。', 'type' => 'string', 'example' => '通过资质信息,不能判断是否可以申请此签名。', 'title' => ''],
+ 'AuditDate' => ['description' => '审核时间。', 'type' => 'string', 'example' => '2024-06-03 12:02:34'."\n", 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'TemplateName' => [
- 'description' => 'SMS template name.',
- 'type' => 'string',
- 'example' => 'aliyunCode',
+ 'FileUrlList' => [
+ 'description' => '更多资料信息,补充上传业务证明文件或业务截图文件列表。',
+ 'type' => 'array',
+ 'items' => ['description' => '上传到OSS上的文件信息。', 'type' => 'string', 'example' => '10098689758*****/1234qwe.png'."\n", 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
- 'TemplateCode' => [
- 'description' => 'SMS template code.'."\n"
- ."\n"
- .'After submitting the template application, you can use the SMS template code to query the template audit details via the [GetSmsTemplate](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-getsmstemplate?) API. You can also [configure delivery receipts](https://help.aliyun.com/zh/sms/developer-reference/configure-delivery-receipts-1?spm), and obtain the template audit status messages through TemplateSmsReport.',
- 'type' => 'string',
- 'example' => 'SMS_10000****',
+ 'SignCode' => ['description' => '短信签名Code。', 'type' => 'string', 'example' => 'SIGN_100000077042023_17174665*****_ZM2kG', 'title' => ''],
+ 'SignTag' => ['description' => '签名标识。取值:'."\n"
+ ."\n"
+ .'- 2:用户自定义创建签名。'."\n"
+ .'- 3:系统赠送签名。'."\n"
+ .'- 4:测试签名。'."\n"
+ .'- 5:试用签名。', 'type' => 'string', 'example' => '2', 'title' => ''],
+ 'ApplyScene' => ['description' => '应用场景内容。', 'type' => 'string', 'example' => 'http://www.aliyun.com/'."\n", 'title' => ''],
+ 'ThirdParty' => ['description' => '签名为自用或他用。'."\n"
+ ."\n"
+ .'- false:自用(默认值)。'."\n"
+ ."\n"
+ .'- true:他用。', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'SignUsage' => ['description' => '签名使用场景。', 'type' => 'string', 'example' => '已注册商标名称。', 'title' => ''],
+ 'RegisterResult' => ['description' => '**已废弃,请使用`SignIspRegisterDetailList`查看各运营商实名报备结果。**'."\n"
+ ."\n"
+ .'签名实名制报备结果。取值:'."\n"
+ .'- 0:报备失败。'."\n"
+ .'- 1:报备成功。'."\n"
+ .'- 2:报备失效。'."\n"
+ .'- -1:无状态。'."\n"
+ ."\n"
+ .'建议您单击查看[更多签名实名制报备内容及建议操作](~~2873145~~)。', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'AuthorizationLetterId' => ['description' => '委托授权书ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000********1234', 'title' => ''],
+ 'AuthorizationLetterAuditPass' => [
+ 'description' => '委托授权书审核状态。取值:'."\n"
+ .'- true:审核通过。'."\n"
+ .'- false:审核未通过(包含审核通过外的其他所有状态)。',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'title' => '',
],
- 'OrderId' => [
- 'description' => 'Work order ID.'."\n"
- ."\n"
- .'This parameter is used by auditors when querying audits. If you need expedited review, you must provide this work order number.',
- 'type' => 'string',
- 'example' => '2005020****',
+ 'SignIspRegisterDetailList' => [
+ 'description' => '运营商报备状态列表。获取此参数返回数据需要[更新SDK](https://api.aliyun.com/api-tools/sdk/Dysmsapi?version=2017-05-25&language=java-tea&tab=primer-doc)至4.1.2版本或以上。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RegisterStatus' => ['description' => '报备状态。取值:'."\n"
+ ."\n"
+ .'- **0**:报备失败,原因可能为资质信息与工信注册信息不一致或运营商侧无法支持等。建议您登录[短信服务控制台](https://dysms.console.aliyun.com/domestic/text/sign)查看具体失败原因,并依据提示进行操作;'."\n"
+ .'- **1**:已报备待验证,当前至少有一个子端口号运营商已返回报备通过,建议您少量多次向不同运营商手机号发送验证码、通知短信进行验证;'."\n"
+ .'- **2**:报备失效,签名超过 6 个月无发送记录时,报备结果失效。如您需要重新启用该签名,请在[短信服务控制台](https://dysms.console.aliyun.com/domestic/text/sign)重新发起报备;'."\n"
+ .'- **3**:报备成功,当前至少有一个子端口号运营商已返回报备通过,经验证短信发送成功率符合预期,建议您持续关注发送成功率;'."\n"
+ .'- **-1**:报备中,当前尚未收到运营商反馈的报备结果,建议您等待签名报备状态变更为“已报备待验证”后再批量发送,当前可少量多次尝试使用该签名发送,观察短信发送效果;'."\n"
+ .'- **-2**:未报备,原因可能为当前签名未关联实名资质或关联资质信息不全,建议您修改当前资质或编辑签名绑定其他资质以重新发起报备。'."\n"
+ ."\n"
+ .'建议您单击查看[更多签名实名制报备内容及建议操作](~~2873145~~)。', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'OperatorCode' => ['description' => '运营商类型。取值:'."\n"
+ .'- **mobile**:中国移动;'."\n"
+ .'- **unicom**:中国联通;'."\n"
+ .'- **telecom**:中国电信。', 'type' => 'string', 'example' => 'telecom', 'title' => ''],
+ 'OperatorCompleteTime' => ['description' => '运营商反馈时间,格式为yyyy-MM-dd HH:mm:ss。', 'type' => 'string', 'example' => '2025-06-13 15:55:26', 'title' => ''],
+ 'RegisterStatusReasons' => [
+ 'description' => '报备状态原因列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ReasonCode' => ['description' => '报备状态原因码。取值:'."\n"
+ .'- **UNBINDING_QUA**:签名未关联资质;'."\n"
+ .'- **BINDING_INCOMPLETE_QUA**:关联资质信息不全;'."\n"
+ .'- **NON_REGISTER**:未发起报备;'."\n"
+ .'- **REGISTERING**:签名报备中;'."\n"
+ .'- **DETECTING**:未发起探测或探测中;'."\n"
+ .'- **DETECT_SUCCESS**:报备成功;'."\n"
+ .'- **QUALIFICATION_ERROR**:资质原因;'."\n"
+ .'- **SIGNATURE_ERROR**:签名原因;'."\n"
+ .'- **SIGNATURE_QUALIFICATION_ERROR**:签名与资质关系不符;'."\n"
+ .'- **ONE_CODE_MULTIPLE_SIGN**:扩展码原因;'."\n"
+ .'- **OTHERS_ERROR**:其他原因;'."\n"
+ .'- **REGISTER_TIMEOUT**:报备超时;'."\n"
+ .'- **NO_SEND_RECORD**:签名超过6个月无发送记录;'."\n"
+ .'- **EXT_CODE_RECYCLE**:扩展码收回。'."\n"
+ .'- **SUBPORT_RECYCLE**:子端口被运营商治理。', 'type' => 'string', 'example' => 'REGISTER_TIMEOUT', 'title' => ''],
+ 'ReasonDescList' => [
+ 'description' => '原因说明列表。可能返回0个或者多个原因说明,返回原因码不一定会返回原因说明。',
+ 'type' => 'array',
+ 'items' => ['description' => '原因说明。', 'type' => 'string', 'example' => '报备超时。', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'TrademarkId' => ['description' => '商标实体id。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000009081***', 'title' => ''],
+ 'AppIcpRecordId' => ['description' => 'APP-ICP备案实体id。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000009***123', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- [
- 'errorCode' => 'AssocSignUnapproved',
- 'errorMessage' => 'Associated signature must be approved.',
- ],
- [
- 'errorCode' => 'InvalidTemplateRule.Format',
- 'errorMessage' => 'The parameter TemplateRule format must be JSON.',
- ],
- [
- 'errorCode' => 'InvalidMoreData',
- 'errorMessage' => 'Specified parameter MoreData is not valid.',
- ],
- [
- 'errorCode' => 'TemplateVarLimitExceeded',
- 'errorMessage' => 'The verification code template only supports one variable.',
- ],
- [
- 'errorCode' => 'InvalidTemplateContent.Format',
- 'errorMessage' => 'Invalid template content format.',
- ],
- [
- 'errorCode' => 'InvalidTemplateRule',
- 'errorMessage' => 'The template variable format is non-standard. Please refer to the variable format specifications in the help documentation.',
- ],
- [
- 'errorCode' => 'ServiceNotOpened',
- 'errorMessage' => 'This product service is not opened.',
- ],
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
],
404 => [
- [
- 'errorCode' => 'MissingTemplateName',
- 'errorMessage' => 'The template name cannot be empty.',
- ],
- [
- 'errorCode' => 'SmsSignatureNotFound',
- 'errorMessage' => 'The associated SMS signature does not exist.',
- ],
+ ['errorCode' => 'SignatureNotFound', 'errorMessage' => 'The signature does not exist.', 'description' => 'The corresponding signature cannot be found under the account.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE991\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"successful\\",\\n \\"TemplateName\\": \\"验证码模板\\",\\n \\"TemplateCode\\": \\"SMS_10000****\\",\\n \\"OrderId\\": \\"2005020****\\"\\n}","type":"json"}]',
- 'title' => 'Apply for SMS Template (New Interface)',
- 'description' => '- For details about the changes of this new interface compared to the original one, please refer to [Announcement on the Update of SMS Service Signature & Template Interfaces](https://help.aliyun.com/zh/sms/product-overview/announcement-on-sms-service-update-signature-template-interface).'."\n"
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SignName\\": \\"登录验证\\",\\n \\"SignStatus\\": 2,\\n \\"CreateDate\\": \\"2024-06-03 10:02:34\\",\\n \\"OrderId\\": \\"20044156924\\",\\n \\"QualificationId\\": 0,\\n \\"Remark\\": \\"登录场景验证码\\",\\n \\"AuditInfo\\": {\\n \\"RejectInfo\\": \\"通过资质信息,不能判断是否可以申请此签名。\\",\\n \\"AuditDate\\": \\"2024-06-03 12:02:34\\\\n\\"\\n },\\n \\"FileUrlList\\": [\\n \\"10098689758*****/1234qwe.png\\\\n\\"\\n ],\\n \\"SignCode\\": \\"SIGN_100000077042023_17174665*****_ZM2kG\\",\\n \\"SignTag\\": \\"2\\",\\n \\"ApplyScene\\": \\"http://www.aliyun.com/\\\\n\\",\\n \\"ThirdParty\\": false,\\n \\"SignUsage\\": \\"已注册商标名称。\\",\\n \\"RegisterResult\\": 1,\\n \\"AuthorizationLetterId\\": 0,\\n \\"AuthorizationLetterAuditPass\\": true,\\n \\"SignIspRegisterDetailList\\": [\\n {\\n \\"RegisterStatus\\": 0,\\n \\"OperatorCode\\": \\"telecom\\",\\n \\"OperatorCompleteTime\\": \\"2025-06-13 15:55:26\\",\\n \\"RegisterStatusReasons\\": [\\n {\\n \\"ReasonCode\\": \\"REGISTER_TIMEOUT\\",\\n \\"ReasonDescList\\": [\\n \\"报备超时。\\"\\n ]\\n }\\n ]\\n }\\n ],\\n \\"TrademarkId\\": 0,\\n \\"AppIcpRecordId\\": 0\\n}","type":"json"}]',
+ 'title' => 'Query signature details (new operation)',
+ 'description' => '- 仅可查询**首次创建**的签名资料或者**最新审核通过**的资料。'."\n"
."\n"
- .'- It is recommended to apply for SMS templates via the API with at least a 30-second interval between each request.'."\n"
+ .'- 新接口和原接口变更的公告详情请参见[关于短信服务更新签名&模板接口的公告](~~2806975~~)。'."\n"
."\n"
- .'- The template information applied through the API will be synchronized in the SMS service console. For operations related to templates in the console, please refer to SMS Templates.'."\n"
+ .'- 审核时间:一般情况下,签名提交后,阿里云预计在 2 个小时内审核完成(审核工作时间:周一至周日 9:00~21:00,法定节假日顺延)。'."\n"
."\n"
- .'- After submitting the template application, you can query the audit status and details using the GetSmsTemplate interface. You can also configure delivery receipts to obtain the audit status messages via TemplateSmsReport.'."\n"
+ .'- 如果签名未通过审核,会返回审核失败的原因,请参考[短信审核失败的处理建议](~~65990~~),调用[UpdateSmsSign](~~2807428~~)接口或在[签名管理](https://dysms.console.aliyun.com/domestic/text/sign)页面修改未审核通过的短信签名。'."\n"
."\n"
- .'- Domestic SMS templates are not interchangeable with international/Hong Kong, Macao, and Taiwan SMS templates. Please apply for templates based on your business scenario.'."\n"
+ .'- [QuerySmsSignList](~~QuerySmsSignList~~)接口可以查询您账号下的所有签名,包括签名审核状态、签名类型、签名名称等。'."\n"
."\n"
- .'- Only enterprise-verified users can apply for promotional messages and international/Hong Kong, Macao, and Taiwan messages. For differences in rights between personal and enterprise users, please refer to Usage Instructions.',
+ .'- 本接口的单用户QPS限制为150次/秒。超过限制,API调用将会被限流,这可能会影响您的业务,请合理调用。',
+ 'changeSet' => [
+ ['createdAt' => '2025-12-16T07:48:18.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-12-11T12:44:35.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T12:44:31.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:22.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:22.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:07.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:07:44.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-10T08:25:02.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-10T08:11:09.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:39.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:37.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:03.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:13:58.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-06-18T07:40:37.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '150', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSmsSign'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:GetSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
],
'GetSmsTemplate' => [
- 'summary' => 'Query Text SMS Template Details',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'Queries the approval details of a template after you submit a template application. You can view the approval status of the template.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -5312,24 +3527,16 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '217890',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
],
'parameters' => [
[
'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'SMS template code.'."\n"
- ."\n"
- .'- Obtain the SMS template code from the return parameters of the [CreateSmsTemplate](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-createsmstemplate?spm) API.'."\n"
- .'- View the SMS template code on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'SMS_20375****',
- ],
+ 'schema' => ['description' => 'The code of the SMS template.'."\n"
+ ."\n"
+ .'- Obtain the SMS template code from the response parameters of the [CreateSmsTemplate](~~2807431~~) operation.'."\n"
+ .'- View the SMS template code on the [Templates](https://dysms.console.aliyun.com/domestic/text/template) page.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SMS_20375****', 'title' => ''],
],
],
'responses' => [
@@ -5337,575 +3544,251 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The ID of this call request, which is a unique identifier generated by Alibaba Cloud for the request and can be used for troubleshooting and issue定位.',
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E47708****',
- ],
- 'Code' => [
- 'description' => 'Request status code.'."\n"
- ."\n"
- .'* OK indicates a successful request.'."\n"
- .'* For other error codes, please refer to [API Error Codes](~~101346~~).',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'TemplateName' => [
- 'description' => 'Name of the SMS template.',
- 'type' => 'string',
- 'example' => '验证码',
- ],
- 'TemplateCode' => [
- 'description' => 'SMS template code.',
- 'type' => 'string',
- 'example' => 'SMS_20375****',
- ],
- 'TemplateContent' => [
- 'description' => 'Content of the SMS template.',
- 'type' => 'string',
- 'example' => '您正在申请手机注册,验证码为:${code},5分钟内有效!',
- ],
- 'TemplateType' => [
- 'description' => 'SMS type. Values:'."\n"
- ."\n"
- .'- **0**: Verification code.'."\n"
- .'- **1**: SMS notification.'."\n"
- .'- **2**: Promotional SMS.'."\n"
- .'- **3**: International/Hong Kong, Macao, and Taiwan messages.'."\n"
- ."\n"
- .'> Only enterprise-certified users can apply for promotional SMS and international/Hong Kong, Macao, and Taiwan messages. For details on the differences between personal and enterprise user rights, please refer to [Usage Notes](https://help.aliyun.com/zh/sms/user-guide/usage-notes?spm=a2c4g.11186623.0.0.67447f576NJnE8).',
- 'type' => 'string',
- 'example' => '0',
- ],
- 'TemplateStatus' => [
- 'description' => 'Template review status. Return values:'."\n"
- ."\n"
- .'- **0**: Under review.'."\n"
- .'- **1**: Approved.'."\n"
- .'- **2**: Not approved, with reasons for failure returned. Please refer to [Handling Suggestions for Failed SMS Reviews](https://help.aliyun.com/zh/sms/user-guide/causes-of-application-failures-and-suggestions?spm=a2c4g.11186623.0.0.41fd339f3bPSCQ), invoke the [UpdateSmsTemplate](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-updatesmstemplate?spm) API or modify the SMS template on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.'."\n"
- .'- **10**: Review canceled.',
- 'type' => 'string',
- 'example' => '2',
- ],
- 'RelatedSignName' => [
- 'description' => 'The SMS signature associated with the template when applied.',
- 'type' => 'string',
- 'example' => '阿里云',
- ],
- 'TemplateTag' => [
- 'description' => 'Template identifier, indicating whether the template is user-defined or system-provided. Values:'."\n"
- ."\n"
- .'- **2**: User-defined template.'."\n"
- ."\n"
- .'- **3**: System-provided template.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2',
- ],
- 'OrderId' => [
- 'description' => 'Work order number.'."\n"
- ."\n"
- .'This parameter is used by auditors when querying the audit. You need to provide this work order number when requesting expedited review.',
- 'type' => 'string',
- 'example' => '2003019****',
- ],
- 'VariableAttribute' => [
- 'description' => 'Template variable rules.'."\n"
- ."\n"
- .'For detailed rules of template variables, refer to the [Example Document](https://help.aliyun.com/zh/sms/templaterule-template-variable-parameter-filling-example).',
- 'type' => 'string',
- 'example' => '{"code":"characterWithNumber"}'."\n",
- ],
- 'Remark' => [
- 'description' => 'Explanation for the SMS template application, which is one of the reference information for template review.',
- 'type' => 'string',
- 'example' => '申请验证码模板',
- ],
- 'CreateDate' => [
- 'description' => 'The time when the SMS template was created.',
- 'type' => 'string',
- 'example' => '2024-06-03 10:02:34',
- ],
+ 'RequestId' => ['description' => '本次调用请求的ID,是由阿里云为该请求生成的唯一标识符,可用于排查和定位问题。', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'Code' => ['description' => '请求状态码。取值:'."\n"
+ ."\n"
+ .'* OK:代表请求成功。'."\n"
+ .'* 其他错误码,请参见[API错误码](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'TemplateName' => ['description' => '短信模板名称。', 'type' => 'string', 'example' => '验证码', 'title' => ''],
+ 'TemplateCode' => ['description' => '短信模板Code。', 'type' => 'string', 'example' => 'SMS_20375****', 'title' => ''],
+ 'TemplateContent' => ['description' => '短信模板内容。', 'type' => 'string', 'example' => '您正在申请手机注册,验证码为:${code},5分钟内有效!', 'title' => ''],
+ 'TemplateType' => ['description' => '短信类型。取值:'."\n"
+ ."\n"
+ .'- **0**:验证码。'."\n"
+ .'- **1**:短信通知。'."\n"
+ .'- **2**:推广短信。'."\n"
+ .'- **3**:国际/港澳台消息。'."\n"
+ ."\n"
+ .'> 仅支持企业认证用户申请推广短信和国际/港澳台消息。个人用户与企业用户权益区别详情请参见[使用须知](https://www.alibabacloud.com/help/en/sms/user-guide/usage-notes)。', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'TemplateStatus' => ['description' => '模板审核状态。返回值:'."\n"
+ ."\n"
+ .'- **0**:审核中。'."\n"
+ .'- **1**:通过审核。'."\n"
+ .'- **2**:未通过审核,会返回审核失败的原因,请参考[短信审核失败的处理建议](https://www.alibabacloud.com/help/en/sms/user-guide/causes-of-application-failures-and-suggestions),调用[UpdateSmsTemplate](https://www.alibabacloud.com/help/en/sms/developer-reference/api-dysmsapi-2017-05-25-updatesmstemplate)接口或在[模板管理](https://dysms.console.aliyun.com/domestic/text/template)页面修改短信模板。'."\n"
+ .'- **10**:取消审核。', 'type' => 'string', 'example' => '2', 'title' => ''],
+ 'RelatedSignName' => ['description' => '申请模板时,关联的短信签名。', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
+ 'TemplateTag' => ['description' => '模板标识。取值:'."\n"
+ ."\n"
+ .'- 2:用户自定义创建模板。'."\n"
+ ."\n"
+ .'- 3:系统赠送模板。'."\n"
+ ."\n"
+ .'- 4:测试模板。', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'OrderId' => ['description' => '工单号。'."\n"
+ ."\n"
+ .'审核人员查询审核时会用到此参数。您需要审核加急时需要提供此工单号。', 'type' => 'string', 'example' => '2003019****', 'title' => ''],
+ 'VariableAttribute' => ['description' => '模板变量规则。'."\n"
+ ."\n"
+ .'模板变量规则详情,请参见[示例文档](https://www.alibabacloud.com/help/en/sms/templaterule-template-variable-parameter-filling-example)。', 'type' => 'string', 'example' => '{"code":"characterWithNumber"}'."\n", 'title' => ''],
+ 'Remark' => ['description' => '短信模板申请说明,是模板审核的参考信息之一。', 'type' => 'string', 'example' => '申请验证码模板', 'title' => ''],
+ 'CreateDate' => ['description' => '创建短信模板的时间。', 'type' => 'string', 'example' => '2024-06-03 10:02:34', 'title' => ''],
'AuditInfo' => [
- 'description' => 'Audit information.',
+ 'description' => '审核信息。',
'type' => 'object',
'properties' => [
- 'RejectInfo' => [
- 'description' => 'Reasons for failed audit.',
- 'type' => 'string',
- 'example' => '模板内容中包含错别字。',
- ],
- 'AuditDate' => [
- 'description' => 'Audit date and time.',
- 'type' => 'string',
- 'example' => '2024-06-03 11:20:34'."\n",
- ],
+ 'RejectInfo' => ['description' => '审核未通过的原因。', 'type' => 'string', 'example' => '模板内容中包含错别字。', 'title' => ''],
+ 'AuditDate' => ['description' => '审核时间。', 'type' => 'string', 'example' => '2024-06-03 11:20:34'."\n", 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
'FileUrlList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'FileUrl' => [
- 'description' => 'File information, compatible with signatures created by the [AddSmsSign](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-addsmstemplate?spm) API.',
+ 'description' => '文件资料信息。兼容旧接口创建的信息。',
'type' => 'array',
- 'items' => [
- 'description' => 'File details.',
- 'type' => 'string',
- 'example' => '//alicom-fc-media.cn-hangzhou.oss.aliyun-inc.com/1800975045205261/data.jpg?Expires=1718202335&OSSAccessKeyId=bypFNb*****73PsLI&Signature=3dBy9k%2B0%2B8DnCsvzsHi68GHzRg0%3D',
- ],
+ 'items' => ['description' => '文件信息。', 'type' => 'string', 'example' => '//alicom-fc-media.cn-hangzhou.oss.aliyun-inc.com/1800975045205261/data.jpg?Expires=1718202335&OSSAccessKeyId=bypFNb*****73PsLI&Signature=3dBy9k%2B0%2B8DnCsvzsHi68GHzRg0%3D', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'MoreDataFileUrlList' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'MoreDataFileUrl' => [
- 'description' => 'Additional documentation information, supplementing uploaded business proof files or operational screenshots file list.',
+ 'description' => '更多资料信息,补充上传业务证明文件或业务截图文件列表。',
'type' => 'array',
- 'items' => [
- 'description' => 'File information on OSS.',
- 'type' => 'string',
- 'example' => '//alicom-fc-media.cn-hangzhou.oss.aliyun-inc.com/1800975045205261/test.jpg?Expires=1718202335&OSSAccessKeyId=bypFNb*****73PsLI&Signature=3dBy9k%2B0%2B8DnCsvzsHi68GHzRg0%3D',
- ],
+ 'items' => ['description' => 'OSS上的文件信息。', 'type' => 'string', 'example' => '//alicom-fc-media.cn-hangzhou.oss.aliyun-inc.com/1800975045205261/test.jpg?Expires=1718202335&OSSAccessKeyId=bypFNb*****73PsLI&Signature=3dBy9k%2B0%2B8DnCsvzsHi68GHzRg0%3D', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'IntlType' => [
- 'description' => 'International/Hong Kong, Macao, and Taiwan template type. When the **TemplateType** parameter is **3**, this parameter is required for international/Hong Kong, Macao, and Taiwan templates, with values:'."\n"
- .'- **0**: Verification code.'."\n"
- .'- **1**: SMS notification.'."\n"
- .'- **2**: Promotional SMS.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '0',
- ],
- 'ApplyScene' => [
- 'description' => 'Application scenario content.',
- 'type' => 'string',
- 'example' => 'http://www.aliyun.com/'."\n",
- ],
- 'VendorAuditStatus' => [
- 'title' => ' 各运营商审核状态 key: MOBILE_VENDOR, TELECOM_VENDOR, UNICOM_VENDOR value: 运营商审核状态 0: 审核中 1:通过 2:不通过 15: 已失效'."\n"
- .' ',
- 'type' => 'object',
- ],
+ 'IntlType' => ['description' => '国际/港澳台模板类型。当**TemplateType**参数返回值为**3**时,此参数取值:'."\n"
+ .'- **0**:短信通知。'."\n"
+ .'- **1**:推广短信。'."\n"
+ .'- **2**:验证码。', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'ApplyScene' => ['description' => '应用场景内容。', 'type' => 'string', 'example' => 'http://www.aliyun.com/'."\n", 'title' => ''],
+ 'VendorAuditStatus' => ['title' => '', 'description' => '各运营商审核状态,仅数字短信会返回该参数。'."\n"
+ ."\n\n"
+ .'key代表运营商。取值:'."\n"
+ ."\n"
+ .'- MOBILE_VENDOR:中国移动。'."\n"
+ ."\n"
+ .'- TELECOM_VENDOR:中国电信。'."\n"
+ ."\n"
+ .'- UNICOM_VENDOR:中国联通。'."\n"
+ ."\n"
+ .' value代表审核状态。取值: '."\n"
+ ."\n"
+ .'- 0:审核中。'."\n"
+ ."\n"
+ .'- 1:通过。'."\n"
+ ."\n"
+ .' - 2:不通过。'."\n"
+ ."\n"
+ .' - 15:已失效。', 'type' => 'object', 'example' => '{'."\n"
+ .' "MOBILE_VENDOR": 0,'."\n"
+ .' "TELCOM_VENDOR": 0,'."\n"
+ .' "UNICOM_VENDOR": 0'."\n"
+ .' }'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
],
404 => [
- [
- 'errorCode' => 'TemplateNotFound',
- 'errorMessage' => 'The template does not exist.',
- ],
+ ['errorCode' => 'TemplateNotFound', 'errorMessage' => 'The template does not exist.', 'description' => ''],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"TemplateName\\": \\"验证码\\",\\n \\"TemplateCode\\": \\"SMS_20375****\\",\\n \\"TemplateContent\\": \\"您正在申请手机注册,验证码为:${code},5分钟内有效!\\",\\n \\"TemplateType\\": \\"0\\",\\n \\"TemplateStatus\\": \\"2\\",\\n \\"RelatedSignName\\": \\"阿里云\\",\\n \\"TemplateTag\\": 2,\\n \\"OrderId\\": \\"2003019****\\",\\n \\"VariableAttribute\\": \\"{\\\\\\"code\\\\\\":\\\\\\"characterWithNumber\\\\\\"}\\\\n\\",\\n \\"Remark\\": \\"申请验证码模板\\",\\n \\"CreateDate\\": \\"2024-06-03 10:02:34\\",\\n \\"AuditInfo\\": {\\n \\"RejectInfo\\": \\"模板内容中包含错别字。\\",\\n \\"AuditDate\\": \\"2024-06-03 11:20:34\\\\n\\"\\n },\\n \\"FileUrlList\\": {\\n \\"FileUrl\\": [\\n \\"//alicom-fc-media.cn-hangzhou.oss.aliyun-inc.com/1800975045205261/data.jpg?Expires=1718202335&OSSAccessKeyId=bypFNb*****73PsLI&Signature=3dBy9k%2B0%2B8DnCsvzsHi68GHzRg0%3D\\"\\n ]\\n },\\n \\"MoreDataFileUrlList\\": {\\n \\"MoreDataFileUrl\\": [\\n \\"//alicom-fc-media.cn-hangzhou.oss.aliyun-inc.com/1800975045205261/test.jpg?Expires=1718202335&OSSAccessKeyId=bypFNb*****73PsLI&Signature=3dBy9k%2B0%2B8DnCsvzsHi68GHzRg0%3D\\"\\n ]\\n },\\n \\"IntlType\\": 0,\\n \\"ApplyScene\\": \\"http://www.aliyun.com/\\\\n\\",\\n \\"VendorAuditStatus\\": {\\n \\"MOBILE_VENDOR\\": 0,\\n \\"TELCOM_VENDOR\\": 0,\\n \\"UNICOM_VENDOR\\": 0\\n }\\n}","type":"json"}]',
- 'title' => 'Query SMS Template Audit Details (New Interface)',
- 'description' => '- For details about the announcement of changes to the new and original interfaces, see [Announcement on Updates to SMS Service Signature & Template Interfaces](https://help.aliyun.com/zh/sms/product-overview/announcement-on-sms-service-update-signature-template-interface).'."\n"
- .'- Review Time: Under normal circumstances, Alibaba Cloud expects to complete the review within 2 hours after template submission (review working hours: Monday to Sunday 9:00~21:00, with statutory holidays postponed). It is recommended to submit your application before 18:00.'."\n"
+ 'title' => 'Query template approval details (new operation)',
+ 'description' => '- 新接口和原接口变更的公告详情请参见[关于短信服务更新签名&模板接口的公告](~~2806975~~)。'."\n"
+ .'- 审核时间:一般情况下,模板提交后,阿里云预计在2个小时内审核完成(审核工作时间:周一至周日9:00~21:00,法定节假日顺延)。'."\n"
."\n"
- .'- If the template fails the review, the reason for the failure will be returned. Please refer to [Handling Suggestions for Failed SMS Reviews](https://help.aliyun.com/zh/sms/user-guide/causes-of-application-failures-and-suggestions?spm=a2c4g.11186623.0.0.41fd339f3bPSCQ), invoke the [ModifySmsTemplate](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-modifysmstemplate?spm=a2c4g.11186623.0.0.5b1f6e8bQloFit) API or modify the SMS template on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.'."\n"
+ .'- 如果模板未通过审核,会返回审核失败的原因,请参考[短信审核失败的处理建议](~~65990~~),调用[UpdateSmsTemplate](~~UpdateSmsTemplate~~)接口或在[模板管理](https://dysms.console.aliyun.com/domestic/text/template)页面修改短信模板。'."\n"
."\n"
- .'- The current QuerySmsTemplate interface queries the audit details of a single template by template code. The [QuerySmsTemplateList](https://help.aliyun.com/zh/sms/developer-reference/api-dysmsapi-2017-05-25-querysmstemplatelist?spm=a2c4g.11186623.0.0.24086e8bO8cFn4) interface can query the template details of all templates under your current account.',
- ],
- 'QuerySmsTemplateList' => [
- 'summary' => 'Queries message templates.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '118761',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
- ],
- 'parameters' => [
- [
- 'name' => 'PageIndex',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The page number. Default value: **1**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'minimum' => '1',
- 'example' => '1',
- 'default' => '1',
- ],
- ],
- [
- 'name' => 'PageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of templates per page. Valid values: **1 to 50**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'maximum' => '50',
- 'minimum' => '1',
- 'example' => '10',
- 'default' => '10',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E47708****',
- ],
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'SmsTemplateList' => [
- 'description' => 'The queried message templates.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'TemplateCode' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'You can log on to the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/dysms.htm), click **Go China** or **Go Globe** in the left-side navigation pane, and then view the template code on the **Templates** tab. You can also call the [AddSmsTemplate](~~121208~~) operation to obtain the template code.'."\n",
- 'type' => 'string',
- 'example' => 'SMS_1525***',
- ],
- 'TemplateName' => [
- 'description' => 'The name of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'aliyun verification code',
- ],
- 'OuterTemplateType' => [
- 'description' => 'The type of the message template. We recommend that you specify this parameter. Valid values:'."\n"
- ."\n"
- .'* **0**: verification code'."\n"
- .'* **1**: notification message'."\n"
- .'* **2**: promotional message'."\n"
- .'* **3**: message sent to countries or regions outside the Chinese mainland'."\n"
- .'* **7**: digital message'."\n"
- ."\n"
- .'> The template type is the same as the value of the TemplateType parameter in the AddSmsTemplate and ModifySmsTemplate operations.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '0',
- ],
- 'AuditStatus' => [
- 'description' => 'The approval status of the message template. Valid values:'."\n"
- ."\n"
- .'* **AUDIT_STATE_INIT**: The message template is pending approval.'."\n"
- .'* **AUDIT_STATE_PASS**: The message template is approved.'."\n"
- .'* **AUDIT_STATE_NOT_PASS**: The message template is rejected. You can view the reason in the Reason response parameter.'."\n"
- .'* **AUDIT_STATE_CANCEL** or **AUDIT_SATE_CANCEL**: The approval is canceled.'."\n",
- 'type' => 'string',
- 'example' => 'AUDIT_STATE_PASS',
- ],
- 'TemplateContent' => [
- 'description' => 'The content of the message template.'."\n",
- 'type' => 'string',
- 'example' => '123456789',
- ],
- 'CreateDate' => [
- 'description' => 'The time when the message template was created. The time is in the yyyy-MM-dd HH:mm:ss format.'."\n",
- 'type' => 'string',
- 'example' => '2020-06-04 11:42:17',
- ],
- 'Reason' => [
- 'description' => 'The approval remarks.'."\n"
- ."\n"
- .'* If the value of AuditStatus is **AUDIT_STATE_PASS** or **AUDIT_STATE_INIT**, the value of Reason is No Approval Remarks.'."\n"
- .'* If the value of AuditStatus is **AUDIT_STATE_NOT_PASS**, the reason why the message template is rejected is returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'RejectDate' => [
- 'description' => 'The time when the message template was rejected. Format: yyyy-MM-dd HH:mm:ss.'."\n",
- 'type' => 'string',
- 'example' => '2020-06-04 16:01:17',
- ],
- 'RejectInfo' => [
- 'description' => 'The reason why the message template was rejected.'."\n",
- 'type' => 'string',
- 'example' => 'The document cannot verify the authenticity of the information. Please upload it again.',
- ],
- 'RejectSubInfo' => [
- 'description' => 'The remarks about the rejection.'."\n",
- 'type' => 'string',
- 'example' => 'The document cannot verify the authenticity of the information. Please upload it again.',
- ],
- ],
- ],
- 'OrderId' => [
- 'description' => 'The ticket ID.'."\n",
- 'type' => 'string',
- 'example' => '2361****',
- ],
- 'TemplateType' => [
- 'description' => 'The type of the message template. Valid values:'."\n"
- ."\n"
- .'* **0**: notification message'."\n"
- .'* **1**: promotional message'."\n"
- .'* **2**: verification code'."\n"
- .'* **6**: message sent to countries or regions outside the Chinese mainland'."\n"
- .'* **7**: digital message'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '7',
- ],
- 'SignatureName' => [
- 'type' => 'string',
- ],
- 'TrafficDriving' => [
- 'type' => 'string',
- ],
- ],
- ],
- ],
- 'TotalCount' => [
- 'description' => 'The total number of templates.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'CurrentPage' => [
- 'description' => 'The page number. Default value: **1**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'PageSize' => [
- 'description' => 'The number of templates per page. Valid values: **1 to 50**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
+ .'- 当前接口是通过模板Code查询单个模板的审核详情。[QuerySmsTemplateList](~~419288~~)接口可以查询您当前账号下所有模板的模板详情。',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-08T07:44:54.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-06-08T07:44:51.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-04-07T06:43:39.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-04-07T06:43:33.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-04-07T06:43:31.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-03-30T03:26:05.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-03-30T03:12:25.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-03-30T03:05:16.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-03-30T02:56:05.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-03-30T02:44:05.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-03-30T02:44:02.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:GetSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
- 'description' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E47708****\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SmsTemplateList\\": [\\n {\\n \\"TemplateCode\\": \\"SMS_1525***\\",\\n \\"TemplateName\\": \\"验证码模板\\",\\n \\"OuterTemplateType\\": 0,\\n \\"AuditStatus\\": \\"AUDIT_STATE_PASS\\",\\n \\"TemplateContent\\": \\"验证码为:${code},您正在注册成为平台会员,感谢您的支持!\\",\\n \\"CreateDate\\": \\"2020-06-04 11:42:17\\",\\n \\"Reason\\": {\\n \\"RejectDate\\": \\"2020-06-04 16:01:17\\",\\n \\"RejectInfo\\": \\"变量不符合规范\\",\\n \\"RejectSubInfo\\": \\"变量属性选择错误。\\\\n请根据业务使用场景选择合适的变量属性。\\"\\n },\\n \\"OrderId\\": \\"2004983****\\",\\n \\"TemplateType\\": 2,\\n \\"SignatureName\\": \\"阿里云\\",\\n \\"TrafficDriving\\": \\"[{\\\\\\"trafficDrivingType\\\\\\":\\\\\\"DOMAIN\\\\\\",\\\\\\"trafficDrivingContent\\\\\\":\\\\\\"aliyun.com\\\\\\",\\\\\\"companyName\\\\\\":\\\\\\"阿里云计算有限公司\\\\\\",\\\\\\"organizationCode\\\\\\":\\\\\\"91330****73959654P\\\\\\",\\\\\\"icpNo\\\\\\":\\\\\\"浙B2-20****01-4\\\\\\",\\\\\\"icpPicOssKey\\\\\\":\\\\\\"db7784d8-cb0c-498f-****-295f1ad6d665_mf29l7nf.png\\\\\\",\\\\\\"companyDifferentFromSignQuaReason\\\\\\":\\\\\\"这是一段说明文字\\\\\\"},{\\\\\\"trafficDrivingType\\\\\\":\\\\\\"1_PHONE\\\\\\",\\\\\\"trafficDrivingContent\\\\\\":\\\\\\"1**86\\\\\\",\\\\\\"variableName\\\\\\":\\\\\\"my1Phone\\\\\\",\\\\\\"companyName\\\\\\":\\\\\\"阿里云计算有限公司\\\\\\",\\\\\\"organizationCode\\\\\\":\\\\\\"91330****73959654P\\\\\\",\\\\\\"companyDifferentFromSignQuaReason\\\\\\":\\\\\\"这是一段说明文字\\\\\\"}]\\"\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 10\\n}","errorExample":""},{"type":"xml","example":"<QuerySmsTemplateListResponse>\\n <RequestId>819BE656-D2E0-4858-8B21-B2E47708****</RequestId>\\n <Code>OK</Code>\\n <Message>OK</Message>\\n <SmsTemplateList>\\n <TemplateCode>SMS_1525***</TemplateCode>\\n <TemplateName>阿里云短信测试模板</TemplateName>\\n <TemplateType>7</TemplateType>\\n <AuditStatus>AUDIT_STATE_PASS</AuditStatus>\\n <TemplateContent>123456789</TemplateContent>\\n <CreateDate>2020-06-04 11:42:17</CreateDate>\\n <Reason>\\n <RejectDate>2020-06-04 16:01:17</RejectDate>\\n <RejectInfo>无审批备注</RejectInfo>\\n <RejectSubInfo>无审批备注</RejectSubInfo>\\n </Reason>\\n <OrderId>2361****</OrderId>\\n </SmsTemplateList>\\n</QuerySmsTemplateListResponse>","errorExample":""}]',
- 'title' => 'QuerySmsTemplateList',
- 'description' => 'You can call this operation to query the details of message templates, including the name, creation time, and approval status of each template. If a message template is rejected, the reason is returned. Modify the message template based on the reason.'."\n"
- ."\n"
- .'### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 10 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
],
- 'UpdateSmsTemplate' => [
- 'summary' => 'Update Text SMS Template',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'ListTagResources' => [
+ 'summary' => 'Tags are markers that you add to templates. Each tag consists of a key-value pair (Key-Value). You can query the template codes bound to a tag key-value pair, or query all tags bound to a specific template.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '219284',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
+ 'abilityTreeCode' => '102448',
+ 'abilityTreeNodes' => ['FEATUREdysmsGD2ZLS'],
],
'parameters' => [
[
- 'name' => 'TemplateName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Template name, up to 30 characters in length.',
- 'type' => 'string',
- 'required' => true,
- 'example' => '验证码',
- 'maxLength' => 30,
- ],
- ],
- [
- 'name' => 'TemplateCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Template Code of an unapproved template.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'SMS_152550****',
- ],
- ],
- [
- 'name' => 'TemplateContent',
+ 'name' => 'ResourceType',
'in' => 'query',
- 'schema' => [
- 'description' => 'Template content, up to 500 characters in length.'."\n"
- ."\n"
- .'Both the template content and variable content must comply with SMS regulations; otherwise, the template will fail the review. You can also view common template examples on the template application page. Using sample templates can enhance review efficiency and success rates. Variable specifications can be found in [TemplateContent Parameter Variable Specifications](https://help.aliyun.com/zh/sms/templaterule-template-variable-parameter-filling-example?spm).',
- 'type' => 'string',
- 'required' => true,
- 'example' => '您正在申请手机注册,验证码为:${code},5分钟内有效!',
- 'maxLength' => 500,
- ],
+ 'schema' => ['description' => 'The resource type. Default value: TEMPLATE.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'TEMPLATE', 'title' => ''],
],
[
- 'name' => 'Remark',
+ 'name' => 'RegionId',
'in' => 'query',
- 'schema' => [
- 'description' => 'Explanation for the SMS template application, which serves as a reference for template review.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '登录场景使用验证码',
- 'maxLength' => 500,
- ],
+ 'schema' => ['description' => 'The region ID. Default value: **cn-hangzhou**.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
- 'name' => 'TemplateType',
+ 'name' => 'NextToken',
'in' => 'query',
- 'schema' => [
- 'description' => 'SMS type. Values:'."\n"
- ."\n"
- .'- **0**: Verification code.'."\n"
- .'- **1**: SMS notification.'."\n"
- .'- **2**: Promotional SMS.'."\n"
- .'- **3**: International/Hong Kong, Macao, and Taiwan messages.'."\n"
- ."\n"
- .'> Only enterprise-certified users can apply for promotional SMS and international/Hong Kong, Macao, and Taiwan messages. Details on differences between personal and enterprise user rights are available in [Usage Guidelines](https://help.aliyun.com/zh/sms/user-guide/usage-notes?spm=a2c4g.11186623.0.0.67447f576NJnE8).',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '0',
- 'enum' => [
- '0',
- '1',
- '2',
- '3',
- ],
- ],
+ 'schema' => ['description' => 'The token used to query the next page of tags.', 'type' => 'string', 'required' => false, 'example' => '23432453245', 'title' => ''],
],
[
- 'name' => 'RelatedSignName',
+ 'name' => 'PageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'SMS signature associated with the template during the application.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '阿里云',
- ],
+ 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''],
],
[
- 'name' => 'TemplateRule',
+ 'name' => 'ProdCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'Template variable rules.'."\n"
- ."\n"
- .'For guidance on filling variable rules, refer to the [Sample Documentation](https://help.aliyun.com/zh/sms/templaterule-template-variable-parameter-filling-example?spm).',
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"code":"characterWithNumber"}',
- ],
+ 'schema' => ['description' => 'The product name. Default value: **dysms**.', 'type' => 'string', 'required' => false, 'default' => 'dysms', 'example' => 'dysms', 'title' => ''],
],
[
- 'name' => 'MoreData',
+ 'name' => 'Tag',
'in' => 'query',
- 'style' => 'json',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'Additional information, such as uploading business proof documents or screenshots, to help reviewers understand your business details. Optional and can be left unset.',
+ 'description' => 'The tag list. The tag list and **ResourceId** (SMS template code) cannot be empty at the same time. You can specify up to 20 tags.',
'type' => 'array',
'items' => [
- 'description' => 'Information about files uploaded to OSS.'."\n"
- .'For file upload operations, see [Upload Files via OSS](https://help.aliyun.com/zh/sms/upload-files-through-oss).',
- 'type' => 'string',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''],
+ 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''],
+ ],
'required' => false,
- 'example' => '10098689758****/1234qwe.png',
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'maxItems' => 21,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'ApplySceneContent',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Application scenarios, instructions as follows:'."\n"
- .'- For registered websites, please enter the MIIT-registered domain with HTTP or HTTPS.'."\n"
- .'- For launched apps, provide the app store display link with HTTP or HTTPS, ensuring the app is online.'."\n"
- .'- For public accounts or mini-programs, enter the full name of the public account or mini-program, ensuring they are online.'."\n"
- .'- For e-commerce platform stores, applicable only to enterprise users, enter the display link of the e-commerce store with HTTP or HTTPS.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'http://www.aliyun.com/'."\n",
- ],
- ],
- [
- 'name' => 'IntlType',
+ 'name' => 'ResourceId',
'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'International/Hong Kong, Macao, and Taiwan template type. When the **TemplateType** parameter is **3**, this parameter is required for international/Hong Kong, Macao, and Taiwan templates, with values:'."\n"
- .'- **0**: Verification code.'."\n"
- .'- **1**: SMS notification.'."\n"
- .'- **2**: Promotional SMS.',
- 'type' => 'integer',
- 'format' => 'int32',
+ 'description' => 'The SMS template code. The SMS template code and the tag list **Tag** cannot be empty at the same time.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The SMS template code.', 'type' => 'string', 'required' => false, 'example' => 'SMS_2342****', 'title' => ''],
'required' => false,
- 'example' => '0',
- ],
- ],
- [
- 'name' => 'TrafficDriving',
- 'in' => 'query',
- 'schema' => [
- 'type' => 'string',
+ 'example' => 'SMS_23423423',
+ 'maxItems' => 51,
+ 'title' => '',
],
],
],
@@ -5914,356 +3797,232 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The ID of this call request, which is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate issues.',
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF',
- ],
- 'Code' => [
- 'description' => 'Request status code.'."\n"
- ."\n"
- .'* OK indicates a successful request.'."\n"
- .'* For other error codes, refer to the **Error Codes** section of this chapter or the product\'s [API Error Codes](~~101346~~).',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'TemplateName' => [
- 'description' => 'Name of the SMS template.',
- 'type' => 'string',
- 'example' => '验证码',
- ],
- 'TemplateCode' => [
- 'description' => 'Code of the SMS template.',
- 'type' => 'string',
- 'example' => 'SMS_152550****',
- ],
- 'OrderId' => [
- 'description' => 'Work order number.'."\n"
- ."\n"
- .'This parameter is used by auditors when querying audits. You need to provide this work order number when requesting expedited review.',
- 'type' => 'string',
- 'example' => '20041271****',
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- A value of OK indicates that the request was successful.'."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'NextToken' => ['description' => 'The token used to query the next page of tags.', 'type' => 'string', 'example' => '"23432453245"', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request. The request ID is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate issues.', 'type' => 'string', 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D0D', 'title' => ''],
+ 'TagResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'TagResource' => [
+ 'description' => 'The tag resources.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The tag resource.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::DYSMS::TEMPLATE', 'title' => ''],
+ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''],
+ 'ResourceId' => ['description' => 'The SMS template code.', 'type' => 'string', 'example' => 'SMS_23423****', 'title' => ''],
+ 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- [
- 'errorCode' => 'AssocSignUnapproved',
- 'errorMessage' => 'Associated signature must be approved.',
- ],
- [
- 'errorCode' => 'InvalidTemplateRule',
- 'errorMessage' => 'The template variable format is non-standard. Please refer to the variable format specifications in the help documentation.',
- ],
- [
- 'errorCode' => 'InvalidTemplateRule.Format',
- 'errorMessage' => 'The parameter TemplateRule format must be JSON.',
- ],
- [
- 'errorCode' => 'InvalidMoreData',
- 'errorMessage' => 'Specified parameter MoreData is not valid.',
- ],
- [
- 'errorCode' => 'TemplateVarLimitExceeded',
- 'errorMessage' => 'The verification code template only supports one variable.',
- ],
- [
- 'errorCode' => 'InvalidTemplateContent.Format',
- 'errorMessage' => 'Invalid template content format.',
- ],
- [
- 'errorCode' => 'ServiceNotOpened',
- 'errorMessage' => 'This product service is not opened.',
- ],
- ],
- 404 => [
- [
- 'errorCode' => 'MissingTemplateName',
- 'errorMessage' => 'The template name cannot be empty.',
- ],
- [
- 'errorCode' => 'SmsSignatureNotFound',
- 'errorMessage' => 'The associated SMS signature does not exist.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AA0\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"TemplateName\\": \\"验证码\\",\\n \\"TemplateCode\\": \\"SMS_152550****\\",\\n \\"OrderId\\": \\"20041271****\\"\\n}","type":"json"}]',
- 'title' => 'Update SMS Template (New Interface)',
- 'description' => '- For details about the changes of this new interface compared to the original one, please refer to [Announcement on SMS Service Update: Signature & Template Interfaces](https://help.aliyun.com/zh/sms/product-overview/announcement-on-sms-service-update-signature-template-interface).'."\n"
- .'- Only templates that have not passed the review can be modified. Please refer to [Handling Suggestions for Failed SMS Template Reviews](https://help.aliyun.com/zh/sms/user-guide/causes-of-application-failures-and-suggestions?spm=a2c4g.11186623.0.0.4bf5561ajcFtMQ) and call this interface to modify and resubmit for review.'."\n"
- ."\n"
- .'- Modifications made through the interface will be synchronized in the SMS service console. For related operations on templates in the console, see [SMS Templates](https://help.aliyun.com/zh/sms/user-guide/message-templates/?spm=a2c4g.11186623.0.0.35a947464Itaxp).'."\n"
- ."\n"
- .'### QPS Limit'."\n"
- .'The single-user QPS limit for this interface is 1000 times/second. Exceeding this limit will result in API throttling, which may impact your business. Please make calls reasonably.',
- ],
- 'DeleteSmsTemplate' => [
- 'summary' => 'Deletes a message template.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'delete',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '102445',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
- ],
- 'parameters' => [
- [
- 'name' => 'TemplateCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'You can log on to the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm) and obtain the message template code on the **Message Templates** tab. You can also obtain the message template code by calling the [AddSmsTemplate](~~121208~~) operation.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'SMS_152550****',
- ],
- ],
- ],
- 'responses' => [
200 => [
- 'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* For more information about other response codes, see [API error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'CCA2BCFF-2BA7-427C-90EE-AC6994748607',
- ],
- 'TemplateCode' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'SMS_20375****',
- ],
- ],
- 'description' => '',
- ],
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"CCA2BCFF-2BA7-427C-90EE-AC6994748607\\",\\n \\"TemplateCode\\": \\"SMS_152550****\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\'1.0\' encoding=\'UTF-8\'?>\\r\\n<DeleteSmsTemplateResponse>\\r\\n\\t<TemplateCode>SMS_20375****</TemplateCode>\\r\\n\\t<Message>OK</Message>\\r\\n\\t<RequestId>CCA2BCFF-2BA7-427C-90EE-AC6994748607</RequestId>\\r\\n\\t<Code>OK</Code>\\r\\n</DeleteSmsTemplateResponse>","errorExample":""}]',
- 'title' => 'DeleteSmsTemplate',
- 'description' => '* Message templates pending approval can be withdrawn. You can delete a message template pending approval on the Message Templates tab in the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm#/overview).'."\n"
- .'* Message templates that have been approved can be deleted, and cannot be modified. You can delete a message template pending approval on the Message Templates tab in the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm#/overview).'."\n"
- .'* You cannot recover deleted message templates. Proceed with caution.'."\n"
- ."\n"
- .'### QPS limits'."\n"
- ."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"NextToken\\": \\"\\\\\\"23432453245\\\\\\"\\",\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D0D\\",\\n \\"TagResources\\": {\\n \\"TagResource\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::DYSMS::TEMPLATE\\",\\n \\"TagValue\\": \\"TestValue\\",\\n \\"ResourceId\\": \\"SMS_23423****\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Queries the tags of a template',
+ 'description' => 'You can log on to the Short Message Service (SMS) console and go to the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page to filter SMS templates that are bound to tag key-value pairs, or click **Details** in the Actions column to view the tags that are bound to the current template.'."\n"
+ .'### QPS limit'."\n"
+ .'The per-user QPS limit of this operation is 50 calls per second. If the limit is exceeded, API calls will be throttled, which may affect your business. Call this operation properly.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'AddSmsTemplate' => [
- 'summary' => 'Creates a message template.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagResources'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'dysms:ListTagResources',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'ModifySmsSign' => [
+ 'summary' => 'This operation is discontinued.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
- 'deprecated' => true,
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102439',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '102449',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'TemplateType',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the message. Valid values:'."\n"
- ."\n"
- .'* **0**: verification code'."\n"
- .'* **1**: notification'."\n"
- .'* **2**: promotional message'."\n"
- .'* **3**: message sent to countries or regions outside the Chinese mainland'."\n"
- ."\n"
- .'> Only enterprise users can send promotional messages, or send messages to countries or regions outside the Chinese mainland.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The signature name.'."\n"
+ ."\n"
+ .'> You can modify a signature that has been approved, but you cannot change its name. The modified signature must be reviewed and approved before it can be used. The original signature cannot be used until the review is complete.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里云', 'title' => ''],
],
[
- 'name' => 'TemplateName',
+ 'name' => 'SignSource',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the template. The name can be up to 30 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Aliyun Test',
- ],
+ 'schema' => ['description' => 'The signature source. Valid values:'."\n"
+ ."\n"
+ .'- **0**: full name or abbreviation of an enterprise or public institution.'."\n"
+ .'- **1**: full name or abbreviation of a website filed with the Ministry of Industry and Information Technology (MIIT).'."\n"
+ .'- **2**: full name or abbreviation of an app.'."\n"
+ .'- **3**: full name or abbreviation of an official account or mini program.'."\n"
+ .'- **4**: full name or abbreviation of a store on an e-commerce platform.'."\n"
+ .'- **5**: full name or abbreviation of a trademark.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'TemplateContent',
+ 'name' => 'Remark',
'in' => 'query',
+ 'schema' => ['description' => 'The description of the SMS signature application. The description cannot exceed 200 characters in length.'."\n"
+ ."\n"
+ .'The description is used as a reference for signature review. A complete description helps reviewers understand your business scenario and improves review efficiency. Guidelines:'."\n"
+ ."\n"
+ .'- Provide the use case of a service that is already online.'."\n"
+ .'- Provide an SMS example from a real scenario to illustrate your business scenario.'."\n"
+ .'- Provide the values passed for variables, and describe the business scenario in detail and the reason for choosing the variable attributes.'."\n"
+ .'- Provide the website URL of the actual service, a filed domain name, or an app store download link.'."\n"
+ .'- For logon scenarios, provide a test account and password.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '当前的短信签名应用于双11大促推广营销', 'title' => ''],
+ ],
+ [
+ 'name' => 'SignFileList',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'The content of the template. The content can be up to 500 characters in length. For more information, see [Message template specifications](~~108253~~).'."\n",
- 'type' => 'string',
+ 'description' => 'The list of signature files.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '签名文件列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FileContents' => ['description' => '签名的纸质证明文件经base64编码后的字符串。图片不超过2 MB。'."\n"
+ ."\n"
+ .'个别场景下,申请签名需要上传证明文件。详细说明,请参见[短信签名规范](~~108076~~)。', 'type' => 'string', 'required' => true, 'example' => 'R0lGODlhHAAmAKIHAKqqqsvLy0hISObm5vf394uLiwAA', 'title' => ''],
+ 'FileSuffix' => ['description' => '签名的证明文件格式,支持上传多张图片。当前支持JPG、PNG、GIF或JPEG格式的图片。'."\n"
+ ."\n"
+ .'个别场景下,申请签名需要上传证明文件。详细说明,请参见[短信签名规范](~~108076~~)。'."\n"
+ .'> 如果签名用途为他用或个人认证用户的自用签名来源为企事业单位名时,还需上传证明文件和委托授权书,详情请参见[证明文件](~~108076~~)和[授权委托书](~~56741~~)。', 'type' => 'string', 'required' => true, 'example' => 'jpg', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
'required' => true,
- 'docRequired' => true,
- 'example' => 'You are applying for mobile registration. The verification code is: ${code}, valid for 5 minutes!',
+ 'maxItems' => 10,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'Remark',
+ 'name' => 'SignType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The description of the message template. It is one of the reference information for template review. The description cannot exceed 100 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Apply for a template to send verification codes.',
- ],
+ 'schema' => ['description' => 'The signature type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code.'."\n"
+ ."\n"
+ .'- **1**: general.', 'type' => 'integer', 'format' => 'int32', 'default' => '1', 'required' => false, 'example' => '1', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => '返回数据。',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* For more information about other response codes, see [API error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'TemplateCode' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'SMS_15255****',
- ],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'* 返回OK代表请求成功。'."\n"
+ .'* 其他错误码,请参见[API错误码](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'SignName' => ['description' => '签名名称。', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
],
- 'description' => '',
- ],
- ],
- ],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'TemplateParameterCountIllegal',
- 'errorMessage' => 'The verification code template only supports 1 verification code as a variable',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'substitutions' => [
- 'Dysmsapi::2017-05-25::CreateSmsTemplate',
- ],
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"TemplateCode\\": \\"SMS_46817****\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\'1.0\' encoding=\'UTF-8\'?>\\r\\n<AddSmsTemplateResponse>\\r\\n <TemplateCode>SMS_1525****</TemplateCode>\\r\\n <Message>OK</Message>\\r\\n <RequestId>F655A8D5-B967-440B-8683-DAD6FF8DE990</RequestId>\\r\\n <Code>OK</Code>\\r\\n</AddSmsTemplateResponse>","errorExample":""}]',
- 'title' => 'AddSmsTemplate',
- 'description' => 'You can call the operation or use the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm#/overview) to apply for a message template. The template must comply with the [message template specifications](~~108253~~). You can call the [QuerySmsTemplate](~~419289~~) operation or use the Alibaba Cloud SMS console to check whether the message template is approved.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* Message templates pending approval can be withdrawn. You can withdraw a message template pending approval on the Message Templates tab in the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm#/overview).'."\n"
- ."\n"
- .'* Message templates that have been approved can be deleted, and cannot be modified. You can delete a message template pending approval on the Message Templates tab in the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm#/overview).'."\n"
- ."\n"
- .'* If you call the AddSmsTemplate operation, you can apply for a maximum of 100 message templates in a calendar day. After you apply for a message template, we recommend that you wait for at least 30 seconds before you apply for another one. If you use the Alibaba Cloud SMS console, you can apply for an unlimited number of message templates.'."\n"
- ."\n"
- .'* Messages sent to the Chinese mainland and messages sent to countries or regions outside the Chinese mainland use separate message templates. Create message templates based on your needs.'."\n"
- ."\n"
- .'* If you apply for a signature or message template, you must specify the signature scenario or template type. You must also provide the information of your services, such as a website URL, a domain name with an ICP filing, an application download URL, or the name of your WeChat official account or mini program. For sign-in scenarios, you must also provide an account and password for tests. A detailed description can improve the review efficiency of signatures and templates.'."\n"
- ."\n"
- .'* A signature must undergo a thorough review process before it can be approved for use. For more information, see [Usage notes](~~55324~~).'."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","type":"json"}]',
+ 'title' => 'Modify an SMS signature (discontinued)',
+ 'description' => '- 根据工信部规定与运营商[相关要求](~~2806975~~),阿里云进行了签名相关API的功能改造。为提升您签名的审核效率和审核通过率,请您使用新接口[UpdateSmsSign-修改短信签名](~~2807428~~)。'."\n"
."\n"
- .'### QPS limits'."\n"
+ .'- 仅支持修改未通过审核的签名,请参考[短信审核失败的处理建议](~~65990~~),调用此接口修改后自动提交审核,签名进入待审核状态。'."\n"
."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
+ .'- 通过接口修改签名的操作会在短信服务控制台同步,在控制台对签名的相关操作,请参见[短信签名](~~108073~~)。',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-15T04:21:05.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-15T04:21:01.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:24.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:18.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:05.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifySmsSign'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'dysms:ModifySmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
],
'ModifySmsTemplate' => [
- 'summary' => 'Modifies the information of an unapproved message template and submits it for review again.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'This operation is discontinued.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -6276,9 +4035,7 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '102450',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
@@ -6286,67 +4043,45 @@
[
'name' => 'TemplateType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the message. Valid values:'."\n"
- ."\n"
- .'* **0**: verification code'."\n"
- .'* **1**: text message'."\n"
- .'* **2**: promotional message'."\n"
- .'* **3**: message sent to countries or regions outside the Chinese mainland'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The SMS type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code.'."\n"
+ .'- **1**: SMS notification.'."\n"
+ .'- **2**: promotional message.'."\n"
+ .'- **3**: international or Hong Kong, Macao, and Taiwan message.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '0', 'title' => ''],
],
[
'name' => 'TemplateName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the template. The name must be 1 to 30 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'aliyun verification code',
- ],
+ 'schema' => ['description' => 'The template name. The name must be 1 to 30 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '验证码模板', 'title' => ''],
],
[
'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'You can log on to the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/dysms.htm), click **Go China** or **Go Globe** in the left-side navigation pane, and then view the template code on the **Templates** tab. You can also call the [AddSmsTemplate](~~121208~~) operation to obtain the template code.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'SMS_15255****',
- ],
+ 'schema' => ['description' => 'The code of the SMS template that failed the review.'."\n"
+ ."\n"
+ .'- Call the [QuerySmsTemplateList](~~419288~~) operation to obtain the code of the SMS template that failed the review.'."\n"
+ .'- View the code of the SMS template that failed the review on the [Templates](https://dysms.console.aliyun.com/domestic/text/template) page.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SMS_15255****', 'title' => ''],
],
[
'name' => 'TemplateContent',
'in' => 'query',
- 'schema' => [
- 'description' => 'The content of the template. The content must be 1 to 500 characters in length.'."\n"
- ."\n"
- .'> When you modify a template, design the template content based on the review comments.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'You are applying for mobile registration. The verification code is: ${code}, valid for 5 minutes!',
- ],
+ 'schema' => ['description' => 'The template content. The content cannot exceed 500 characters in length.'."\n"
+ ."\n"
+ .'The template content and variable content must comply with the [SMS template specifications](~~463161~~). Otherwise, the template fails the review. You can view common template examples on the [Apply for Template](https://dysms.console.aliyun.com/domestic/text/template/add) page. Using sample templates can improve review efficiency and success rate. For variable specifications, see [TemplateContent variable specifications](~~2806243~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '您正在申请手机注册,验证码为:${code},5分钟内有效!', 'title' => ''],
],
[
'name' => 'Remark',
'in' => 'query',
- 'schema' => [
- 'description' => 'The description of the message template. It is one of the reference information for template review. The description cannot exceed 100 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Modify the parameters of the template.',
- ],
+ 'schema' => ['description' => 'The description of the SMS template application. The description cannot exceed 100 characters in length.'."\n"
+ ."\n"
+ .'This information helps reviewers understand your business scenarios and improves review efficiency. Guidelines:'."\n"
+ ."\n"
+ .'- Provide the use case of your live business.'."\n"
+ .'- Provide SMS examples for real scenarios to reflect your business scenarios.'."\n"
+ .'- Provide variable values and describe in detail the business use case and the reason for choosing the variable attributes.'."\n"
+ .'- Provide the website URL, registered domain name, or application marketplace download link of the actual business.'."\n"
+ .'- For logon scenarios, provide the test account and password.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '手机注册登录', 'title' => ''],
],
],
'responses' => [
@@ -6354,207 +4089,190 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'TemplateCode' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'SMS_15255****',
- ],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'- 返回OK代表请求成功。'."\n"
+ .'- 其他错误码,请参见[错误码列表](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'TemplateCode' => ['description' => '已修改的模板Code。', 'type' => 'string', 'example' => 'SMS_15255****', 'title' => ''],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'TemplateParameterCountIllegal',
- 'errorMessage' => 'The verification code template only supports 1 verification code as a variable',
- ],
+ ['errorCode' => 'TemplateParameterCountIllegal', 'errorMessage' => 'The verification code template only supports 1 verification code as a variable', 'description' => 'Verification code templates support only one variable, which must be a verification code.'],
],
],
'staticInfo' => [
- 'substitutions' => [
- 'Dysmsapi::2017-05-25::UpdateSmsTemplate',
- ],
+ 'substitutions' => ['Dysmsapi::2017-05-25::UpdateSmsTemplate'],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"TemplateCode\\": \\"SMS_15255****\\"\\n}","errorExample":""},{"type":"xml","example":"<?xml version=\'1.0\' encoding=\'UTF-8\'?>\\r\\n<ModifySmsTemplateResponse>\\r\\n <TemplateCode>SMS_15255****</TemplateCode>\\r\\n <Message>OK</Message>\\r\\n <RequestId>F655A8D5-B967-440B-8683-DAD6FF8DE990</RequestId>\\r\\n <Code>OK</Code>\\r\\n</ModifySmsTemplateResponse>","errorExample":""}]',
- 'title' => 'ModifySmsTemplate',
- 'description' => 'After you apply for a message template, if the template fails to pass the review, you can call this operation to modify the template and submit the template again. You can call this operation to modify only a template for a specific message type.'."\n"
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"TemplateCode\\": \\"SMS_15255****\\"\\n}","type":"json"}]',
+ 'title' => 'Modify SMS template (discontinued)',
+ 'description' => '- 根据工信部规定与运营商[相关要求](~~2806975~~),阿里云进行了模板相关API的功能改造。为提升您模板的审核效率和审核通过率,请您使用新接口[UpdateSmsTemplate-修改短信模板](~~2807432~~)。'."\n"
."\n"
- .'The template content must comply with the [SMS template specifications](~~108253~~).'."\n"
+ .'- 仅支持修改未通过审核的模板,请参考[短信审核失败的处理建议](~~65990~~),调用此接口修改后重新提交审核。'."\n"
."\n"
- .'For more information, see [Usage notes](~~55324~~).'."\n"
+ .'- 通过接口修改模板的操作会在短信服务控制台同步,在控制台对模板的相关操作,请参见[短信模板](~~108085~~)。'."\n"
."\n"
- .'### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
+ .'### QPS限制'."\n"
+ .'本接口的单用户QPS限制为1000次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'QuerySmsTemplate' => [
- 'summary' => 'Queries the approval status of a message template.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-15T04:21:05.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-15T04:21:01.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:25.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:18.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-07-09T12:20:05.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifySmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'dysms:ModifySmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'QueryCardSmsTemplate' => [
+ 'summary' => 'Queries the review status of a card SMS template and returns information about the review by mobile phone vendors.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => true,
+ 'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102460',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- ],
+ 'abilityTreeCode' => '102452',
+ 'abilityTreeNodes' => ['FEATUREdysms17QZIS'],
],
'parameters' => [
[
'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'You can log on to the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/dysms.htm), click **Go China** or **Go Globe** in the left-side navigation pane, and then view the template code on the **Templates** tab. You can also call the [AddSmsTemplate](~~121208~~) operation to obtain the template code.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'SMS_1525***',
- ],
+ 'schema' => ['description' => 'The code of the card SMS template. Valid values:'."\n"
+ ."\n"
+ .'- After you call the [CreateCardSmsTemplate](~~CreateCardSmsTemplate~~) operation, the value of the **TemplateCode** response parameter is the code of the newly created card SMS template.'."\n"
+ ."\n"
+ .'- You can also log on to the [Domestic Card SMS](https://dysms.console.aliyun.com/domestic/card) page in the console and view the card SMS template code on the **Template Management** tab.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'CARD_SMS_2****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'TemplateContent' => [
- 'description' => 'The content of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'You are applying for mobile registration. The verification code is: ${code}, valid for 5 minutes!',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '0A974B78-02BF-4C79-ADF3-90CFBA1B55B1',
- ],
- 'TemplateCode' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'SMS_16703****',
- ],
- 'TemplateStatus' => [
- 'description' => 'The approval status of the message template. Valid values:'."\n"
- ."\n"
- .'* **0**: The message template is pending approval.'."\n"
- .'* **1**: The message template is approved.'."\n"
- .'* **AUDIT_STATE_NOT_PASS**: The message template is rejected. You can view the reason in the Reason response parameter.'."\n"
- .'* **10**: The approval is canceled.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'TemplateType' => [
- 'description' => 'The type of the message. Valid values:'."\n"
- ."\n"
- .'* **0**: verification code'."\n"
- .'* **1**: notification message'."\n"
- .'* **2**: promotional message'."\n"
- .'* **3**: message sent to countries or regions outside the Chinese mainland'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'TemplateName' => [
- 'description' => 'The name of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'aliyun verification code',
- ],
- 'CreateDate' => [
- 'description' => 'The time when the message template was created.'."\n",
- 'type' => 'string',
- 'example' => '2019-06-04 11:42:17',
- ],
- 'Reason' => [
- 'description' => 'The approval remarks.'."\n"
- ."\n"
- .'* If the value of AuditStatus is **AUDIT_STATE_PASS** or **AUDIT_STATE_INIT**, the value of Reason is No Approval Remarks.'."\n"
- .'* If the value of AuditStatus is **AUDIT_STATE_NOT_PASS**, the reason why the message template is rejected is returned.'."\n",
- 'type' => 'string',
- 'example' => 'The document cannot verify the authenticity of the information. Please upload it again.',
+ 'Code' => ['description' => 'The status code.'."\n"
+ ."\n"
+ .'* If OK is returned, the request is successful.'."\n"
+ .'* For other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request, which is a unique identifier generated by Alibaba Cloud for the request. It can be used to troubleshoot and locate issues.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Templates' => [
+ 'description' => 'The list of returned templates.'."\n",
+ 'type' => 'array',
+ 'items' => ['description' => 'The returned template information. The actual returned values prevail.'."\n"
+ .'- tmpName: the name of the template.'."\n"
+ .'- tmpCode: the code of the template.'."\n"
+ .'- state: the review status of the template. 0: under review. 1: approved. 2: rejected.'."\n"
+ .'- tmpOps: the list of mobile phone vendor reviews. (state: the review status from the mobile phone vendor. vendorCode: the information about the mobile phone vendor. remark: the review remarks from the mobile phone vendor.)', 'type' => 'object', 'example' => ' {'."\n"
+ .'"tmpName": "测试",'."\n"
+ .'"tmpCode": "CARD_SMS_****",'."\n"
+ .'"state": 1,'."\n"
+ .'"tmpOps": ['."\n"
+ .' {'."\n"
+ .' "tmpOpId": "536363",'."\n"
+ .' "vendorTmpId": "600302896",'."\n"
+ .' "remark": "自动审核通过",'."\n"
+ .' "supplierCode": "MW",'."\n"
+ .' "state": 1,'."\n"
+ .' "vendorName": "华为",'."\n"
+ .' "vendorCode": "HUAWEI"'."\n"
+ .' }]'."\n"
+ .'}', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'substitutions' => [
- 'Dysmsapi::2017-05-25::GetSmsTemplate',
+ 'errorCodes' => [
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"TemplateContent\\": \\"亲爱的会员!阿里云短信服务祝您新年快乐!\\",\\n \\"RequestId\\": \\"0A974B78-02BF-4C79-ADF3-90CFBA1B55B1\\",\\n \\"TemplateCode\\": \\"SMS_1525****\\",\\n \\"TemplateStatus\\": 0,\\n \\"Code\\": \\"OK\\",\\n \\"TemplateType\\": 1,\\n \\"Message\\": \\"OK\\",\\n \\"TemplateName\\": \\"通知短信\\",\\n \\"CreateDate\\": \\"2024-06-03 10:02:34\\",\\n \\"Reason\\": \\"无审批备注\\"\\n}","errorExample":""},{"type":"xml","example":"<QuerySmsTemplateResponse>\\n<TemplateCode>SMS_16703****</TemplateCode>\\n<Message>OK</Message>\\n<RequestId>0A974B78-02BF-4C79-ADF3-90CFBA1B55B1</RequestId>\\n<TemplateContent>亲爱的会员!阿里云短信服务祝您新年快乐!</TemplateContent>\\n<TemplateName>阿里云短信测试模板</TemplateName>\\n<TemplateType>1</TemplateType>\\n<CreateDate>2019-06-04 11:42:17</CreateDate>\\n<Code>OK</Code>\\n<Reason>无审批备注</Reason>\\n<TemplateStatus>1</TemplateStatus>\\n</QuerySmsTemplateResponse>","errorExample":""}]',
- 'title' => 'QuerySmsTemplate',
- 'description' => 'After you create a message template, you can call this operation to query the approval status of the template. If a message template is rejected, the reason is returned. Modify the message template based on the reason.'."\n"
- ."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Templates\\": [\\n {\\n \\"tmpName\\": \\"测试\\",\\n \\"tmpCode\\": \\"CARD_SMS_****\\",\\n \\"state\\": 1,\\n \\"tmpOps\\": [\\n {\\n \\"tmpOpId\\": \\"536363\\",\\n \\"vendorTmpId\\": \\"600302896\\",\\n \\"remark\\": \\"自动审核通过\\",\\n \\"supplierCode\\": \\"MW\\",\\n \\"state\\": 1,\\n \\"vendorName\\": \\"华为\\",\\n \\"vendorCode\\": \\"HUAWEI\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Queries the status of a card SMS template',
+ 'description' => '- Alibaba Cloud accounts that have not activated the card SMS service cannot call this API.'."\n"
+ .'- The card SMS service is currently in the internal invitation phase. Contact your Alibaba Cloud business manager to apply for activation or [contact Alibaba Cloud pre-sales consultation](https://help.aliyun.com/document_detail/464625.html).'."\n"
+ .'- You can also log on to the [Domestic Card SMS](https://dysms.console.aliyun.com/domestic/card) page in the console and query the review status of card SMS templates on the Template Management tab.'."\n"
.'### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 5,000 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
- ],
- 'SendSms' => [
- 'summary' => 'Sends a message. Before you call this operation, submit a message signature and message template, and make sure that the signature and template are approved.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'The per-user QPS limit for this operation is 300 calls per second. If the limit is exceeded, API calls are throttled, which may affect your business. Call this operation responsibly.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryCardSmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryCardSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'QueryCardSmsTemplateReport' => [
+ 'summary' => 'Queries the parsing data of a specified card SMS template. The parsing data includes the number of successful SMS parsing receipts, the number of message exposures, and the number of message clicks.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -6565,156 +4283,227 @@
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
- 'chargeType' => 'paid',
- 'abilityTreeCode' => '102468',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsKC679O',
- ],
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '118232',
+ 'abilityTreeNodes' => ['FEATUREdysms3V8ND3'],
],
'parameters' => [
[
- 'name' => 'PhoneNumbers',
+ 'name' => 'TemplateCodes',
'in' => 'query',
+ 'style' => 'flat',
'schema' => [
- 'description' => 'The mobile numbers of the recipients. Format:'."\n"
- ."\n"
- .'* If you send messages to the Chinese mainland, specify mobile numbers that are prefixed with +, +86, 0086, or 86, or 11-digit mobile numbers without prefixes. Example: 1390000\\*\\*\\*\\*.'."\n"
- .'* If you send messages to countries or regions outside the Chinese mainland, specify this parameter in the \\<Area code>\\<Mobile number> format. Example: 852000012\\*\\*\\*\\*.'."\n"
- ."\n"
- .'You can send messages to multiple mobile numbers, separate the mobile numbers with commas (,). You can specify up to 1,000 mobile numbers in each request. Compared with sending messages to a single mobile number, sending messages to multiple mobile numbers requires longer response time.'."\n"
+ 'description' => 'The card SMS object.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The code of the card SMS template. You can view the code in the **Template CODE** column on the **Template Management** tab of the **Domestic Messages** page in the console.'."\n"
."\n"
- .'> We recommend that you send one verification code message to a mobile number in each request.'."\n",
- 'type' => 'string',
+ .'>The template must be a card SMS template that is added and approved.', 'type' => 'string', 'required' => false, 'example' => 'CARD_SMS_391', 'title' => ''],
'required' => true,
- 'example' => '1390000****',
+ 'docRequired' => true,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'SignName',
+ 'name' => 'StartDate',
'in' => 'query',
- 'schema' => [
- 'description' => 'The signature.'."\n"
- ."\n"
- .'You can log on to the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/dysms.htm?spm=5176.12818093.categories-n-products.ddysms.3b2816d0xml2NA#/overview), click **Go China** or **Go Globe** in the left-side navigation pane, and then view the signature on the **Signatures** tab.'."\n"
- ."\n"
- .'> You must specify a signature that is created in the SMS console and approved by Alibaba Cloud. For more information about SMS signature specifications, see [SMS signature specifications](~~108076~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'Aliyun',
- ],
+ 'schema' => ['description' => 'The start time. Format: yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'docRequired' => true, 'required' => true, 'example' => '2020-10-10 00:00:01', 'title' => ''],
],
[
- 'name' => 'TemplateCode',
+ 'name' => 'EndDate',
'in' => 'query',
+ 'schema' => ['description' => 'The end time. Format: yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'docRequired' => true, 'required' => true, 'example' => '2020-10-11 00:00:01', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'You can log on to the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/dysms.htm?spm=5176.12818093.categories-n-products.ddysms.3b2816d0xml2NA#/overview), click **Go China** or **Go Globe** in the left-side navigation pane, and then view the **template code** on the **Templates** tab.'."\n"
- ."\n"
- .'> You must specify a message template that is created in the SMS console and approved by Alibaba Cloud. If you send messages to countries or regions outside the Chinese mainland, use the corresponding message templates.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'SMS_15305****',
+ 'description' => 'The data object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- The value OK indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For information about other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B71F06CA-7735-183A-B52E-234EF8AFE14B', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'model' => [
+ 'description' => 'The list of returned data.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The details of the returned data.'."\n"
+ .'- tmpCode: the template code.'."\n"
+ .'- date: the data date. Format: yyyy-MM-dd HH:mm:ss.'."\n"
+ .'- rptSuccessCount: the number of successful SMS parsing receipts.'."\n"
+ .'- exposeUv: the number of message exposure UVs.'."\n"
+ .'- exposePv: the number of message exposure PVs.'."\n"
+ .'- clickUv: the number of message click UVs.'."\n"
+ .'- clickPv: the number of message click PVs.'."\n"
+ .'- facPvUvList: the list of vendor information.', 'type' => 'object', 'title' => '', 'example' => ''],
+ 'enumValueTitles' => [],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'TemplateParam',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The value of the variable in the message template. You can specify multiple parameter values. Example:{"name":"Sam","number":"1390000\\*\\*\\*\\*"}.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* If line breaks are required in JSON-formatted data, they must meet the relevant requirements that are specified in the standard JSON protocol.'."\n"
- ."\n"
- .'* For more information about template variables, see [SMS template specifications](~~108253~~).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"code":"1111"}',
+ ],
+ 'errorCodes' => [
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"B71F06CA-7735-183A-B52E-234EF8AFE14B\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"model\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Queries the parsing data of a specified card SMS template',
+ 'description' => '### QPS limit'."\n"
+ .'The QPS limit on this operation is 300 calls per second per user. If the number of calls per second exceeds the limit, throttling is triggered. This may affect your business. Call this operation at a reasonable pace.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryCardSmsTemplateReport'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryCardSmsTemplateReport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'QueryDigitalSignByName' => [
+ 'summary' => 'Retrieves the details of a digital SMS signature by its name.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'SmsUpExtendCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The extension code of the upstream message. Upstream messages are messages sent to the communication service provider. Upstream messages are used to customize a service, complete an inquiry, or send a request. You are charged for sending upstream messages based on the billing standards of the service provider.'."\n"
- ."\n"
- .'> The extension code is automatically generated by the system when the signature is generated. You do not need to specify the extension code. You can ignore this parameter if you do not have special requirements.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '90999',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'autoTest' => true, 'tenantRelevance' => 'tenant'],
+ 'parameters' => [
[
- 'name' => 'OutId',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The extension field.'."\n"
- ."\n"
- .'> You can ignore this parameter if you do not have special requirements.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'abcdefgh',
- ],
+ 'schema' => ['description' => 'The name of the digital SMS signature. The signature must belong to your Alibaba Cloud account.', 'type' => 'string', 'required' => false, 'example' => '阿里云数字商城', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => '',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'BizId' => [
- 'description' => 'The ID of the delivery receipt.'."\n"
- ."\n"
- .'You can call the [QuerySendDetails](~~QuerySendDetails~~) operation to query the delivery status based on the receipt ID.'."\n",
- 'type' => 'string',
- 'example' => '9006197469364984****',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
+ 'AccessDeniedDetail' => ['description' => 'Details of the access denial. This parameter is returned only if Resource Access Management (RAM) authentication fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Data' => ['description' => '- `gmtModified`: The time when the signature was last modified.'."\n"
+ ."\n"
+ .'- `creator`: The ID of the user who created the signature.'."\n"
+ ."\n"
+ .'- `signName`: The name of the digital SMS signature.'."\n"
+ ."\n"
+ .'- `qualificationId`: The ID of the qualification. You can create qualifications in the console or by calling an API operation.'."\n"
+ ."\n"
+ .'- `signIndustry`: The industry type. Valid values: `0` (General) and `1` (E-commerce).'."\n"
+ ."\n"
+ .'- `signVersion`: The version of the signature. This value is updated for each new version. The current version is 1.'."\n"
+ ."\n"
+ .'- `telecomRegisterStatus`: The filing status with China Telecom. Valid values: `0` (Filing Failed), `3` (Filing Successful), `-1` (Filing in Progress), and `-2` (Not Filed).'."\n"
+ ."\n"
+ .'- `signCode`: The code of the digital SMS signature.'."\n"
+ ."\n"
+ .'- `gmtCreate`: The time when the signature was created.'."\n"
+ ."\n"
+ .'- `signId`: The ID of the signature. This is a unique identifier.'."\n"
+ ."\n"
+ .'- `mobileRegisterStatus`: The filing status with China Mobile.'."\n"
+ ."\n"
+ .'- `SignSource`: The source of the signature. Valid values:'."\n"
+ ."\n"
+ .'- `mobileAvailableStatus`: The availability status with China Mobile. Valid values: `0` (Unavailable) and `1` (Available). We recommend that you select an available signature when you create a template or send a digital SMS message.'."\n"
+ ."\n"
+ .'- `unicomRegisterStatus`: The filing status with China Unicom. Valid values: `0` (Filing Failed), `3` (Filing Successful), `-1` (Filing in Progress), and `-2` (Not Filed).'."\n"
+ ."\n"
+ .'- `unicomAvailableStatus`: The availability status with China Unicom. Valid values: `0` (Unavailable) and `1` (Available). We recommend that you select an available signature when you create a template or send a digital SMS message.'."\n"
+ ."\n"
+ .'- `telecomAvailableStatus`: The availability status with China Telecom. Valid values: `0` (Unavailable) and `1` (Available). We recommend that you select an available signature when you create a template or send a digital SMS message.', 'type' => 'object', 'example' => ' "Data": {'."\n"
+ .' "gmtModified": 1770005896000,'."\n"
+ .' "creator": "UID:1498275912899720",'."\n"
+ .' "signName": "驳回理由",'."\n"
+ .' "qualificationId": 2757722,'."\n"
+ .' "qualificationVersion": 1768974751432,'."\n"
+ .' "signIndustry": 0,'."\n"
+ .' "registerStatueReason": {},'."\n"
+ .' "signVersion": 1,'."\n"
+ .' "remark": "",'."\n"
+ .' "telecomRegisterStatus": -1,'."\n"
+ .' "signCode": "DIGSIGN_100000168688001_1769050485148_pYZu1",'."\n"
+ .' "gmtCreate": 1769050485000,'."\n"
+ .' "signId": 22784769,'."\n"
+ .' "mobileRegisterStatus": -1,'."\n"
+ .' "signSource": 0,'."\n"
+ .' "mobileAvailableStatus": 0,'."\n"
+ .' "attachmentList": [],'."\n"
+ .' "unicomRegisterStatus": 3,'."\n"
+ .' "unicomAvailableStatus": 1,'."\n"
+ .' "signType": 1,'."\n"
+ .' "telecomAvailableStatus": 0,'."\n"
+ .' "extendMessage": "{}"'."\n"
+ .' },', 'title' => ''],
+ 'Code' => ['description' => 'The status code of the request. A value of `OK` indicates that the request was successful. Other values indicate error codes.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful.',
+ 'enumValueTitles' => ['true' => 'The request was successful.', 'false' => 'The request failed.'],
+ 'type' => 'boolean',
+ 'example' => 'false',
+ 'title' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query Digital Message SMS Signature ',
+ 'description' => 'You can query only the digital SMS signatures that belong to your Alibaba Cloud account.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"BizId\\": \\"9006197469364984****\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\"\\n}","errorExample":""},{"type":"xml","example":"<SendSmsResponse>\\n <Message>OK</Message>\\n <RequestId>44DF7A95-603F-4651-9298-BE1850BEB53F</RequestId>\\n <BizId>336006646937050335^0</BizId>\\n <Code>OK</Code>\\n</SendSmsResponse>","errorExample":""}]',
- 'title' => 'SendSms',
- 'description' => '* This operation is mainly used to send a single message. In special scenarios, you can send multiple messages with the same content to a maximum of 1,000 mobile numbers. Note that group sending may be delayed.'."\n"
- .'* To send messages with different signatures and template content to multiple mobile numbers in a single request, call the [SendBatchSms](~~102364~~) operation.'."\n"
- .'* You are charged for using Alibaba Cloud Short Message Service (SMS) based on the amount of messages sent. For more information, see [Pricing](https://www.aliyun.com/price/product#/sms/detail).'."\n"
- .'* If your verification code signature and general-purpose signature have the same name, the system uses the general-purpose signature to send messages by default.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": false\\n}","type":"json"}]',
],
- 'SendBatchSms' => [
- 'summary' => 'Uses a single message template and multiple signatures to send messages to multiple recipients.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'QueryMobilesCardSupport' => [
+ 'summary' => 'Queries whether a phone number supports card SMS messages.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -6725,146 +4514,136 @@
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
- 'chargeType' => 'paid',
- 'abilityTreeCode' => '102462',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsKC679O',
- ],
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '161447',
+ 'abilityTreeNodes' => ['FEATUREdysmsB35KN5'],
],
'parameters' => [
[
- 'name' => 'PhoneNumberJson',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The mobile number of the recipient. Format:'."\n"
- ."\n"
- .'* Message delivery to the Chinese mainland: +/+86/0086/86 or an 11-digit mobile number without a prefix. Example: 1590000\\*\\*\\*\\*.'."\n"
- .'* Message delivery to countries or regions outside the Chinese mainland: Dialing code + Mobile number. Example: 852000012\\*\\*\\*\\*.'."\n"
- ."\n"
- .'> We recommend that you call the SendSms operation to send verification codes.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '["1590000****","1350000****"]',
- ],
- ],
- [
- 'name' => 'SignNameJson',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The signature.'."\n"
- ."\n"
- .'Log on to the Alibaba Cloud SMS console. In the left-side navigation pane, click **Go Globe** or **Go China**. You can view the signature in the **Signature** column on the **Signatures** tab.'."\n"
- ."\n"
- .'> The signatures must be approved and correspond to the mobile numbers in sequence.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '["Aliyun","Alibaba"]',
- ],
- ],
- [
'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'Log on to the Alibaba Cloud SMS console. In the left-side navigation pane, click **Go Globe** or **Go China**. You can view the message template in the **Template Code** column on the **Message Templates** tab.'."\n"
- ."\n"
- .'> The message templates must be created on the Go Globe page and approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'SMS_15255****',
- ],
+ 'schema' => ['description' => 'The code of the card SMS template. To view the code, log on to the console and choose **Domestic Messages** > [Template Management](https://dysms.console.aliyun.com/domestic/text/template).'."\n"
+ ."\n"
+ .'>The template must be added and approved.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'CARD_SMS_2****', 'title' => ''],
],
[
- 'name' => 'TemplateParamJson',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The value of the variable in the message template.'."\n"
- ."\n"
- .'> If you need to add line breaks to the JSON template, make sure that the format is valid. In addition, the sequence of variable values must be the same as that of the mobile numbers and signatures.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[{"name":"TemplateParamJson"},{"name":"TemplateParamJson"}]',
- ],
- ],
- [
- 'name' => 'SmsUpExtendCodeJson',
- 'in' => 'formData',
+ 'name' => 'Mobiles',
+ 'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The extension code of the MO message. Format: JSON array.'."\n"
- ."\n"
- .'> The parameter is optional.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '["90999","90998"]',
+ 'description' => 'The list of phone numbers.',
+ 'type' => 'array',
+ 'items' => ['description' => '待查询的手机号。一次请求最多支持查询10000个号码。', 'type' => 'object', 'required' => false, 'example' => '{'."\n"
+ .' "mobile": "138****0000"'."\n"
+ .'}', 'title' => ''],
+ 'required' => true,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'OutId',
+ 'name' => 'EncryptType',
'in' => 'query',
+ 'allowEmptyValue' => true,
'schema' => [
- 'description' => 'The extension field of the external record. The value is a string that contains no more than 256 characters.'."\n"
- ."\n"
- .'> The parameter is optional.'."\n",
+ 'description' => 'The encryption method for the phone number. Valid values:'."\n"
+ .'- SHA1: SHA1 encryption.'."\n"
+ .'- NORMAL: no encryption. The phone number is transmitted in plaintext.',
+ 'enumValueTitles' => [],
'type' => 'string',
+ 'example' => 'NORMAL',
+ 'maxLength' => 100,
+ 'default' => 'NORMAL',
+ 'enum' => ['SHA1', 'NORMAL'],
'required' => false,
- 'example' => 'abcdefg',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => '返回值根对象。',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'BizId' => [
- 'description' => 'The ID of the delivery receipt. You can use one of the following methods to query the delivery status of a message based on the ID.'."\n"
- ."\n"
- .'* Call the [QuerySendDetails](~~102352~~) operation.'."\n"
- .'* Log on to the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm#/overview). In the left-side navigation pane, choose **Analytics** > **Delivery Report**.'."\n",
- 'type' => 'string',
- 'example' => '9006197469364984400',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D230E',
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'- 返回OK代表请求成功。'."\n"
+ .'- 其他错误码,请参见[错误码列表](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '阿里云为该请求生成的唯一标识符。', 'type' => 'string', 'example' => '08C17DFE-2E10-54F4-BAFB-7180039CC217', 'title' => ''],
+ 'Success' => ['description' => '调用接口是否成功。取值:'."\n"
+ ."\n"
+ .'- **true**:调用成功。'."\n"
+ ."\n"
+ .'- **false**:调用失败。', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'description' => '返回数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'QueryResult' => [
+ 'description' => '查询值。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '查询值。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Mobile' => ['description' => '查询的手机号码。', 'type' => 'string', 'example' => '1380000****', 'title' => ''],
+ 'Support' => ['description' => '是否支持卡片短信。取值:'."\n"
+ ."\n"
+ .'- **true**:支持。'."\n"
+ .'- **false**:不支持。', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'errorCodes' => [
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"08C17DFE-2E10-54F4-BAFB-7180039CC217\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"QueryResult\\": [\\n {\\n \\"Mobile\\": \\"1380000****\\",\\n \\"Support\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Query whether a phone number supports card SMS messages (new API)',
+ 'description' => '- 未开通卡片短信业务的阿里云账号无法调用此API。'."\n"
+ .'- 目前卡片短信在内部邀约阶段,请联系您的阿里云商务经理申请开通或[联系阿里云售前咨询](https://help.aliyun.com/document_detail/464625.html)。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryMobilesCardSupport'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryMobilesCardSupport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"BizId\\": \\"9006197469364984400\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8D230E\\"\\n}","type":"json"}]',
- 'title' => 'SendBatchSms',
- 'description' => 'You can call the operation to send messages to a maximum of 100 recipients at a time.'."\n",
],
'QuerySendDetails' => [
- 'summary' => 'Queries the information about a message.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'Queries the delivery records and status of SMS messages sent to a single phone number.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -6877,69 +4656,45 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '102455',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsWO2BNU',
- ],
+ 'abilityTreeNodes' => ['FEATUREdysmsWO2BNU'],
],
'parameters' => [
[
'name' => 'PhoneNumber',
'in' => 'query',
- 'schema' => [
- 'description' => 'The mobile numbers of the recipients. Format:'."\n"
- ."\n"
- .'* If you send messages in the Chinese mainland, specify an 11-digit mobile number, for example, 1390000\\*\\*\\*\\*.'."\n"
- .'* If you send messages to countries or regions outside the Chinese mainland, specify this parameter in the \\<Area code>\\<Mobile number> format. Example: 8520000\\*\\*\\*\\*.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '1390000****',
- ],
+ 'schema' => ['description' => 'The phone number to query. The format is as follows:'."\n"
+ ."\n"
+ .'- For messages to the Chinese mainland, use an 11-digit phone number, such as 1390000\\*\\*\\*\\*.'."\n"
+ ."\n"
+ .'- For international SMS, use the format: country/region code + phone number, such as 8520000\\*\\*\\*\\*.'."\n"
+ ."\n"
+ .'> You can specify only one phone number.', 'type' => 'string', 'required' => true, 'example' => '1390000****', 'title' => ''],
],
[
'name' => 'BizId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the delivery receipt. The delivery receipt ID is the value of the BizId parameter that is returned when you call the SendSms or SendBatchSms operation.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '134523^435****',
- ],
+ 'schema' => ['description' => 'The delivery receipt ID. This is the `BizId` returned in the response when you call the [SendSms](~~419273~~) or [SendBatchSms](~~419274~~) operation.'."\n"
+ ."\n"
+ .'> You can specify only one `BizId`.', 'type' => 'string', 'required' => false, 'example' => '134523^435****', 'title' => ''],
],
[
'name' => 'SendDate',
'in' => 'query',
- 'schema' => [
- 'description' => 'The date when the message was sent. You can query messages that were sent within the last 30 days.'."\n"
- ."\n"
- .'Format: yyyyMMdd. Example: 20181225.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '20181228',
- ],
+ 'schema' => ['description' => 'The date when the SMS message was sent. You can query records from the past 30 days.'."\n"
+ ."\n"
+ .'Format: **yyyyMMdd**, for example, 20250601.', 'type' => 'string', 'required' => true, 'example' => '20250601', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of items displayed per page.'."\n"
- ."\n"
- .'Valid values: 1 to 50.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The number of delivery records to return on each page.'."\n"
+ ."\n"
+ .'Valid values: 1 to 50.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '20', 'title' => ''],
],
[
'name' => 'CurrentPage',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number of the first page.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The current page number for paginated results.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1', 'title' => ''],
],
],
'responses' => [
@@ -6947,112 +4702,104 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF',
- ],
- 'TotalCount' => [
- 'description' => 'The number of sent messages.'."\n",
- 'type' => 'string',
- 'example' => '1',
- ],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- **OK** indicates the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID. This unique identifier is generated by Alibaba Cloud for each request and can be used for troubleshooting.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of SMS messages sent.'."\n"
+ ."\n"
+ .'> - This value represents the number of submission attempts, not the number of units for billing.', 'type' => 'string', 'example' => '1', 'title' => ''],
'SmsSendDetailDTOs' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'SmsSendDetailDTO' => [
- 'description' => 'The details of the message.'."\n",
+ 'description' => 'The SMS delivery details.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
- 'ErrCode' => [
- 'description' => 'The status code returned by the carrier.'."\n"
- ."\n"
- .'* If the message is delivered, "DELIVERED" is returned.'."\n"
- .'* For information about the error codes that may be returned if the message is not delivered, see [error codes](~~101347~~).'."\n",
- 'type' => 'string',
- 'example' => 'DELIVERED',
- ],
- 'TemplateCode' => [
- 'description' => 'The ID of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'SMS_12231****',
- ],
- 'OutId' => [
- 'description' => 'The extended field.'."\n",
- 'type' => 'string',
- 'example' => '123',
- ],
- 'ReceiveDate' => [
- 'description' => 'The date and time when the message was received.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-08 16:44:13',
- ],
- 'SendDate' => [
- 'description' => 'The date and time when the message was sent.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-08 16:44:10',
- ],
- 'PhoneNum' => [
- 'description' => 'The mobile numbers of the recipients.'."\n",
- 'type' => 'string',
- 'example' => '1390000****',
- ],
- 'Content' => [
- 'description' => 'The content of the message.'."\n",
- 'type' => 'string',
- 'example' => '【Aliyun】This is a test message.',
- ],
- 'SendStatus' => [
- 'description' => 'The delivery status of the message. Valid values:'."\n"
- ."\n"
- .'* **1**: The message has not received a delivery receipt yet.'."\n"
- .'* **2**: The message failed to be delivered.'."\n"
- .'* **3**: The message was delivered.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '3',
- ],
+ 'ErrCode' => ['description' => 'The delivery status code from the carrier.'."\n"
+ ."\n"
+ .'- **DELIVERED**: The message was delivered successfully.'."\n"
+ ."\n"
+ .'- For failure codes, see [Error codes](~~101347~~).', 'type' => 'string', 'example' => 'DELIVERED', 'title' => ''],
+ 'TemplateCode' => ['description' => 'The code of the message template.'."\n"
+ ."\n"
+ .'> The `TemplateCode` parameter is not returned for test messages sent with the `[Test] Alibaba Cloud` signature and the `[Test] Alibaba Cloud test template`.', 'type' => 'string', 'example' => 'SMS_12231****', 'title' => ''],
+ 'OutId' => ['description' => 'The external ID.'."\n"
+ ."\n"
+ .'> This parameter is returned only if you specify the `OutId` parameter in the send request.', 'type' => 'string', 'example' => '123', 'title' => ''],
+ 'ReceiveDate' => ['description' => 'The time the message was received by the recipient\'s device.', 'type' => 'string', 'example' => '2025-06-01 16:44:13', 'title' => ''],
+ 'SendDate' => ['description' => 'The time the message was sent.', 'type' => 'string', 'example' => '2025-06-01 16:44:10', 'title' => ''],
+ 'PhoneNum' => ['description' => 'The recipient\'s phone number.', 'type' => 'string', 'example' => '1390000****', 'title' => ''],
+ 'Content' => ['description' => 'The message content.', 'type' => 'string', 'example' => '【阿里云】验证码为:123,您正在登录,若非本人操作,请勿泄露', 'title' => ''],
+ 'SendStatus' => ['description' => 'The delivery status of the SMS message. Valid values include:'."\n"
+ ."\n"
+ .'- **1**: The message is awaiting a delivery receipt.'."\n"
+ ."\n"
+ .'- **2**: The message failed to be delivered.'."\n"
+ ."\n"
+ .'- **3**: The message was delivered successfully.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => 'Contains the delivery details.',
+ 'title' => '',
+ 'example' => '',
],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\",\\n \\"TotalCount\\": \\"1\\",\\n \\"SmsSendDetailDTOs\\": {\\n \\"SmsSendDetailDTO\\": [\\n {\\n \\"ErrCode\\": \\"DELIVERED\\",\\n \\"TemplateCode\\": \\"SMS_12231****\\",\\n \\"OutId\\": \\"123\\",\\n \\"ReceiveDate\\": \\"2025-06-01 16:44:13\\",\\n \\"SendDate\\": \\"2025-06-01 16:44:10\\",\\n \\"PhoneNum\\": \\"1390000****\\",\\n \\"Content\\": \\"【阿里云】验证码为:123,您正在登录,若非本人操作,请勿泄露\\",\\n \\"SendStatus\\": 3\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'QuerySendDetails',
+ 'description' => '- This operation queries the details of SMS messages sent to a specific phone number on a given date. You can also provide the `BizId` to query a specific delivery record.'."\n"
+ ."\n"
+ .'- This operation queries delivery details for a single phone number at a time. To view delivery details in bulk, use the [QuerySendStatistics](~~419276~~) operation to query delivery statistics, or log in to the [Delivery Receipts](https://dysms.console.aliyun.com/record) page in the console.'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ ."\n"
+ .'The QPS limit for this operation is 5,000 requests per second per user. Calls that exceed this limit are throttled.',
+ 'requestParamsDescription' => 'You can visit the [OpenAPI Portal](https://api.aliyun.com/api/Dysmsapi/2017-05-25/QuerySendDetails?tab=DEMO\\&lang=JAVA) to view SDK request examples for different languages.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySendDetails'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySendDetails',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
],
'QuerySendStatistics' => [
- 'summary' => 'Queries message delivery details.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'Queries message delivery statistics, including send dates, the number of successfully sent messages, and the number of received delivery receipts.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -7065,103 +4812,57 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '118726',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsWO2BNU',
- ],
+ 'abilityTreeNodes' => ['FEATUREdysmsWO2BNU'],
],
'parameters' => [
[
'name' => 'IsGlobe',
'in' => 'query',
- 'schema' => [
- 'description' => 'The site from where the message is sent. Valid values:'."\n"
- ."\n"
- .'* **1**: China site'."\n"
- .'* **2**: international site'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'maximum' => '2',
- 'minimum' => '1',
- 'example' => '1',
- 'maxLength' => 2,
- 'minLength' => 1,
- ],
+ 'schema' => ['description' => 'The destination scope of the messages. Valid values:'."\n"
+ ."\n"
+ .'- **1**: domestic messages.'."\n"
+ ."\n"
+ .'- **2**: international messages.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '2', 'minimum' => '1', 'maxLength' => 2, 'minLength' => 1, 'example' => '1', 'title' => ''],
],
[
'name' => 'StartDate',
'in' => 'query',
- 'schema' => [
- 'description' => 'The beginning of the time range to query. Format: yyyyMMdd. Example: 20181225.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '20201002',
- ],
+ 'schema' => ['description' => 'The start date. The format is yyyyMMdd.', 'type' => 'string', 'required' => true, 'example' => '20201002', 'title' => ''],
],
[
'name' => 'EndDate',
'in' => 'query',
- 'schema' => [
- 'description' => 'The end of the time range to query. Format: yyyyMMdd. Example: 20181225.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '20201003',
- ],
+ 'schema' => ['description' => 'The end date. The format is yyyyMMdd.', 'type' => 'string', 'required' => true, 'example' => '20201003', 'title' => ''],
],
[
'name' => 'PageIndex',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number. Default value: **1**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'minimum' => '1',
- 'example' => '1',
- 'minLength' => 1,
- ],
+ 'schema' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'minimum' => '1', 'minLength' => 1, 'example' => '1', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries to return on each page. Valid values: **1 to 50**.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'maximum' => '50',
- 'minimum' => '1',
- 'example' => '10',
- 'maxLength' => 50,
- 'minLength' => 1,
- ],
+ 'schema' => ['description' => 'The page size. Valid values: **1 to 50**.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '50', 'minimum' => '1', 'maxLength' => 50, 'minLength' => 1, 'example' => '10', 'title' => ''],
],
[
'name' => 'TemplateType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the message template. Valid values: Valid values:'."\n"
- ."\n"
- .'* **0**: verification code'."\n"
- .'* **1**: notification'."\n"
- .'* **2**: promotional message (Enterprise users only)'."\n"
- .'* **3**: international purpose (Enterprise users only)'."\n"
- .'* **7**: digital message'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '0',
- ],
+ 'schema' => ['description' => 'The template type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code.'."\n"
+ ."\n"
+ .'- **1**: notification message.'."\n"
+ ."\n"
+ .'- **2**: promotional message. (Enterprise customers only)'."\n"
+ ."\n"
+ .'- **3**: international message. (Enterprise customers only)'."\n"
+ ."\n"
+ .'- **7**: digital message.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''],
],
[
'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The signature.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Aliyun',
- ],
+ 'schema' => ['description' => 'The signature.', 'type' => 'string', 'required' => false, 'example' => '阿里云平台', 'title' => ''],
],
],
'responses' => [
@@ -7169,236 +4870,211 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E47708****',
- ],
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990'."\n", 'title' => ''],
+ 'Code' => ['description' => 'The response code. Valid values:'."\n"
+ ."\n"
+ .'- OK: The request was successful.'."\n"
+ ."\n"
+ .'- For other values, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The data returned.',
'type' => 'object',
'properties' => [
- 'TotalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '20',
- ],
+ 'TotalSize' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
'TargetList' => [
- 'description' => 'The details of the data returned.'."\n",
+ 'description' => 'A list of delivery statistics.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
- 'TotalCount' => [
- 'description' => 'The number of delivered messages.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '20',
- ],
- 'RespondedSuccessCount' => [
- 'description' => 'The number of messages with a delivery receipt that indicates a success.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '17',
- ],
- 'RespondedFailCount' => [
- 'description' => 'The number of messages with a delivery receipt that indicates a failure.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '2',
- ],
- 'NoRespondedCount' => [
- 'description' => 'The number of messages without a delivery receipt.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'SendDate' => [
- 'description' => 'The date when the message is sent. Format: yyyyMMdd. Example: 20181225.'."\n",
- 'type' => 'string',
- 'example' => '20201010',
- ],
+ 'TotalCount' => ['description' => 'The number of successfully sent messages (billable message count).', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
+ 'RespondedSuccessCount' => ['description' => 'The number of messages with successful delivery receipts.', 'type' => 'integer', 'format' => 'int64', 'example' => '17', 'title' => ''],
+ 'RespondedFailCount' => ['description' => 'The number of messages with failed delivery receipts.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'NoRespondedCount' => ['description' => 'The number of messages with no delivery receipts.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'SendDate' => ['description' => 'The date the messages were sent. Format: yyyyMMdd.', 'type' => 'string', 'example' => '20201010', 'title' => ''],
],
'description' => 'The information about the configuration.'."\n",
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The body of the response.',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\\\n\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"TotalSize\\": 20,\\n \\"TargetList\\": [\\n {\\n \\"TotalCount\\": 20,\\n \\"RespondedSuccessCount\\": 17,\\n \\"RespondedFailCount\\": 2,\\n \\"NoRespondedCount\\": 1,\\n \\"SendDate\\": \\"20201010\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<QuerySendStatisticsResponse>\\n <RequestId>819BE656-D2E0-4858-8B21-B2E47708****</RequestId>\\n <Code>OK</Code>\\n <Message>OK</Message>\\n <Data>\\n <TotalSize>20</TotalSize>\\n <TargetList>\\n <TotalCount>20</TotalCount>\\n <RespondedSuccessCount>17</RespondedSuccessCount>\\n <RespondedFailCount>2</RespondedFailCount>\\n <NoRespondedCount>1</NoRespondedCount>\\n <SendDate>20201010</SendDate>\\n </TargetList>\\n </Data>\\n</QuerySendStatisticsResponse>","errorExample":""}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\\\n\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"TotalSize\\": 20,\\n \\"TargetList\\": [\\n {\\n \\"TotalCount\\": 20,\\n \\"RespondedSuccessCount\\": 17,\\n \\"RespondedFailCount\\": 2,\\n \\"NoRespondedCount\\": 1,\\n \\"SendDate\\": \\"20201010\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
'title' => 'QuerySendStatistics',
- 'description' => 'You can call the operation to query message delivery details, including the number of delivered messages, the number of messages with delivery receipts, and the time that a message is sent. If a large number of messages are sent on the specified date, you can specify the number of items displayed on each page and the number of pages to view the details by page.'."\n"
- ."\n"
- .'### QPS limits'."\n"
+ 'description' => '- If you query data over a long time range, the results are paginated. You can specify the page size and page number to navigate through the Delivery Logs.'."\n"
."\n"
- .'You can call this operation up to 20 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- ],
- 'CreateDigitalSignOrder' => [
- 'summary' => '数字短信签名操作订单',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
+ .'- You can also view delivery details by logging in to the [Short Message Service console](https://dysms.console.aliyun.com/dysms.htm#/overview) and navigating to the **Business Statistics** > **Delivery Logs** page.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySendStatistics'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySendStatistics',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'QueryShortUrl' => [
+ 'summary' => 'Checks the status and availability of a short link.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '102456',
+ 'abilityTreeNodes' => ['FEATUREdysms2D1XSC'],
],
'parameters' => [
[
- 'name' => 'OrderType',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'UPDATE_DIGITALSMS_SIGN' => '',
- 'DELETE_DIGITALSMS_SIGN' => '',
- 'CREATE_DIGITALSMS_SIGN' => '',
- ],
- 'example' => 'CREATE_DIGITALSMS_SIGN',
- ],
- ],
- [
- 'name' => 'Submitter',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '110000001750080',
- ],
- ],
- [
- 'name' => 'SignName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
- ],
- [
- 'name' => 'QualificationId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '41',
- ],
- ],
- [
- 'name' => 'QualificationVersion',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '49',
- ],
+ 'name' => 'ShortUrl',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The short link to query. Obtain this URL by calling the [AddShortUrl](~~186774~~) API.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'This API is not currently supported by Short Message Service.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'http://****.cn/6y8uy7', 'title' => ''],
],
- [
- 'name' => 'OrderContext',
- 'in' => 'query',
- 'style' => 'json',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => '',
'type' => 'object',
- 'required' => false,
- 'enumValueTitles' => [],
+ 'properties' => [
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- A successful request returns `OK`.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The details of the short link.',
+ 'type' => 'object',
+ 'properties' => [
+ 'UniqueVisitorCount' => ['description' => 'The unique visitor (UV) count for the short link.', 'type' => 'string', 'example' => '23', 'title' => ''],
+ 'SourceUrl' => ['description' => 'The source URL.', 'type' => 'string', 'example' => 'https://www.****.com/product/sms', 'title' => ''],
+ 'ShortUrlStatus' => ['description' => 'The short link status. Valid values:'."\n"
+ ."\n"
+ .'- **expired**: The short link has expired.'."\n"
+ ."\n"
+ .'- **effective**: The short link is active.'."\n"
+ ."\n"
+ .'- **audit**: The short link is under review.'."\n"
+ ."\n"
+ .'- **reject**: The short link was rejected.', 'type' => 'string', 'example' => 'expired', 'title' => ''],
+ 'PageViewCount' => ['description' => 'The page view (PV) count for the short link.', 'type' => 'string', 'example' => '300', 'title' => ''],
+ 'ExpireDate' => ['description' => 'The expiration date and time of the short link.', 'type' => 'string', 'example' => '2019-01-22 11:21:11', 'title' => ''],
+ 'ShortUrlName' => ['description' => 'The name of the service that generated the short link.', 'type' => 'string', 'example' => '阿里短链测试', 'title' => ''],
+ 'CreateDate' => ['description' => 'The creation date and time of the short link.', 'type' => 'string', 'example' => '2019-01-08 16:44:13', 'title' => ''],
+ 'ShortUrl' => ['description' => 'The generated short link.', 'type' => 'string', 'example' => 'http://****.cn/6y8uy7', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
'example' => '',
],
],
- [
- 'name' => 'SignIndustry',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'enumValueTitles' => [
- '',
- '',
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\",\\n \\"Data\\": {\\n \\"UniqueVisitorCount\\": \\"23\\",\\n \\"SourceUrl\\": \\"https://www.****.com/product/sms\\",\\n \\"ShortUrlStatus\\": \\"expired\\",\\n \\"PageViewCount\\": \\"300\\",\\n \\"ExpireDate\\": \\"2019-01-22 11:21:11\\",\\n \\"ShortUrlName\\": \\"阿里短链测试\\",\\n \\"CreateDate\\": \\"2019-01-08 16:44:13\\",\\n \\"ShortUrl\\": \\"http://****.cn/6y8uy7\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'QueryShortUrl',
+ 'description' => '><notice>'."\n"
+ ."\n"
+ .'This API is not currently supported by Short Message Service.'."\n"
+ ."\n"
+ .'></notice>'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ ."\n"
+ .'The QPS limit for this API is 20 queries per second per user. API calls that exceed this limit are rate-limited, which can impact your business. Plan your calls accordingly.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryShortUrl'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryShortUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
- 'example' => '0',
],
],
+ ],
+ ],
+ 'QuerySingleSmsQualification' => [
+ 'summary' => 'After you apply for SMS qualifications, you can call this operation to query the details of a single qualification.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'SignId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '80',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'parameters' => [
[
- 'name' => 'SignSource',
+ 'name' => 'QualificationGroupId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'enumValueTitles' => [
- '',
- 2 => '',
- 5 => '',
- 7 => '',
- ],
- 'example' => '0',
- ],
+ 'schema' => ['title' => '', 'description' => 'The qualification ID, which is the ID returned when you [apply for a qualification](~~SubmitSmsQualification~~). You can call the [QuerySmsQualificationRecord](~~QuerySmsQualificationRecord~~) operation to obtain the qualification IDs under your current account.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000****'],
],
[
- 'name' => 'ExtendMessage',
+ 'name' => 'OrderId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
+ 'schema' => ['title' => '', 'description' => 'The review ticket ID. You can call the [QuerySmsQualificationRecord](~~QuerySmsQualificationRecord~~) operation to obtain the qualifications and corresponding review ticket IDs under your current account.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2001****'],
],
],
'responses' => [
@@ -7406,58 +5082,161 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'None',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '2D0133B9-6C0D-0BAE-8161-1EEF9E2D4069',
- ],
- 'Message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details about the access denial. This parameter is returned only when the RAM check fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of this API call request, which is the unique identifier generated by Alibaba Cloud for this request. It can be used to troubleshoot and locate issues.', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n"],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Data' => [
- 'description' => '',
+ 'title' => '',
+ 'description' => 'The details of a single qualification.',
'type' => 'object',
- 'example' => '{\'signId\': \'20067468291\', \'signCode\': \'SIGN_100000184736042_1744164758835_hpMd1\', \'signOrderId\': 22469795330, \'signName\': u\'\\u8d5b\\u745e\\u5a05\\u808c\\u80a4\\u7ba1\\u7406\'}',
- ],
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
+ 'properties' => [
+ 'AdminIDCardExpDate' => ['title' => '', 'description' => 'The validity period of the administrator\'s certificate. Format: YYYY-MM-DD~YYYY-MM-DD.', 'type' => 'string', 'example' => '2023-01-01~2033-01-01'],
+ 'BusinessType' => ['title' => '', 'description' => 'The industry type.', 'type' => 'string', 'example' => 'dysms'],
+ 'AdminIDCardFrontFace' => ['title' => '', 'description' => 'The full URL of the photo of the front side of the administrator\'s certificate (national emblem side of the ID card).', 'type' => 'string', 'example' => 'https://******.aliyuncs.com/******'],
+ 'Remark' => ['title' => '', 'description' => 'The remarks.', 'type' => 'string', 'example' => '无'],
+ 'LegalPersonName' => ['title' => '', 'description' => 'The name of the legal representative.', 'type' => 'string', 'example' => '李华'],
+ 'CompanyName' => ['title' => '', 'description' => 'The name of the enterprise.', 'type' => 'string', 'example' => '阿里云云通信有限公司'],
+ 'LegalPersonIDCardNo' => ['title' => '', 'description' => 'The certificate number of the legal representative.', 'type' => 'string', 'example' => '511391********5123'."\n"],
+ 'BusinessLicensePics' => [
+ 'title' => '',
+ 'description' => 'The business license information of the enterprise.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => ['description' => 'The type of business license. Valid values:'."\n"
+ ."\n"
+ .'- socialCreditLicense: Unified social credit code certificate.'."\n"
+ .'- businessLicense: Business license.'."\n"
+ .'- signLegalLicense: Legal person certificate of a public institution.'."\n"
+ .'- otherLicense: Other types of license certificates.', 'type' => 'string', 'title' => '', 'example' => 'businessLicense'],
+ 'LicensePic' => ['description' => 'The file path parameter of the business license.', 'type' => 'string', 'title' => '', 'example' => '123456/111.png'],
+ 'PicUrl' => ['title' => '', 'description' => 'The full URL of the business license file.', 'type' => 'string', 'example' => 'https://******.aliyuncs.com/******'."\n"],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
+ ],
+ 'AdminIDCardNo' => ['title' => '', 'description' => 'The certificate number of the administrator.', 'type' => 'string', 'example' => '511391********5123'],
+ 'OrganizationCode' => ['title' => '', 'description' => 'The unified social credit code.', 'type' => 'string', 'example' => '910X********0012'."\n"],
+ 'LegalPersonIdCardEffTime' => ['title' => '', 'description' => 'The validity period of the legal representative\'s certificate. Format: YYYY-MM-DD~YYYY-MM-DD.', 'type' => 'string', 'example' => '2023-01-01~2033-01-01'],
+ 'AdminPhoneNo' => ['title' => '', 'description' => 'The mobile phone number of the administrator.', 'type' => 'string', 'example' => '137*******'],
+ 'QualificationName' => ['title' => '', 'description' => 'The qualification name.', 'type' => 'string', 'example' => '阿里云云通信有限公司资质李华'."\n"],
+ 'AdminName' => ['title' => '', 'description' => 'The name of the administrator.', 'type' => 'string', 'example' => '李华'],
+ 'CompanyType' => ['title' => '', 'description' => 'The type of enterprise. Valid values:'."\n"
+ ."\n"
+ .'- COMPANY: Enterprise.'."\n"
+ .'- NON_PROFIT_ORGANIZATION: Government agency or public institution.', 'type' => 'string', 'example' => 'COMPANY'],
+ 'AdminIDCardType' => ['title' => '', 'description' => 'The type of the administrator\'s certificate. Valid values:'."\n"
+ ."\n"
+ .'- identityCard: ID card.'."\n"
+ .'- passport: Passport.'."\n"
+ .'- homeReturnPermit: Home return permit for Hong Kong and Macao residents.'."\n"
+ .'- TaiwanCompatriotPermit: Mainland travel permit for Taiwan residents.'."\n"
+ .'- residencePermit: Residence permit for residents of Hong Kong, Macao, and Taiwan.'."\n"
+ .'- other: Other.', 'type' => 'string', 'example' => 'identityCard'],
+ 'UseBySelf' => ['title' => '', 'description' => 'The purpose of the qualification application. Valid values:'."\n"
+ ."\n"
+ .'- **true**: For self-use.'."\n"
+ .'- **false**: For other use.', 'type' => 'boolean', 'example' => 'false'],
+ 'EffTimeStr' => ['description' => 'The validity period of the business license. Format: YYYY-MM-DD~YYYY-MM-DD.', 'type' => 'string', 'title' => '', 'example' => '2023-01-01~2033-01-01'."\n"],
+ 'QualificationGroupId' => ['description' => 'The qualification ID.', 'type' => 'integer', 'title' => '', 'format' => 'int64', 'example' => '10000****'],
+ 'WhetherShare' => [
+ 'description' => 'Qualification authorization. Indicates whether to allow this qualification to be shared with other cloud communication products (such as Domestic Voice and Domestic Number Privacy Protection). The qualification can be shared and reused only when you apply for a **self-use qualification** and the qualification information **matches the enterprise information authenticated under the current Alibaba Cloud account**. Other cases are invalid. Valid values:'."\n"
+ ."\n"
+ .'- true: Agree. Your qualification information can be invoked in the "qualification authentication step" of other cloud communication products, eliminating duplicate authentication steps.'."\n"
+ .'- false: Disagree.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
+ 'title' => '',
+ 'example' => 'false',
+ ],
+ 'WorkOrderId' => ['title' => '', 'description' => 'The review ticket ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '2001****'],
+ 'State' => [
+ 'title' => '',
+ 'description' => 'The review status. Valid values:'."\n"
+ ."\n"
+ .'- INT: Under review.'."\n"
+ .'- FAILED: Review failed.'."\n"
+ .'- PASSED: Review passed.'."\n"
+ .'- NOT_FINISH: Materials to be supplemented.'."\n"
+ .'- CANCELED: Cancelled.'."\n"
+ ."\n"
+ .'> This API does not return review remarks. To query review remarks (`AuditRemark`), use [QuerySmsQualificationRecord](~~QuerySmsQualificationRecord~~).',
+ 'enumValueTitles' => ['NOT_FINISH' => 'Materials to be supplemented', 'FAILED' => 'Review failed', 'CANCELED' => 'Cancelled', 'INT' => 'Under review', 'PASSED' => 'Review passed'],
+ 'type' => 'string',
+ 'example' => 'PASSED',
+ ],
+ 'OtherFiles' => [
+ 'title' => '',
+ 'description' => 'Additional materials.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'LicensePic' => ['description' => 'The file path parameter of the additional materials.', 'type' => 'string', 'title' => '', 'example' => '123456/111.png'],
+ 'PicUrl' => ['title' => '', 'description' => 'The full URL of the additional materials file.', 'type' => 'string', 'example' => 'https://******.aliyuncs.com/******'],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
+ ],
+ 'LegalPersonIDCardType' => ['title' => '', 'description' => 'The type of the legal representative\'s certificate. Valid values:'."\n"
+ ."\n"
+ .'- identityCard: ID card.'."\n"
+ .'- passport: Passport.'."\n"
+ .'- homeReturnPermit: Home return permit for Hong Kong and Macao residents.'."\n"
+ .'- TaiwanCompatriotPermit: Mainland travel permit for Taiwan residents.'."\n"
+ .'- residencePermit: Residence permit for residents of Hong Kong, Macao, and Taiwan.'."\n"
+ .'- other: Other.', 'type' => 'string', 'example' => 'identityCard'],
+ 'AdminIDCardPic' => ['title' => '', 'description' => 'The full URL of the photo of the back side of the administrator\'s certificate (portrait side of the ID card).', 'type' => 'string', 'example' => 'https://******.aliyuncs.com/******'],
+ ],
+ 'example' => '',
],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- The value OK indicates that the request was successful.'."\n"
+ .'- For other error codes, see the error code list in this chapter or the product [error code list](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Success' => [
- 'description' => '',
+ 'description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ .'- **false**: The call failed.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => '',
- 'false' => '',
- ],
+ 'title' => '',
'example' => 'true',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"None\\",\\n \\"RequestId\\": \\"2D0133B9-6C0D-0BAE-8161-1EEF9E2D4069\\",\\n \\"Message\\": \\"示例值示例值\\",\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"AdminIDCardExpDate\\": \\"2023-01-01~2033-01-01\\",\\n \\"BusinessType\\": \\"dysms\\",\\n \\"AdminIDCardFrontFace\\": \\"https://******.aliyuncs.com/******\\",\\n \\"Remark\\": \\"无\\",\\n \\"LegalPersonName\\": \\"李华\\",\\n \\"CompanyName\\": \\"阿里云云通信有限公司\\",\\n \\"LegalPersonIDCardNo\\": \\"511391********5123\\\\n\\",\\n \\"BusinessLicensePics\\": [\\n {\\n \\"Type\\": \\"businessLicense\\",\\n \\"LicensePic\\": \\"123456/111.png\\",\\n \\"PicUrl\\": \\"https://******.aliyuncs.com/******\\\\n\\"\\n }\\n ],\\n \\"AdminIDCardNo\\": \\"511391********5123\\",\\n \\"OrganizationCode\\": \\"910X********0012\\\\n\\",\\n \\"LegalPersonIdCardEffTime\\": \\"2023-01-01~2033-01-01\\",\\n \\"AdminPhoneNo\\": \\"137*******\\",\\n \\"QualificationName\\": \\"阿里云云通信有限公司资质李华\\\\n\\",\\n \\"AdminName\\": \\"李华\\",\\n \\"CompanyType\\": \\"COMPANY\\",\\n \\"AdminIDCardType\\": \\"identityCard\\",\\n \\"UseBySelf\\": false,\\n \\"EffTimeStr\\": \\"2023-01-01~2033-01-01\\\\n\\",\\n \\"QualificationGroupId\\": 0,\\n \\"WhetherShare\\": false,\\n \\"WorkOrderId\\": 0,\\n \\"State\\": \\"PASSED\\",\\n \\"OtherFiles\\": [\\n {\\n \\"LicensePic\\": \\"123456/111.png\\",\\n \\"PicUrl\\": \\"https://******.aliyuncs.com/******\\"\\n }\\n ],\\n \\"LegalPersonIDCardType\\": \\"identityCard\\",\\n \\"AdminIDCardPic\\": \\"https://******.aliyuncs.com/******\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Query the details of a single qualification',
+ 'description' => '- This API queries the details of a single qualification (enterprise information, legal representative information, and administrator information).'."\n"
+ .'- To query all qualification information under your current account, or to query review details, call the [QuerySmsQualificationRecord](~~QuerySmsQualificationRecord~~) operation.'."\n"
+ .'- Affected by the SMS signature real-name registration requirements, the volume of qualification review tickets is growing rapidly, and the review time may be extended. Please be patient. The review is expected to be completed within 2 business days (review hours: Monday to Sunday 9:00-21:00, postponed for legal holidays). In special cases, the review time may be extended. Please be patient.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
],
- 'QueryDigitalSignByName' => [
- 'summary' => '获取数字短信签名通过签名name',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'QuerySmsAppIcpRecord' => [
+ 'summary' => 'Queries icp record details.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -7466,172 +5245,156 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
+ 'abilityTreeCode' => '289840',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'SignName',
+ 'name' => 'AppIcpRecordIdList',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
+ 'description' => 'A list of icp record entity IDs.',
+ 'title' => 'APP ICP filing entity ID list ',
+ 'type' => 'array',
+ 'items' => ['description' => 'The icp record entity ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100000***', 'title' => ''],
+ 'required' => true,
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => '',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'Message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The access denial details.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'C9955E63-8BFF-101D-80A1-E6998DFEFF1A'],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Data' => [
- 'description' => '',
- 'type' => 'object',
- 'example' => '',
- ],
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'description' => '',
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => '',
- 'false' => '',
+ 'description' => 'A list of APP-ICP record entity details.',
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of an APP-ICP record entity.',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppIcpRecordId' => ['title' => 'APP-ICP filing material ID', 'description' => 'The ID of the APP-ICP record material.', 'type' => 'integer', 'format' => 'int64', 'example' => '51'],
+ 'AppIcpRecordPic' => ['title' => 'OSS key of the APP-ICP filing screenshot image (used for submitting tickets related to signatures)', 'description' => 'The OSS fileKey for the APP-ICP record screenshot.', 'type' => 'string', 'example' => '10000025*****02/ac181696-****-49c6-90dc-50689267aa00_mhsjd8b8_17*****662348.jpeg'],
+ 'AppIcpRecordPicUrl' => ['title' => 'URL of the APP-ICP filing screenshot', 'description' => 'The URL of the APP-ICP record screenshot.', 'type' => 'string', 'example' => 'https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D'],
+ 'AppPrincipalUnitName' => ['title' => 'Sponsoring organization name', 'description' => 'The hosting unit name.', 'type' => 'string', 'example' => '阿里云'],
+ 'AppIcpLicenseNumber' => ['title' => 'ICP Filing/License Number ', 'description' => 'The icp filing/license number.', 'type' => 'string', 'example' => '123'],
+ 'Domain' => ['title' => 'APP App Store Link ', 'description' => 'The app store link.', 'type' => 'string', 'example' => 'https://apps.apple.com/cn/app/阿里云/id981011420'],
+ 'AppApprovalDate' => ['title' => 'Review pass date, for example: 2025-09-01 ', 'description' => 'The approval date.', 'type' => 'string', 'example' => '2020-01-01'],
+ 'AppServiceName' => ['title' => 'APP service name ', 'description' => 'The app service name.', 'type' => 'string', 'example' => '测试'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'example' => 'false',
+ 'example' => '',
],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- OK indicates a successful request.'."\n"
+ ."\n"
+ .'- For other error codes, see the [error code list](https://help.aliyun.com/document_detail/101346.htm).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => 'Specifies whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query ICP Filing Entity ',
+ 'description' => 'Pass a list of icp record IDs to retrieve their details.'."\n"
+ ."\n"
+ .'For example, call the QuerySmsSignList or GetSmsSign API to obtain the required icp record IDs.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": false\\n}","type":"json"}]',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"C9955E63-8BFF-101D-80A1-E6998DFEFF1A\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": [\\n {\\n \\"AppIcpRecordId\\": 51,\\n \\"AppIcpRecordPic\\": \\"10000025*****02/ac181696-****-49c6-90dc-50689267aa00_mhsjd8b8_17*****662348.jpeg\\",\\n \\"AppIcpRecordPicUrl\\": \\"https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D\\",\\n \\"AppPrincipalUnitName\\": \\"阿里云\\",\\n \\"AppIcpLicenseNumber\\": \\"123\\",\\n \\"Domain\\": \\"https://apps.apple.com/cn/app/阿里云/id981011420\\",\\n \\"AppApprovalDate\\": \\"2020-01-01\\",\\n \\"AppServiceName\\": \\"测试\\"\\n }\\n ],\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
- 'CreateDigitalSmsTemplate' => [
- 'summary' => '创建数字短信模板',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'QuerySmsAuthorizationLetter' => [
+ 'summary' => 'Queries created letters of authorization. You can view the review status and authorized signature scope of the letters.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '102441',
- 'abilityTreeNodes' => [
- 'FEATUREdysms0VSOON',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '264690',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'TemplateName',
+ 'name' => 'AuthorizationLetterIdList',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
+ 'title' => '',
+ 'description' => 'The list of letter of authorization IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The letter of authorization ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10000*****', 'title' => ''],
+ 'required' => false,
'example' => '',
],
],
[
- 'name' => 'Remark',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => '',
- ],
+ 'schema' => ['title' => '', 'description' => 'The signature name. If the authorization scope includes multiple signatures when you create the letter of authorization, the letters of authorization that contain the signature are returned.', 'type' => 'string', 'required' => false, 'example' => '菜鸟网络'],
],
[
- 'name' => 'TemplateContents',
+ 'name' => 'OrganizationCode',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The unified social credit code of the authorizing party. The length cannot exceed 150 characters.', 'type' => 'string', 'required' => false, 'example' => '9****************A'],
+ ],
+ [
+ 'name' => 'State',
'in' => 'query',
- 'style' => 'repeatList',
'schema' => [
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'FileContents' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '',
- ],
- 'FileSuffix' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'txt',
- ],
- 'FileName' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'file-1',
- ],
- 'FileSize' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1840901',
- ],
- ],
- 'required' => false,
- ],
- 'required' => true,
- 'maxItems' => 10,
+ 'title' => '',
+ 'description' => 'The review status of the letter of authorization, which is related to the review status of the signature. Valid values:'."\n"
+ .'- **INT**: Pending review. The letter of authorization has been created. After you submit a signature application, it enters the review process.'."\n"
+ .'- **PASSED**: Review passed. When a signature in the authorized signature scope of the letter of authorization passes the review, the status of the letter of authorization changes to PASSED.',
+ 'enumValueTitles' => ['INT' => 'Pending review', 'PASSED' => 'Review passed'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PASSED',
],
],
[
- 'name' => 'SignName',
+ 'name' => 'Status',
'in' => 'query',
- 'allowEmptyValue' => false,
'schema' => [
- 'description' => '',
+ 'title' => '',
+ 'description' => 'The availability status of the letter of authorization, which is related to the validity period of the letter of authorization. Valid values:'."\n"
+ ."\n"
+ .'- **VALID**: Available. The letter of authorization is within the validity period.'."\n"
+ .'- **INVALID**: Unavailable. The letter of authorization has expired.',
+ 'enumValueTitles' => ['VALID' => 'Available', 'INVALID' => 'Unavailable'],
'type' => 'string',
'required' => false,
- 'example' => '',
+ 'example' => 'VALID',
],
],
],
@@ -7640,45 +5403,80 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
+ 'AccessDeniedDetail' => ['description' => 'The details of the access denial. This parameter is returned only when the RAM check fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request, which is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate issues.', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071D'],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Data' => [
+ 'title' => '',
+ 'description' => 'The information of the letters of authorization.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Authorization' => ['title' => '', 'description' => 'The authorizing party.', 'type' => 'string', 'example' => '菜鸟网络科技有限公司'],
+ 'Status' => ['title' => '', 'description' => 'The availability status of the letter of authorization, which is related to the validity period of the letter of authorization. Valid values:'."\n"
+ ."\n"
+ .'- **VALID**: Available. The letter of authorization is within the validity period.'."\n"
+ .'- **INVALID**: Unavailable. The letter of authorization has expired.', 'type' => 'string', 'example' => 'VALID'],
+ 'SignScope' => ['title' => '', 'description' => 'The authorized signature scope. If multiple signatures are included, the signatures are separated by Chinese enumeration commas (、).', 'type' => 'string', 'example' => '菜鸟网络、菜鸟驿站、菜鸟裹裹'],
+ 'State' => ['title' => '', 'description' => 'The status of the letter of authorization, which is related to the review status of the signature. Valid values:'."\n"
+ .'- **INT**: Pending review. The letter of authorization has been created. After you submit a signature application, it enters the review process.'."\n"
+ .'- **PASSED**: Review passed. When a signature in the authorized signature scope of the letter of authorization passes the review, the status of the letter of authorization changes to PASSED.', 'type' => 'string', 'example' => 'PASSED'],
+ 'AuthorizationLetterExpDate' => ['title' => '', 'description' => 'The validity period of the letter of authorization. Format: YYYY-MM-DD~YYYY-MM-DD.', 'type' => 'string', 'example' => '2023-01-01~2026-01-01'],
+ 'AuthorizationLetterPic' => ['title' => '', 'description' => 'The URL of the letter of authorization file.', 'type' => 'string', 'example' => '1000045****/111.png'],
+ 'OrganizationCode' => ['title' => '', 'description' => 'The unified social credit code of the authorizing party.', 'type' => 'string', 'example' => '9****************A'],
+ 'ProxyAuthorization' => ['title' => '', 'description' => 'The authorized party.', 'type' => 'string', 'example' => '支付宝(中国)网络技术有限公司'],
+ 'AuthorizationLetterId' => ['title' => '', 'description' => 'The letter of authorization ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000******'],
+ 'AuthorizationLetterName' => ['title' => '', 'description' => 'The name of the letter of authorization.', 'type' => 'string', 'example' => '菜鸟公司授权书'],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
],
- 'TemplateCode' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'DIGITAL_SMS_0001',
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- The value OK indicates that the request was successful.'."\n"
+ .'- For other error codes, see the error code list in this topic or [API error codes](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => [
+ 'description' => 'Indicates whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ .'- **false**: The call failed.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
+ 'title' => '',
+ 'example' => 'true',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"TemplateCode\\": \\"DIGITAL_SMS_0001\\"\\n}","type":"json"}]',
- ],
- 'GetOSSInfoForCardTemplate' => [
- 'summary' => 'Queries the OSS configuration information about card messages.',
- 'methods' => [
- 'get',
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071D\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": [\\n {\\n \\"Authorization\\": \\"菜鸟网络科技有限公司\\",\\n \\"Status\\": \\"VALID\\",\\n \\"SignScope\\": \\"菜鸟网络、菜鸟驿站、菜鸟裹裹\\",\\n \\"State\\": \\"PASSED\\",\\n \\"AuthorizationLetterExpDate\\": \\"2023-01-01~2026-01-01\\",\\n \\"AuthorizationLetterPic\\": \\"1000045****/111.png\\",\\n \\"OrganizationCode\\": \\"9****************A\\",\\n \\"ProxyAuthorization\\": \\"支付宝(中国)网络技术有限公司\\",\\n \\"AuthorizationLetterId\\": 0,\\n \\"AuthorizationLetterName\\": \\"菜鸟公司授权书\\"\\n }\\n ],\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Query letters of authorization',
+ 'description' => '- Supports full query or conditional query:'."\n"
+ .' - **Full query**: Queries the information of all letters of authorization under your current account. No parameters need to be passed. Full query is performed by default.'."\n"
+ .' - **Conditional query**: Supports queries by letter of authorization ID, signature name, and review status of the letter of authorization. Pass the parameters by which you want to filter.'."\n"
+ ."\n"
+ .'- Review duration: Affected by the real-name registration requirements for SMS signatures, the volume of qualification review tickets is currently increasing rapidly, and the review duration may be extended. Please wait patiently. The review is expected to be completed within 2 working days. SMS signatures and templates are expected to be reviewed within 2 hours after submission. Reviews involving governments and enterprises are generally completed within 2 working days. If verification upgrades, a large number of review tasks, or non-working hours are encountered, the review duration may be extended. Please wait patiently. (Review working hours: Monday to Sunday, 9:00–21:00, postponed for statutory holidays.)',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
+ 'ramActions' => [],
+ ],
+ 'QuerySmsQualificationRecord' => [
+ 'summary' => 'Queries a list of SMS qualifications and their review details after you submit qualification applications. This operation supports filtered query.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -7686,124 +5484,148 @@
],
'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '102447',
- 'abilityTreeNodes' => [
- 'FEATUREdysms17QZIS',
+ 'parameters' => [
+ [
+ 'name' => 'QualificationGroupName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The qualification name.', 'type' => 'string', 'required' => false, 'example' => '阿里云云通信有限公司李华'],
+ ],
+ [
+ 'name' => 'CompanyName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The company name.', 'type' => 'string', 'required' => false, 'example' => '阿里云云通信有限公司'],
+ ],
+ [
+ 'name' => 'State',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The review status. Valid values:'."\n"
+ ."\n"
+ .'- INIT: Under review.'."\n"
+ .'- NOT_PASS: Review rejected. '."\n"
+ .'- PASS: Review approved.'."\n"
+ .'- NOT_FINISH: Additional information required.'."\n"
+ .'- CANCEL: Withdrawn.', 'type' => 'string', 'required' => false, 'example' => 'PASS'],
+ ],
+ [
+ 'name' => 'WorkOrderId',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The review ticket ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2001****'],
+ ],
+ [
+ 'name' => 'LegalPersonName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The name of the legal representative.', 'type' => 'string', 'required' => false, 'example' => '李华'],
+ ],
+ [
+ 'name' => 'UseBySelf',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The purpose of the qualification application. Valid values:'."\n"
+ ."\n"
+ .'- **true**: For self-use.'."\n"
+ .'- **false**: For use by others.', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
+ ],
+ [
+ 'name' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'title' => '', 'format' => 'int64', 'required' => false, 'example' => '1'],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Valid values: **1 to 50**.', 'type' => 'integer', 'title' => '', 'format' => 'int64', 'required' => false, 'example' => '20'],
],
],
- 'parameters' => [],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* For more information about other response codes, see [API error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D0D',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n"],
+ 'Message' => ['description' => '状态码的描述。', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => '资质审核列表',
'type' => 'object',
'properties' => [
- 'Signature' => [
- 'description' => 'The signature.'."\n",
- 'type' => 'string',
- 'example' => 'Aliyun',
- ],
- 'Host' => [
- 'description' => 'The hostname.'."\n",
- 'type' => 'string',
- 'example' => ' https://alicom-cardsms-resources.oss-cn-zhangjiakou.aliyuncs.com',
- ],
- 'Policy' => [
- 'description' => 'The signature policy.'."\n",
- 'type' => 'string',
- 'example' => 'eyJxxx0=',
- ],
- 'ExpireTime' => [
- 'description' => 'The timeout period.'."\n",
- 'type' => 'string',
- 'example' => '1634209418',
- ],
- 'AliUid' => [
- 'description' => 'The ID of the Alibaba Cloud account.'."\n",
- 'type' => 'string',
- 'example' => '599333677478****',
- ],
- 'AccessKeyId' => [
- 'description' => 'The AccessKey ID.'."\n",
- 'type' => 'string',
- 'example' => 'LTAIxetqt1Dg****',
- ],
- 'StartPath' => [
- 'description' => 'The path of the policy.'."\n",
- 'type' => 'string',
- 'example' => '1631792777',
- ],
- 'Bucket' => [
- 'description' => 'The name of the OSS bucket.'."\n",
- 'type' => 'string',
- 'example' => 'alicom-cardsms-resources',
+ 'PageSize' => ['description' => '每页数据条数。', 'type' => 'integer', 'title' => '', 'format' => 'int64', 'example' => '20'],
+ 'Total' => ['description' => '总条数。', 'type' => 'integer', 'title' => '', 'format' => 'int64', 'example' => '25'],
+ 'PageNo' => ['description' => '当前页码。', 'type' => 'integer', 'title' => '', 'format' => 'int64', 'example' => '1'],
+ 'List' => [
+ 'title' => '',
+ 'description' => '满足过滤条件的数据列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '单个资质审核详情。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LegalPersonName' => ['title' => '', 'description' => '法人姓名。', 'type' => 'string', 'example' => '李华'],
+ 'AuditRemark' => ['title' => '', 'description' => '审核备注。', 'type' => 'string', 'example' => '无'],
+ 'CompanyName' => ['title' => '', 'description' => '企业名称。', 'type' => 'string', 'example' => '阿里云云通信有限公司'],
+ 'WorkOrderId' => ['title' => '', 'description' => '审核工单ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '2001****'],
+ 'StateName' => ['title' => '', 'description' => '审核状态。取值:'."\n"
+ ."\n"
+ .'- INIT:审核中。'."\n"
+ .'- NOT_PASS:审核不通过。 '."\n"
+ .'- PASS:审核通过。'."\n"
+ .'- NOT_FINISH:资料待补充。'."\n"
+ .'- CANCEL:已撤回。', 'type' => 'string', 'example' => 'INIT'],
+ 'AuditTime' => ['title' => '', 'description' => '审核时间。', 'type' => 'string', 'example' => '2024-12-26 17:29:04'],
+ 'CreateDate' => ['title' => '', 'description' => '资质创建时间。', 'type' => 'string', 'example' => '2025-02-20 11:59:30'],
+ 'QualificationGroupName' => ['title' => '', 'description' => '资质名称。', 'type' => 'string', 'example' => '阿里云云通信有限公司李华'],
+ 'GroupId' => ['title' => '', 'description' => '资质ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '10000****'],
+ 'UseBySelf' => ['title' => '', 'description' => '资质申请用途,取值:'."\n"
+ ."\n"
+ .'- **true**:自用。'."\n"
+ .'- **false**:他用。', 'type' => 'string', 'example' => 'true'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ ."\n"
+ .'* 返回OK代表请求成功。'."\n"
+ .'* 其他错误码,请参见本章节的错误码列表或产品[API错误码](~~101346~~)。', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => '调用接口是否成功。取值:'."\n"
+ ."\n"
+ .'- **true**:调用成功。'."\n"
+ .'- **false**:调用失败。', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D0D\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Signature\\": \\"阿里云\\",\\n \\"Host\\": \\"http://***.aliyuncs.com\\\\n\\",\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0yNlQwMzo0NDoyMy4xNTlaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0sWyJzdGFydHMtd2l0aCIsIiRrZXkiLCIxNDIwNjM0******************\\",\\n \\"ExpireTime\\": \\"1634209418\\",\\n \\"AliUid\\": \\"168**********184\\\\n\\",\\n \\"AccessKeyId\\": \\"LTAI************\\",\\n \\"StartPath\\": \\"168**********184\\",\\n \\"Bucket\\": \\"alicom-cardsms-resources\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetOSSInfoForCardTemplate',
- 'description' => 'Resources such as images and videos used for card message templates can be uploaded to Object Storage Service (OSS) buckets for storage. For more information, see [Upload files to OSS](~~437303~~).'."\n"
- ."\n"
- .'### QPS limit'."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"PageSize\\": 20,\\n \\"Total\\": 25,\\n \\"PageNo\\": 1,\\n \\"List\\": [\\n {\\n \\"LegalPersonName\\": \\"李华\\",\\n \\"AuditRemark\\": \\"无\\",\\n \\"CompanyName\\": \\"阿里云云通信有限公司\\",\\n \\"WorkOrderId\\": 0,\\n \\"StateName\\": \\"INIT\\",\\n \\"AuditTime\\": \\"2024-12-26 17:29:04\\",\\n \\"CreateDate\\": \\"2025-02-20 11:59:30\\",\\n \\"QualificationGroupName\\": \\"阿里云云通信有限公司李华\\",\\n \\"GroupId\\": 0,\\n \\"UseBySelf\\": \\"true\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Query qualification list',
+ 'description' => '- 支持全量查询或条件查询:'."\n"
+ .' - **全量查询**:查询您当前帐户下所有短信资质,无需传参。默认全量查询。'."\n"
+ .' - **条件查询**:支持根据资质名称、企业名称、法人姓名、审核状态、审核工单ID、资质用途进行查询,传入您希望筛选的参数即可。'."\n"
."\n"
- .'You can call this operation up to 300 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- 'requestParamsDescription' => '### Description of equest parameters'."\n"
+ .'- 本接口用于查询资质及其审核信息,如果需要查询单个资质的具体信息(企业信息、法人信息、管理员信息),请调用[查询单个资质详情](~~QuerySingleSmsQualification~~)接口。'."\n"
."\n"
- .'The GetOSSInfoForCardTemplate operation has no input parameters. You can directly call the operation to obtain the OSS configuration information.'."\n",
- ],
- 'GetMediaResourceId' => [
- 'summary' => 'Converts a resource uploaded to the specified Object Storage Service (OSS) bucket for unified management. Then, a resource ID is returned. You can manage the resource based on the ID.',
- 'methods' => [
- 'post',
+ .'- 受短信签名实名制报备要求影响,当前资质审核工单量增长快速,审核时间可能会延长,请耐心等待,预计2个工作日内完成(审核工作时间:周一至周日 9:00~21:00,法定节假日顺延)。特殊情况可能延长审核时间,请耐心等待。'."\n"
+ .'- 如果资质未通过审核,审核备注`AuditRemark`会返回审核失败的原因,请参考[审核失败的处理建议](~~2384377#a96cc318b94x1~~),调用[修改短信资质](~~UpdateSmsQualification~~)接口或在控制台[资质管理](https://dysms.console.aliyun.com/domestic/text/qualification)页面修改资质信息后,重新发起审核。',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
+ 'ramActions' => [],
+ ],
+ 'QuerySmsSign' => [
+ 'summary' => 'Queries the review status of an SMS signature.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -7815,485 +5637,347 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102446',
- 'abilityTreeNodes' => [
- 'FEATUREdysms17QZIS',
- ],
+ 'abilityTreeCode' => '102459',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'ResourceType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the resource.'."\n"
- ."\n"
- .'* **1**: text.'."\n"
- .'* **2**: image. A small image cannot exceed 100 KB in size, and a large image cannot exceed 2 MB in size. The image must be clear. Supported format: JPG, JPEG, and PNG.'."\n"
- .'* **3**: audio.'."\n"
- .'* **4**: video. Supported format: MP4.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* If you set the ResourceType parameter to 2, the **img_rate** required is required. Valid values:'."\n"
- ."\n"
- .'* 1:1'."\n"
- ."\n"
- .'* 16:9'."\n"
- ."\n"
- .'* 3:1'."\n"
- ."\n"
- .'* 48:65'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'docRequired' => true,
- 'maximum' => '10000',
- 'minimum' => '0',
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'OssKey',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The address of the resource.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'oss://alicom-fc-media/1947741454322274/alicom-fc-media/pic/202205191526575398603697152.png',
- ],
- ],
- [
- 'name' => 'FileSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The size of the resource. Unit: bytes.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'docRequired' => true,
- 'maximum' => '9223372036854775807',
- 'minimum' => '0',
- 'example' => '12',
- ],
- ],
- [
- 'name' => 'ExtendInfo',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The extended fields.'."\n"
- ."\n"
- .'> If you set the ResourceType parameter to **2**, this parameter is required.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'docRequired' => true,
- 'example' => '{\\"img_rate\\":\\"oneToOne\\"}',
- ],
- ],
- [
- 'name' => 'Memo',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The description of the resource.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'remark',
- ],
+ 'schema' => ['description' => 'The name of an existing SMS signature in your account.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里云', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F07CF237-F6E3-5F77-B91B-F9B7C5DE84AB',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'ResourceId' => [
- 'description' => 'The resource ID.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => 'SMS_14571****',
- ],
- 'ResUrlDownload' => [
- 'description' => 'The download URL of the resource.'."\n",
- 'type' => 'string',
- 'example' => 'http://test-example.com/download.jpg',
- ],
- ],
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CC89A90C-978F-46AC-B80D-54738371E7CA', 'title' => ''],
+ 'SignStatus' => ['description' => 'The review status of the SMS signature. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Pending Review.'."\n"
+ ."\n"
+ .'- **1**: Approved.'."\n"
+ ."\n"
+ .'- **2**: Rejected. For details, see the `Reason` parameter.'."\n"
+ ."\n"
+ .'- **10**: Canceled.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- `OK` indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'CreateDate' => ['description' => 'The date and time when the SMS signature was created.', 'type' => 'string', 'example' => ' 2019-01-08 16:44:13', 'title' => ''],
+ 'Reason' => ['description' => 'The review reason.'."\n"
+ ."\n"
+ .'- If the review status is **Approved** or **Pending Review**, this parameter is empty.'."\n"
+ ."\n"
+ .'- If the review status is **Rejected**, this parameter provides the reason for the rejection.', 'type' => 'string', 'example' => '文件不能证明信息真实性,请重新上传', 'title' => ''],
+ 'SignName' => ['description' => 'The SMS signature.', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
],
+ 'description' => 'The response body.',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC89A90C-978F-46AC-B80D-54738371E7CA\\",\\n \\"SignStatus\\": 1,\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"CreateDate\\": \\" 2019-01-08 16:44:13\\",\\n \\"Reason\\": \\"文件不能证明信息真实性,请重新上传\\",\\n \\"SignName\\": \\"阿里云\\"\\n}","type":"json"}]',
+ 'title' => 'QuerySmsSign',
+ 'description' => '- To comply with regulations from the Ministry of Industry and Information Technology (MIIT) and [related requirements](~~2806975~~) from carriers, Alibaba Cloud has upgraded its SMS signature management APIs. We recommend using the new [GetSmsSign - Query Signature Details](~~2807429~~) API, which returns more detailed information about signatures than this API.'."\n"
+ ."\n"
+ .'- We typically review signatures within two hours of submission. The review service is available from 9:00 to 21:00, Monday to Sunday. Reviews may be delayed during public holidays. We recommend submitting your application before 18:00 for a timely review.'."\n"
+ ."\n"
+ .'- If a signature is rejected, the response includes the review reason. For troubleshooting information, see [Troubleshooting Signature Review Failures](~~65990~~). You can then call the [ModifySmsTemplate](~~419287~~) API or modify the SMS signature on the [Signature Management](https://dysms.console.aliyun.com/domestic/text) page.'."\n"
+ ."\n"
+ .'- This API queries the review details for a single signature by name. To query all signatures in your account, call the [QuerySmsSignList](~~419288~~) API.',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsSign'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"F07CF237-F6E3-5F77-B91B-F9B7C5DE84AB\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"ResourceId\\": 0,\\n \\"ResUrlDownload\\": \\"http://test-example.com/download.jpg\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetMediaResourceId',
- 'description' => '### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 300 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
],
- 'CreateCardSmsTemplate' => [
- 'summary' => 'Creates a card message template.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'QuerySmsSignList' => [
+ 'summary' => 'You can call this operation to query all signatures under your account, including signature audit status, signature type, and signature name.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102440',
- 'abilityTreeNodes' => [
- 'FEATUREdysms17QZIS',
- ],
+ 'abilityTreeCode' => '118916',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'TemplateName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the card message template.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'Aliyun Image and Text Template',
- ],
- ],
- [
- 'name' => 'Template',
- 'in' => 'query',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The content of the card message template.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* For information about fields such as Template, ExtendInfo, TemplateContent, TmpCard, and Action, see [Parameters of card message templates](~~434929~~).'."\n"
- ."\n"
- .'* Message template content varies based on the template type. For more information, see [Sample message templates](~~435361~~).'."\n",
- 'type' => 'object',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '{'."\n"
- .' "extendInfo":{'."\n"
- .' "scene":"HMOVM",'."\n"
- .' "purpose":"2",'."\n"
- .' "userExt":{'."\n"
- .' "outId":"1234554321"'."\n"
- .' }'."\n"
- .' },'."\n"
- .' "templateContent":{'."\n"
- .' "pages":['."\n"
- .' {'."\n"
- .'"tmpCards":['."\n"
- .' {'."\n"
- .' "type":"IMAGE",'."\n"
- .' "srcType":1,'."\n"
- .' "src":"28755",'."\n"
- .' "actionType":"OPEN_APP",'."\n"
- .' "action":{'."\n"
- .' "target":"https://s.tb.cn/c.KxzZ",'."\n"
- .' "merchantName":"test-template",'."\n"
- .' "packageName":['."\n"
- .' "com.taobao.taobao"],'."\n"
- .' "floorUrl":"https://s.tb.cn/c.KxzZ"'."\n"
- .' },'."\n"
- .' "positionNumber":1'."\n"
- .' },'."\n"
- .' {'."\n"
- .' "type":"TEXT",'."\n"
- .' "content":"this is a test msg.",'."\n"
- .' "isTextTitle":true,'."\n"
- .' "positionNumber":2'."\n"
- .' },'."\n"
- .' {'."\n"
- .' "type":"TEXT",'."\n"
- .' "content":"Promotional information",'."\n"
- .' "isTextTitle":false,'."\n"
- .' "positionNumber":3'."\n"
- .' },'."\n"
- .' {'."\n"
- .' "type":"BUTTON",'."\n"
- .' "content":"Promotional information,",'."\n"
- .' "actionType":"OPEN_BROWSER",'."\n"
- .' "action":{'."\n"
- .' "target":"https://www.aliyun.com",'."\n"
- .' "merchantName":"Currently on the Alibaba Cloud official website."'."\n"
- .'},'."\n"
- .' "positionNumber":4'."\n"
- .' }]'."\n"
- .' }]'."\n"
- .' },'."\n"
- .' "cardSignName":"aliyun",'."\n"
- .' "cardType":5'."\n"
- .'}',
- ],
- ],
- [
- 'name' => 'Memo',
+ 'name' => 'PageIndex',
'in' => 'query',
- 'schema' => [
- 'description' => 'The description of the message template.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'docRequired' => true,
- 'example' => 'Image and Text Template',
- ],
+ 'schema' => ['description' => 'The page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'minLength' => 1, 'default' => '1', 'example' => '1', 'title' => ''],
],
[
- 'name' => 'Factorys',
+ 'name' => 'PageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The mobile phone manufacturer. Valid values:'."\n"
- ."\n"
- .'* **HuaWei**: HUAWEI'."\n"
- .'* **XiaoMi**: Xiaomi'."\n"
- .'* **OPPO**: OPPO'."\n"
- .'* **VIVO**: vivo'."\n"
- .'* **MEIZU**: MEIZU'."\n"
- ."\n"
- .'> If this parameter is not specified, the system automatically specifies a supported mobile phone manufacturer.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'XiaoMi',
- ],
+ 'schema' => ['description' => 'The number of signatures to return on each page. Default value: **10**. Valid values: **1 to 50**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data object.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'TemplateCode' => [
- 'description' => 'The code of the message template.'."\n"
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990'."\n", 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code. Valid values:'."\n"
+ .' '."\n"
+ .'- OK: The request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'SmsSignList' => [
+ 'description' => 'The list of returned results.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of returned results.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SignName' => ['description' => 'The signature name.', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
+ 'AuditStatus' => ['description' => 'The audit status of the signature. Valid values:'."\n"
."\n"
- .'You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the [Alibaba Cloud SMS console](https://dysms.console.aliyun.com/dysms.htm?spm=5176.12818093.categories-n-products.ddysms.3b2816d0xml2NA#/overview).'."\n"
+ .'- **AUDIT_STATE_INIT**: under review.'."\n"
."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'example' => 'CARD_SMS_60000****',
+ .'- **AUDIT_STATE_PASS**: approved.'."\n"
+ ."\n"
+ .'- **AUDIT_STATE_NOT_PASS**: rejected. You can view the rejection reason in the Reason response parameter.'."\n"
+ ."\n"
+ .'- **AUDIT_STATE_CANCEL**: review canceled.', 'type' => 'string', 'example' => 'AUDIT_STATE_NOT_PASS', 'title' => ''],
+ 'CreateDate' => ['description' => 'The time when the SMS signature was created. The format is yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'example' => '2020-06-04 11:42:17', 'title' => ''],
+ 'Reason' => [
+ 'description' => 'The audit remarks.'."\n"
+ ."\n"
+ .'- If the audit status is **approved** or **under review**, the Reason parameter is displayed as "No audit remarks".'."\n"
+ ."\n"
+ .'- If the audit status is **rejected**, the Reason parameter displays the specific reason for the rejection.',
+ 'type' => 'object',
+ 'properties' => [
+ 'RejectSubInfo' => ['description' => 'The remarks for the rejection.', 'type' => 'string', 'example' => '文件不能证明信息真实性,请重新上传。', 'title' => ''],
+ 'RejectDate' => ['description' => 'The time when the signature was rejected. The format is yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'example' => '2020-06-04 13:35:10', 'title' => ''],
+ 'RejectInfo' => ['description' => 'The reason for the rejection.', 'type' => 'string', 'example' => '文件不能证明信息真实性,请重新上传。', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'BusinessType' => ['description' => 'The scenario type of the signature. Valid values:'."\n"
+ ."\n"
+ .'- Verification code.'."\n"
+ ."\n"
+ .'- General-purpose.', 'type' => 'string', 'example' => '验证码类型', 'title' => ''],
+ 'OrderId' => ['description' => 'The order ID.'."\n"
+ ."\n"
+ .'This parameter is used by auditors when querying the audit. You must provide this order ID if you need to expedite the audit.', 'type' => 'string', 'example' => '2005098****', 'title' => ''],
+ 'AuthorizationLetterId' => ['description' => 'The ID of the letter of authorization.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000********1234', 'title' => ''],
+ 'authorizationLetterAuditPass' => [
+ 'description' => 'The audit status of the letter of authorization. Valid values:'."\n"
+ .'- true: approved.'."\n"
+ .'- false: not approved (includes all statuses other than approved).',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'title' => '',
+ ],
+ 'TrademarkId' => ['description' => 'The trademark entity ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000009081***', 'title' => ''],
+ 'AppIcpRecordId' => ['description' => 'The APP-ICP filing entity ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000001***123', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ 'TotalCount' => ['description' => 'The total number of signatures.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'CurrentPage' => ['description' => 'The page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of signatures to return on each page. Default value: **10**. Valid values: **1 to 50**.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\\\n\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SmsSignList\\": [\\n {\\n \\"SignName\\": \\"阿里云\\",\\n \\"AuditStatus\\": \\"AUDIT_STATE_NOT_PASS\\",\\n \\"CreateDate\\": \\"2020-06-04 11:42:17\\",\\n \\"Reason\\": {\\n \\"RejectSubInfo\\": \\"文件不能证明信息真实性,请重新上传。\\",\\n \\"RejectDate\\": \\"2020-06-04 13:35:10\\",\\n \\"RejectInfo\\": \\"文件不能证明信息真实性,请重新上传。\\"\\n },\\n \\"BusinessType\\": \\"验证码类型\\",\\n \\"OrderId\\": \\"2005098****\\",\\n \\"AuthorizationLetterId\\": 0,\\n \\"authorizationLetterAuditPass\\": true,\\n \\"TrademarkId\\": 0,\\n \\"AppIcpRecordId\\": 0\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]',
+ 'title' => 'Query signature list details',
+ 'description' => 'This operation queries the signature information that was **first created** or the **most recently approved** signature details under your current account. If you need to query more information such as application scenario content or files uploaded during application, you can call the [GetSmsSign](~~GetSmsSign~~) operation to query the audit details of a single signature by signature name.',
+ 'changeSet' => [
+ ['createdAt' => '2025-12-16T07:48:28.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-12-11T12:44:33.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T12:44:31.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:22.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:22.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:08.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:07:46.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:40.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:39.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsSignList'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsSignList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"TemplateCode\\": \\"CARD_SMS_2****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateCardSmsTemplateResponse>\\n <Code>ok</Code>\\n <RequestId>F655A8D5-B967-440B-8683-DAD6FF8DE990</RequestId>\\n <Success>true</Success>\\n <Data>\\n <TemplateCode>CARD_SMS_600000001</TemplateCode>\\n </Data>\\n</CreateCardSmsTemplateResponse>","errorExample":""}]',
- 'title' => 'CreateCardSmsTemplate',
- 'description' => '* The CreateCardSmsTemplate operation saves the card message template information, submits it to the mobile phone manufacturer for approval, and returns the message template ID.'."\n"
- .'* If the type of the message template is not supported or events that are not supported by the mobile phone manufacturer are specified, the template is not submitted. For more information, see [Supported message templates](~~434611~~).'."\n"
- .'* For information about sample card message templates, see [Sample card message templates](~~435361~~).'."\n"
- ."\n"
- .'### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 300 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
],
- 'QueryCardSmsTemplate' => [
- 'summary' => 'Queries the review status of a message template.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'QuerySmsTemplate' => [
+ 'summary' => 'This API has been deprecated.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => false,
+ 'deprecated' => true,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102452',
- 'abilityTreeNodes' => [
- 'FEATUREdysms17QZIS',
- ],
+ 'abilityTreeCode' => '102460',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
],
'parameters' => [
[
'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'CARD_SMS_4139',
- ],
+ 'schema' => ['description' => 'The template code.'."\n"
+ ."\n"
+ .'- The template code is returned in the response of the [AddSmsTemplate](~~121208~~) API.'."\n"
+ ."\n"
+ .'- The template code is available on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SMS_1525****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* For more information about other response codes, see [API error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'Templates' => [
- 'description' => 'The array of objects.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The returned template information.'."\n"
- ."\n"
- .'* tmpName: the name of the template.'."\n"
- .'* tmpCode: the code of the template.'."\n"
- .'* state: the review status of the template. Valid values: 0, 1, and 2. 0 indicates that the template is pending approval. 1 indicates that the template is approved. 2 indicates that the template is rejected.'."\n"
- .'* tmpOps: the information about the mobile phone. The following information is returned: 1. state: the review status of the mobile phone. 2. vendorCode: the information about the mobile phone manufacturer. 3. remark: the comments on the mobile phone.'."\n",
- 'type' => 'object',
- 'example' => '',
- ],
- ],
- ],
- ],
+ 'TemplateContent' => ['description' => 'The template content.', 'type' => 'string', 'example' => '亲爱的会员!阿里云短信服务祝您新年快乐!', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0A974B78-02BF-4C79-ADF3-90CFBA1B55B1', 'title' => ''],
+ 'TemplateCode' => ['description' => 'The template code.', 'type' => 'string', 'example' => 'SMS_1525****', 'title' => ''],
+ 'TemplateStatus' => ['description' => 'The review status of the template. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Reviewing.'."\n"
+ ."\n"
+ .'- **1**: Approved.'."\n"
+ ."\n"
+ .'- **2**: Rejected. The reason for the rejection is returned in the response. For more information, see [Suggestions for handling a failed review](~~65990~~). You can then call the [ModifySmsTemplate](~~419287~~) API or modify the template on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.'."\n"
+ ."\n"
+ .'- **10**: Canceled.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- OK indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For a list of other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'TemplateType' => ['description' => 'The message type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Verification code.'."\n"
+ ."\n"
+ .'- **1**: Message notification.'."\n"
+ ."\n"
+ .'- **2**: Promotional message.'."\n"
+ ."\n"
+ .'- **3**: International message.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'TemplateName' => ['description' => 'The template name.', 'type' => 'string', 'example' => '通知短信', 'title' => ''],
+ 'CreateDate' => ['description' => 'The time when the template was created.', 'type' => 'string', 'example' => '2024-06-03 10:02:34', 'title' => ''],
+ 'Reason' => ['description' => 'The review notes for the template.'."\n"
+ ."\n"
+ .'- If the review status is **Approved** or **Reviewing**, the message "No review remarks" is returned.'."\n"
+ ."\n"
+ .'- If the review status is **Rejected**, the reason for the rejection is returned.', 'type' => 'string', 'example' => '无审批备注', 'title' => ''],
],
- ],
- ],
- ],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
+ 'description' => 'The data returned.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'substitutions' => ['Dysmsapi::2017-05-25::GetSmsTemplate'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"Templates\\": [\\n {\\n \\"tmpName\\": \\"测试\\",\\n \\"tmpCode\\": \\"CARD_SMS_****\\",\\n \\"state\\": 1,\\n \\"tmpOps\\": [\\n {\\n \\"tmpOpId\\": \\"536363\\",\\n \\"vendorTmpId\\": \\"600302896\\",\\n \\"remark\\": \\"自动审核通过\\",\\n \\"supplierCode\\": \\"MW\\",\\n \\"state\\": 1,\\n \\"vendorName\\": \\"华为\\",\\n \\"vendorCode\\": \\"HUAWEI\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'QueryCardSmsTemplate',
- 'description' => '### QPS limit'."\n"
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TemplateContent\\": \\"亲爱的会员!阿里云短信服务祝您新年快乐!\\",\\n \\"RequestId\\": \\"0A974B78-02BF-4C79-ADF3-90CFBA1B55B1\\",\\n \\"TemplateCode\\": \\"SMS_1525****\\",\\n \\"TemplateStatus\\": 0,\\n \\"Code\\": \\"OK\\",\\n \\"TemplateType\\": 1,\\n \\"Message\\": \\"OK\\",\\n \\"TemplateName\\": \\"通知短信\\",\\n \\"CreateDate\\": \\"2024-06-03 10:02:34\\",\\n \\"Reason\\": \\"无审批备注\\"\\n}","type":"json"}]',
+ 'title' => 'QuerySmsTemplate',
+ 'description' => '- Alibaba Cloud has updated its template-related APIs to comply with regulatory and [carrier requirements](~~2806975~~). We recommend that you use the new [GetSmsTemplate - Query template review details](~~2807433~~) API. The new API returns more detailed template information in its response.'."\n"
."\n"
- .'You can call this operation up to 300 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- ],
- 'CheckMobilesCardSupport' => [
- 'summary' => 'Queries whether some mobile phone numbers support card messages.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'- Review timeline: After you submit a template, Alibaba Cloud typically completes the review within two hours. Review hours are 9:00 to 21:00 (UTC+8) from Monday to Sunday. Reviews are postponed during public holidays. We recommend that you submit your templates before 18:00 (UTC+8).'."\n"
+ ."\n"
+ .'- If a template fails review, the response includes the reason for the rejection. For more information, see [Suggestions for handling a failed review](~~65990~~). You can then call the [ModifySmsTemplate](~~419287~~) API or modify the template on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.'."\n"
+ ."\n"
+ .'- QuerySmsTemplate queries the review details of a single template by its template code. To query the details of all templates in your account, call the [QuerySmsTemplateList](~~419288~~) API.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'extraInfo' => ' ',
+ ],
+ 'QuerySmsTemplateList' => [
+ 'summary' => 'You can call this operation to query all templates under your account. This way, you can view template details, including the template approval status, template type, and template content.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -8305,40 +5989,19 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '125700',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsB35KN5',
- ],
+ 'abilityTreeCode' => '118761',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
],
'parameters' => [
[
- 'name' => 'TemplateCode',
+ 'name' => 'PageIndex',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'CARD_SMS_****',
- ],
+ 'schema' => ['description' => 'The current page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'default' => '1', 'title' => ''],
],
[
- 'name' => 'Mobiles',
+ 'name' => 'PageSize',
'in' => 'query',
- 'style' => 'flat',
- 'schema' => [
- 'description' => 'The list of mobile phone numbers that receive messages.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The list of mobile phone numbers that receive messages. A maximum of 10,000 mobile phone numbers can be queried per request.'."\n",
- 'type' => 'object',
- 'required' => false,
- 'example' => '[{"#6#mobile":"1322587****"},{"#6#mobile":"1867845****"}]',
- ],
- 'required' => true,
- ],
+ 'schema' => ['description' => 'The number of templates displayed per page. Valid values: **1 to 50**. Default value: **10**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'example' => '10', 'default' => '10', 'title' => ''],
],
],
'responses' => [
@@ -8346,88 +6009,112 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'queryResult' => [
- 'description' => 'The list of returned results.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => '',
+ 'RequestId' => ['description' => 'The ID of the request. The unique identifier generated by Alibaba Cloud for the request can be used to troubleshoot and locate issues.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E47708****', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code.'."\n"
+ ."\n"
+ .'- The value OK indicates that the request was successful.'."\n"
+ .'- For information about other status codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'SmsTemplateList' => [
+ 'description' => 'The result list.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of a single template.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TemplateCode' => ['description' => 'The code of the SMS template.', 'type' => 'string', 'example' => 'SMS_1525***', 'title' => ''],
+ 'TemplateName' => ['description' => 'The name of the SMS template.', 'type' => 'string', 'example' => '验证码模板', 'title' => ''],
+ 'OuterTemplateType' => ['description' => 'The template type (for external use). Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code message.'."\n"
+ .'- **1**: notification message.'."\n"
+ .'- **2**: promotional message.'."\n"
+ .'- **3**: international or Hong Kong, Macao, and Taiwan message.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'AuditStatus' => ['description' => 'The template approval status. Valid values:'."\n"
+ ."\n"
+ .'- **AUDIT_STATE_INIT**: under review.'."\n"
+ .'- **AUDIT_STATE_PASS**: approved.'."\n"
+ .'- **AUDIT_STATE_NOT_PASS**: rejected. View the rejection reason in the Reason response parameter.'."\n"
+ .'- **AUDIT_SATE_CANCEL**: review canceled.', 'type' => 'string', 'example' => 'AUDIT_STATE_PASS', 'title' => ''],
+ 'TemplateContent' => ['description' => 'The template content.', 'type' => 'string', 'example' => '验证码为:${code},您正在注册成为平台会员,感谢您的支持!', 'title' => ''],
+ 'CreateDate' => ['description' => 'The time when the template was created. Format: yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'example' => '2020-06-04 11:42:17', 'title' => ''],
+ 'Reason' => [
+ 'description' => 'The approval result.',
'type' => 'object',
'properties' => [
- 'mobile' => [
- 'description' => 'The mobile phone number.'."\n",
- 'type' => 'string',
- 'example' => '1390000****',
- ],
- 'support' => [
- 'description' => 'Indicates whether the mobile phone number supports card messages.'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'RejectDate' => ['description' => 'The time when the template was rejected. Format: yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'example' => '2020-06-04 16:01:17', 'title' => ''],
+ 'RejectInfo' => ['description' => 'The reason why the template was rejected.', 'type' => 'string', 'example' => '变量不符合规范', 'title' => ''],
+ 'RejectSubInfo' => ['description' => 'The detailed reason why the template was rejected.', 'type' => 'string', 'example' => '变量属性选择错误。'."\n"
+ .'请根据业务使用场景选择合适的变量属性。', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'OrderId' => ['description' => 'The ticket ID.'."\n"
+ ."\n"
+ .'Reviewers use this parameter when querying approval information. You must provide this ticket ID when you request expedited approval.', 'type' => 'string', 'example' => '2004983****', 'title' => ''],
+ 'TemplateType' => ['description' => 'The template type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: notification message.'."\n"
+ .'- **1**: promotional message.'."\n"
+ .'- **2**: verification code message.'."\n"
+ .'- **6**: international or Hong Kong, Macao, and Taiwan message.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'SignatureName' => ['description' => 'The name of the associated signature.', 'type' => 'string', 'example' => '阿里云', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ 'TotalCount' => ['description' => 'The total number of templates returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'CurrentPage' => ['description' => 'The current page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of templates displayed per page. Valid values: **1 to 50**.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E47708****\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SmsTemplateList\\": [\\n {\\n \\"TemplateCode\\": \\"SMS_1525***\\",\\n \\"TemplateName\\": \\"验证码模板\\",\\n \\"OuterTemplateType\\": 0,\\n \\"AuditStatus\\": \\"AUDIT_STATE_PASS\\",\\n \\"TemplateContent\\": \\"验证码为:${code},您正在注册成为平台会员,感谢您的支持!\\",\\n \\"CreateDate\\": \\"2020-06-04 11:42:17\\",\\n \\"Reason\\": {\\n \\"RejectDate\\": \\"2020-06-04 16:01:17\\",\\n \\"RejectInfo\\": \\"变量不符合规范\\",\\n \\"RejectSubInfo\\": \\"变量属性选择错误。\\\\n请根据业务使用场景选择合适的变量属性。\\"\\n },\\n \\"OrderId\\": \\"2004983****\\",\\n \\"TemplateType\\": 2,\\n \\"SignatureName\\": \\"阿里云\\"\\n }\\n ],\\n \\"TotalCount\\": 100,\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]',
+ 'title' => 'Queries the details of template lists',
+ 'description' => '- This operation queries the template details of all templates under your current account. To query more details such as the template variable content and the file information uploaded during application, you can call the [GetSmsTemplate](~~GetSmsTemplate~~) operation to query the approval details of a single template by template code.'."\n"
+ .'- You can also log on to the Short Message Service (SMS) console and view the template details of all templates under your current account on the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-08T07:45:00.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-06-08T07:44:55.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-06-04T07:56:04.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2026-06-04T07:55:45.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-27T03:33:20.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-27T03:33:12.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:41:26.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsTemplateList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"queryResult\\": [\\n {\\n \\"mobile\\": \\"1390000****\\",\\n \\"support\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'CheckMobilesCardSupport',
- 'description' => '### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 2,000 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
],
- 'QueryMobilesCardSupport' => [
- 'summary' => 'Queries whether some mobile phone numbers support card messages.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'QuerySmsTrademark' => [
+ 'summary' => 'Queries the details of one or more trademarks.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -8439,143 +6126,89 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '161447',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsB35KN5',
- ],
+ 'abilityTreeCode' => '289842',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'TemplateCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'CARD_SMS_0000',
- ],
- ],
- [
- 'name' => 'Mobiles',
+ 'name' => 'TrademarkIdList',
'in' => 'query',
'style' => 'json',
'schema' => [
- 'description' => 'The list of mobile phone numbers.'."\n",
+ 'description' => 'A list of trademark IDs.',
+ 'title' => 'List of trademark entity IDs ',
'type' => 'array',
- 'items' => [
- 'description' => 'The list of mobile phone numbers.'."\n",
- 'type' => 'object',
- 'required' => false,
- 'example' => '{'."\n"
- .' "mobile": "138****0000"'."\n"
- .'}',
- ],
+ 'items' => ['description' => 'A trademark ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100000***', 'title' => ''],
'required' => true,
- ],
- ],
- [
- 'name' => 'EncryptType',
- 'in' => 'query',
- 'allowEmptyValue' => true,
- 'schema' => [
- 'type' => 'string',
- 'example' => 'NORMAL',
- 'maxLength' => 100,
- 'default' => 'NORMAL',
- 'enum' => [
- 'SHA1',
- 'NORMAL',
- ],
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The array of objects.'."\n",
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '08C17DFE-2E10-54F4-BAFB-7180039CC217',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details of the access denial.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '569E9DBD-23FF-1785-99AD-E4B23608C104'],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'QueryResult' => [
- 'description' => 'The list of returned results.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Mobile' => [
- 'description' => 'The mobile phone number.'."\n",
- 'type' => 'string',
- 'example' => '1380000****',
- ],
- 'Support' => [
- 'description' => 'Indicates whether the mobile phone number supports card messages. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- ],
- ],
+ 'description' => 'A list of trademark details.',
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of a trademark.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TrademarkPicUrl' => ['title' => 'URL of the trademark screenshot.', 'description' => 'The URL of the trademark screenshot.', 'type' => 'string', 'example' => 'https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D'],
+ 'TrademarkRegistrationNumber' => ['title' => 'Trademark registration number.', 'description' => 'The trademark registration number.', 'type' => 'string', 'example' => '1234'],
+ 'TrademarkName' => ['title' => 'Trademark name.', 'description' => 'The name of the trademark.', 'type' => 'string', 'example' => '示例商标'],
+ 'TrademarkPic' => ['title' => 'OSS key of the trademark screenshot (used when submitting a ticket for signature).', 'description' => 'The Object Storage Service (OSS) file key for the trademark image.', 'type' => 'string', 'example' => '100000*****802/afdebd46-****-46e4-899d-b4375826c898_mhk9oz0p_1762****31542.png'],
+ 'TrademarkEffExpDate' => ['title' => 'Effective and expiration dates of exclusive rights.', 'description' => 'The validity period of the trademark.', 'type' => 'string', 'example' => '2025-11-01~2025-12-19'],
+ 'TrademarkId' => ['title' => 'Trademark material ID ', 'description' => 'The trademark ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000*******'],
+ 'TrademarkApplicantName' => ['title' => 'Applied By Name ', 'description' => 'The applicant name.', 'type' => 'string', 'example' => '阿里云'],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'example' => '',
],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- `OK` indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request is successful.'."\n"
+ ."\n"
+ .'- **false**: The request fails.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query trademark entity ',
+ 'description' => 'This operation retrieves the details of trademarks by using a list of trademark IDs.'."\n"
+ ."\n"
+ .'For example, you can obtain trademark IDs by calling signature query operations such as `QuerySmsSignList` or `GetSmsSign`. You can then use this operation to retrieve the details of each trademark.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"08C17DFE-2E10-54F4-BAFB-7180039CC217\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"QueryResult\\": [\\n {\\n \\"Mobile\\": \\"1380000****\\",\\n \\"Support\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'QueryMobilesCardSupport',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"569E9DBD-23FF-1785-99AD-E4B23608C104\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": [\\n {\\n \\"TrademarkPicUrl\\": \\"https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com/100000****50802/afde****-496d-46e4-899d-b43758****8_mhk9oz0p_176224****542.png?Expires=1762****6&OSSAccessKeyId=bypFN****73PsLI&Signature=BygI9X****h7%2FXmFIo****FB2c%3D\\",\\n \\"TrademarkRegistrationNumber\\": \\"1234\\",\\n \\"TrademarkName\\": \\"示例商标\\",\\n \\"TrademarkPic\\": \\"100000*****802/afdebd46-****-46e4-899d-b4375826c898_mhk9oz0p_1762****31542.png\\",\\n \\"TrademarkEffExpDate\\": \\"2025-11-01~2025-12-19\\",\\n \\"TrademarkId\\": 0,\\n \\"TrademarkApplicantName\\": \\"阿里云\\"\\n }\\n ],\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
- 'GetCardSmsLink' => [
- 'summary' => 'Queries the short URLs of a card messages template.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'RequiredPhoneCode' => [
+ 'summary' => 'When applying for SMS qualification, the administrator\'s phone number must be verified. Use this operation to obtain an SMS verification code.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -8583,235 +6216,65 @@
],
'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '125584',
- 'abilityTreeNodes' => [
- 'FEATUREdysms17QZIS',
- ],
- ],
'parameters' => [
[
- 'name' => 'CardTemplateCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'CARD_SMS_****',
- ],
- ],
- [
- 'name' => 'OutId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The extension field.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'BC20220608102511660860762****',
- ],
- ],
- [
- 'name' => 'PhoneNumberJson',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The mobile phone numbers of recipients, custom identifiers, or system identifiers.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* A maximum of 10,000 mobile phone numbers are supported.'."\n"
- ."\n"
- .'* You can enter custom identifier. Each identifier can be a maximum of 60 characters in length.'."\n"
- ."\n"
- .'* You can apply for a maximum of 10 OPPO templates at a time.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[\\"1390000****'."\n"
- .'\\",\\"1370000****'."\n"
- .'\\"]',
- ],
- ],
- [
- 'name' => 'SignNameJson',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The signature. You can view the template code in the **Signature** column on the **Signaturess** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> The signatures must be approved and correspond to the mobile numbers in sequence.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '[\\"aliyun\\", \\"aliyun2\\"]',
- ],
- ],
- [
- 'name' => 'CardTemplateParamJson',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The variables of the message template.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[{},{}]',
- ],
- ],
- [
- 'name' => 'CardCodeType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The code type of the URLs.'."\n"
- ."\n"
- .'* **1**: group texting'."\n"
- .'* **2**: personalization'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '2',
- ],
- ],
- [
- 'name' => 'CardLinkType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the short URLs.'."\n"
- ."\n"
- .'* 1: standard short code.'."\n"
- .'* 2: custom short code.'."\n"
- ."\n"
- .'> If the **CardLinkType** is not specified, standard short codes are generated. If you need to generate custom short codes, contact Alibaba Cloud SMS technical support.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'Domain',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The original domain name. You must submit domain names for approval in advance.'."\n"
- ."\n"
- .'> '."\n"
- ."\n"
- .'* If the **CardLinkType** parameter is set to **2**, the **Domain** parameter is required.'."\n"
- ."\n"
- .'* The **Domain** parameter cannot exceed 100 characters in length. If the parameter is not specified, a default domain name is used.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'xxx.com',
- ],
- ],
- [
- 'name' => 'CustomShortCodeJson',
+ 'name' => 'PhoneNo',
'in' => 'query',
- 'schema' => [
- 'description' => 'The custom short code. It can contain 4 to 8 digits or letters.'."\n"
- ."\n"
- .'> If the CardLinkType parameter is set to 2, the CustomShortCodeJson parameter is required.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'abCde',
- ],
+ 'schema' => ['description' => 'The administrator\'s phone number that receives the verification code.'."\n"
+ .'- The account that **calls this operation to send the verification code must be the same account that submits the qualification**. Otherwise, the call fails.'."\n"
+ .'- Phone number format: +/+86/0086/86 or a mobile phone number without any prefix, for example 1390000****.', 'type' => 'string', 'title' => '', 'required' => true, 'example' => '137****1234'],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'CC89A90C-978F-46AC-B80D-54738371E7CA',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details about the access denial.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '90E63D28-E31D-1EB2-8939-A9486641****'],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Data' => ['description' => 'This field is not returned and can be ignored.', 'type' => 'string', 'example' => '-', 'title' => ''],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- OK indicates that the request was successful.'."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Success' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ 'description' => 'Indicates whether the operation call is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call is successful.'."\n"
."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
+ .'- **false**: The call fails.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'type' => 'boolean',
+ 'title' => '',
'example' => 'true',
],
- 'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'CardTmpState' => [
- 'description' => 'The review status of the card message template.'."\n"
- ."\n"
- .'* **0**: pending approval'."\n"
- .'* **1**: approved'."\n"
- .'* **2**: rejected'."\n"
- ."\n"
- .'> Unapproved card messages are rolled back.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '0',
- ],
- 'NotMediaMobiles' => [
- 'description' => 'The mobile phone numbers that do not support card messages.'."\n",
- 'type' => 'string',
- 'example' => '1390000****',
- ],
- 'CardPhoneNumbers' => [
- 'description' => 'The mobile phone numbers that support card messages.'."\n",
- 'type' => 'string',
- 'example' => '[\\"1390000****\\",\\"1370000****\\"]',
- ],
- 'CardSmsLinks' => [
- 'description' => 'The short URLs.'."\n",
- 'type' => 'string',
- 'example' => '[\\"mw2m.cn/LAaGGa\\",\\"mw2m.cn/LAAaes\\"]',
- ],
- 'CardSignNames' => [
- 'description' => 'The signatures must correspond to the mobile numbers and short URLs in sequence.'."\n",
- 'type' => 'string',
- 'example' => '["aliyun","aliyun2"]',
- ],
- ],
- ],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"CC89A90C-978F-46AC-B80D-54738371E7CA\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"CardTmpState\\": 0,\\n \\"NotMediaMobiles\\": \\"1390000****\\",\\n \\"CardPhoneNumbers\\": \\"[\\\\\\\\\\\\\\"1390000****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"1370000****\\\\\\\\\\\\\\"]\\",\\n \\"CardSmsLinks\\": \\"[\\\\\\\\\\\\\\"mw2m.cn/LAaGGa\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"mw2m.cn/LAAaes\\\\\\\\\\\\\\"]\\",\\n \\"CardSignNames\\": \\"[\\\\\\"阿里云\\\\\\",\\\\\\"阿里云2\\\\\\"]\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetCardSmsLink',
- 'description' => '### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"90E63D28-E31D-1EB2-8939-A9486641****\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"-\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Obtain a phone verification code',
+ 'description' => '- After you receive the phone verification code, pass it to the `CertifyCode` parameter of the [SubmitSmsQualification](~~SubmitSmsQualification~~) or [UpdateSmsQualification](~~UpdateSmsQualification~~) operation.'."\n"
+ .'- You can call the [ValidPhoneCode](~~ValidPhoneCode~~) operation to verify whether the SMS verification code is correct.'."\n"
+ .'- This operation is subject to [throttling](~~44335#section-0wh-xn6-0t7~~). Do not call it too frequently. For the same phone number, a maximum of 1 message per minute, 5 messages per hour, and 10 messages per day are supported.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
],
- 'GetCardSmsDetails' => [
- 'summary' => 'Query card sending details',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'SendBatchCardSms' => [
+ 'summary' => 'Sends card SMS messages in batches.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -8820,267 +6283,184 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '125151',
+ 'abilityTreeNodes' => ['FEATUREdysmsB35KN5'],
],
'parameters' => [
[
- 'name' => 'CurrentPage',
+ 'name' => 'CardTemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'For paginated viewing of sending records, specify the current page number of the sending records.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The code of the card SMS template. On the **Card SMS** [Template Management](https://dysms.console.aliyun.com/domestic/card) page in the console, select the code of a card SMS template that has been **approved**.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'CARD_SMS_3**5', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'SmsTemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'For paginated viewing of sending records, specify the number of card SMS records to display per page.'."\n"
- ."\n"
- .'The value range is 1~50.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The code of the text SMS template used for fallback. This parameter is required when **FallbackType** is set to **SMS** (fallback to text SMS).'."\n"
+ ."\n"
+ .'You can call the [QuerySmsTemplateList](~~419288~~) operation to query the templates that have been submitted under the current account, or you can view the list of templates in the [Short Message Service console](https://dysms.console.aliyun.com/domestic/text/template).'."\n"
+ .'>The template must be added and approved.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'SMS_23425****', 'title' => ''],
],
[
- 'name' => 'SendDate',
+ 'name' => 'FallbackType',
'in' => 'query',
- 'schema' => [
- 'description' => 'Card SMS sending date, supports querying records from the last 30 days.'."\n"
- ."\n"
- .'Format: yyyyMMdd, for example, 20240112.',
- 'type' => 'string',
- 'required' => true,
- 'example' => '20240112',
- ],
+ 'schema' => ['description' => 'The fallback type. Valid values:'."\n"
+ .'- **SMS**: Phone numbers that do not support card SMS messages fall back to text SMS messages.'."\n"
+ .'- **DIGITALSMS**: Phone numbers that do not support card SMS messages fall back to digital SMS messages.'."\n"
+ .'- **NONE**: No fallback is required.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SMS', 'title' => ''],
],
[
- 'name' => 'PhoneNumber',
+ 'name' => 'DigitalTemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'Domestic phone number that received the SMS. Format: 11-digit phone number, for example, 1390000****.',
- 'type' => 'string',
- 'required' => true,
- 'example' => '1390000****',
- ],
+ 'schema' => ['description' => 'The code of the digital SMS template used for fallback. This parameter is required when **FallbackType** is set to **DIGITALSMS** (fallback to digital SMS).'."\n"
+ ."\n"
+ .'You can view the list of digital SMS templates on the **Domestic Digital SMS** [Template Management](https://dysms.console.aliyun.com/domestic/digit) page in the console.'."\n"
+ .'>The template must be added and approved.', 'type' => 'string', 'required' => false, 'example' => 'DIGITAL_SMS_23408****', 'title' => ''],
],
[
- 'name' => 'BizCardId',
+ 'name' => 'OutId',
'in' => 'query',
- 'schema' => [
- 'description' => 'Card SMS sending ID, which is the BizCardId field in the response when calling SendCardSms or SendBatchCardSms.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '123456^0',
- ],
+ 'schema' => ['description' => 'The ID reserved for the caller.', 'type' => 'string', 'required' => false, 'example' => '16545681783595370', 'title' => ''],
],
[
- 'name' => 'BizSmsId',
+ 'name' => 'PhoneNumberJson',
'in' => 'query',
- 'schema' => [
- 'description' => 'Text SMS sending ID, which is the BizSmsId field in the response when calling SendCardSms or SendBatchCardSms.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '1234576^0',
- ],
+ 'schema' => ['description' => 'The mobile phone numbers that receive the SMS messages.', 'type' => 'string', 'required' => true, 'example' => '["1390000****","1370000****"]', 'title' => ''],
],
[
- 'name' => 'BizDigitId',
+ 'name' => 'SignNameJson',
'in' => 'query',
- 'schema' => [
- 'description' => 'Digital SMS sending ID, which is the BizDigitalId field in the response when calling SendCardSms or SendBatchCardSms.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '12346^0',
- ],
+ 'schema' => ['description' => 'The name of the SMS signature.'."\n"
+ .'You can call the [QuerySmsSignList](~~419282~~) operation to query the signatures that have been submitted under the current account, or you can view the list of signatures in the [Short Message Service console](https://dysms.console.aliyun.com/domestic/text/sign).'."\n"
+ .'>The signature must be added and approved. The number of SMS signatures must be the same as the number of phone numbers, and the signatures must be in one-to-one correspondence with the phone numbers.', 'type' => 'string', 'required' => true, 'example' => '["阿里云","阿里巴巴"]', 'title' => ''],
+ ],
+ [
+ 'name' => 'CardTemplateParamJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The actual values of the variables in the card SMS template. This parameter is required when the card SMS template specified by **CardTemplateCode** contains variables.'."\n"
+ ."\n"
+ .'>If the JSON contains line breaks, handle them based on the standard JSON protocol.', 'type' => 'string', 'required' => false, 'example' => '[{"customurl":"http://www.alibaba.com","dyncParams":"{"a":"hello","b":"world"}"}]', 'title' => ''],
+ ],
+ [
+ 'name' => 'SmsTemplateParamJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The actual values of the variables in the text SMS template. This parameter is required when the fallback text SMS template specified by **SmsTemplateCode** contains variables.'."\n"
+ ."\n"
+ .'>If the JSON contains line breaks, handle them based on the standard JSON protocol.', 'type' => 'string', 'required' => false, 'example' => '[{"a":1,"b":2},{"a":9,"b":8}]', 'title' => ''],
+ ],
+ [
+ 'name' => 'DigitalTemplateParamJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The actual values of the variables in the digital SMS template. This parameter is required when the fallback digital SMS template specified by **DigitalTemplateCode** contains variables.'."\n"
+ .'>If the JSON contains line breaks, handle them based on the standard JSON protocol.', 'type' => 'string', 'required' => false, 'example' => '[{"a":1,"b":2},{"a":9,"b":8}]', 'title' => ''],
+ ],
+ [
+ 'name' => 'SmsUpExtendCodeJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The extension code of the MO (mobile-originated) SMS message.', 'type' => 'string', 'required' => false, 'example' => '[\\"6\\",\\"6\\"]', 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateCode',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The code of the custom send content template.'."\n"
+ ."\n"
+ .'The custom content is sent to the terminal in the form of the selected text SMS template plus the card parsing link. You can log on to the [Short Message Service console](https://dysms.console.aliyun.com/overview), choose **Domestic Messages** or **International/Hong Kong, Macao, and Taiwan Messages**, and then view the **Template Code** on the **Template Management** page.'."\n"
+ ."\n"
+ .'> - The template must be added and approved. To send international or Hong Kong, Macao, and Taiwan messages, use an international or Hong Kong, Macao, and Taiwan SMS template.'."\n"
+ .'> - For example, the selected text SMS template content is: You have a message to check; the card parsing link is: `1*.cn/2**d`. The final delivered content is: `You have a message to check 1*.cn/2**d`. Perform testing and control the number of characters before sending.', 'type' => 'string', 'required' => false, 'example' => 'SMS_20375****', 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateParamJson',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The actual values of the variables in the custom send content template. This parameter is required when the SMS template specified by **TemplateCode** contains variables.'."\n"
+ ."\n"
+ .'> - If the JSON contains line breaks, handle them based on the standard JSON protocol.'."\n"
+ .'> - The number of template variable values must be the same as the number of phone numbers and signatures, and they must be in one-to-one correspondence. This indicates that an SMS message with the corresponding signature is sent to the specified phone number, and the variable parameters in the SMS template are replaced with the corresponding values.', 'type' => 'string', 'required' => false, 'example' => '[{"name":"TemplateParamJson"},{"name":"TemplateParamJson"}]', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'Response information',
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => 'Access denied detail; this field is returned only if the RAM check fails.',
- 'type' => 'string',
- 'example' => '无',
- ],
- 'Message' => [
- 'title' => '状态描述',
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'OK'."\n",
- ],
- 'CardSendDetailDTO' => [
- 'title' => '卡片短信发送结果',
- 'description' => 'Card SMS sending result',
+ 'Code' => ['description' => 'The request status code.'."\n"
+ .'* If **OK** is returned, the request is successful.'."\n"
+ .'* For information about other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D0D', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call is successful.'."\n"
+ ."\n"
+ .'- **false**: The call fails.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The returned data.'."\n",
'type' => 'object',
'properties' => [
- 'TotalCount' => [
- 'title' => '总量',
- 'description' => 'Total count',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '10',
- ],
- 'PageSize' => [
- 'title' => '页数',
- 'description' => 'Page size',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '10',
- ],
- 'CurrentPage' => [
- 'title' => '页码',
- 'description' => 'Current page number',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'Records' => [
- 'description' => 'List of card SMS sending records',
- 'type' => 'array',
- 'items' => [
- 'description' => 'Card SMS sending record',
- 'type' => 'object',
- 'properties' => [
- 'TemplateCode' => [
- 'title' => '模板code',
- 'description' => 'Template code',
- 'type' => 'string',
- 'example' => 'CARD_SMS_6***',
- ],
- 'RenderDate' => [
- 'title' => '渲染时间',
- 'description' => 'Render date',
- 'type' => 'string',
- 'example' => '2024-09-27 12:13:39',
- ],
- 'ReceiveDate' => [
- 'title' => '接收时间',
- 'description' => 'Receive date',
- 'type' => 'string',
- 'example' => '2024-09-27 11:26:35',
- ],
- 'RenderStatus' => [
- 'title' => '解析状态.。0:未解析;1:解析成功;3:未解析',
- 'description' => 'Render status. 0: Not rendered; 1: Rendered successfully; 3: Not rendered',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'ReceiveType' => [
- 'title' => '接收短信类型',
- 'description' => 'Receive SMS type',
- 'type' => 'string',
- 'example' => 'CARD_SMS',
- ],
- 'SendStatus' => [
- 'title' => '发送状态 1:发送中;2:发送失败;3:发送成功;4:寻址失败',
- 'description' => 'Sending status. 1: Sending; 2: Send failed; 3: Sent successfully; 4: Addressing failed',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '3',
- ],
- 'OutId' => [
- 'title' => '客户传输outId',
- 'description' => 'Customer-transmitted outId',
- 'type' => 'string',
- 'example' => '12345678',
- ],
- 'PhoneNumber' => [
- 'title' => '接收短信手机号',
- 'description' => 'Phone number that received the SMS',
- 'type' => 'string',
- 'example' => '156****9080',
- ],
- 'SmsContent' => [
- 'title' => '短信内容。只有文本短信有值',
- 'description' => 'SMS content. Only applicable for text messages.',
- 'type' => 'string',
- 'example' => '您收到一条短信消息',
- ],
- 'SendDate' => [
- 'title' => '短信发送时间',
- 'description' => 'Time when the SMS was sent',
- 'type' => 'string',
- 'example' => '2024-09-27 11:26:32',
- ],
- 'ErrCode' => [
- 'title' => '发送错误码',
- 'description' => 'Error code for sending',
- 'type' => 'string',
- 'example' => 'Success',
- ],
- ],
- ],
- 'example' => '',
- ],
+ 'MediaMobiles' => ['description' => 'The mobile phone numbers that receive the card SMS messages.', 'type' => 'string', 'example' => '1390000****', 'title' => ''],
+ 'BizCardId' => ['description' => 'The ID of the card SMS sending task.', 'type' => 'string', 'example' => '123', 'title' => ''],
+ 'BizDigitalId' => ['description' => 'The ID of the digital SMS sending task.', 'type' => 'string', 'example' => '3214', 'title' => ''],
+ 'CardTmpState' => ['description' => 'The review status of the card SMS template. Valid values:'."\n"
+ .'- **0**: Under review.'."\n"
+ .'- **1**: Approved.'."\n"
+ .'- **2**: Rejected.'."\n"
+ .'> For SMS messages that are rejected, you can configure the fallback process by using the **FallbackType** parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'NotMediaMobiles' => ['description' => 'The fallback phone numbers.', 'type' => 'string', 'example' => '1390000****', 'title' => ''],
+ 'BizSmsId' => ['description' => 'The ID of the text SMS sending task.', 'type' => 'string', 'example' => '3256', 'title' => ''],
],
+ 'title' => '',
'example' => '',
],
- 'Code' => [
- 'title' => '状态码',
- 'description' => 'Request status code.'."\n"
- .'* OK indicates a successful request.'."\n"
- .'* For other error codes, see [API Error Codes](~~101346~~).',
- 'type' => 'string',
- 'example' => 'OK'."\n",
- ],
- 'Success' => [
- 'description' => 'Indicates whether the API call was successful. Values:'."\n"
- .'- **true** - **false**',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
- 400 => [
- [
- 'errorMessage' => 'Incorrect phone number format.',
- 'errorCode' => 'InvalidParam.PhoneNumber',
- ],
- [
- 'errorMessage' => 'PageSize must be less than or equal to 50.',
- 'errorCode' => 'InvalidParam.PageSize',
- ],
- [
- 'errorMessage' => 'Only the last 30 days can be queried.',
- 'errorCode' => 'InvalidParam.SendDate',
- ],
- [
- 'errorMessage' => 'At most, only one parameter can be passed among bizCardId, bizSmsId, and bizDigitId.',
- 'errorCode' => 'InvalidParameter',
- ],
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
],
],
- 'eventInfo' => [
- 'enable' => false,
- 'eventNames' => [],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D0D\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"MediaMobiles\\": \\"1390000****\\",\\n \\"BizCardId\\": \\"123\\",\\n \\"BizDigitalId\\": \\"3214\\",\\n \\"CardTmpState\\": 0,\\n \\"NotMediaMobiles\\": \\"1390000****\\",\\n \\"BizSmsId\\": \\"3256\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Sends card SMS messages in batches',
+ 'description' => '- Sending card SMS messages is a billable operation. You are not charged if a card SMS message fails to be sent or rendered. For more information, see [Multimedia SMS pricing](~~437951~~).'."\n"
+ .'- The card SMS feature is currently in the internal invitation phase. Contact your Alibaba Cloud business manager to apply for activation, or contact [Alibaba Cloud pre-sales consulting](https://help.aliyun.com/document_detail/464625.html?spm=a2c4g.11186623.0.0.213219fcSn2Ykj#section-81n-72q-ybm).'."\n"
+ .'- We recommend that you set the timeout period for card SMS messages to a value greater than or equal to 3 seconds. If a timeout failure occurs, we recommend that you check the delivery status before deciding whether to retry. We also recommend that you do not enable SDK retry logic when calling this operation; otherwise, multiple sending attempts may occur. For more information about timeout and retry settings, see [Timeout mechanism](~~262079~~) and [Retry mechanism](~~262080~~).'."\n"
+ .'- Domestic SMS, international SMS, and multimedia SMS do not currently support idempotency. Implement idempotency control to prevent duplicate operations caused by multiple retries.'."\n"
+ .'- Before you send a card SMS message, you must add and obtain approval for a card SMS template. When this operation is called to send an SMS message, the system checks whether the phone number supports card SMS messages. If the phone number does not support card SMS messages, you can configure whether to accept fallback to digital SMS or text SMS in the operation to improve the delivery rate.'."\n"
+ .'- When you send card SMS messages in batches, each phone number can use a different signature and a different fallback. In a single request, you can send card SMS messages to a maximum of 100 phone numbers.'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ .'The QPS limit per user for this operation is 1,000 calls per second. If the limit is exceeded, API calls are throttled, which may affect your business. Call this operation in a reasonable manner.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendBatchCardSms'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendBatchCardSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"Message\\": \\"OK\\\\n\\",\\n \\"CardSendDetailDTO\\": {\\n \\"TotalCount\\": 10,\\n \\"PageSize\\": 10,\\n \\"CurrentPage\\": 1,\\n \\"Records\\": [\\n {\\n \\"TemplateCode\\": \\"CARD_SMS_6***\\",\\n \\"RenderDate\\": \\"2024-09-27 12:13:39\\",\\n \\"ReceiveDate\\": \\"2024-09-27 11:26:35\\",\\n \\"RenderStatus\\": 1,\\n \\"ReceiveType\\": \\"CARD_SMS\\",\\n \\"SendStatus\\": 3,\\n \\"OutId\\": \\"12345678\\",\\n \\"PhoneNumber\\": \\"156****9080\\",\\n \\"SmsContent\\": \\"您收到一条短信消息\\",\\n \\"SendDate\\": \\"2024-09-27 11:26:32\\",\\n \\"ErrCode\\": \\"Success\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"OK\\\\n\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- 'title' => 'Query the card SMS sending records and status for a single phone number.',
- 'translator' => 'machine',
],
- 'QueryCardSmsTemplateReport' => [
- 'summary' => 'Queries sent card messages.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'SendBatchSms' => [
+ 'summary' => 'This operation sends messages to different phone numbers using a single template, with different signatures and template variables for each recipient.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -9091,135 +6471,145 @@
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '118232',
- 'abilityTreeNodes' => [
- 'FEATUREdysms3V8ND3',
- ],
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '102462',
+ 'abilityTreeNodes' => ['FEATUREdysmsKC679O'],
],
'parameters' => [
[
- 'name' => 'TemplateCodes',
- 'in' => 'query',
- 'style' => 'flat',
- 'schema' => [
- 'description' => 'The array of message templates.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The code of the message template. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'CARD_SMS_391',
- ],
- 'required' => true,
- 'docRequired' => true,
- ],
+ 'name' => 'PhoneNumberJson',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The recipient phone numbers. Format:'."\n"
+ ."\n"
+ .'- For domestic SMS: Phone numbers with or without a country code such as `+`, `+86`, `0086`, or `86`. Example: `1590000****`.'."\n"
+ ."\n"
+ .'- For international SMS: The country code followed by the phone number. Example: `852000012****`.'."\n"
+ ."\n"
+ .'> For time-sensitive messages like verification codes, use the [SendSms](~~419273~~) operation to send messages individually.', 'type' => 'string', 'required' => true, 'example' => '["1590000****","1350000****"]', 'title' => ''],
],
[
- 'name' => 'StartDate',
+ 'name' => 'SignNameJson',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The signature names. The number of signatures must match the number of phone numbers.'."\n"
+ ."\n"
+ .'You can call the [QuerySmsSignList](~~419282~~) operation or check the [Short Message Service console](https://dysms.console.aliyun.com/domestic/text/sign) to find approved signatures. You must use an approved signature.'."\n"
+ ."\n"
+ .'> - The system uses the selected signature to send SMS messages.', 'type' => 'string', 'required' => true, 'example' => '["阿里云","阿里巴巴"]', 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The beginning of the time range to query. Specify the time in the yyyy-MM-dd HH:mm:ss format.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '2020-10-10 00:00:01',
- ],
+ 'schema' => ['description' => 'The message template code. You cannot use templates for domestic SMS and international SMS interchangeably.'."\n"
+ ."\n"
+ .'You can call the [QuerySmsTemplateList](~~419288~~) operation or check the [Short Message Service console](https://dysms.console.aliyun.com/domestic/text/template) to find approved template codes. You must use an approved template code.', 'type' => 'string', 'required' => true, 'example' => 'SMS_15255****', 'title' => ''],
],
[
- 'name' => 'EndDate',
+ 'name' => 'TemplateParamJson',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The actual values for the template variables. This parameter is required if the template contains variables.'."\n"
+ ."\n"
+ .'> - The number of template variable sets must match the number of phone numbers and signatures. The elements in the PhoneNumberJson, SignNameJson, and TemplateParamJson arrays must correspond by index to ensure each message is sent with the correct signature and variable values.'."\n"
+ .'>'."\n"
+ .'> - If you need to include a line break in the JSON string, follow the standard JSON format.', 'type' => 'string', 'required' => false, 'example' => '[{"name":"TemplateParamJson"},{"name":"TemplateParamJson"}]', 'title' => ''],
+ ],
+ [
+ 'name' => 'SmsUpExtendCodeJson',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'A JSON array of MO SMS extension codes.'."\n"
+ ."\n"
+ .'> You can leave this parameter empty if you have no special requirements.', 'type' => 'string', 'required' => false, 'example' => '["90999","90998"]', 'title' => ''],
+ ],
+ [
+ 'name' => 'OutId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The end of the time range to query. Specify the time in the yyyy-MM-dd HH:mm:ss format.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '2020-10-11 00:00:01',
- ],
+ 'schema' => ['description' => 'An external business ID. It must be a string of fewer than 256 characters.'."\n"
+ ."\n"
+ .'> You can leave this parameter empty if you have no special requirements.', 'type' => 'string', 'required' => false, 'example' => 'abcdefg', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data object.'."\n",
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'CC89A90C-978F-46AC-B80D-54738371E7CA',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'model' => [
- 'description' => 'The details of the data returned.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The details of the data returned.'."\n"
- ."\n"
- .'* tmpCode: the code of the template.'."\n"
- .'* date: the date when the message is sent. The value is in the yyyy-MM-dd HH:mm:ss format.'."\n"
- .'* rptSuccessCount: the number of messages with receipts returned.'."\n"
- .'* exposeUv: the number of exposed messages.'."\n"
- .'* exposePv: the number of times that messages are exposed.'."\n"
- .'* clickUv: the number of messages clicked on.'."\n"
- .'* clickPv: the number of time that messages are clicked on.'."\n",
- 'type' => 'object',
- ],
- ],
- ],
- ],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- A value of `OK` indicates a successful request.'."\n"
+ ."\n"
+ .'- For a list of other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the request status.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'BizId' => ['description' => 'The delivery receipt ID.'."\n"
+ ."\n"
+ .'- You can use this ID to query the delivery status by calling the [QuerySendDetails](~~102352~~) operation.'."\n"
+ ."\n"
+ .'- Log on to the [Short Message Service console](https://dysms.console.aliyun.com/dysms.htm#/overview) and go to **Statistics** > **Delivery Logs** to view delivery details.', 'type' => 'string', 'example' => '9006197469364984400', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D230E', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"BizId\\": \\"9006197469364984400\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8D230E\\"\\n}","type":"json"}]',
+ 'title' => 'SendBatchSms',
+ 'description' => '### Basic information'."\n"
+ ."\n"
+ .'- You can send messages to a maximum of 100 phone numbers in a single call.'."\n"
+ ."\n"
+ .'- The global [endpoint](~~419270~~) is `dysmsapi.aliyuncs.com`. For a list of region-specific endpoints, see [Endpoints](~~419270~~).'."\n"
+ ."\n"
+ .'### API calls'."\n"
+ ."\n"
+ .'- We recommend calling this operation using an SDK. For more information, see [Make your first API call](~~2841024~~).'."\n"
+ ."\n"
+ .'- To send messages from the console, see [Send group messages](~~108266~~).'."\n"
+ ."\n"
+ .'- To build your own API requests, see [V3 request body and signature mechanism](~~2593177~~).'."\n"
+ ."\n"
+ .'### Usage notes'."\n"
+ ."\n"
+ .'- For domestic SMS, we recommend setting the timeout period to 1 second or longer. If a timeout occurs, check the delivery receipt status before you retry the request. For more information about timeout and retry settings, see [timeout mechanism](~~262079~~) and [retry mechanism](~~262080~~).'."\n"
+ ."\n"
+ .'- This operation does not support idempotence for domestic SMS, international SMS, or Multimedia Messaging Service (MMS) messages. You must implement your own idempotence controls to prevent duplicate operations caused by multiple retries.'."\n"
+ ."\n"
+ .'- This is a billable operation. For domestic SMS, you are charged based on the delivery receipt status from the carrier. You are not charged for messages that are successfully submitted but fail carrier delivery. For more information, see [Billing overview](~~44340~~).'."\n"
+ ."\n\n"
+ .' ><warning>'."\n"
+ ."\n"
+ .' Batch message delivery may be delayed due to system capacity limits. For time-sensitive messages, such as verification codes or alert notifications, use the SendSms operation to send messages individually.'."\n"
+ ."\n"
+ .' ></warning>'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ ."\n"
+ .'The Queries Per Second (QPS) limit for a single user is 5,000. Calls that exceed this limit are throttled. Plan your usage accordingly.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendBatchSms'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendBatchSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"B71F06CA-7735-183A-B52E-234EF8AFE14B\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"model\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<QueryCardSmsTemplateReportResponse>\\n <Code>ok</Code>\\n <RequestId>12343</RequestId>\\n <Success>true</Success>\\n <Data/>\\n</QueryCardSmsTemplateReportResponse>","errorExample":""}]',
- 'title' => 'QueryCardSmsTemplateReport',
- 'description' => '### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 300 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
],
'SendCardSms' => [
'summary' => 'Sends a card message.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -9232,9 +6622,7 @@
'riskType' => 'none',
'chargeType' => 'paid',
'abilityTreeCode' => '102463',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsB35KN5',
- ],
+ 'abilityTreeNodes' => ['FEATUREdysmsB35KN5'],
],
'parameters' => [
[
@@ -9242,282 +6630,187 @@
'in' => 'query',
'style' => 'flat',
'schema' => [
- 'description' => 'The objects of the message template.'."\n",
+ 'description' => 'The card message objects.',
'type' => 'array',
'items' => [
- 'description' => '',
+ 'description' => '卡片短信对象。',
'type' => 'object',
'properties' => [
- 'customUrl' => [
- 'description' => 'The URL to which the message is redirected if the message fails to be rendered.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'https://alibaba.com',
- ],
- 'dyncParams' => [
- 'description' => 'The variables. Special characters, such as $ and {}, do not need to be entered.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{\\"param3\\":\\"three\\",\\"param1\\":\\"one\\",\\"param2\\":\\"two\\"}',
- ],
- 'mobile' => [
- 'description' => 'The mobile phone number.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1390000****',
- ],
+ 'customUrl' => ['description' => '渲染失败后跳转链接。', 'type' => 'string', 'required' => false, 'example' => 'https://alibaba.com', 'title' => ''],
+ 'dyncParams' => ['description' => '动态参数。动参变量不需要${}', 'type' => 'string', 'required' => false, 'example' => '{"param3":"李四3","param1":"李四","param2":"李四2"}', 'title' => ''],
+ 'mobile' => ['description' => '接收卡片短信的手机号码。', 'type' => 'string', 'required' => false, 'example' => '1390000****', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => true,
'docRequired' => true,
+ 'example' => 'SendCardSms',
+ 'title' => '',
],
],
[
'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The signature. You can view the template code in the **Signature** column on the **Signaturess** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> The signature must be approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'aliyun',
- ],
+ 'schema' => ['description' => 'The signature name. You can call the [QuerySmsSignList](~~419282~~) operation to query the signatures applied for under the current account or view the signature list in the [Short Message Service (SMS) console](https://dysms.console.aliyun.com/domestic/text/sign).'."\n"
+ .'> The signature must be approved.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '阿里云', 'title' => ''],
],
[
'name' => 'CardTemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'CARD_SMS_70',
- ],
+ 'schema' => ['description' => 'The code of the card message template. On the [Template Management](https://dysms.console.aliyun.com/domestic/card) page of the **Card Messages** module in the console, select the code of an approved card message template.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'CARD_SMS_70', 'title' => ''],
],
[
'name' => 'SmsTemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the text message template that applies when the card message is rolled back. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved. If you set the **FallbackType** parameter to **SMS**, this parameter is required.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'docRequired' => true,
- 'example' => 'SIER_TEST_01',
- ],
+ 'schema' => ['description' => 'The code of the fallback text message template. This parameter is required if you set **FallbackType** to **SMS**.'."\n"
+ ."\n"
+ .'You can call the [QuerySmsTemplateList](~~419288~~) operation to query the templates applied for under the current account or view the template list in the [SMS console](https://dysms.console.aliyun.com/domestic/text/template).'."\n"
+ .'> The template must be added and approved.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'SMS_48068****', 'title' => ''],
],
[
'name' => 'SmsUpExtendCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The extension code of the upstream message. Upstream messages are messages sent to the communication service provider. Upstream messages are used to customize a service, complete an inquiry, or send a request. You are charged for sending upstream messages based on the billing standards of the service provider.'."\n"
- ."\n"
- .'> If you do not need upstream messages, ignore this parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The extension code of the MO message. An MO message is a message sent to the communications service provider to customize a service, perform a query, or handle other business. The message is charged at the standard rate of the carrier.'."\n"
+ .'> If you do not have such requirements, ignore this parameter.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'FallbackType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The rollback type. Valid values:'."\n"
- ."\n"
- .'* **SMS**: text message'."\n"
- .'* **DIGITALSMS**: digital message'."\n"
- .'* **NONE**: none'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'SMS',
- ],
+ 'schema' => ['description' => 'The fallback type. Valid values:'."\n"
+ .'- **SMS**: Falls back to a text message for phone numbers that do not support card messages.'."\n"
+ .'- **DIGITALSMS**: Falls back to a digital message for phone numbers that do not support card messages.'."\n"
+ .'- **NONE**: No fallback is required.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SMS', 'title' => ''],
],
[
'name' => 'DigitalTemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the digital message template that applies when the card message is rolled back. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SMS_003',
- ],
+ 'schema' => ['description' => 'The code of the fallback digital message template. This parameter is required if you set **FallbackType** to **DIGITALSMS**.'."\n"
+ ."\n"
+ .'You can view the digital message template list on the [Template Management](https://dysms.console.aliyun.com/domestic/digit) page of the **Digital Messages** module in the console.'."\n"
+ ."\n"
+ .'> The template must be added and approved.', 'type' => 'string', 'required' => false, 'example' => 'DIGITAL_SMS_31359****', 'title' => ''],
],
[
'name' => 'OutId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID that is reserved for the caller of the operation.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '38d76c9b-4a9a-4c89-afae-61fd8e0e****',
- ],
+ 'schema' => ['description' => 'The ID reserved for the caller.', 'type' => 'string', 'required' => false, 'example' => '38d76c9b-4a9a-4c89-afae-61fd8e0e****', 'title' => ''],
],
[
'name' => 'SmsTemplateParam',
'in' => 'query',
- 'schema' => [
- 'description' => 'The variables of the text message template.'."\n"
- ."\n"
- .'> If you need to add line breaks to the JSON template, make sure that the format is valid.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{\\"uri\\":\\"Zg11tZ\\"}',
- ],
+ 'schema' => ['description' => 'The actual values of the variables in the fallback text message template. This parameter is required if the text message template specified by **SmsTemplateCode** contains variables.'."\n"
+ ."\n"
+ .'> If the JSON value contains line breaks, follow the standard JSON protocol.', 'type' => 'string', 'required' => false, 'example' => '{"jifen":"积分"}', 'title' => ''],
],
[
'name' => 'DigitalTemplateParam',
'in' => 'query',
- 'schema' => [
- 'description' => 'The variables of the digital message template.'."\n"
- ."\n"
- .'> If you need to add line breaks to the JSON template, make sure that the format is valid.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{\\"msg\\",\\"xxxd\\"}',
- ],
+ 'schema' => ['description' => 'The actual values of the variables in the fallback digital message template. This parameter is required if the digital message template specified by **DigitalTemplateCode** contains variables.'."\n"
+ ."\n"
+ .'> If the JSON value contains line breaks, follow the standard JSON protocol.', 'type' => 'string', 'required' => false, 'example' => '{"msg","xxxd"}', 'title' => ''],
],
[
'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the text message template.'."\n"
- ."\n"
- .'Log on to the Alibaba Cloud SMS console. In the left-side navigation pane, click **Go Globe** or **Go China**. You can view the message template in the **Template Code** column on the **Message Templates** tab.'."\n"
- ."\n"
- .'> The message templates must be created on the Go Globe page and approved.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SMS_2322****',
- ],
+ 'schema' => ['description' => 'The code of the custom content template.'."\n"
+ ."\n"
+ .'The custom content is sent to the recipient as a text message template combined with a card parsing link. Log on to the [SMS console](https://dysms.console.aliyun.com/overview), choose **Domestic Messages** or **International/HK/MO/TW Messages**, and view the **Template Code** on the **Template Management** tab.'."\n"
+ ."\n"
+ .'> - The template code must be added and approved. To send international or Hong Kong, Macao, or Taiwan messages, use an international or Hong Kong, Macao, or Taiwan message template.'."\n"
+ .'> - For example, if the selected text message template is "You have a new message" and the card parsing link is `1*.cn/2**d`, the final content is `You have a new message 1*.cn/2**d`. Test the message and control the word count before sending.', 'type' => 'string', 'required' => false, 'example' => 'SMS_2322****', 'title' => ''],
],
[
'name' => 'TemplateParam',
'in' => 'query',
- 'schema' => [
- 'description' => 'The variables of the message template. Format: JSON.'."\n"
- ."\n"
- .'> If you need to add line breaks to the JSON template, make sure that the format is valid.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{'."\n"
- .' \\"code\\": \\"1111\\"'."\n"
- .'}',
- ],
+ 'schema' => ['description' => 'The actual values of the variables in the custom content template. This parameter is required if the message template specified by **TemplateCode** contains variables.'."\n"
+ ."\n"
+ .'> If the JSON value contains line breaks, follow the standard JSON protocol.', 'type' => 'string', 'required' => false, 'example' => '{'."\n"
+ .' "code": "1111"'."\n"
+ .'}', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => '返回数据。',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D28D0',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'Code' => ['description' => '请求状态码。'."\n"
+ .'* 返回OK代表请求成功。'."\n"
+ .'* 其他错误码,请参见[错误码列表](~~101346~~)。', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D28D0', 'title' => ''],
+ 'Success' => ['description' => '调用接口是否成功。取值:'."\n"
+ ."\n"
+ .'- **true**:调用成功。'."\n"
+ ."\n"
+ .'- **false**:调用失败。', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => '返回数据。'."\n",
'type' => 'object',
'properties' => [
- 'MediaMobiles' => [
- 'description' => 'The mobile phone number from which the card message is sent.'."\n",
- 'type' => 'string',
- 'example' => '1390000****',
- ],
- 'BizCardId' => [
- 'description' => 'The ID of the card message.'."\n",
- 'type' => 'string',
- 'example' => '123',
- ],
- 'BizDigitalId' => [
- 'description' => 'The ID of the digital message.'."\n",
- 'type' => 'string',
- 'example' => '232',
- ],
- 'CardTmpState' => [
- 'description' => 'The review status of the card message template.'."\n"
- ."\n"
- .'* **0**: pending approval'."\n"
- .'* **1**: approved'."\n"
- .'* **2**: rejected'."\n"
- ."\n"
- .'> Unapproved card messages are rolled back.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '0',
- ],
- 'NotMediaMobiles' => [
- 'description' => 'The mobile phone number whose card message is rolled back.'."\n",
- 'type' => 'string',
- 'example' => '1390000****',
- ],
- 'BizSmsId' => [
- 'description' => 'The ID of the text message.'."\n",
- 'type' => 'string',
- 'example' => '524',
- ],
+ 'MediaMobiles' => ['description' => '接收卡片短信的手机号。', 'type' => 'string', 'example' => '1390000****', 'title' => ''],
+ 'BizCardId' => ['description' => '卡片短信发送ID。', 'type' => 'string', 'example' => '123', 'title' => ''],
+ 'BizDigitalId' => ['description' => '数字短信发送ID。', 'type' => 'string', 'example' => '232', 'title' => ''],
+ 'CardTmpState' => ['description' => '卡片短信模板审核状态。取值:'."\n"
+ .'- **0**:审核中。'."\n"
+ .'- **1**:审核通过。'."\n"
+ .'- **2**:审核不通过。'."\n"
+ .'> 审核不通过的短信可通过**FallbackType**字段设置回落流程。', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'NotMediaMobiles' => ['description' => '回落的手机号。', 'type' => 'string', 'example' => '1390000****', 'title' => ''],
+ 'BizSmsId' => ['description' => '文本短信发送ID。', 'type' => 'string', 'example' => '524', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8D28D0\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"MediaMobiles\\": \\"1390000****\\",\\n \\"BizCardId\\": \\"123\\",\\n \\"BizDigitalId\\": \\"232\\",\\n \\"CardTmpState\\": 0,\\n \\"NotMediaMobiles\\": \\"1390000****\\",\\n \\"BizSmsId\\": \\"524\\"\\n }\\n}","type":"json"}]',
- 'title' => 'SendCardSms',
- 'description' => '* Make sure that the message template that you want to use has been approved. If the mobile phone number of a recipient does not support card messages, the SendCardSms operation allows the rollback feature to ensure successful delivery.'."\n"
- .'* When you call the SendCardSms operation to send card messages, the operation checks whether the mobile phone numbers of the recipients support card messages. If the mobile phone numbers do not support card messages, you can specify whether to enable rollback. Otherwise, the card message cannot be delivered.'."\n"
+ 'title' => 'Send card message',
+ 'description' => '- 发送卡片短信为计费接口,卡片短信发送失败或渲染失败时不计费,详情请参见[多媒体短信定价](~~437951~~)。'."\n"
+ .'- 目前卡片短信在内部邀约阶段,请联系您的阿里云商务经理申请开通或联系[阿里云售前咨询](https://help.aliyun.com/document_detail/464625.html?spm=a2c4g.11186623.0.0.213219fcSn2Ykj#section-81n-72q-ybm)。'."\n"
+ .'- 卡片短信超时时间建议设置为≥3S;发生超时失败的情况时,建议查看回执状态后再判断是否重试。同时建议您在调用此接口时,不要开启SDK重试逻辑,否则可能会造成多次发送的情况。超时和重试的相关设置,请参见[超时机制](~~262079~~)、[重试机制](~~262080~~)。'."\n"
+ .'- 国内短信、国际短信及多媒体短信目前均不支持幂等的能力,请您做好幂等控制,防止因多次重试而导致的重复操作问题。'."\n"
+ .'- 发送卡片短信前需添加卡片短信模板且模板审核通过。本接口在发送短信时,会校验号码是否支持卡片短信。如果该手机号不支持发送卡片短信,可在接口中设置是否接受数字短信和文本短信的回落,提升发送的触达率。'."\n"
."\n"
- .'### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- ],
- 'SendBatchCardSms' => [
- 'summary' => 'Sends multiple card messages at a time.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'### QPS限制'."\n"
+ .'本接口的单用户QPS限制为1000次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendCardSms'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendCardSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'SendSms' => [
+ 'summary' => 'Sends an SMS message to one or more specified mobile numbers.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -9529,266 +6822,129 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'paid',
- 'abilityTreeCode' => '125151',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsB35KN5',
- ],
+ 'abilityTreeCode' => '102468',
+ 'abilityTreeNodes' => ['FEATUREdysmsKC679O'],
],
'parameters' => [
[
- 'name' => 'CardTemplateCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'CARD_SMS_3245',
- ],
- ],
- [
- 'name' => 'SmsTemplateCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the text message template that applies when the card message is rolled back. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'docRequired' => true,
- 'example' => 'SMS_234251075',
- ],
- ],
- [
- 'name' => 'FallbackType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The rollback type. Valid values:'."\n"
- ."\n"
- .'* **SMS**: text message'."\n"
- .'* **DIGITALSMS**: digital message'."\n"
- .'* **NONE**: none'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'SMS',
- ],
- ],
- [
- 'name' => 'DigitalTemplateCode',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the digital message template that applies when the card message is rolled back. You can view the template code in the **Template Code** column on the **Templates** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> Make sure that the message template has been approved.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'DIGITAL_SMS_234080176',
- ],
- ],
- [
- 'name' => 'OutId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The ID that is reserved for the caller of the operation.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '16545681783595370',
- ],
- ],
- [
- 'name' => 'PhoneNumberJson',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The mobile numbers of the recipients.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '[\\"1390000****\\",\\"1370000****\\"]"',
- ],
- ],
- [
- 'name' => 'SignNameJson',
+ 'name' => 'PhoneNumbers',
'in' => 'query',
- 'schema' => [
- 'description' => 'The signature. You can view the template code in the **Signature** column on the **Signaturess** tab of the **Go China** page in the Alibaba Cloud SMS console.'."\n"
- ."\n"
- .'> The signatures must be approved and correspond to the mobile numbers in sequence.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '[\\"aliyun\\",\\"aliyuncode\\"]',
- ],
+ 'schema' => ['description' => 'The recipient\'s mobile number. The format varies based on the destination region:'."\n"
+ ."\n"
+ .'- For messages to the Chinese mainland: A mobile number, with or without a country code. Valid prefixes are +, +86, 0086, and 86. Example: 1390000\\*\\*\\*\\*.'."\n"
+ ."\n"
+ .'- For international messages or messages to Hong Kong, Macao, or Taiwan: Use the format \\[Country code]\\[Mobile number]. Example: 852000012\\*\\*\\*\\*.'."\n"
+ ."\n"
+ .'- To send a test message, bind a test mobile number in the [console](https://dysms.console.aliyun.com/quickstart).'."\n"
+ ."\n"
+ .'> To send a message to multiple numbers, separate them with commas (,). You can specify up to 1,000 mobile numbers per request. Bulk sending may have higher latency than sending single messages. For time-sensitive messages such as verification codes, we recommend sending them individually.', 'type' => 'string', 'required' => true, 'example' => '1390000****', 'title' => ''],
],
[
- 'name' => 'CardTemplateParamJson',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The variables of the card message template.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[{\\"customurl\\":\\"http://www.alibaba.com\\",\\"dyncParams\\":\\"{\\\\\\"a\\\\\\":\\\\\\"hello\\\\\\",\\\\\\"b\\\\\\":\\\\\\"world\\\\\\"}\\"}]',
- ],
+ 'schema' => ['description' => 'The signature name.'."\n"
+ ."\n"
+ .'Call the [QuerySmsSignList](~~419282~~) API or view your list of signatures in the [Short Message Service console](https://dysms.console.aliyun.com/domestic/text/sign). You must use a signature that has been **approved**.'."\n"
+ ."\n"
+ .'> - 1\\. If a verification code signature and a general-purpose signature share the same name, the general-purpose signature is used by default.'."\n"
+ .'>'."\n"
+ .'> - 2\\. The system uses the specified signature to send the message.', 'type' => 'string', 'required' => true, 'example' => '阿里云', 'title' => ''],
],
[
- 'name' => 'SmsTemplateParamJson',
+ 'name' => 'TemplateCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The variables of the text message template.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[{"a":1,"b":2},{"a":9,"b":8}]',
- ],
+ 'schema' => ['description' => 'The code of the template.'."\n"
+ ."\n"
+ .'Call the [QuerySmsTemplateList](~~419288~~) API or view your list of templates in the [Short Message Service console](https://dysms.console.aliyun.com/domestic/text/template). You must use the code of a template that has been **approved**.', 'type' => 'string', 'required' => true, 'example' => 'SMS_15305****', 'title' => ''],
],
[
- 'name' => 'DigitalTemplateParamJson',
+ 'name' => 'TemplateParam',
'in' => 'query',
- 'schema' => [
- 'description' => 'The variables of the digital message template.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[{"a":1,"b":2},{"a":9,"b":8}]',
- ],
+ 'schema' => ['description' => 'The values for the template variables, specified as a **JSON string**. This parameter is required if the template contains variables. The JSON string must provide a value for each variable.'."\n"
+ ."\n"
+ .'> - If the JSON string needs to include line breaks, format it according to standard JSON specifications.'."\n"
+ .'>'."\n"
+ .'> - For more information about template variable formatting, see [SMS template specifications](~~463161~~).', 'type' => 'string', 'required' => false, 'example' => '{"name":"张三","number":"1390000****"}', 'title' => ''],
],
[
- 'name' => 'SmsUpExtendCodeJson',
+ 'name' => 'SmsUpExtendCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The extension code of the upstream message.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[\\"6\\",\\"6\\"]',
- ],
+ 'schema' => ['description' => 'The upstream SMS extension code. An upstream SMS message is a message sent from a user to a service provider to subscribe to a service, make a query, or perform other tasks. Such messages are charged by the carrier at standard rates.'."\n"
+ ."\n"
+ .'> The system assigns a default extension code when a signature is created. Use this parameter to specify a different code. You can ignore this parameter if you do not have special requirements.', 'type' => 'string', 'required' => false, 'example' => '90999', 'title' => ''],
],
[
- 'name' => 'TemplateCode',
+ 'name' => 'OutId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The code of the message template.'."\n"
- ."\n"
- .'You can log on to the [Alibaba Cloud console](https://dysms.console.aliyun.com/dysms.htm?spm=5176.12818093.categories-n-products.ddysms.3b2816d0xml2NA#/overview), click **Go China** or **Go Globe** in the left-side navigation pane, and then view the **template code** on the **Templates** tab.'."\n"
- ."\n"
- .'> You must specify a message template that is created in the SMS console and approved by Alibaba Cloud. If you send messages to countries or regions outside the Chinese mainland, use the corresponding message templates.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SMS_20375****',
- ],
- ],
- [
- 'name' => 'TemplateParamJson',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The value of the variable in the message template.'."\n"
- ."\n"
- .'> If you need to add line breaks to the JSON template, make sure that the format is valid. In addition, the sequence of variable values must be the same as that of the mobile numbers and signatures.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '[{"name":"TemplateParamJson"},{"name":"TemplateParamJson"}]',
- ],
+ 'schema' => ['description' => 'The external transaction ID.'."\n"
+ ."\n"
+ .'> You can ignore this parameter if you do not have special requirements.', 'type' => 'string', 'required' => false, 'example' => 'abcdefgh', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* For more information about other response codes, see [API error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D0D',
- ],
- 'Success' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Data' => [
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'MediaMobiles' => [
- 'description' => 'The mobile phone number from which the card message is sent.'."\n",
- 'type' => 'string',
- 'example' => '1390000****',
- ],
- 'BizCardId' => [
- 'description' => 'The ID of the card message.'."\n",
- 'type' => 'string',
- 'example' => '123',
- ],
- 'BizDigitalId' => [
- 'description' => 'The ID of the digital message.'."\n",
- 'type' => 'string',
- 'example' => '3214',
- ],
- 'CardTmpState' => [
- 'description' => 'The review status of the card message template.'."\n"
- ."\n"
- .'* **0**: pending approval'."\n"
- .'* **1**: approved'."\n"
- .'* **2**: rejected'."\n"
- ."\n"
- .'> Unapproved card messages are rolled back.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '0',
- ],
- 'NotMediaMobiles' => [
- 'description' => 'The mobile phone number whose card message is rolled back.'."\n",
- 'type' => 'string',
- 'example' => '1390000****',
- ],
- 'BizSmsId' => [
- 'description' => 'The ID of the text message.'."\n",
- 'type' => 'string',
- 'example' => '3256',
- ],
- ],
- ],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'- A value of `OK` indicates that the request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'BizId' => ['description' => 'The delivery receipt ID.'."\n"
+ ."\n"
+ .'Use this ID to query the delivery status by calling the [QuerySendDetails](~~QuerySendDetails~~) API.', 'type' => 'string', 'example' => '9006197469364984****', 'title' => ''],
+ 'RequestId' => ['description' => 'The Request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8DE990', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D0D\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"MediaMobiles\\": \\"1390000****\\",\\n \\"BizCardId\\": \\"123\\",\\n \\"BizDigitalId\\": \\"3214\\",\\n \\"CardTmpState\\": 0,\\n \\"NotMediaMobiles\\": \\"1390000****\\",\\n \\"BizSmsId\\": \\"3256\\"\\n }\\n}","type":"json"}]',
- 'title' => 'SendBatchCardSms',
- 'description' => 'You can call the operation to send multiple card messages to a maximum of mobile phone numbers at a time. Different signatures and rollback settings can be specified for the mobile phone numbers.'."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"BizId\\": \\"9006197469364984****\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8DE990\\"\\n}","type":"json"}]',
+ 'title' => 'SendSms',
+ 'description' => 'Use this API to send an SMS message to a single mobile number. This API also supports sending messages with the same signature and template variables to multiple mobile numbers, up to 1,000 per request. Note that bulk sending may experience some latency. If you need to send messages with different signatures or template variables to multiple recipients, use the [SendBatchSms](~~419274~~) API, which supports up to 100 mobile numbers per request.'."\n"
+ ."\n"
+ .'### Usage notes'."\n"
+ ."\n"
+ .'- For SMS messages sent to the Chinese mainland, we recommend setting the timeout period to 1 second or longer. If a timeout occurs, check the delivery receipt status before retrying the request. For more information about timeout and retry settings, see [Timeout mechanism](~~262079~~) and [Retry mechanism](~~262080~~).'."\n"
+ ."\n"
+ .'- This API does not support idempotence for domestic, international, or multimedia SMS messages. You must implement your own idempotence controls to prevent sending duplicate messages during retries.'."\n"
+ ."\n"
+ .'- This is a billable API. For messages sent to the Chinese mainland, billing is based on the delivery receipt status from the carrier. You are not charged if the API call is successful but the carrier fails to deliver the message. For more information, see [Billing](~~44340~~).'."\n"
."\n"
.'### QPS limit'."\n"
."\n"
- .'You can call this operation up to 1,000 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- ],
- 'GetQualificationOssInfo' => [
- 'summary' => '上传文件获取oss配置',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
+ .'This API has a queries per second (QPS) limit of 5,000 for each user. The system throttles calls that exceed this limit. To avoid throttling, use this API within the specified limit.',
+ 'requestParamsDescription' => ' ',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendSms'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'SmsConversionIntl' => [
+ 'summary' => 'Feeds back the SMS delivery status corresponding to each message ID (MessageId) to the Alibaba Cloud International SMS platform.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -9800,132 +6956,84 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '264692',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'abilityTreeCode' => '176603',
+ 'abilityTreeNodes' => ['FEATUREdysmsWO2BNU'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'BizType',
+ 'name' => 'MessageId',
'in' => 'query',
- 'schema' => [
- 'title' => '业务,非空',
- 'description' => '业务,非空',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'dysms',
- ],
+ 'schema' => ['description' => 'Message ID.', 'type' => 'string', 'required' => true, 'example' => '1008030300****'."\n", 'title' => ''],
+ ],
+ [
+ 'name' => 'Delivered',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Set to true if your user replied to the message you sent. Otherwise, set to false.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'ConversionTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The timestamp at which the message reached the recipient. Must be a Unix timestamp, expressed as a long integer in milliseconds.'."\n"
+ ."\n"
+ .'- If this field is not specified: defaults to the current timestamp.'."\n"
+ ."\n"
+ .'- If this field is specified: the timestamp must be greater than the send time and less than the current timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1349055900000', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The response parameters returned by the API.',
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Policy' => [
- 'title' => '策略',
- 'description' => '策略',
- 'type' => 'string',
- 'example' => 'eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********',
- ],
- 'Expire' => [
- 'title' => '过期时间',
- 'description' => '过期时间',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1741521339',
- ],
- 'StartPath' => [
- 'title' => '前缀',
- 'description' => '前缀',
- 'type' => 'string',
- 'example' => '1000********001',
- ],
- 'AccessKeyId' => [
- 'title' => 'ak',
- 'description' => 'ak',
- 'type' => 'string',
- 'example' => 'bypFNbG******',
- ],
- 'Signature' => [
- 'title' => '签名',
- 'description' => '签名',
- 'type' => 'string',
- 'example' => 'QvNTGC9DSLTeByP+ZWW******',
- ],
- 'Host' => [
- 'title' => '域名',
- 'description' => '域名',
- 'type' => 'string',
- 'example' => 'http://***.oss-cn-zhangjiakou.aliyuncs.com',
- ],
- ],
- 'example' => '',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D****'."\n", 'title' => ''],
+ 'Code' => ['description' => 'The status code. A return value of OK indicates that the request was successful. For other error codes, see [Error Code List](https://help.aliyun.com/document_detail/101346.html?spm=a2c4g.101345.0.0.74326ff2J5EZyt).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'OssBiztypeNotSupportError',
- 'errorMessage' => 'Retrieving OSS configuration does not support this biz type.',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8D****\\\\n\\",\\n \\"Code\\": \\"OK\\"\\n}","type":"json"}]',
+ 'title' => 'Domestic-to-International SMS Conversion Feedback',
+ 'description' => 'Metric definitions:'."\n"
+ ."\n"
+ .'- OTP send volume: the number of verification codes sent.'."\n"
+ ."\n"
+ .'- OTP conversion volume: the number of verification codes converted (the number of times a user successfully obtained a verification code and reported it back).'."\n"
+ ."\n"
+ .'Conversion rate = OTP conversion volume / OTP send volume.'."\n"
+ ."\n"
+ .'> The conversion rate feedback feature has a certain level of intrusiveness on the business system. To prevent jitter in conversion rate API calls from affecting business logic, please consider the following: - Call the API in asynchronous mode (for example, using a queue or event-driven approach). - Add a degradable solution to protect business logic (for example, manual degradation, or automatic degradation using a circuit breaker).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SmsConversionIntl'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SmsConversionIntl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": {\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********\\",\\n \\"Expire\\": 1741521339,\\n \\"StartPath\\": \\"1000********001\\",\\n \\"AccessKeyId\\": \\"bypFNbG******\\",\\n \\"Signature\\": \\"QvNTGC9DSLTeByP+ZWW******\\",\\n \\"Host\\": \\"http://***.oss-cn-zhangjiakou.aliyuncs.com\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
],
- 'GetOSSInfoForUploadFile' => [
- 'summary' => 'SMS File Upload, Get Authorization Info',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'SubmitSmsQualification' => [
+ 'summary' => 'Submits an SMS qualification application. As required by the Ministry of Industry and Information Technology (MIIT) and carriers for real-name SMS sending, domestic SMS services require qualification credential information of the signature owner. Apply for an SMS qualification first, and then apply for signatures and templates.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -9934,492 +7042,233 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '218013',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
- 'FEATUREdysmsJ2BZAJ',
- ],
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '264876',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'BizType',
+ 'name' => 'QualificationName',
'in' => 'query',
- 'schema' => [
- 'description' => 'Business type, default value is **fcMediaSms**.'."\n"
- ."\n"
- .'When creating signatures and templates, and uploading **additional materials**, this value is **fcMediaSms**.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'fcMediaSms',
- 'default' => 'fcMediaSms',
- ],
+ 'schema' => ['title' => '', 'description' => 'The qualification name, used to manage and distinguish multiple qualifications you apply for. It does not appear in SMS content. The name must be unique among your existing qualifications. Only Chinese characters, English letters, or combinations with digits are supported. Symbols or pure digits are not supported. Maximum length: 100 characters.', 'type' => 'string', 'required' => true, 'example' => '阿里云云通信有限公司资质李华'],
],
- ],
- 'responses' => [
- 200 => [
+ [
+ 'name' => 'UseBySelf',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The purpose of the qualification application. Valid values:'."\n"
+ ."\n"
+ .'- **true**: **Self-use**. The entity that owns the signature is the same as the entity verified for this account.'."\n"
+ .'- **false**: **Third-party use**. The entity that owns the signature is different from the entity verified for this account.', 'type' => 'boolean', 'required' => true, 'example' => 'true'],
+ ],
+ [
+ 'name' => 'CompanyType',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The enterprise type. Valid values:'."\n"
+ ."\n"
+ .'- COMPANY: enterprise.'."\n"
+ ."\n"
+ .'- NON_PROFIT_ORGANIZATION: government agency or public institution.', 'type' => 'string', 'required' => true, 'example' => 'COMPANY'],
+ ],
+ [
+ 'name' => 'BusinessLicensePics',
+ 'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'RequestId' => [
- 'description' => 'The ID of this call request, which is a unique identifier generated by Alibaba Cloud for the request, can be used for troubleshooting and issue定位.',
- 'type' => 'string',
- 'example' => 'A90E4451-FED7-49D2-87C8-00700EDCFD0D',
- ],
- 'Message' => [
- 'description' => 'Description of the status code.',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Model' => [
- 'description' => 'Return result.',
- 'type' => 'object',
- 'properties' => [
- 'Policy' => [
- 'description' => 'Signature policy.',
- 'type' => 'string',
- 'example' => 'eyJleHBpcmF0aW9uIjoiMjAyN***Ni0yNVQwNjozNzoyNS45NzBaI**iY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0sWyJzdGFydHMtd2l0***sIiRrZXkiLCIiXV19',
- ],
- 'StartPath' => [
- 'description' => 'Policy path.',
- 'type' => 'string',
- 'example' => '123456',
- ],
- 'AccessKeyId' => [
- 'description' => 'AccessKey ID used for signing.',
- 'type' => 'string',
- 'example' => 'LTAIxetqt1Dg****'."\n",
- ],
- 'Signature' => [
- 'description' => 'Signature information calculated based on **AccessKey Secret** and **Policy**. When calling the OSS API, OSS verifies this signature information to confirm the legitimacy of the Post request.',
- 'type' => 'string',
- 'example' => 'BXnwCWPrhVb*****aoZHZfli5KE=',
- ],
- 'Host' => [
- 'description' => 'Host address.',
- 'type' => 'string',
- 'example' => 'https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com',
- ],
- 'ExpireTime' => [
- 'description' => 'Expiration time.',
- 'type' => 'string',
- 'example' => '1719297445',
- ],
- ],
- ],
- 'Code' => [
- 'description' => 'Request status code.'."\n"
+ 'title' => '',
+ 'description' => 'The business license information. This parameter is required when the qualification purpose `UseBySelf` is set to `false` (third-party use).'."\n"
+ .'> - Based on carrier real-name registration regulatory requirements, we strongly recommend that you provide the relevant field information. Otherwise, the probability of "review rejection or carrier registration failure" increases significantly.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => ['title' => '', 'description' => 'The business license type. Valid values:'."\n"
."\n"
- .'- OK return represents a successful request.'."\n"
- .'- For other error codes, please refer to the [Error Code List](https://help.aliyun.com/document_detail/101346.htm).',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'description' => 'Indicates success. Values:'."\n"
+ .'- socialCreditLicense: unified social credit code certificate.'."\n"
+ .'- businessLicense: business license.'."\n"
+ .'- signLegalLicense: public institution legal person certificate.'."\n"
+ .'- otherLicense: other.'."\n"
."\n"
- .'- **true**'."\n"
- .'- **false**',
- 'type' => 'boolean',
- 'example' => 'true',
+ .'Upload one type. The certificate must contain the enterprise name, unified social credit code, and certificate validity period.', 'type' => 'string', 'required' => false, 'example' => 'businessLicense'],
+ 'LicensePic' => ['title' => '', 'description' => 'The business license image. Only jpg, png, gif, and jpeg formats are supported. The image must not exceed 5 MB. Specify the file path uploaded to OSS. The file name must not contain Chinese characters or special characters. For upload instructions, see [Upload files through OSS](~~2833114~~).'."\n"
+ ."\n\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'Color originals do not require a stamp. If you upload a photocopy or black-and-white photo, stamp the photocopy with the company seal and take a photo to upload.'."\n"
+ .'></notice>.', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'],
],
+ 'required' => false,
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'required' => false,
+ 'example' => '',
],
],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700EDCFD0D\\",\\n \\"Message\\": \\"OK\\",\\n \\"Model\\": {\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyN***Ni0yNVQwNjozNzoyNS45NzBaI**iY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0sWyJzdGFydHMtd2l0***sIiRrZXkiLCIiXV19\\",\\n \\"StartPath\\": \\"123456\\",\\n \\"AccessKeyId\\": \\"LTAI************\\\\n\\",\\n \\"Signature\\": \\"BXnwCWPrhVb*****aoZHZfli5KE=\\",\\n \\"Host\\": \\"https://alicom-fc-media.oss-cn-zhangjiakou.aliyuncs.com\\",\\n \\"ExpireTime\\": \\"1719297445\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- 'title' => 'Text SMS Obtain OSS Upload Information',
- 'description' => '- When creating signatures or templates, you can upload materials such as login pages with links, backend page screenshots, software copyrights, supplementary agreements, etc. This helps the review personnel understand your business details. If there are multiple materials, they can be combined into one file, supporting png, jpg, jpeg, doc, docx, pdf formats.'."\n"
- ."\n"
- .'- For additional materials needed when creating signatures or templates, you can upload them to the OSS file system for storage. For file upload operations, refer to [OSS File Upload](https://help.aliyun.com/zh/sms/upload-files-through-oss).',
- ],
- 'GetSmsOcrOssInfo' => [
- 'summary' => '获取OCR的OSS信息',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
[
- 'AK' => [],
+ 'name' => 'CompanyName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The enterprise name. Only the middle dot `·`, Chinese brackets `【】()`, English parentheses `()`, and `spaces` are supported as symbols. Other symbols or pure digits are not allowed. Maximum length: 150 characters.', 'type' => 'string', 'required' => true, 'example' => '阿里云云通信有限公司'],
],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '287263',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2H0K7P',
+ [
+ 'name' => 'OrganizationCode',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The unified social credit code. Maximum length: 150 characters.', 'type' => 'string', 'required' => true, 'example' => '910X********0012'],
],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
- ],
- 'parameters' => [
[
- 'name' => 'TaskType',
+ 'name' => 'BussinessLicenseExpDate',
'in' => 'query',
- 'schema' => [
- 'title' => 'OCR任务类型',
- 'description' => 'OCR任务类型',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'ICP_DOMAIN' => '',
- ],
- 'example' => '示例值',
- ],
+ 'schema' => ['title' => '', 'description' => 'The business license validity period. Format: YYYY-MM-DD~YYYY-MM-DD.'."\n"
+ .'> If the certificate has a long-term validity period, set the end date to 2099-12-31.', 'type' => 'string', 'required' => true, 'example' => '2023-01-01~2033-01-01'],
],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'None',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '25D5AFDE-xxxx-132E-8909-1FDC071DA',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Model' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Policy' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********',
- ],
- 'StartPath' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1000********001',
- ],
- 'Bucket' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'AccessKeyId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'bypFNbG******',
- ],
- 'Signature' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'QvNTGC9DSLTeByP+ZWW******',
- ],
- 'Host' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'http://***.oss-cn-zhangjiakou.aliyuncs.com',
- ],
- 'ExpireTime' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1741521339',
- ],
- ],
- 'example' => '',
- ],
- 'Code' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Success' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- ],
- ],
+ [
+ 'name' => 'LegalPersonIdCardFrontSide',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The front photo of the legal representative\'s ID card (national emblem side). Only jpg, png, gif, and jpeg formats are supported. The image must not exceed 5 MB. Specify the file path uploaded to OSS. The file name must not contain Chinese characters or special characters. For upload instructions, see [Upload files through OSS](~~2833114~~).'."\n"
+ ."\n\n"
+ .'> The system verifies the legal representative\'s name and ID number you provide. If verification fails, you must upload photos of the legal representative\'s ID card.', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'],
],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"None\\",\\n \\"RequestId\\": \\"25D5AFDE-xxxx-132E-8909-1FDC071DA\\",\\n \\"Message\\": \\"OK\\",\\n \\"Model\\": {\\n \\"Policy\\": \\"eyJleHBpcmF0aW9uIjoiMjAyNS0wMy0wOVQxMTo1NTozOS4wMDFaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF0seyJidWNrZXQiOiJhbGljb20tZmMtbWVkaWEifSxbImVxIiwiJGtleSIsIjEwMDAwMDM1ODA4MjA2M1wv********\\",\\n \\"StartPath\\": \\"1000********001\\",\\n \\"Bucket\\": \\"示例值\\",\\n \\"AccessKeyId\\": \\"bypFNbG******\\",\\n \\"Signature\\": \\"QvNTGC9DSLTeByP+ZWW******\\",\\n \\"Host\\": \\"http://***.oss-cn-zhangjiakou.aliyuncs.com\\",\\n \\"ExpireTime\\": \\"1741521339\\"\\n },\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
- ],
- 'SmsConversionIntl' => [
- 'summary' => 'Reports the status of an OTP message to Alibaba Cloud SMS.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
[
- 'AK' => [],
+ 'name' => 'LegalPersonIdCardBackSide',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The back photo of the legal representative\'s ID card (portrait side). Only jpg, png, gif, and jpeg formats are supported. The image must not exceed 5 MB. Specify the file path uploaded to OSS. The file name must not contain Chinese characters or special characters. For upload instructions, see [Upload files through OSS](~~2833114~~).'."\n"
+ ."\n"
+ .'> The system verifies the legal representative\'s name and ID number you provide. If verification fails, you must upload photos of the legal representative\'s ID card.', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'],
],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '176603',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsWO2BNU',
+ [
+ 'name' => 'LegalPersonName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The legal representative\'s name. Maximum length: 50 characters.'."\n"
+ ."\n"
+ .'> - If the organization certificate does not contain legal representative information but includes a person in charge or chief representative, prepare the ID card photos of the corresponding person in charge or chief representative listed on the certificate.'."\n"
+ .'> - If the organization certificate contains neither legal representative information nor any person in charge, prepare the name and ID card photos of the primary business contact.', 'type' => 'string', 'required' => true, 'example' => '李华'],
],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
- ],
- 'parameters' => [
[
- 'name' => 'MessageId',
+ 'name' => 'LegalPersonIDCardNo',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the message.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '1008030300****'."\n",
- ],
+ 'schema' => ['title' => '', 'description' => 'The legal representative\'s ID card number.', 'type' => 'string', 'required' => true, 'example' => '511391********5123'],
],
[
- 'name' => 'Delivered',
+ 'name' => 'LegalPersonIdCardEffTime',
'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether customers replied to the OTP message. Valid values: true and false.'."\n",
- 'type' => 'boolean',
- 'required' => true,
- 'example' => 'true',
- ],
+ 'schema' => ['title' => '', 'description' => 'The legal representative\'s ID card validity period. Format: YYYY-MM-DD~YYYY-MM-DD.'."\n"
+ .'> If the ID card has a long-term validity period, set the end date to 2099-12-31.', 'type' => 'string', 'required' => true, 'example' => '2023-01-01~2033-01-01'],
],
[
- 'name' => 'ConversionTime',
+ 'name' => 'LegalPersonIDCardType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The time when the OTP message was delivered. The value is a UNIX timestamp. Unit: milliseconds.'."\n"
- ."\n"
- .'* If you leave the parameter empty, the current timestamp is specified by default.'."\n"
- .'* If you specify the parameter, the timestamp must be greater than the message sending time and less than the current timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1349055900000',
- ],
+ 'schema' => ['title' => '', 'description' => 'The legal representative\'s ID card type. Valid values:'."\n"
+ ."\n"
+ .'- identityCard: ID card.'."\n"
+ .'- passport: passport.'."\n"
+ .'- homeReturnPermit: Hong Kong/Macao resident travel permit to mainland.'."\n"
+ .'- TaiwanCompatriotPermit: Taiwan resident travel permit to mainland.'."\n"
+ .'- residencePermit: Hong Kong/Macao/Taiwan resident residence permit.'."\n"
+ .'- other: other.', 'type' => 'string', 'required' => true, 'example' => 'identityCard'],
],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'description' => 'The response parameters.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D****'."\n",
- ],
- 'Code' => [
- 'description' => 'The response code. If OK is returned, the request is successful. For more information, see [Error codes](https://help.aliyun.com/document_detail/101346.html?spm=a2c4g.101345.0.0.74326ff2J5EZyt).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- ],
- ],
+ [
+ 'name' => 'AdminIDCardPic',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The back photo of the administrator\'s ID card (portrait side). Only jpg, png, gif, and jpeg formats are supported. The image must not exceed 5 MB. Specify the file path uploaded to OSS. The file name must not contain Chinese characters or special characters. For upload instructions, see [Upload files through OSS](~~2833114~~).'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ .'Color originals do not require a stamp. If you upload a photocopy or black-and-white photo, stamp the photocopy with the company seal and take a photo to upload.'."\n"
+ ."\n"
+ .'></notice>.', 'type' => 'string', 'required' => true, 'example' => '123456/111.png'],
],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"F655A8D5-B967-440B-8683-DAD6FF8D****\\\\n\\",\\n \\"Code\\": \\"OK\\"\\n}","type":"json"}]',
- 'title' => 'SmsConversionIntl',
- 'description' => 'Metrics:'."\n"
- ."\n"
- .'* Requested OTP messages'."\n"
- .'* Verified OTP messages'."\n"
- ."\n"
- .'An OTP conversion rate is calculated based on the following formula: OTP conversion rate = Number of verified OTP messages/Number of requested OTP messages.'."\n"
- ."\n"
- .'> If you call the SmsConversion operation to query OTP conversion rates, your business may be affected. We recommend that you perform the following operations: 1. Call the SmsConversion operation in an asynchronous manner by configuring queues or events. 2. Manually degrade your services or use a circuit breaker to automatically degrade services.'."\n",
- ],
- 'ConversionDataIntl' => [
- 'summary' => 'Sends conversion rate information to Alibaba Cloud SMS.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
[
- 'AK' => [],
+ 'name' => 'AdminIDCardFrontFace',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The front photo of the administrator\'s ID card (national emblem side). Only jpg, png, gif, and jpeg formats are supported. The image must not exceed 5 MB. Specify the file path uploaded to OSS. The file name must not contain Chinese characters or special characters. For upload instructions, see [Upload files through OSS](~~2833114~~).'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ .'Color originals do not require a stamp. If you upload a photocopy or black-and-white photo, stamp the photocopy with the company seal and take a photo to upload.'."\n"
+ ."\n"
+ .'></notice>.', 'type' => 'string', 'required' => true, 'example' => '123456/111.png'],
],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '176602',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsWO2BNU',
+ [
+ 'name' => 'AdminName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The administrator\'s name. Maximum length: 50 characters. **Under the current [SMS signature real-name requirements](~~2873145~~), if the same administrator applies for qualifications for multiple different enterprises, carrier registration will fail. Ensure one administrator per enterprise to improve the registration success rate.**'."\n"
+ ."\n"
+ .'> The administrator (also called the handler) is the person who logs on to the Alibaba Cloud account and manages SMS services. This person typically manages qualifications, signatures, and templates under this Alibaba Cloud account and performs SMS sending operations. This person\'s phone number must be able to receive verification codes. The administrator does not have to be the Alibaba Cloud account administrator and can be the same person as the legal representative.', 'type' => 'string', 'required' => true, 'example' => '李华'],
],
- ],
- 'parameters' => [
[
- 'name' => 'ReportTime',
+ 'name' => 'AdminIDCardNo',
'in' => 'query',
- 'schema' => [
- 'description' => 'The time point at which the conversion rate is monitored. The value is a UNIX timestamp. Unit: milliseconds.'."\n"
- ."\n"
- .'> If you do not specify this parameter, the current timestamp is used by default.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1349055900000',
- ],
+ 'schema' => ['title' => '', 'description' => 'The administrator\'s ID card number.', 'type' => 'string', 'required' => true, 'example' => '511391********5123'],
],
[
- 'name' => 'ConversionRate',
+ 'name' => 'AdminIDCardType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The conversion rate.'."\n"
- ."\n"
- .'> The value of this parameter is a double, and ranges from 0 to 1.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '0.53',
- ],
+ 'schema' => ['title' => '', 'description' => 'The administrator\'s ID card type. Valid values:'."\n"
+ ."\n"
+ .'- identityCard: ID card.'."\n"
+ .'- passport: passport.'."\n"
+ .'- homeReturnPermit: Hong Kong/Macao resident travel permit to mainland.'."\n"
+ .'- TaiwanCompatriotPermit: Taiwan resident travel permit to mainland.'."\n"
+ .'- residencePermit: Hong Kong/Macao/Taiwan resident residence permit.'."\n"
+ .'- other: other.', 'type' => 'string', 'required' => true, 'example' => 'identityCard'],
],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'F655A8D5-B967-440B-8683-DAD6FF8D****'."\n",
- ],
- 'Code' => [
- 'description' => 'The status code. If OK is returned, the request is successful. For more information, see [Error codes](https://help.aliyun.com/document_detail/101346.html?spm=a2c4g.101345.0.0.74326ff2J5EZyt).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- ],
- 'description' => '',
- ],
+ [
+ 'name' => 'AdminIDCardExpDate',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The administrator\'s ID card validity period. Format: YYYY-MM-DD~YYYY-MM-DD.'."\n"
+ .'> If the ID card has a long-term validity period, set the end date to 2099-12-31.', 'type' => 'string', 'required' => true, 'example' => '2023-01-01~2033-01-01'],
],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\\\n\\",\\n \\"Code\\": \\"OK\\"\\n}","type":"json"}]',
- 'title' => 'ConversionDataIntl',
- ],
- 'AddShortUrl' => [
- 'summary' => 'Creates a short URL.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
[
- 'AK' => [],
+ 'name' => 'AdminPhoneNo',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The administrator\'s phone number. Format: +/+86/0086/86 or a phone number without any prefix, such as 1390000****.', 'type' => 'string', 'required' => true, 'example' => '137****1234'],
],
- ],
- 'operationType' => 'readAndWrite',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'create',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '102437',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsQAI8QG',
+ [
+ 'name' => 'CertifyCode',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The phone verification code. Call the [RequiredPhoneCode](~~RequiredPhoneCode~~) operation with the **administrator\'s phone number**, and then enter the SMS verification code received.'."\n"
+ ."\n"
+ .'> You can use [ValidPhoneCode](~~ValidPhoneCode~~) to verify whether the SMS verification code is correct before passing it in.', 'type' => 'string', 'required' => true, 'example' => '1234'],
],
- ],
- 'parameters' => [
[
- 'name' => 'SourceUrl',
- 'in' => 'formData',
+ 'name' => 'OtherFiles',
+ 'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The source URL. The URL cannot exceed 1,000 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'https://www.****.com/product/sms',
+ 'title' => '',
+ 'description' => 'Additional materials. If you have other supporting documents, notes, or photos, upload them here.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'LicensePic' => ['description' => 'The additional material file. Only png, jpg, jpeg, doc, docx, and pdf formats are supported. The file must not exceed 5 MB. Specify the file path uploaded to OSS. The file name must not contain Chinese characters or special characters. For upload instructions, see [Upload files through OSS](~~2833114~~).', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '123456/111.png'],
+ ],
+ 'required' => false,
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'example' => '',
],
],
[
- 'name' => 'ShortUrlName',
- 'in' => 'formData',
+ 'name' => 'WhetherShare',
+ 'in' => 'query',
'schema' => [
- 'description' => 'The service name of the short URL. The name cannot exceed 13 characters in length.'."\n",
- 'type' => 'string',
+ 'title' => '',
+ 'description' => 'Qualification authorization. Specifies whether to share the qualification with other cloud communication products (such as domestic voice services and domestic number privacy protection). Sharing is available only when you apply for a **self-use qualification** and the qualification information **matches the enterprise information verified for the current Alibaba Cloud account**. Otherwise, this setting has no effect. Valid values:'."\n"
+ ."\n"
+ .'- true: Agree. Your qualification information can be referenced during the qualification verification process of other cloud communication products, eliminating redundant verification.'."\n"
+ .'- false: Disagree.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
'required' => true,
- 'docRequired' => true,
- 'example' => 'The Alibaba Cloud Short Link service.',
+ 'example' => 'false',
],
],
[
- 'name' => 'EffectiveDays',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The validity period of the short URL. Unit: days. The maximum validity period is 90 days.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '7',
- ],
+ 'name' => 'Remark',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Remarks. If you have additional information to provide or notes for the qualification verification reviewer, add a description here.', 'type' => 'string', 'required' => false, 'example' => '无'],
],
],
'responses' => [
@@ -10427,196 +7276,172 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
+ 'AccessDeniedDetail' => ['description' => 'The access denial details. This field is returned only when RAM authentication fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID generated by Alibaba Cloud for this request. You can use it to troubleshoot issues.', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n"],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Data' => ['description' => 'The qualification ID.', 'type' => 'string', 'title' => '', 'example' => '1000****'],
+ 'Code' => ['description' => 'The request status code.'."\n"
+ ."\n"
+ .'* OK indicates a successful request.'."\n"
+ .'* For other error codes, see the error code list in this section or [API error codes](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => [
+ 'description' => 'Indicates whether the API call was successful. Valid values:'."\n"
."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF',
- ],
- 'Data' => [
- 'description' => 'The details of the short URL.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'SourceUrl' => [
- 'description' => 'The source URL.'."\n",
- 'type' => 'string',
- 'example' => 'https://www.****.com/product/sms',
- ],
- 'ExpireDate' => [
- 'description' => 'The time when the short URL expires.'."\n"
- ."\n"
- .'> The value of **ExpireDate** is on the hour.'."\n",
- 'type' => 'string',
- 'example' => '2021-09-19 00:00:00',
- ],
- 'ShortUrl' => [
- 'description' => 'The short URL.'."\n",
- 'type' => 'string',
- 'example' => 'http://****.cn/6y8uy7',
- ],
- ],
+ .'- **true**: The call was successful.'."\n"
+ .'- **false**: The call failed.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
+ 'title' => '',
+ 'example' => 'true',
],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- ],
+ ['errorCode' => 'AdminBackOssFileNotUploadError', 'errorMessage' => 'Administrator ID card portrait photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'AdminDateNotValid', 'errorMessage' => 'Current time is outside the administrator ID card validity period.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardExpdateNotMatchRegexError', 'errorMessage' => 'Invalid administrator ID card expiration time format.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardFrontFaceFileError', 'errorMessage' => 'Invalid format for administrator\'s ID card national emblem photo.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardFrontFaceNullError', 'errorMessage' => 'Administrator\'s ID card national emblem photo cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardNoNullError', 'errorMessage' => 'Administrator\'s ID number cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardNotMatchRegex', 'errorMessage' => 'Invalid administrator ID number format.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardPicsFileError', 'errorMessage' => 'Invalid format for administrator\'s ID card portrait photo.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardPicsNullError', 'errorMessage' => 'Administrator\'s ID card portrait photo cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardTypeError', 'errorMessage' => 'Invalid administrator ID card type.', 'description' => ''],
+ ['errorCode' => 'AdminNameNullError', 'errorMessage' => 'Administrator\'s name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseDateNotMatchRegexError', 'errorMessage' => 'Invalid business license expiration time format.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseDateNotValid', 'errorMessage' => 'Current time is outside the business license validity period.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseOssFileNotUploadError', 'errorMessage' => 'Business license file not uploaded.', 'description' => ''],
+ ['errorCode' => 'BusinessLicensePicsFileError', 'errorMessage' => 'Invalid business license file format.', 'description' => ''],
+ ['errorCode' => 'BusinessLicensePicsNullError', 'errorMessage' => 'Business license documents cannot be empty.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseTypeError', 'errorMessage' => 'Invalid business license type.', 'description' => ''],
+ ['errorCode' => 'CertifyCodeError', 'errorMessage' => 'SMS verification code is incorrect.', 'description' => ''],
+ ['errorCode' => 'CompanyNameNullError', 'errorMessage' => 'Company name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'CompanyTypeError', 'errorMessage' => 'Invalid company type.', 'description' => ''],
+ ['errorCode' => 'QualificationNameNullError', 'errorMessage' => 'Qualification name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'QualificationNameNotMatchRegex', 'errorMessage' => 'Qualification names must be in Chinese, English, or alphanumeric combinations. Symbols or pure numbers are not supported.', 'description' => ''],
+ ['errorCode' => 'QualificationNameAlreadyExist', 'errorMessage' => 'The qualification name already exists. Please modify and resubmit.', 'description' => ''],
+ ['errorCode' => 'OtherFileTypeError', 'errorMessage' => 'Invalid file format for other documents.', 'description' => ''],
+ ['errorCode' => 'LegalPersonIdcardTypeError', 'errorMessage' => 'Invalid legal person ID card type.', 'description' => ''],
+ ['errorCode' => 'LegalIdCardNoNullError', 'errorMessage' => 'Legal person\'s ID number cannot be empty.', 'description' => ''],
+ ['errorCode' => 'LegalIdCardNotMatchRegex', 'errorMessage' => 'Invalid legal person ID number format.', 'description' => ''],
+ ['errorCode' => 'LegalPersonNameNullError', 'errorMessage' => 'Legal person\'s name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'OrganizationCodeNullError', 'errorMessage' => 'Unified Social Credit Code cannot be empty.', 'description' => ''],
+ ['errorCode' => 'LegalPersonIdcardEfftimeNotMatchRegexError', 'errorMessage' => 'Invalid legal person ID card expiration time format.', 'description' => ''],
+ ['errorCode' => 'LegalDateNotValid', 'errorMessage' => 'Current time is outside the legal person ID card validity period.', 'description' => ''],
+ ['errorCode' => 'LegalFrontOssFileNotUploadError', 'errorMessage' => 'Legal person ID card national emblem photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'LegalBackOssFileNotUploadError', 'errorMessage' => 'Legal person ID card portrait photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'AdminFrontOssFileNotUploadError', 'errorMessage' => 'Administrator ID card national emblem photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'OtherOssFileNotUploadError', 'errorMessage' => 'Other files not uploaded.', 'description' => ''],
+ ['errorCode' => 'GrayCustAccessError', 'errorMessage' => 'This customer is not authorized to use the OpenAPI. Please contact support for whitelisting.', 'description' => ''],
+ ['errorCode' => 'CustNotExistError', 'errorMessage' => 'Customer\'s cloud communication information is invalid.', 'description' => ''],
+ ['errorCode' => 'NotEnterpriseCertifyCustCheckError', 'errorMessage' => 'Non-enterprise certified customers are not allowed to access.', 'description' => ''],
+ ['errorCode' => 'PhoneNoCertifyCodeNullError', 'errorMessage' => 'Phone number and verification code cannot be empty.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedCompanyStateInvalid', 'errorMessage' => 'Four Elements Verification Failed: Company is not in normal operation.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedFourElementsError', 'errorMessage' => 'Four Elements Verification Failed: Authentication Failed.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedMismatch', 'errorMessage' => 'Four Elements Verification Failed: Mismatch between Legal Representative and Company Information.', 'description' => 'The verification of the four elements of the enterprise fails, and the verification of the legal person and the enterprise information is inconsistent.'],
+ ['errorCode' => 'CompanyVerificationFailedNoCompany', 'errorMessage' => 'Four Elements Verification Failed: Company Not Found.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedNoLegalPerson', 'errorMessage' => 'Four Elements Verification Failed: Legal Representative Not Found.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"1000****\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Apply for SMS qualification',
+ 'description' => '- Before submitting an application, read [Qualification material description](~~2384377~~) and prepare the required qualification materials.'."\n"
+ .'- Currently, only users who have completed **verify your identity - Enterprise account** can use the API to apply for SMS qualifications. If your Alibaba Cloud account has completed verify your identity - Individual account, apply for qualifications through the Short Message Service [console](https://dysms.console.aliyun.com/domestic/text/qualification/add), or [upgrade to verify your identity - Enterprise account](~~37178~~). [View my account verification type](https://myaccount.console.aliyun.com/cert-info)'."\n"
+ .'- Batch qualification applications are not supported. Wait at least 5 seconds between applications.',
+ 'requestParamsDescription' => '><notice>'."\n"
+ ."\n"
+ .'For specific requirements on SMS qualification materials, see [Qualification material description](~~2384377~~). Requirements may be adjusted in real time based on MIIT and carrier policies. The actual review results prevail.'."\n"
+ ."\n"
+ .'></notice>.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:20.000Z', 'description' => 'OpenAPI offline'],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\",\\n \\"Data\\": {\\n \\"SourceUrl\\": \\"https://www.****.com/product/sms\\",\\n \\"ExpireDate\\": \\"2021-09-19 00:00:00\\",\\n \\"ShortUrl\\": \\"http://****.cn/6y8uy7\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<AddShortUrlResponse>\\n<Message>OK</Message>\\n<RequestId>819BE656-D2E0-4858-8B21-B2E477085AAF</RequestId>\\n<Data>\\n <SourceUrl>https://www.****.com/product/sms</SourceUrl>\\n <ShortUrl>http://****.cn/6y8uy7</ShortUrl>\\n <ExpireDate>2022-09-19 11:21:11</ExpireDate>\\n</Data>\\n<Code>OK</Code>\\n</AddShortUrlResponse>","errorExample":""}]',
- 'title' => 'AddShortUrl',
- 'description' => '* Before you call this operation, you must register the primary domain name of the source URL in the Short Message Service (SMS) console. After the domain name is registered, you can call this operation to create a short URL. For more information, see [Domain name registration](~~302325~~#title-mau-zdh-hd0).'."\n"
- .'* You can create up to 3,000 short URLs within a natural day.'."\n"
- .'* After a short URL is generated, a security review is required. Generally, the review takes 10 minutes to 2 hours to complete. Before the security review is passed, the short URL cannot be directly accessed.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
+ 'ramActions' => [],
],
- 'DeleteShortUrl' => [
- 'summary' => 'Deletes a short URL. After you delete a short URL, it cannot be changed to its original state.',
- 'methods' => [
- 'post',
- 'get',
- 'delete',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'TagResources' => [
+ 'summary' => 'Tags can mark resources, allowing enterprises or individuals to classify templates of the same type for easier search and resource aggregation. Call this operation to bind tags to SMS templates.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102443',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsAF8QUN',
- ],
+ 'abilityTreeCode' => '102472',
+ 'abilityTreeNodes' => ['FEATUREdysmsGD2ZLS'],
],
'parameters' => [
[
- 'name' => 'SourceUrl',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The source address. The address can be up to 1,000 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'https://www.****.com/product/sms',
- ],
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource type. Default value: **TEMPLATE**.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'TEMPLATE', 'title' => ''],
],
- ],
- 'responses' => [
- 200 => [
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The region ID. Default value: **cn-hangzhou**. For more region IDs, see [Endpoints](~~419270~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
+ ],
+ [
+ 'name' => 'ProdCode',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The product name. Default value: **dysms**.', 'type' => 'string', 'required' => false, 'default' => 'dysms', 'example' => 'dysms', 'title' => ''],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'type' => 'object',
- 'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF',
+ 'description' => 'The tags. You can add up to 20 tags at a time.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The tag.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''],
+ 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'description' => '',
- ],
- ],
- ],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
+ 'required' => true,
+ 'maxItems' => 21,
+ 'title' => '',
+ 'example' => '',
],
],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteShortUrlResponse>\\n <Message>OK</Message>\\n <RequestId>819BE656-D2E0-4858-8B21-B2E477085AAF</RequestId>\\n <Code>OK</Code>\\n</DeleteShortUrlResponse>\\n","errorExample":""}]',
- 'title' => 'DeleteShortUrl',
- 'description' => '### QPS limits'."\n"
- ."\n"
- .'You can call this operation up to 100 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
- ],
- 'QueryShortUrl' => [
- 'summary' => 'Queries the status of a short URL.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '102456',
- 'abilityTreeNodes' => [
- 'FEATUREdysms2D1XSC',
- ],
- ],
- 'parameters' => [
[
- 'name' => 'ShortUrl',
- 'in' => 'formData',
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'The short URL. You can query the short URL by calling the [AddShortUrl](~~186774~~) operation.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'http://****.cn/6y8uy7',
+ 'description' => 'The SMS template codes. The number of codes cannot exceed 20.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The SMS template code.'."\n"
+ ."\n"
+ .'>- Obtain the SMS template code from the response parameters of the [CreateSmsTemplate](~~CreateSmsTemplate~~) operation.'."\n"
+ .'>- View the SMS template code on the [Domestic Messages > Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.', 'type' => 'string', 'required' => false, 'example' => 'SMS_2342****', 'title' => ''],
+ 'required' => false,
+ 'example' => 'SMS_23423423',
+ 'maxItems' => 51,
+ 'title' => '',
],
],
],
@@ -10625,209 +7450,115 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF',
- ],
- 'Data' => [
- 'description' => 'The details of the short URL.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'UniqueVisitorCount' => [
- 'description' => 'The UV.'."\n",
- 'type' => 'string',
- 'example' => '23',
- ],
- 'SourceUrl' => [
- 'description' => 'The source address.'."\n",
- 'type' => 'string',
- 'example' => 'https://www.****.com/product/sms',
- ],
- 'ShortUrlStatus' => [
- 'description' => 'The status of the short URL. Valid values:'."\n"
- ."\n"
- .'* **expired**'."\n"
- .'* **effective**'."\n"
- .'* **audit**'."\n"
- .'* **reject**'."\n",
- 'type' => 'string',
- 'example' => 'expired',
- ],
- 'PageViewCount' => [
- 'description' => 'The PV.'."\n",
- 'type' => 'string',
- 'example' => '300',
- ],
- 'ExpireDate' => [
- 'description' => 'The time when the short URL expires.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-22 11:21:11',
- ],
- 'ShortUrlName' => [
- 'description' => 'The service name of the short URL.'."\n",
- 'type' => 'string',
- 'example' => 'The Alibaba Cloud Short Link service.',
- ],
- 'CreateDate' => [
- 'description' => 'The time when the short URL was created.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-08 16:44:13',
- ],
- 'ShortUrl' => [
- 'description' => 'The short URL.'."\n",
- 'type' => 'string',
- 'example' => 'http://****.cn/6y8uy7',
- ],
- ],
- ],
+ 'Code' => ['description' => 'The request status code. Valid values:'."\n"
+ ."\n"
+ .'- OK: The request was successful.'."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Data' => ['description' => 'The result of adding the tags. Valid values:'."\n"
+ ."\n"
+ .'- **true**: success.'."\n"
+ .'- **false**: failure.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF'."\n", 'title' => ''],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
+ 200 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\",\\n \\"Data\\": {\\n \\"UniqueVisitorCount\\": \\"23\\",\\n \\"SourceUrl\\": \\"https://www.****.com/product/sms\\",\\n \\"ShortUrlStatus\\": \\"expired\\",\\n \\"PageViewCount\\": \\"300\\",\\n \\"ExpireDate\\": \\"2019-01-22 11:21:11\\",\\n \\"ShortUrlName\\": \\"阿里短链测试\\",\\n \\"CreateDate\\": \\"2019-01-08 16:44:13\\",\\n \\"ShortUrl\\": \\"http://****.cn/6y8uy7\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<QueryShortUrlResponse>\\n<Message>OK</Message>\\n<RequestId>819BE656-D2E0-4858-8B21-B2E477085AAF</RequestId>\\n<Data>\\n <ShortUrlName>阿里短链测试</ShortUrlName>\\n <SourceUrl>https://www.****.com/product/sms</SourceUrl>\\n <ShortUrl>http://****.cn/6y8uy7</ShortUrl>\\n <ExpireDate>2022-09-19 11:21:11</ExpireDate>\\n <PageViewCount>300</PageViewCount>\\n <CreateDate>2019-01-08 16:44:13</CreateDate>\\n <ShortUrlStatus>expired</ShortUrlStatus>\\n <UniqueVisitorCount>23</UniqueVisitorCount>\\n</Data>\\n<Code>OK</Code>\\n</QueryShortUrlResponse>\\n","errorExample":""}]',
- 'title' => 'QueryShortUrl',
- 'description' => '### QPS limits'."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\\\n\\"\\n}","type":"json"}]',
+ 'title' => 'Add template tags',
+ 'description' => '- Each template can be bound to up to 20 tags.'."\n"
+ .'- The tag key (Key) must be unique within the same template. If a template has two tags with the same Key but different Values, the new value overwrites the old value.'."\n"
+ .'- This feature is only available for domestic text messages of Short Message Service on the China site.'."\n"
."\n"
- .'You can call this operation up to 20 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
+ .'### QPS limit'."\n"
+ .'The per-user QPS limit of this operation is 50 calls per second. If the limit is exceeded, API calls are throttled, which may affect your business. Call this operation at a reasonable frequency.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'ListTagResources' => [
- 'summary' => 'Queries the tags of a message template.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TagResources'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'dysms:TagResources',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'UntagResources' => [
+ 'summary' => 'Tags can mark resources, allowing enterprises or individuals to categorize templates of the same type for easier search and resource aggregation. If a template is no longer applicable to its currently bound tags, you can unbind the tags from the template. You can delete a single tag or delete tags in batches.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
+ 'operationType' => 'write',
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102448',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsGD2ZLS',
- ],
+ 'abilityTreeCode' => '102473',
+ 'abilityTreeNodes' => ['FEATUREdysmsGD2ZLS'],
],
'parameters' => [
[
'name' => 'ResourceType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the resource. Set the value to TEMPLATE.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'TEMPLATE',
- ],
+ 'schema' => ['description' => 'The resource type. Set the value to TEMPLATE by default.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'TEMPLATE', 'title' => ''],
],
[
'name' => 'RegionId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The region ID. Set the value to **cn-hangzhou**.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'cn-hangzhou',
- ],
- ],
- [
- 'name' => 'NextToken',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The token used to query the next page.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '23432453245',
- ],
+ 'schema' => ['description' => 'The region ID. Set the value to cn-hangzhou by default.'."\n"
+ .'For more region IDs, see [Service endpoints](~~419270~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'All',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
+ 'schema' => ['description' => 'Specifies whether to delete all tags under the template. Valid values:'."\n"
+ ."\n"
+ .'- **true**: yes.'."\n"
+ .'- **false**: no.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''],
],
[
'name' => 'ProdCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the cloud service. Set the value to **dysms**.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dysms',
- 'default' => 'dysms',
- ],
+ 'schema' => ['description' => 'The product name. Default value: **dysms**.', 'type' => 'string', 'required' => false, 'default' => 'dysms', 'example' => 'dysms', 'title' => ''],
],
[
- 'name' => 'Tag',
+ 'name' => 'TagKey',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
- 'description' => 'The tag list. Specify either the Tag or the ResourceId parameter. You can specify a maximum of 20 tags.'."\n",
+ 'description' => 'The tag key. You can add no more than 20 tags at a time.',
'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Key' => [
- 'description' => 'The key of the tag.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => 'The value of the tag.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
- ],
- 'required' => false,
- 'description' => '',
- ],
+ 'items' => ['description' => 'The tag key.'."\n"
+ .'You can view the tag key on the Tags column of the [Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.', 'type' => 'string', 'required' => false, 'example' => 'sampleTagKey', 'title' => ''],
'required' => false,
+ 'example' => 'TestKey',
'maxItems' => 21,
+ 'title' => '',
],
],
[
@@ -10835,17 +7566,16 @@
'in' => 'query',
'style' => 'repeatList',
'schema' => [
- 'description' => 'The code of the message template. Specify either the Tag or the ResourceId parameter.'."\n",
+ 'description' => 'The SMS template code. The number of codes cannot exceed 20.',
'type' => 'array',
- 'items' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SMS_2342****',
- ],
+ 'items' => ['description' => 'The SMS template code.'."\n"
+ ."\n"
+ .'>- You can obtain the SMS template code from the response parameters of the [CreateSmsTemplate](~~CreateSmsTemplate~~) operation.'."\n"
+ .'>- You can view the SMS template code on the [Domestic Messages > Template Management](https://dysms.console.aliyun.com/domestic/text/template) page.', 'type' => 'string', 'required' => false, 'example' => 'SMS_2342****', 'title' => ''],
'required' => false,
'example' => 'SMS_23423423',
'maxItems' => 51,
+ 'title' => '',
],
],
],
@@ -10854,191 +7584,254 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'NextToken' => [
- 'description' => 'The token used to query the next page.'."\n",
- 'type' => 'string',
- 'example' => '"23432453245"',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D0D',
- ],
- 'TagResources' => [
- 'type' => 'object',
- 'itemNode' => true,
- 'properties' => [
- 'TagResource' => [
- 'description' => 'The list of tags.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'ResourceType' => [
- 'description' => 'The type of resource.'."\n",
- 'type' => 'string',
- 'example' => 'ALIYUN::DYSMS::TEMPLATE',
- ],
- 'TagValue' => [
- 'description' => 'The tag value.'."\n",
- 'type' => 'string',
- 'example' => 'TestValue',
- ],
- 'ResourceId' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
- 'example' => 'SMS_23423****',
- ],
- 'TagKey' => [
- 'description' => 'The tag key.'."\n",
- 'type' => 'string',
- 'example' => 'TestKey',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'Code' => ['description' => 'The request status code. Valid values:'."\n"
+ ."\n"
+ .'- OK: The request was successful.'."\n"
+ .'- For other error codes, see [Error code list](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Data' => ['description' => 'The execution result of deleting the tag. Valid values:'."\n"
+ ."\n"
+ .'- **true**: success.'."\n"
+ ."\n"
+ .'- **false**: failure.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AAF'."\n", 'title' => ''],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => 'No access, please contact administrator.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"NextToken\\": \\"\\\\\\"23432453245\\\\\\"\\",\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D0D\\",\\n \\"TagResources\\": {\\n \\"TagResource\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::DYSMS::TEMPLATE\\",\\n \\"TagValue\\": \\"TestValue\\",\\n \\"ResourceId\\": \\"SMS_23423****\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListTagResourcesResponse>\\n <Code>OK</Code>\\n <NextToken>\\"23432453245\\"</NextToken>\\n <RequestId>A90E4451-FED7-49D2-87C8-00700A8C4D0D</RequestId>\\n <TagResources>\\n <ResourceType>ALIYUN::DYSMS::TEMPLATE</ResourceType>\\n <TagValue>TestValue</TagValue>\\n <ResourceId>SMS_23423****</ResourceId>\\n <TagKey>TestKey</TagKey>\\n </TagResources>\\n</ListTagResourcesResponse>","errorExample":""}]',
- 'title' => 'ListTagResources',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\\\n\\"\\n}","type":"json"}]',
+ 'title' => 'Delete Template Tags',
'description' => '### QPS limit'."\n"
- ."\n"
- .'You can call this operation up to 50 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
+ .'The QPS limit per user for this operation is 50 calls per second. If the limit is exceeded, API calls will be throttled, which may affect your business. Please call the operation reasonably.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'TagResources' => [
- 'summary' => 'Attaches tags to a message template.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UntagResources'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:UntagResources',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'UpdateSmsQualification' => [
+ 'summary' => 'If you need to update SMS qualification information, you can submit a modification request through this API. After submission, it will re-enter the review process.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '102472',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsGD2ZLS',
- ],
+ 'abilityTreeCode' => '264875',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'ResourceType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the resource. Set the value to **TEMPLATE**.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'TEMPLATE',
- ],
- ],
- [
- 'name' => 'RegionId',
+ 'name' => 'QualificationGroupId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The region ID. Set the value to **cn-hangzhou**.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['title' => '', 'description' => 'The qualification ID, that is, the ID returned when you [apply for SMS qualification](~~SubmitSmsQualification~~). You can obtain the qualification IDs under the current account by calling [Query Qualification List](~~QuerySmsQualificationRecord~~).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000****'],
],
[
- 'name' => 'ProdCode',
+ 'name' => 'OrderId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the cloud service. Set the value to **dysms**.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dysms',
- 'default' => 'dysms',
- ],
+ 'schema' => ['title' => '', 'description' => 'The review order ID. You can obtain the qualifications and their corresponding review order IDs under the current account by calling [Query Qualification List](~~QuerySmsQualificationRecord~~).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '2001*****'],
],
[
- 'name' => 'Tag',
+ 'name' => 'BusinessLicensePics',
'in' => 'query',
- 'style' => 'repeatList',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The tag.'."\n",
+ 'title' => '',
+ 'description' => 'Enterprise business license information. This parameter is required when the purpose of the qualification to be modified is for use by others.',
'type' => 'array',
'items' => [
- 'description' => '',
'type' => 'object',
'properties' => [
- 'Key' => [
- 'description' => 'The array of tag keys. Valid values of N: 1 to 20.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => 'The array of tag values. Valid values of N: 1 to 20.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
+ 'Type' => ['title' => '', 'description' => 'Business license type. Valid values:'."\n"
+ ."\n"
+ .'- socialCreditLicense: Social credit code certificate.'."\n"
+ .'- businessLicense: Enterprise business license.'."\n"
+ .'- signLegalLicense: Public institution legal person certificate.'."\n"
+ .'- otherLicense: Other.'."\n"
+ ."\n"
+ .'Choose one to upload. The certificate must contain: enterprise name, unified social credit code, and certificate validity period.', 'type' => 'string', 'required' => false, 'example' => 'businessLicense'],
+ 'LicensePic' => ['title' => '', 'description' => 'Business license image. Only jpg, png, gif, and jpeg image formats are supported, and the image must not exceed 5 MB. Please provide the path of the file uploaded to OSS. The file name to be uploaded must not contain Chinese characters or special characters. For upload operations, see [Upload Files via OSS](~~2833114~~).'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ .'No stamp is required for color originals of the certificate. If you upload a photocopy or black-and-white photo, you must affix the enterprise red seal to the photocopy and take a photo to upload.'."\n"
+ .'></notice>', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'],
],
'required' => false,
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'required' => true,
- 'maxItems' => 21,
+ 'required' => false,
+ 'example' => '',
],
],
[
- 'name' => 'ResourceId',
+ 'name' => 'CompanyName',
'in' => 'query',
- 'style' => 'repeatList',
+ 'schema' => ['title' => '', 'description' => 'Enterprise name. Supported symbols are only the middle dot `·`, the Chinese symbols `【】()`, the English symbols `()`, and the `space`. Other symbols or pure numbers are not allowed. The length must not exceed 150 characters.', 'type' => 'string', 'required' => false, 'example' => '阿里云云通信有限公司'],
+ ],
+ [
+ 'name' => 'BussinessLicenseExpDate',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Validity period of the business license. Format: YYYY-MM-DD~YYYY-MM-DD.'."\n"
+ .'> When the certificate validity period is long-term, the end date can be set to 2099-12-31.', 'type' => 'string', 'required' => false, 'example' => '2023-01-01~2033-01-01'],
+ ],
+ [
+ 'name' => 'LegalPersonIdCardFrontSide',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Photo of the front of the legal representative\'s ID card (national emblem side). Only jpg, png, gif, and jpeg image formats are supported, and the image must not exceed 5 MB. Please provide the path of the file uploaded to OSS. The file name to be uploaded must not contain Chinese characters or special characters. For upload operations, see [Upload Files via OSS](~~2833114~~).'."\n"
+ .'> The system will use the legal person name and ID number you provide for verification. If the verification fails, you need to upload a photo of the legal representative\'s ID card.', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'."\n"],
+ ],
+ [
+ 'name' => 'LegalPersonIdCardBackSide',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Photo of the back of the legal representative\'s ID card (portrait side). Only jpg, png, gif, and jpeg image formats are supported, and the image must not exceed 5 MB. Please provide the path of the file uploaded to OSS. The file name to be uploaded must not contain Chinese characters or special characters. For upload operations, see [Upload Files via OSS](~~2833114~~).'."\n"
+ .'> The system will use the legal person name and ID number you provide for verification. If the verification fails, you need to upload a photo of the legal representative\'s ID card.', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'."\n"],
+ ],
+ [
+ 'name' => 'LegalPersonName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Name of the legal representative.'."\n"
+ ."\n"
+ .'> - If there is no legal representative information on the organization\'s certificate, but there is information about a person in charge / chief representative or similar, please prepare the ID card photo of the corresponding person in charge or chief representative listed on the certificate.'."\n"
+ .'> - If there is no legal representative information on the organization\'s certificate, and there is no information about any person in charge, please prepare the name and ID card photo of the main business contact person.', 'type' => 'string', 'required' => false, 'example' => '李华'],
+ ],
+ [
+ 'name' => 'LegalPersonIDCardNo',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Legal person\'s ID number.', 'type' => 'string', 'required' => false, 'example' => ' '."\n"
+ .'511391********5123'."\n"],
+ ],
+ [
+ 'name' => 'LegalPersonIdCardEffTime',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Validity period of the legal person ID card. Format: YYYY-MM-DD~YYYY-MM-DD.'."\n"
+ .'> When the certificate validity period is long-term, the end date can be set to 2099-12-31.', 'type' => 'string', 'required' => false, 'example' => '2023-01-01~2033-01-01'],
+ ],
+ [
+ 'name' => 'LegalPersonIDCardType',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Legal person ID card type. Valid values:'."\n"
+ ."\n"
+ .'- identityCard: ID card.'."\n"
+ .'- passport: Passport.'."\n"
+ .'- homeReturnPermit: Mainland Travel Permit for Hong Kong and Macao Residents.'."\n"
+ .'- TaiwanCompatriotPermit: Mainland Travel Permit for Taiwan Residents.'."\n"
+ .'- residencePermit: Residence Permit for Hong Kong, Macao, and Taiwan Residents.'."\n"
+ .'- other: Other.', 'type' => 'string', 'required' => false, 'example' => 'identityCard'],
+ ],
+ [
+ 'name' => 'AdminIDCardPic',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Photo of the back of the administrator\'s ID card (portrait side). Only jpg, png, gif, and jpeg image formats are supported, and the image must not exceed 5 MB. Please provide the path of the file uploaded to OSS. The file name to be uploaded must not contain Chinese characters or special characters. For upload operations, see [Upload Files via OSS](~~2833114~~).'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ .' No stamp is required for color originals of the certificate. If you upload a photocopy or black-and-white photo, you must affix the enterprise red seal to the photocopy and take a photo to upload.'."\n"
+ .'></notice>', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'."\n"],
+ ],
+ [
+ 'name' => 'AdminIDCardFrontFace',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Photo of the front of the administrator\'s ID card (national emblem side). Only jpg, png, gif, and jpeg image formats are supported, and the image must not exceed 5 MB. Please provide the path of the file uploaded to OSS. The file name to be uploaded must not contain Chinese characters or special characters. For upload operations, see [Upload Files via OSS](~~2833114~~).'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ .'No stamp is required for color originals of the certificate. If you upload a photocopy or black-and-white photo, you must affix the enterprise red seal to the photocopy and take a photo to upload.'."\n"
+ .'></notice>', 'type' => 'string', 'required' => false, 'example' => '123456/111.png'."\n"],
+ ],
+ [
+ 'name' => 'AdminName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Administrator name.'."\n"
+ ."\n"
+ .'> The administrator (also known as the operator) refers to the person who logs in to the Alibaba Cloud account and manages the SMS service. Generally, this is the operations personnel who manages qualifications, signatures, and templates and sends SMS messages under this Alibaba Cloud account, and whose phone number can receive verification codes. The administrator is not necessarily the administrator of this Alibaba Cloud account. The administrator can be the same person as the enterprise\'s legal representative.', 'type' => 'string', 'required' => false, 'example' => '李华'],
+ ],
+ [
+ 'name' => 'AdminIDCardNo',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Administrator\'s ID number.', 'type' => 'string', 'required' => false, 'example' => '511391********5123'."\n"],
+ ],
+ [
+ 'name' => 'AdminIDCardExpDate',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Validity period of the administrator ID card. Format: YYYY-MM-DD~YYYY-MM-DD.'."\n"
+ .'> When the certificate validity period is long-term, the end date can be set to 2099-12-31.', 'type' => 'string', 'required' => false, 'example' => '2023-01-01~2033-01-01'."\n"
+ ."\n"],
+ ],
+ [
+ 'name' => 'AdminPhoneNo',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Administrator\'s mobile phone number. Format: +/+86/0086/86 prefix or a phone number without any prefix, for example, 1390000****.', 'type' => 'string', 'required' => true, 'example' => '137********'],
+ ],
+ [
+ 'name' => 'CertifyCode',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Phone verification code. Please call the [RequiredPhoneCode](~~RequiredPhoneCode~~) API and pass in the **administrator\'s phone number**, then enter the SMS verification code you receive here.'."\n"
+ ."\n"
+ .'> You can use [ValidPhoneCode](~~ValidPhoneCode~~) to verify whether the SMS verification code is correct before passing it in.', 'type' => 'string', 'required' => true, 'example' => '1234'],
+ ],
+ [
+ 'name' => 'AdminIDCardType',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Administrator ID card type. Valid values:'."\n"
+ ."\n"
+ .'- identityCard: ID card.'."\n"
+ .'- passport: Passport.'."\n"
+ .'- homeReturnPermit: Mainland Travel Permit for Hong Kong and Macao Residents.'."\n"
+ .'- TaiwanCompatriotPermit: Mainland Travel Permit for Taiwan Residents.'."\n"
+ .'- residencePermit: Residence Permit for Hong Kong, Macao, and Taiwan Residents.'."\n"
+ .'- other: Other.', 'type' => 'string', 'required' => false, 'example' => 'identityCard'],
+ ],
+ [
+ 'name' => 'OtherFiles',
+ 'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The code of the message template.'."\n",
+ 'title' => '',
+ 'description' => 'Additional materials. If you have other supporting or supplementary materials, photos, etc., you can upload them here.',
'type' => 'array',
'items' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
+ 'type' => 'object',
+ 'properties' => [
+ 'LicensePic' => ['description' => 'Additional material file. Only png, jpg, jpeg, doc, docx, and pdf formats are supported, and the file must not exceed 5 MB. Please provide the path of the file uploaded to OSS. The file name to be uploaded must not contain Chinese characters or special characters. For upload operations, see [Upload Files via OSS](~~2833114~~).', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '123456/111.png'."\n"],
+ ],
'required' => false,
- 'example' => 'SMS_2342****',
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
- 'example' => 'SMS_23423423',
- 'maxItems' => 51,
+ 'example' => '',
],
],
],
@@ -11047,364 +7840,594 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The response code.'."\n"
- ."\n"
- .'* If OK is returned, the request is successful.'."\n"
- .'* Other values indicate that the request fails. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'description' => 'Indicates whether tags were attached. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'string',
- 'example' => 'true',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C****',
- ],
+ 'AccessDeniedDetail' => ['description' => 'Access denied details. This field is returned only when RAM verification fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of this call request. It is a unique identifier generated by Alibaba Cloud for this request and can be used to troubleshoot and locate issues.', 'type' => 'string', 'title' => '', 'example' => '25D5AFDE-8EBC-132E-8909-1FDC071DA'."\n"],
+ 'Message' => ['description' => 'Description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Data' => ['description' => 'Qualification ID.', 'type' => 'string', 'title' => '', 'example' => '10000****'],
+ 'Code' => ['description' => 'Request status code.'."\n"
+ ."\n"
+ .'* OK indicates that the request was successful.'."\n"
+ .'* For other error codes, see the error code list in this section or the product [Error Code List](~~101346~~).', 'type' => 'string', 'title' => '', 'example' => 'OK'],
+ 'Success' => ['description' => 'Whether the API call was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The call was successful.'."\n"
+ ."\n"
+ .'- **false**: The call failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\\\n\\"\\n}","type":"json"}]',
- 'title' => 'TagResources',
- 'description' => '### QPS limit'."\n"
+ 400 => [
+ ['errorCode' => 'QualificationNameNullError', 'errorMessage' => 'Qualification name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'BusinessLicensePicsNullError', 'errorMessage' => 'Business license documents cannot be empty.', 'description' => ''],
+ ['errorCode' => 'OtherFileTypeError', 'errorMessage' => 'Invalid file format for other documents.', 'description' => ''],
+ ['errorCode' => 'QualificationNameAlreadyExist', 'errorMessage' => 'The qualification name already exists. Please modify and resubmit.', 'description' => ''],
+ ['errorCode' => 'QualificationNameNotMatchRegex', 'errorMessage' => 'Qualification names must be in Chinese, English, or alphanumeric combinations. Symbols or pure numbers are not supported.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardTypeError', 'errorMessage' => 'Invalid administrator ID card type.', 'description' => ''],
+ ['errorCode' => 'BusinessLicensePicsFileError', 'errorMessage' => 'Invalid business license file format.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseTypeError', 'errorMessage' => 'Invalid business license type.', 'description' => ''],
+ ['errorCode' => 'LegalIdCardNoNullError', 'errorMessage' => 'Legal person\'s ID number cannot be empty.', 'description' => ''],
+ ['errorCode' => 'LegalPersonIdcardTypeError', 'errorMessage' => 'Invalid legal person ID card type.', 'description' => ''],
+ ['errorCode' => 'CompanyNameNullError', 'errorMessage' => 'Company name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'CompanyTypeError', 'errorMessage' => 'Invalid company type.', 'description' => ''],
+ ['errorCode' => 'LegalIdCardNotMatchRegex', 'errorMessage' => 'Invalid legal person ID number format.', 'description' => ''],
+ ['errorCode' => 'LegalPersonNameNullError', 'errorMessage' => 'Legal person\'s name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'OrganizationCodeNullError', 'errorMessage' => 'Unified Social Credit Code cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardFrontFaceFileError', 'errorMessage' => 'Invalid format for administrator\'s ID card national emblem photo.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardFrontFaceNullError', 'errorMessage' => 'Administrator\'s ID card national emblem photo cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardPicsFileError', 'errorMessage' => 'Invalid format for administrator\'s ID card portrait photo.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardPicsNullError', 'errorMessage' => 'Administrator\'s ID card portrait photo cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminNameNullError', 'errorMessage' => 'Administrator\'s name cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardExpdateNotMatchRegexError', 'errorMessage' => 'Invalid administrator ID card expiration time format.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardNoNullError', 'errorMessage' => 'Administrator\'s ID number cannot be empty.', 'description' => ''],
+ ['errorCode' => 'AdminIdcardNotMatchRegex', 'errorMessage' => 'Invalid administrator ID number format.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseDateNotMatchRegexError', 'errorMessage' => 'Invalid business license expiration time format.', 'description' => ''],
+ ['errorCode' => 'LegalPersonIdcardEfftimeNotMatchRegexError', 'errorMessage' => 'Invalid legal person ID card expiration time format.', 'description' => ''],
+ ['errorCode' => 'AdminDateNotValid', 'errorMessage' => 'Current time is outside the administrator ID card validity period.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseDateNotValid', 'errorMessage' => 'Current time is outside the business license validity period.', 'description' => ''],
+ ['errorCode' => 'BusinessLicenseOssFileNotUploadError', 'errorMessage' => 'Business license file not uploaded.', 'description' => ''],
+ ['errorCode' => 'LegalDateNotValid', 'errorMessage' => 'Current time is outside the legal person ID card validity period.', 'description' => ''],
+ ['errorCode' => 'LegalFrontOssFileNotUploadError', 'errorMessage' => 'Legal person ID card national emblem photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'AdminBackOssFileNotUploadError', 'errorMessage' => 'Administrator ID card portrait photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'AdminFrontOssFileNotUploadError', 'errorMessage' => 'Administrator ID card national emblem photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'CustNotExistError', 'errorMessage' => 'Customer\'s cloud communication information is invalid.', 'description' => ''],
+ ['errorCode' => 'GrayCustAccessError', 'errorMessage' => 'This customer is not authorized to use the OpenAPI. Please contact support for whitelisting.', 'description' => ''],
+ ['errorCode' => 'LegalBackOssFileNotUploadError', 'errorMessage' => 'Legal person ID card portrait photo not uploaded.', 'description' => ''],
+ ['errorCode' => 'OtherOssFileNotUploadError', 'errorMessage' => 'Other files not uploaded.', 'description' => ''],
+ ['errorCode' => 'CertifyCodeError', 'errorMessage' => 'SMS verification code is incorrect.', 'description' => ''],
+ ['errorCode' => 'NotEnterpriseCertifyCustCheckError', 'errorMessage' => 'Non-enterprise certified customers are not allowed to access.', 'description' => ''],
+ ['errorCode' => 'PhoneNoCertifyCodeNullError', 'errorMessage' => 'Phone number and verification code cannot be empty.', 'description' => ''],
+ ['errorCode' => 'SameQualificationGroupError', 'errorMessage' => 'A qualification with the same company and administrator information already exists.', 'description' => ''],
+ ['errorCode' => 'WorkOrderIdExpired', 'errorMessage' => 'Qualification details have changed. Please re-query the qualification list and resubmit.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedCompanyStateInvalid', 'errorMessage' => 'Four Elements Verification Failed: Company is not in normal operation.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedFourElementsError', 'errorMessage' => 'Four Elements Verification Failed: Authentication Failed.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedMismatch', 'errorMessage' => 'Four Elements Verification Failed: Mismatch between Legal Representative and Company Information.', 'description' => 'The verification of the four elements of the enterprise fails, and the verification of the legal person and the enterprise information is inconsistent.'],
+ ['errorCode' => 'CompanyVerificationFailedNoCompany', 'errorMessage' => 'Four Elements Verification Failed: Company Not Found.', 'description' => ''],
+ ['errorCode' => 'CompanyVerificationFailedNoLegalPerson', 'errorMessage' => 'Four Elements Verification Failed: Legal Representative Not Found.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"25D5AFDE-8EBC-132E-8909-1FDC071DA\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": \\"10000****\\",\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Modify SMS Qualification',
+ 'description' => '- Qualifications under review do not support modification. Please wait for the review process to finish, or [withdraw the application](https://dysms.console.aliyun.com/domestic/text/qualification) in the SMS Service console before making modifications.'."\n"
+ .'- The modified SMS qualification **must be re-reviewed** (including qualifications that have already passed review). Please upload materials that meet the specifications according to the [Qualification Material Description](~~2384377~~).'."\n"
+ .'- **Modification is not supported** for the qualification name, application purpose, or unified social credit code.'."\n"
+ .'- Batch modification of SMS qualifications is not supported. It is recommended to leave at least 5 seconds between modifications.',
+ 'requestParamsDescription' => '><notice>'."\n"
."\n"
- .'You can call this operation up to 50 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
- ],
- 'UntagResources' => [
- 'summary' => 'Deletes tags from a message template.',
- 'methods' => [
- 'post',
- 'get',
+ .'For the specific requirements of SMS qualification materials, see the [Qualification Material Description](~~2384377~~). The requirements may be adjusted in real time in accordance with the requirements of the Ministry of Industry and Information Technology and the carriers. The actual review result shall prevail.'."\n"
+ ."\n"
+ .'></notice>',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
],
+ 'ramActions' => [],
+ ],
+ 'UpdateSmsSign' => [
+ 'summary' => 'You can modify rejected or approved signatures. A modified signature is automatically submitted for review, and its status changes to pending review.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '102473',
- 'abilityTreeNodes' => [
- 'FEATUREdysmsGD2ZLS',
- ],
+ 'abilityTreeCode' => '219280',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
],
'parameters' => [
[
- 'name' => 'ResourceType',
+ 'name' => 'SignName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the resource. Set the value to TEMPLATE.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'TEMPLATE',
- ],
+ 'schema' => ['description' => 'The name of the rejected SMS signature. You can find rejected SMS signatures on the [Domestic Messages > Signature Management](https://dysms.console.aliyun.com/domestic/text/sign) page in the console, or by calling the [QuerySmsSignList](~~QuerySmsSignList~~) operation.', 'type' => 'string', 'required' => true, 'example' => '阿里云验证码', 'title' => ''],
],
[
- 'name' => 'RegionId',
+ 'name' => 'Remark',
'in' => 'query',
- 'schema' => [
- 'description' => 'The region. Set the value to cn-hangzhou.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => 'A description of the SMS signature\'s use case. This information is used during the review and must be 200 characters or less.'."\n"
+ ."\n"
+ .'> - Describe the use case for your live service. Include relevant links, such as a website link or an app store link.'."\n"
+ .'>'."\n"
+ .'> - Provide a complete example of an SMS message that reflects your use case.'."\n"
+ .'>'."\n"
+ .'> - Provide the values for any variables. Describe the use case in detail and explain why the variables are necessary.'."\n"
+ .'>'."\n"
+ .'> - If the signature involves a government agency or public institution, provide its official landline number.'."\n"
+ ."\n"
+ .'Providing complete and accurate information accelerates the review process. If you do not provide the required information, your signature application may be rejected.', 'type' => 'string', 'required' => false, 'maxLength' => 500, 'example' => '登录场景申请验证码', 'title' => ''],
],
[
- 'name' => 'All',
+ 'name' => 'SignType',
'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether to delete all tags from the message template. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- 'default' => 'false',
- ],
+ 'schema' => ['description' => 'The signature type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code.'."\n"
+ ."\n"
+ .'- **1**: general (default).'."\n"
+ ."\n"
+ .'We recommend that you use the default value, **general**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''],
],
[
- 'name' => 'ProdCode',
+ 'name' => 'MoreData',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The name of the cloud service. Set the value to **dysms**.'."\n",
- 'type' => 'string',
+ 'description' => 'Additional supporting materials. You can upload supporting business documents or business screenshots to help with the review. For details on what to upload, see [Signature application materials](~~108076#section-xup-k46-yi4~~).',
+ 'type' => 'array',
+ 'items' => ['description' => 'The OSS path of the uploaded file. The **file name cannot contain Chinese characters or special characters**. For information about how to upload a file, see [Upload files via OSS](https://help.aliyun.com/zh/sms/upload-files-through-oss).', 'type' => 'string', 'required' => false, 'example' => '10098689758*****/1234qwe.png'."\n", 'title' => ''],
'required' => false,
- 'example' => 'dysms',
- 'default' => 'dysms',
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'TagKey',
+ 'name' => 'QualificationId',
'in' => 'query',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => 'The array of tag keys. You can specify 1 to 20 tag keys.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The key of the tag.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'sampleTagKey',
- ],
- 'required' => false,
- 'example' => 'TestKey',
- 'maxItems' => 21,
- ],
+ 'schema' => ['description' => 'The ID of the approved qualification.'."\n"
+ ."\n"
+ .'> - You must [apply for a qualification](https://help.aliyun.com/zh/sms/user-guide/new-qualification?spm=a2c4g.11186623.0.0.718d187bbkpMRK) before applying for an SMS signature.'."\n"
+ .'>'."\n"
+ .'> - You can find the qualification ID on the [qualification management](https://dysms.console.aliyun.com/domestic/text/qualification) page.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '8563**', 'title' => ''],
],
[
- 'name' => 'ResourceId',
+ 'name' => 'ApplySceneContent',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The app store link. This parameter is required if the signature source (`SignSource`) is an app (the value is 2). The link must start with `http://` or `https://`, and the app must be published in the app store.', 'type' => 'string', 'required' => false, 'example' => 'http://www.aliyun.com/'."\n", 'title' => ''],
+ ],
+ [
+ 'name' => 'SignSource',
'in' => 'query',
- 'style' => 'repeatList',
'schema' => [
- 'description' => 'The array of message template codes. You can specify 1 to 20 message templates.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The code of the message template.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SMS_2342****',
- ],
- 'required' => false,
- 'example' => 'SMS_23423423',
- 'maxItems' => 51,
+ 'description' => 'The signature source. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The full or abbreviated name of an enterprise or public institution. **(Recommended)**'."\n"
+ ."\n"
+ .'- **5**: The full or abbreviated trademark name.'."\n"
+ ."\n"
+ .'- **2**: The full or abbreviated name of an app. **(Not recommended)**'."\n"
+ ."\n"
+ .'For more information, see [signature source](~~108076#section-fow-bfu-wo9~~).',
+ 'enumValueTitles' => [],
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'enum' => ['0', '1', '2', '3', '4', '5'],
+ 'example' => '2',
+ 'title' => '',
],
],
+ [
+ 'name' => 'ThirdParty',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The signature purpose. Valid values:'."\n"
+ ."\n"
+ .'- false: for own use (default). The signature is for a business, website, or product owned by your account\'s verified entity.'."\n"
+ ."\n"
+ .'- true: for third-party use. The signature is for a business, website, or product not owned by your account\'s verified entity.'."\n"
+ .' ><notice>Ensure the selected qualification ID matches the signature purpose (for own use or for third-party use).></notice>', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ [
+ 'name' => 'AuthorizationLetterId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The authorization letter ID. This parameter is required if the signature is for third-party use (`ThirdParty` is set to `true`). The Unified Social Credit Code on the authorization letter must match the code in the selected qualification\'s information.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000********1234', 'title' => ''],
+ ],
+ [
+ 'name' => 'TrademarkId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The trademark entity ID.'."\n"
+ ."\n"
+ .'> - This parameter is required if `SignSource` is set to 5.'."\n"
+ .'>'."\n"
+ .'> - You can obtain the trademark entity ID by calling the [Create Trademark Entity](~~CreateSmsTrademark~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000009081***', 'title' => ''],
+ ],
+ [
+ 'name' => 'AppIcpRecordId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the app\'s ICP filing entity.'."\n"
+ ."\n"
+ .'> - This parameter is required if `SignSource` is set to 2.'."\n"
+ .'>'."\n"
+ .'> - You can obtain the filing entity ID by calling the [Create ICP Filing Entity](~~CreateSmsAppIcpRecord~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100001***1234', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code.'."\n"
- ."\n"
- .'* The value OK indicates that the request was successful.'."\n"
- .'* Other values indicate that the request failed. For more information, see [Error codes](~~101346~~).'."\n",
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'Data' => [
- 'description' => 'Indicates whether the request is successful. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'string',
- 'example' => 'true',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C****',
- ],
+ 'RequestId' => ['description' => 'The unique identifier for the request, generated by Alibaba Cloud. Use this ID to troubleshoot issues.', 'type' => 'string', 'example' => 'A90E4451-FED7-49D2-87C8-00700A8C4D1D', 'title' => ''],
+ 'Code' => ['description' => 'The status code of the request. Valid values:'."\n"
+ ."\n"
+ .'- OK: The request was successful.'."\n"
+ ."\n"
+ .'- For other error codes, see [Error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'SignName' => ['description' => 'The updated signature name.', 'type' => 'string', 'example' => '登录验证', 'title' => ''],
+ 'OrderId' => ['description' => 'The order ID.'."\n"
+ ."\n"
+ .'Reviewers use this ID to look up the submission. Provide this order ID to request an expedited review.', 'type' => 'string', 'example' => '2004417****', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response body.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
- 200 => [
- [
- 'errorCode' => 'ForbiddenAction',
- 'errorMessage' => 'Access to the account is denied. Please contact the administrator.',
- ],
+ 400 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
+ ['errorCode' => 'ParameterMismatch.ThirdParty', 'errorMessage' => 'The type of signature, whether for personal use or for a third party, should be consistent with the qualifications.', 'description' => 'Whether the signature is used by a third party should be consistent with the qualification.'],
+ ['errorCode' => 'SignName.Exists', 'errorMessage' => 'Sorry, this signature already exists and cannot be applied for again.', 'description' => 'Sorry, this signature already exists and cannot be reapplied.'],
+ ['errorCode' => 'InvalidQualification', 'errorMessage' => 'The qualification should be approved.', 'description' => 'Invalid qualification, qualification should be approved.'],
+ ['errorCode' => 'InvalidApplySceneContent', 'errorMessage' => 'For certain signature sources, the '."\n"
+ .'applySceneContent should be an HTTP or HTTPS link.', 'description' => 'invalid application scenario, under some signature sources,'."\n"
+ .'The application scenario should be an HTTP or HTTPS link.'],
+ ['errorCode' => 'InvalidSignName', 'errorMessage' => 'The signature cannot contain spaces, special '."\n"
+ .'symbols, or all numbers.', 'description' => 'The signature cannot contain special characters such as simplified Chinese, English, or spaces other than digits, and cannot be all digits.'],
+ ['errorCode' => 'MissApplySceneContent', 'errorMessage' => 'In some signature sources, the applySceneContent is required.', 'description' => 'Under some signature sources, the application scenario is required.'],
+ ['errorCode' => 'MissingSignName', 'errorMessage' => 'The signature name cannot be empty.', 'description' => 'Signature name cannot be empty'],
+ ['errorCode' => 'SmsAuthorizationLetterNotMatch', 'errorMessage' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification.', 'description' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification'],
+ ['errorCode' => 'SmsAuthorizationLetterNotExist', 'errorMessage' => 'Authorization does not belong to the customer.', 'description' => ''],
+ ['errorCode' => 'SmsSignNotAuthorized', 'errorMessage' => 'the signature is not in the sign scope of the authorization letter.', 'description' => 'The signature is not within the scope of the authorization.'],
+ ['errorCode' => 'TrademarkNotExist', 'errorMessage' => 'The trademark does not exist.', 'description' => ''],
+ ['errorCode' => 'AppIcpRecordNotExist', 'errorMessage' => 'The APP-ICP record does not exist.', 'description' => ''],
+ ],
+ 404 => [
+ ['errorCode' => 'QualificationNotFound', 'errorMessage' => 'Qualification does not exist.', 'description' => 'Qualification does not exist.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Data\\": \\"true\\",\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AAF\\\\n\\"\\n}","errorExample":""},{"type":"xml","example":"<UntagResourcesResponse>\\n<RequestId>A90E4451-FED7-49D2-87C8-00700A8C****</RequestId>\\n<Data>true</Data>\\n<Code>OK</Code>\\n</UntagResourcesResponse>","errorExample":""}]',
- 'title' => 'UntagResources',
- 'description' => '### QPS limit'."\n"
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A90E4451-FED7-49D2-87C8-00700A8C4D1D\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"SignName\\": \\"登录验证\\",\\n \\"OrderId\\": \\"2004417****\\"\\n}","type":"json"}]',
+ 'title' => 'Update SMS Signature (New Interface)',
+ 'description' => '- For details about the updates to the signature and template APIs, see [Announcement on Updating Signature & Template APIs for Short Message Service](~~2806975~~).'."\n"
."\n"
- .'You can call this operation up to 50 times per second per account. If the number of the calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.'."\n",
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
- ],
- 'GetSmsTemplateList' => [
- 'summary' => '查询模板列表详情(新接口)',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
+ .'- You can modify signatures that are either **rejected** or **approved**. For guidance on handling review failures, see [Handling signature review failures](~~65990~~). Call this API to modify and resubmit the signature for review.'."\n"
+ ."\n"
+ .'- You cannot use this API to edit the name of a **rejected** signature. To edit the name, go to the [Short Message Service console](https://dysms.console.aliyun.com/domestic/text/sign).'."\n"
+ ."\n"
+ .'- Signatures you request using this API are synchronized with the Short Message Service console. For information on managing signatures in the console, see [Signatures](~~108073~~).',
+ 'changeSet' => [
+ ['createdAt' => '2025-12-16T07:45:19.000Z', 'description' => 'Error codes changed, Request parameters changed'],
+ ['createdAt' => '2025-12-11T12:44:33.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T12:44:31.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:24.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-12-11T10:08:22.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:09.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-14T02:07:43.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:38.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:37.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:01.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-11-03T13:14:00.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSmsSign'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:UpdateSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'UpdateSmsTemplate' => [
+ 'summary' => 'This API modifies a template that failed review and automatically resubmits it.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '219284',
+ 'abilityTreeNodes' => ['FEATUREdysms2H0K7P'],
],
'parameters' => [
[
- 'name' => 'SignName',
+ 'name' => 'TemplateName',
'in' => 'query',
- 'schema' => [
- 'title' => '签名',
- 'description' => '签名',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
+ 'schema' => ['description' => 'The name of the SMS template, up to 30 characters long. You can find the names of rejected templates on the [Messages in Chinese Mainland > Template Management](https://dysms.console.aliyun.com/domestic/text/template) tab in the console or by calling the [QuerySmsTemplateList](~~QuerySmsTemplateList~~) operation.', 'type' => 'string', 'required' => true, 'example' => '验证码模板', 'maxLength' => 30, 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateCode',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The code of the rejected SMS template. You can find the template code on the [Messages in Chinese Mainland > Template Management](https://dysms.console.aliyun.com/domestic/text/template) tab in the console or by calling the [QuerySmsTemplateList](~~QuerySmsTemplateList~~) operation.', 'type' => 'string', 'required' => true, 'example' => 'SMS_152550****', 'title' => ''],
+ ],
+ [
+ 'name' => 'TemplateContent',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The new template content, up to 500 characters long.'."\n"
+ ."\n"
+ .'The template content and its variables must comply with [SMS template specifications](~~463161~~) to be approved. To increase the approval rate and efficiency, refer to the common examples on the [Apply for Template](https://dysms.console.aliyun.com/domestic/text/template/add) page. For more information about variable specifications, see [TemplateContent parameter variable specifications](~~2806243~~).', 'type' => 'string', 'required' => true, 'example' => '您正在申请手机注册,验证码为:${code},5分钟内有效!', 'maxLength' => 500, 'title' => ''],
+ ],
+ [
+ 'name' => 'Remark',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Describe your business scenario, including a URL if applicable. You must also provide a complete SMS message example with populated variables. Providing this information as required is critical for template approval.', 'type' => 'string', 'required' => false, 'example' => '登录场景使用验证码', 'maxLength' => 500, 'title' => ''],
],
[
'name' => 'TemplateType',
'in' => 'query',
'schema' => [
- 'title' => '模板类型',
- 'description' => '模板类型',
+ 'description' => 'The SMS type. Valid values:'."\n"
+ ."\n"
+ .'- **0**: verification code.'."\n"
+ ."\n"
+ .'- **1**: SMS notification.'."\n"
+ ."\n"
+ .'- **2**: promotional SMS.'."\n"
+ ."\n"
+ .'- **3**: international/regional message.'."\n"
+ ."\n"
+ .'> Only enterprise-verified users can apply for promotional SMS and international/regional messages. For more information about the differences between personal and enterprise accounts, see [Usage notes](https://help.aliyun.com/zh/sms/user-guide/usage-notes?spm=a2c4g.11186623.0.0.67447f576NJnE8).',
'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'enumValueTitles' => [
- '',
- '',
- '',
- ],
+ 'format' => 'int32',
+ 'required' => true,
+ 'docRequired' => true,
'example' => '0',
+ 'enum' => ['0', '1', '2', '3'],
+ 'title' => '',
],
],
[
- 'name' => 'AuditStatus',
+ 'name' => 'RelatedSignName',
'in' => 'query',
- 'schema' => [
- 'title' => '模板审核状态',
- 'description' => '模板审核状态',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'enumValueTitles' => [
- '',
- '',
- '',
- ],
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The SMS signature associated with the template.', 'type' => 'string', 'required' => false, 'example' => '阿里云', 'title' => ''],
],
[
- 'name' => 'UsableStateList',
+ 'name' => 'TemplateRule',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The rules for the variables in the template. For details on how to define these rules, see the [example document](~~2806243~~).', 'type' => 'string', 'required' => false, 'example' => '{"code":"characterWithNumber"}', 'title' => ''],
+ ],
+ [
+ 'name' => 'MoreData',
'in' => 'query',
'style' => 'json',
'schema' => [
- 'title' => '模板状态',
- 'description' => '模板状态',
+ 'description' => 'Additional materials, such as supporting documents or business screenshots, to help reviewers understand your business. If `TemplateType` is set to `2` (promotional SMS), you must upload proof of user authorization. For more information, see [Upload specifications for user authorization materials](~~312341~~).',
'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'AVAILABLE' => '',
- 'MISSING_SIGNATURE' => '',
- 'MISSING_TRAFFIC_DRIVING' => '',
- 'MISSING_TRAFFIC_DRIVING_ARCHIVE' => '',
- 'UNAVAILABLE' => '',
- 'MISSING_VARIABLE' => '',
- ],
- 'example' => 'MISSING_SIGNATURE',
- ],
+ 'items' => ['description' => 'The OSS key of the uploaded file. For instructions on how to upload files, see [Upload files to OSS](~~2833114~~).', 'type' => 'string', 'required' => false, 'example' => '10098689758****/1234qwe.png', 'title' => ''],
'required' => false,
+ 'title' => '',
'example' => '',
],
],
[
- 'name' => 'TemplateName',
+ 'name' => 'ApplySceneContent',
'in' => 'query',
- 'schema' => [
- 'title' => '模板名称',
- 'description' => '模板名称',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值',
- ],
+ 'schema' => ['description' => 'The business scenario.'."\n"
+ ."\n"
+ .'- If the associated SMS signature\'s business scenario is "Live App", the `ApplySceneContent` parameter must be an app URL starting with `http://` or `https://`.'."\n"
+ ."\n"
+ .'- The `ApplySceneContent` parameter is required if the associated SMS signature\'s business scenario is "Registered Trademark" or "Name of Enterprise or Public Institution".', 'type' => 'string', 'required' => false, 'example' => 'http://www.aliyun.com/'."\n", 'title' => ''],
],
[
- 'name' => 'TemplateTag',
+ 'name' => 'IntlType',
'in' => 'query',
- 'schema' => [
- 'title' => '模板标签',
- 'description' => '模板标签',
- 'type' => 'string',
- 'required' => false,
- 'example' => '示例值示例值',
- ],
+ 'schema' => ['description' => 'The type of the international/regional template. This parameter is required when the **TemplateType** parameter is set to **3**. Valid values:'."\n"
+ ."\n"
+ .'- **0**: SMS notification.'."\n"
+ ."\n"
+ .'- **1**: promotional SMS.'."\n"
+ ."\n"
+ .'- **2**: verification code.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''],
],
[
- 'name' => 'TemplateCode',
+ 'name' => 'TrafficDriving',
'in' => 'query',
+ 'schema' => ['description' => '><warning>'."\n"
+ ."\n"
+ .'To manage SMS content security, messages that contain traffic-driving information such as phone numbers and URLs may be blocked by carriers, which can cause delivery failures. We recommend that you avoid including such information in your SMS templates to prevent delivery failures.'."\n"
+ ."\n"
+ .'></warning>'."\n"
+ ."\n"
+ .'A JSON string that contains a list of traffic-driving information.'."\n"
+ .'><notice>The value must be in the JSON format. Convert the value to a string before you pass it in.></notice>'."\n"
+ ."\n"
+ .'### 1. Fields'."\n"
+ ."\n"
+ .'{'."\n"
+ .'"trafficDrivingType":"Traffic-driving type",'."\n"
+ .'"trafficDrivingContent":"Traffic-driving content",'."\n"
+ .'"variableName":"variable name",'."\n"
+ .'"companyName":"Name of the enterprise or public institution",'."\n"
+ .'"organizationCode":"Unified Social Credit Code",'."\n"
+ .'"icpNo":"ICP filing/permit number",'."\n"
+ .'"icpPicOssKey":"OSS key of the ICP filing screenshot",'."\n"
+ .'"companyDifferentFromSignQuaReason":"The reason why the name of the enterprise or public institution is different from that in the SMS signature qualification"'."\n"
+ .'}'."\n"
+ ."\n"
+ .'### 2. Notes'."\n"
+ ."\n"
+ .'- If the content is not a variable, do not pass the `variableName` field.'."\n"
+ ."\n"
+ .'- If the name of the enterprise or public institution is different from that in the SMS signature qualification, provide the `companyDifferentFromSignQuaReason` field.'."\n"
+ ."\n"
+ .'- If `trafficDrivingType` is set to `DOMAIN`, you must provide all the fields.'."\n"
+ ."\n"
+ .'- For `trafficDrivingType` values other than `DOMAIN`, the `trafficDrivingType`, `trafficDrivingContent`, `companyName`, and `organizationCode` fields are required. The `variableName` and `companyDifferentFromSignQuaReason` fields are optional.'."\n"
+ ."\n"
+ .'### 3. TrafficDrivingType enumeration'."\n"
+ ."\n"
+ .'><warning>'."\n"
+ ."\n"
+ .'Due to regulatory requirements, mobile numbers are not supported.'."\n"
+ ."\n"
+ .'></warning>'."\n"
+ ."\n"
+ .'- `DOMAIN`: A domain name.'."\n"
+ ."\n"
+ .'- `FIXED_PHONE`: A fixed-line phone number.'."\n"
+ ."\n"
+ .'- `400_PHONE`: A phone number that starts with 400.'."\n"
+ ."\n"
+ .'- `800_PHONE`: A phone number that starts with 800.'."\n"
+ ."\n"
+ .'- `95_PHONE`: A phone number that starts with 95.'."\n"
+ ."\n"
+ .'- `96_PHONE`: A phone number that starts with 96.'."\n"
+ ."\n"
+ .'- `1_PHONE`: A 3-digit to 8-digit phone number that starts with 1.'."\n"
+ ."\n"
+ .'- `OTHER_PHONE`: Another type of phone number.', 'type' => 'string', 'required' => false, 'example' => '[{"trafficDrivingType":"DOMAIN","trafficDrivingContent":"aliyun.com","companyName":"阿里云计算有限公司","organizationCode":"91330****73959654P","icpNo":"浙B2-20****01-4","icpPicOssKey":"db7784d8-cb0c-498f-****-295f1ad6d665_mf29l7nf.png","companyDifferentFromSignQuaReason":"这是一段说明文字"},{"trafficDrivingType":"1_PHONE","trafficDrivingContent":"1**86","variableName":"my1Phone","companyName":"阿里云计算有限公司","organizationCode":"91330****73959654P","companyDifferentFromSignQuaReason":"这是一段说明文字"}]', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '模板code',
- 'description' => '模板code',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SMS_1688168',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['description' => 'The unique identifier of the request, generated by Alibaba Cloud. Use this request ID to troubleshoot issues.', 'type' => 'string', 'example' => '819BE656-D2E0-4858-8B21-B2E477085AA0', 'title' => ''],
+ 'Code' => ['description' => 'The status code of the request. Valid values:'."\n"
+ ."\n"
+ .'- `OK`: The request succeeds.'."\n"
+ ."\n"
+ .'- For other error codes, see the **Error codes** section of this topic or the product [API error codes](~~101346~~).', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''],
+ 'TemplateName' => ['description' => 'The name of the SMS template.', 'type' => 'string', 'example' => '验证码', 'title' => ''],
+ 'TemplateCode' => ['description' => 'The template code.'."\n"
+ ."\n"
+ .'After you submit a modified template for review, you can use the template code to call the [GetSmsTemplate](~~GetSmsTemplate~~) operation and query the review details. You can also [configure delivery receipts](https://help.aliyun.com/zh/sms/developer-reference/configure-delivery-receipts-1) to receive the review status in a [TemplateSmsReport](~~120999~~) message.', 'type' => 'string', 'example' => 'SMS_152550****', 'title' => ''],
+ 'OrderId' => ['description' => 'The order ID.'."\n"
+ ."\n"
+ .'Reviewers use this ID to query the review status. Provide this order ID if you request an expedited review.', 'type' => 'string', 'example' => '20041271****', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'Access to the account is denied. Please contact the administrator.', 'description' => ''],
+ ['errorCode' => 'AssocSignUnapproved', 'errorMessage' => 'Associated signature must be approved.', 'description' => 'The associated signature needs to use the approved signature.'],
+ ['errorCode' => 'InvalidTemplateRule', 'errorMessage' => 'The template variable format is non-standard. Please refer to the variable format specifications in the help documentation.', 'description' => 'The template variable does not meet the specifications. Please check the SMS template specification document and pass in the template variable that meets the requirements.'],
+ ['errorCode' => 'InvalidTemplateRule.Format', 'errorMessage' => 'The parameter TemplateRule format must be JSON.', 'description' => 'Template variable rules must be filled with JSON-formatted data.'],
+ ['errorCode' => 'InvalidMoreData', 'errorMessage' => 'Specified parameter MoreData is not valid.', 'description' => 'The uploaded more information is invalid.'],
+ ['errorCode' => 'TemplateVarLimitExceeded', 'errorMessage' => 'The verification code template only supports one variable.', 'description' => 'The verification code template only supports one variable.'],
+ ['errorCode' => 'InvalidTemplateContent.Format', 'errorMessage' => 'Invalid template content format.', 'description' => 'The template content is not in the correct format.'],
+ ['errorCode' => 'ServiceNotOpened', 'errorMessage' => 'This product service is not opened.', 'description' => 'Product service not activated'],
+ ],
+ 404 => [
+ ['errorCode' => 'MissingTemplateName', 'errorMessage' => 'The template name cannot be empty.', 'description' => 'Template name cannot be empty.'],
+ ['errorCode' => 'SmsSignatureNotFound', 'errorMessage' => 'The associated SMS signature does not exist.', 'description' => 'The associated SMS signature does not exist.'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"819BE656-D2E0-4858-8B21-B2E477085AA0\\",\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"OK\\",\\n \\"TemplateName\\": \\"验证码\\",\\n \\"TemplateCode\\": \\"SMS_152550****\\",\\n \\"OrderId\\": \\"20041271****\\"\\n}","type":"json"}]',
+ 'title' => 'Update SMS Template (New Interface)',
+ 'description' => '- For details about the changes to the signature and template APIs, see [Announcement on Updating Signature & Template APIs for Short Message Service](~~2806975~~).'."\n"
+ ."\n"
+ .'- You can only modify templates that have failed review. For troubleshooting, see [Suggestions for handling failed SMS template reviews](~~65990~~). After modifying a template with this API, you must resubmit it for review.'."\n"
+ ."\n"
+ .'- Template changes made using this API are synchronized with the Short Message Service console. To learn more about managing templates in the console, see [SMS templates](~~108085~~).'."\n"
+ ."\n"
+ .'### QPS limit'."\n"
+ ."\n"
+ .'The QPS limit for this API is 1,000 queries per second per user. If you exceed this limit, your API calls will be throttled. This can affect your business, so please use the API responsibly.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-12T14:41:32.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:41:26.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:37:16.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:37:06.000Z', 'description' => 'OpenAPI offline'],
+ ['createdAt' => '2025-08-12T14:37:03.000Z', 'description' => 'OpenAPI offline'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSmsTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:UpdateSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'ValidPhoneCode' => [
+ 'summary' => 'When applying for SMS qualification, the administrator\'s phone number must be verified. This operation verifies the phone number and the received verification code.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'PageIndex',
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '264877',
+ 'abilityTreeNodes' => ['FEATUREdysmsJ2BZAJ'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PhoneNo',
'in' => 'query',
- 'schema' => [
- 'title' => '页码, 默认1',
- 'description' => '页码, 默认1',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['title' => '', 'description' => 'The phone number.', 'type' => 'string', 'required' => true, 'example' => '137****1234'],
],
[
- 'name' => 'PageSize',
+ 'name' => 'CertifyCode',
'in' => 'query',
- 'schema' => [
- 'title' => '每页数量,默认10',
- 'description' => '每页数量,默认10',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['title' => '', 'description' => 'The verification code.', 'type' => 'string', 'required' => true, 'example' => '1234'],
],
],
'responses' => [
@@ -11412,342 +8435,1608 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'AccessDeniedDetail' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'None',
- ],
- 'RequestId' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- 'Message' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
+ 'AccessDeniedDetail' => ['description' => 'The details about the access denial. This field is returned only if the RAM check fails.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request. The ID is a unique identifier generated by Alibaba Cloud for the request and can be used to troubleshoot and locate issues.', 'type' => 'string', 'title' => '', 'example' => '90E63D28-E31D-1EB2-8939-A9486641****'."\n"],
+ 'Message' => ['description' => 'The description of the status code.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Data' => [
- 'type' => 'object',
- 'properties' => [
- 'PageSize' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '78',
- ],
- 'Total' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '64',
- ],
- 'PageNo' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '97',
- ],
- 'List' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'TemplateCode' => [
- 'title' => '模板code',
- 'description' => '模板code',
- 'type' => 'string',
- 'example' => '示例值示例值示例值',
- ],
- 'GmtCreate' => [
- 'title' => '创建时间',
- 'description' => '创建时间',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- 'AuditStatus' => [
- 'title' => '模板审核状态',
- 'description' => '模板审核状态',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '88',
- ],
- 'TemplateTag' => [
- 'title' => '模板标签',
- 'description' => '模板标签',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'TagKey' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- 'TagValue' => [
- 'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- ],
- ],
- 'example' => '',
- ],
- 'WorkOrderId' => [
- 'title' => '工单号',
- 'description' => '工单号',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- 'UsableStateList' => [
- 'title' => '模板可用状态',
- 'description' => '模板可用状态',
- 'type' => 'array',
- 'items' => [
- 'type' => 'string',
- ],
- 'example' => '',
- ],
- 'TemplateName' => [
- 'title' => '模板名称',
- 'description' => '模板名称',
- 'type' => 'string',
- 'example' => '示例值',
- ],
- 'TemplateType' => [
- 'title' => '模板类型',
- 'description' => '模板类型',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '43',
- ],
- 'SignName' => [
- 'title' => '签名',
- 'description' => '签名',
- 'type' => 'string',
- 'example' => '示例值示例值',
- ],
- ],
- ],
- 'example' => '',
- ],
- ],
- ],
- 'Code' => [
+ 'description' => 'Indicates whether the verification was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The verification was successful.'."\n"
+ .'- **false**: The verification failed.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
+ 'type' => 'boolean',
'title' => '',
- 'description' => '',
- 'type' => 'string',
- 'example' => '示例值示例值',
+ 'example' => 'true',
],
+ 'Code' => ['description' => 'The status code of the request.'."\n"
+ ."\n"
+ .'- A value of OK indicates that the request was successful.'."\n"
+ .'- For other error codes, see the error code list in this topic or the [Error codes](~~101346~~) of the product.', 'type' => 'string', 'title' => '', 'example' => 'OK'],
'Success' => [
- 'title' => '',
- 'description' => '',
+ 'description' => 'Indicates whether the operation was successful. Valid values:'."\n"
+ ."\n"
+ .'- true: The call was successful.'."\n"
+ .'- false: The call failed.',
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'type' => 'boolean',
+ 'title' => '',
'example' => 'true',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"无\\",\\n \\"RequestId\\": \\"90E63D28-E31D-1EB2-8939-A9486641****\\\\n\\",\\n \\"Message\\": \\"OK\\",\\n \\"Data\\": true,\\n \\"Code\\": \\"OK\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'Verify the phone verification code',
+ 'description' => '- Call the [RequiredPhoneCode](~~RequiredPhoneCode~~) operation first. Alibaba Cloud sends an SMS verification code to the phone number that you provided.'."\n"
+ .'- This operation does not affect the SMS qualification application process and is used only to verify the SMS verification code. When you submit the actual application, pass the verification code into the `CertifyCode` parameter of the [SubmitSmsQualification](~~SubmitSmsQualification~~) operation.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-01T04:05:19.000Z', 'description' => 'OpenAPI offline'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AccessDeniedDetail\\": \\"None\\",\\n \\"RequestId\\": \\"示例值\\",\\n \\"Message\\": \\"示例值示例值\\",\\n \\"Data\\": {\\n \\"PageSize\\": 78,\\n \\"Total\\": 64,\\n \\"PageNo\\": 97,\\n \\"List\\": [\\n {\\n \\"TemplateCode\\": \\"示例值示例值示例值\\",\\n \\"GmtCreate\\": \\"示例值\\",\\n \\"AuditStatus\\": 88,\\n \\"TemplateTag\\": [\\n {\\n \\"TagKey\\": \\"示例值\\",\\n \\"TagValue\\": \\"示例值示例值\\"\\n }\\n ],\\n \\"WorkOrderId\\": \\"示例值示例值\\",\\n \\"UsableStateList\\": [\\n \\"MISSING_SIGNATURE\\\\n\\"\\n ],\\n \\"TemplateName\\": \\"示例值\\",\\n \\"TemplateType\\": 43,\\n \\"SignName\\": \\"示例值示例值\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"示例值示例值\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ 'product' => ['code' => 'dysms', 'title' => '短信服务'],
+ ],
+ 'ramActions' => [],
],
],
'endpoints' => [
+ ['regionId' => 'cn-chengdu', 'regionName' => 'China (Chengdu)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-huhehaote', 'regionName' => 'China (Hohhot)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => 'dysmsapi-xman.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.ap-southeast-1.aliyuncs.com', 'endpoint' => 'dysmsapi.ap-southeast-1.aliyuncs.com', 'vpc' => 'dysmsapi-xman.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-5', 'regionName' => 'Indonesia (Jakarta)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'dysmsapi.ap-southeast-5.aliyuncs.com', 'endpoint' => 'dysmsapi.ap-southeast-5.aliyuncs.com', 'vpc' => 'dysmsapi-xman-vpc.ap-southeast-5.aliyuncs.com'],
+ ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'dysmsapi.eu-central-1.aliyuncs.com', 'endpoint' => 'dysmsapi.eu-central-1.aliyuncs.com', 'vpc' => 'dysmsapi-xman-vpc.eu-central-1.aliyuncs.com'],
+ ['regionId' => 'cn-shenzhen-finance-1', 'regionName' => 'China South 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-shanghai-finance-1', 'regionName' => 'China East 2 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-north-2-gov-1', 'regionName' => 'Beijing Government Cloud', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-hangzhou-finance', 'regionName' => 'China East 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-beijing-finance-1', 'regionName' => 'China North 2 Finance (Preview)', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'dysmsapi.aliyuncs.com', 'endpoint' => 'dysmsapi.aliyuncs.com', 'vpc' => ''],
+ ],
+ 'errorCodes' => [
+ ['code' => 'Account.Abnormal', 'message' => 'The status of Alibaba Cloud account is invalid.', 'http_code' => 400, 'description' => 'The account status is invalid.'],
+ ['code' => 'AdminBackOssFileNotUploadError', 'message' => 'Administrator ID card portrait photo not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminDateNotValid', 'message' => 'Current time is outside the administrator ID card validity period.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminFrontOssFileNotUploadError', 'message' => 'Administrator ID card national emblem photo not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardExpdateNotMatchRegexError', 'message' => 'Invalid administrator ID card expiration time format.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardFrontFaceFileError', 'message' => 'Invalid format for administrator\'s ID card national emblem photo.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardFrontFaceNullError', 'message' => 'Administrator\'s ID card national emblem photo cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardNoNullError', 'message' => 'Administrator\'s ID number cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardNotMatchRegex', 'message' => 'Invalid administrator ID number format.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardPicsFileError', 'message' => 'Invalid format for administrator\'s ID card portrait photo.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardPicsNullError', 'message' => 'Administrator\'s ID card portrait photo cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminIdcardTypeError', 'message' => 'Invalid administrator ID card type.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AdminNameNullError', 'message' => 'Administrator\'s name cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'Amount.NotEnough', 'message' => 'The account balance is insufficient.', 'http_code' => 400, 'description' => 'Your account balance is insufficient.'],
+ ['code' => 'AssocSignUnapproved', 'message' => 'Associated signature must be approved.', 'http_code' => 400, 'description' => 'The associated signature needs to use the approved signature.'],
+ ['code' => 'AuthorizationLetterDateNotMatchRegex', 'message' => 'The format of the authorization letter\'s effective and expiry date is incorrect.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AuthorizationLetterDateNotValid', 'message' => 'The current time is not within the validity period of the authorization letter.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AuthorizationLetterNameNotMatchRegex', 'message' => 'The authorization letter name cannot be empty and must consist of Chinese, English characters or a combination with numbers, symbols or purely numeric input are not supported.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AuthorizationLetterNameOverLimit', 'message' => 'The authorization letter name exceeds the 100-character length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AuthorizationLetterNameRepeat', 'message' => 'The authorization letter name is duplicated.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AuthorizationNotMatchRegex', 'message' => 'The authorizer name cannot be empty and currently does not support any symbols except middle dots, spaces, Chinese brackets, and English parentheses or purely numeric input.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AuthorizationOssFileNotUploadError', 'message' => 'The authorization letter file has not been uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AuthorizationOverLimit', 'message' => 'The authorizer exceeds the 1000-character length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'BindSignDeleteFailed', 'message' => 'The qualification is bound to a signature and cannot be deleted temporarily.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'BusinessLicenseDateNotMatchRegexError', 'message' => 'Invalid business license expiration time format.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'BusinessLicenseDateNotValid', 'message' => 'Current time is outside the business license validity period.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'BusinessLicenseOssFileNotUploadError', 'message' => 'Business license file not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'BusinessLicensePicsFileError', 'message' => 'Invalid business license file format.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'BusinessLicensePicsNullError', 'message' => 'Business license documents cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'BusinessLicenseTypeError', 'message' => 'Invalid business license type.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'card template.NotFound', 'message' => 'The resource of "card template" is not found..', 'http_code' => 400, 'description' => 'Card template not found'],
+ ['code' => 'CertifyCodeError', 'message' => 'SMS verification code is incorrect.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'CompanyNameNullError', 'message' => 'Company name cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'CompanyTypeError', 'message' => 'Invalid company type.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'CompanyVerificationFailedCompanyStateInvalid', 'message' => 'Four Elements Verification Failed: Company is not in normal operation.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'CompanyVerificationFailedFourElementsError', 'message' => 'Four Elements Verification Failed: Authentication Failed.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'CompanyVerificationFailedMismatch', 'message' => 'Four Elements Verification Failed: Mismatch between Legal Representative and Company Information.', 'http_code' => 400, 'description' => 'The verification of the four elements of the enterprise fails, and the verification of the legal person and the enterprise information is inconsistent.'],
+ ['code' => 'CompanyVerificationFailedNoCompany', 'message' => 'Four Elements Verification Failed: Company Not Found.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'CompanyVerificationFailedNoLegalPerson', 'message' => 'Four Elements Verification Failed: Legal Representative Not Found.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'CustNotExistError', 'message' => 'Customer\'s cloud communication information is invalid.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'DayLimitControl', 'message' => 'The daily volume limit is exceeded.', 'http_code' => 400, 'description' => 'The number of the sent messages has exceeded the daily limit.'],
+ ['code' => 'ERROR_PARTNER_ID', 'message' => '查询影子pid结果为空或者异常', 'http_code' => 200, 'description' => 'the shadow pid query result is empty or abnormal.'],
+ ['code' => 'ExtCodeInactive', 'message' => 'No major customer extension code has been activated.', 'http_code' => 400, 'description' => 'Large customer extension code not turned on'],
+ ['code' => 'ExtCodeIsActive', 'message' => 'The custom extension code is in use and cannot be modified.', 'http_code' => 400, 'description' => 'The custom extension code is in use and cannot be modified.'],
+ ['code' => 'ExtCodeNotFound', 'message' => 'Custom extension code does not exist.', 'http_code' => 400, 'description' => 'Custom extension code does not exist'],
+ ['code' => 'ExtCodeNotReady', 'message' => 'The custom extension code control has not been fully implemented. Please try again later.', 'http_code' => 400, 'description' => 'Custom extension code control is not effective, please try again later'],
+ ['code' => 'FILTER', 'message' => '关键字拦截', 'http_code' => 400, 'description' => 'We recommend that you modify the message content.'],
+ ['code' => 'Forbidden.Operation', 'message' => 'You are not authorized to perform the operation.', 'http_code' => 400, 'description' => 'You are not authorized to perform this operation.'],
+ ['code' => 'ForbiddenAction', 'message' => 'Access to the account is denied. Please contact the administrator.', 'http_code' => 200, 'description' => 'No access, please contact administrator.'],
+ ['code' => 'GrayCustAccessError', 'message' => 'This customer is not authorized to use the OpenAPI. Please contact support for whitelisting.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'IntlSmsService.Unvalabe', 'message' => 'The international SMS service has not been activated. You cannot create an international SMS template.', 'http_code' => 400, 'description' => 'The international SMS service has not been activated. You cannot create an international SMS template.'],
+ ['code' => 'InvalidAction.NotFound', 'message' => 'The specified API is not found.', 'http_code' => 400, 'description' => 'The specified API action is not found'],
+ ['code' => 'InvalidApplySceneContent', 'message' => 'For certain signature sources, the '."\n"
+ .'applySceneContent should be an HTTP or HTTPS link.', 'http_code' => 400, 'description' => 'invalid application scenario, under some signature sources,'."\n"
+ .'The application scenario should be an HTTP or HTTPS link.'],
+ ['code' => 'InvalidApplySceneContent', 'message' => 'For certain signature sources, the '."\n"
+ .'applySceneContent should be an HTTP or HTTPS link.', 'http_code' => 400, 'description' => 'invalid application scenario. under some signature sources, the application scenario should be an http or https link.'],
+ ['code' => 'InvalidMoreData', 'message' => 'Specified parameter MoreData is not valid.', 'http_code' => 400, 'description' => 'The uploaded more information is invalid.'],
+ ['code' => 'InvalidParam.PageSize', 'message' => 'PageSize must be less than or equal to 50.', 'http_code' => 400, 'description' => 'pageSize must be less than or equal to 50'],
+ ['code' => 'InvalidParam.PhoneNumber', 'message' => 'Incorrect phone number format.', 'http_code' => 400, 'description' => 'Incorrect phone number format'],
+ ['code' => 'InvalidParam.SendDate', 'message' => 'Only the last 30 days can be queried.', 'http_code' => 400, 'description' => 'Only the data of the last 30 days can be queried'],
+ ['code' => 'InvalidParameter', 'message' => 'Parameter invalid.', 'http_code' => 400, 'description' => 'Parameter error, please check the parameter'],
+ ['code' => 'InvalidParameter', 'message' => 'At most, only one parameter can be passed among bizCardId, bizSmsId, and bizDigitId.', 'http_code' => 400, 'description' => 'At most, only one parameter can be passed among bizCardId, bizSmsId, and bizDigitId.'],
+ ['code' => 'InvalidParameter.Channel', 'message' => 'The specified Channel is invalid.', 'http_code' => 400, 'description' => 'The value of the Channel parameter is invalid.'],
+ ['code' => 'InvalidParameter.endDate', 'message' => 'The specified parameter endDate is not valid.', 'http_code' => 400, 'description' => 'The input parameter endDate does not meet the parameter specification.'],
+ ['code' => 'InvalidParameter.ExternalId', 'message' => 'The specified ExternalId is invalid.', 'http_code' => 400, 'description' => 'The value of the ExternalId parameter is invalid.'],
+ ['code' => 'InvalidParameter.From', 'message' => 'The specified From is invalid.', 'http_code' => 400, 'description' => 'The value of the From parameter is invalid.'],
+ ['code' => 'InvalidParameter.pageSize', 'message' => 'PageSize must be less than or equal to 50.', 'http_code' => 400, 'description' => 'pageSize must be less than or equal to 50'],
+ ['code' => 'InvalidParameter.phoneNumber', 'message' => 'Incorrect phone number format.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.sendDate', 'message' => 'Only the last 30 days can be queried.', 'http_code' => 400, 'description' => 'Only the data of the last 30 days can be queried'],
+ ['code' => 'InvalidParameter.SenderId', 'message' => 'The specified SenderId is invalid.', 'http_code' => 400, 'description' => 'The value of the SenderId parameter is invalid.'],
+ ['code' => 'InvalidParameter.SMS_CARD_MESSAGE NO ACCESS', 'message' => 'The user has not activated card SMS within the SMS service.', 'http_code' => 400, 'description' => 'The user has not activated the card SMS in the SMS service.'],
+ ['code' => 'InvalidParameter.To', 'message' => 'The specified To is invalid.', 'http_code' => 400, 'description' => 'The value of the To parameter is invalid.'],
+ ['code' => 'InvalidParameter.To', 'message' => 'The specified parameter To is not valid.', 'http_code' => 400, 'description' => 'The to field of the passed-in parameter is invalid.'],
+ ['code' => 'InvalidParameter.Type', 'message' => 'The specified Type is invalid.', 'http_code' => 400, 'description' => 'The value of the Type parameter is invalid.'],
+ ['code' => 'InvalidQualification', 'message' => 'The qualification should be approved.', 'http_code' => 400, 'description' => 'Invalid qualification, qualification should be approved.'],
+ ['code' => 'InvalidSignName', 'message' => 'The signature cannot contain spaces, special '."\n"
+ .'symbols, or all numbers.', 'http_code' => 400, 'description' => 'The signature cannot contain special characters such as simplified Chinese, English, or spaces other than digits, and cannot be all digits.'],
+ ['code' => 'InvalidTemplateContent.Format', 'message' => 'Invalid template content format.', 'http_code' => 400, 'description' => 'The template content is not in the correct format.'],
+ ['code' => 'InvalidTemplateRule', 'message' => 'The template variable format is non-standard. Please refer to the variable format specifications in the help documentation.', 'http_code' => 400, 'description' => 'The template variable does not meet the specifications. Please check the SMS template specification document and pass in the template variable that meets the requirements.'],
+ ['code' => 'InvalidTemplateRule.Format', 'message' => 'The template variable does not conform to the specification, please check the https://help.aliyun.com/zh/sms/user-guide/message-template-specifications/.', 'http_code' => 400, 'description' => 'The template variable does not conform to the specification, please check the https://help.aliyun.com/zh/sms/user-guide/message-template-specifications/'],
+ ['code' => 'InvalidTemplateRule.Format', 'message' => 'The parameter TemplateRule format must be JSON.', 'http_code' => 400, 'description' => 'Template variable rules must be filled with JSON-formatted data.'],
+ ['code' => 'InvalidTimeStamp.Expired', 'message' => 'The specified timestamp has expired.', 'http_code' => 400, 'description' => 'The specified timestamp is expired'],
+ ['code' => 'InvalidVersion', 'message' => 'Invalid API version.', 'http_code' => 400, 'description' => 'The specified API version is invalid'],
+ ['code' => 'INVALID_PARAMETERS', 'message' => 'The format of MessageId is wrong.', 'http_code' => 200, 'description' => 'The parameter is incorrect. Check whether the parameter is correct.'],
+ ['code' => 'isp.GATEWAY_ERROR', 'message' => 'Unexpected gateway error.', 'http_code' => 400, 'description' => 'Unexpected gateway error'],
+ ['code' => 'isp.RAM_PERMISSION_DENY', 'message' => 'RAM权限DENY', 'http_code' => 400, 'description' => 'We recommend that you contact SMS technical support to fix the issue.'],
+ ['code' => 'isp.RAM_PERMISSION_DENY', 'message' => 'The RAM user is not authorized.', 'http_code' => 400, 'description' => 'The RAM user is not authorized.'],
+ ['code' => 'isp.SYSTEM_ERROR', 'message' => '系统错误', 'http_code' => 500, 'description' => 'We recommend that you contact SMS technical support to fix the issue.'],
+ ['code' => 'isp.SYSTEM_ERROR', 'message' => 'A system error occurred.', 'http_code' => 500, 'description' => 'Unexpected system error occurred'],
+ ['code' => 'isv.ACCOUNT_ABNORMAL', 'message' => '账户异常', 'http_code' => 400, 'description' => 'We recommend that you contact SMS technical support to confirm your account.'],
+ ['code' => 'isv.ACCOUNT_ABNORMAL', 'message' => 'The account is in an abnormal state.', 'http_code' => 400, 'description' => 'The specified account status is abnormal'],
+ ['code' => 'isv.ACCOUNT_NOT_EXISTS', 'message' => 'Account not found', 'http_code' => 404, 'description' => 'We recommend that you open an account.'],
+ ['code' => 'isv.ACCOUNT_NOT_EXISTS', 'message' => 'The specified account does not exist.', 'http_code' => 400, 'description' => 'The specified account does not exist.'],
+ ['code' => 'isv.AMOUNT_NOT_ENOUGH', 'message' => '账户余额不足', 'http_code' => 400, 'description' => 'We recommend that you add funds to the account.'],
+ ['code' => 'isv.AMOUNT_NOT_ENOUGH', 'message' => 'The resource plan is unavailable or your account does not have a sufficient balance.', 'http_code' => 400, 'description' => 'The resource plan is unavailable or your account does not have a sufficient balance.'],
+ ['code' => 'isv.BLACK_KEY_CONTROL_LIMIT', 'message' => '黑名单管控', 'http_code' => 400, 'description' => 'We recommend that you contact SMS technical support to remove your account from the blacklist.'],
+ ['code' => 'isv.BLACK_KEY_CONTROL_LIMIT', 'message' => 'The specified template variable includes one or more blocked keywords.', 'http_code' => 400, 'description' => 'The specified template variable includes one or more blocked keywords.'],
+ ['code' => 'isv.BUSINESS_LIMIT_CONTROL', 'message' => '业务限流', 'http_code' => 403, 'description' => 'We recommend that you contact SMS technical support to fix the issue.'],
+ ['code' => 'isv.BUSINESS_LIMIT_CONTROL', 'message' => 'Cloud communications throttling has been triggered.', 'http_code' => 400, 'description' => 'The business limit is reached'],
+ ['code' => 'isv.CUSTOMER_REFUSED', 'message' => 'The user refuses to receive marketing messages.', 'http_code' => 400, 'description' => 'Customer refused to receive specified MKT sms'],
+ ['code' => 'isv.DAY_LIMIT_CONTROL', 'message' => 'The daily threshold of the messages that the user can send has been reached.', 'http_code' => 400, 'description' => 'The daily threshold of the messages that the user can send has been reached.'],
+ ['code' => 'isv.DENY_IP_RANGE', 'message' => 'SMS does not support the region with the source IP address.', 'http_code' => 400, 'description' => 'Not supported source IP range for SMS'],
+ ['code' => 'isv.DOMESTIC_NUMBER_NOT_SUPPORTED', 'message' => 'Templates for regions outside the Chinese mainland cannot be used for messages sent to numbers in the Chinese mainland.', 'http_code' => 400, 'description' => 'International template is not supported for China-mainland number'],
+ ['code' => 'isv.ERROR_EMPTY_FILE', 'message' => 'The file uploaded is empty.', 'http_code' => 400, 'description' => 'The file uploaded is empty'],
+ ['code' => 'isv.ERROR_SIGN_NOT_DELETE', 'message' => 'Signatures pending approval cannot be deleted.', 'http_code' => 400, 'description' => 'Not allow to delete sign name in approval process'],
+ ['code' => 'isv.ERROR_SIGN_NOT_MODIFY', 'message' => 'Effective signatures cannot be modified.', 'http_code' => 400, 'description' => 'Not allow to modify effective sign name'],
+ ['code' => 'isv.ERROR_TEMPLATE_NOT_DELETE', 'message' => 'Templates pending approval cannot be deleted.', 'http_code' => 400, 'description' => 'Not allow to delete template in approval process'],
+ ['code' => 'isv.ERROR_TEMPLATE_NOT_MODIFY', 'message' => 'Approved templates cannot be modified.', 'http_code' => 400, 'description' => 'Not allow to modify template effective process'],
+ ['code' => 'isv.EXTEND_CODE_ERROR', 'message' => 'SmsUpExtendCode should be unique for each signature.', 'http_code' => 400, 'description' => 'SmsUpExtendCode should be unique for each sign name'],
+ ['code' => 'ISV.Forbidden', 'message' => 'SubUser not authorized to operate on the specified resource.', 'http_code' => 200, 'description' => ''],
+ ['code' => 'isv.INVALID_JSON_PARAM', 'message' => '参数格式错误,请修改为字符串值', 'http_code' => 400, 'description' => 'The specified parameter is invalid. Change the parameter value to a character string.'],
+ ['code' => 'isv.INVALID_JSON_PARAM', 'message' => 'The JSON string failed to be parsed.', 'http_code' => 400, 'description' => 'The JSON string failed to be parsed.'],
+ ['code' => 'isv.INVALID_PARAMETERS', 'message' => '参数异常', 'http_code' => 400, 'description' => 'We recommend that you specify valid parameters.'],
+ ['code' => 'isv.INVALID_PARAMETERS', 'message' => 'The input parameters are invalid.', 'http_code' => 400, 'description' => 'The input parameters are invalid.'],
+ ['code' => 'isv.MOBILE_COUNT_OVER_LIMIT', 'message' => '手机号码数量超过限制', 'http_code' => 400, 'description' => 'We recommend that you reduce mobile phone numbers.'],
+ ['code' => 'isv.MOBILE_COUNT_OVER_LIMIT', 'message' => 'The number of mobile phone numbers exceeds 1,000.', 'http_code' => 400, 'description' => 'The number of mobile phone numbers exceeds 1,000.'],
+ ['code' => 'isv.MOBILE_NUMBER_ILLEGAL', 'message' => '手机号码格式错误', 'http_code' => 400, 'description' => 'We recommend that you specify valid mobile phone numbers.'],
+ ['code' => 'isv.MOBILE_NUMBER_ILLEGAL', 'message' => 'The format of the specified mobile phone number is invalid.', 'http_code' => 400, 'description' => 'The format of the specified mobile phone number is invalid.'],
+ ['code' => 'isv.NOT_SUPPORTED_COUNTRY', 'message' => '暂不支持该国家的国际短信发送', 'http_code' => 400, 'description' => 'The international SMS sending of this country is not supported.'],
+ ['code' => 'isv.NO_AVAILABLE_SHORT_URL', 'message' => 'No available short URLs in the account.', 'http_code' => 400, 'description' => 'No available short URL found'],
+ ['code' => 'isv.OUT_OF_SERVICE', 'message' => '业务停机', 'http_code' => 400, 'description' => 'We recommend that you contact SMS technical support to fix the issue.'],
+ ['code' => 'isv.OUT_OF_SERVICE', 'message' => 'The account has been out of service due to insufficient balance.', 'http_code' => 400, 'description' => 'Account is out of service due to insufficient balance'],
+ ['code' => 'isv.PARAM_LENGTH_LIMIT', 'message' => '参数超出长度限制', 'http_code' => 400, 'description' => 'We recommend that you modify the parameter length.'],
+ ['code' => 'isv.PARAM_LENGTH_LIMIT', 'message' => 'The length of the specified variable exceeds the limit.', 'http_code' => 400, 'description' => 'The length of the specified variable exceeds the limit.'],
+ ['code' => 'isv.PARAM_NOT_SUPPORT_URL', 'message' => '变量不支持传入URL', 'http_code' => 400, 'description' => 'URLs are not allowed in variables.'],
+ ['code' => 'isv.PARAM_NOT_SUPPORT_URL', 'message' => 'URLs cannot be specified for the parameter.', 'http_code' => 400, 'description' => 'Not support URL in parameter'],
+ ['code' => 'isv.PHONENUMBERS_OVER_LIMIT', 'message' => 'The number of mobile phone numbers exceeds 50,000.', 'http_code' => 400, 'description' => 'The number of mobile phone numbers exceeds 50,000.'],
+ ['code' => 'isv.PRODUCT_UNSUBSCRIBE', 'message' => '产品未开通', 'http_code' => 400, 'description' => 'We recommend that you purchase the service.'],
+ ['code' => 'isv.PRODUCT_UNSUBSCRIBE', 'message' => 'SMS has not been activated.', 'http_code' => 400, 'description' => 'SMS service not activated'],
+ ['code' => 'isv.PRODUCT_UN_SUBSCRIPT', 'message' => '未开通云通信产品的阿里云客户', 'http_code' => 401, 'description' => 'We recommend that you activate Cloud Communications.'],
+ ['code' => 'isv.PRODUCT_UN_SUBSCRIPT', 'message' => 'SMS has not been activated.', 'http_code' => 400, 'description' => 'SMS service not activated'],
+ ['code' => 'ISV.PRODUCT_UN_SUBSCRIPT', 'message' => 'SMS service not activated.', 'http_code' => 200, 'description' => 'Alibaba Cloud customers who have not activated cloud communication products'],
+ ['code' => 'isv.SECURITY_FROZEN_ACCOUNT', 'message' => 'The specified account has been frozen.', 'http_code' => 400, 'description' => 'The specified account is frozen'],
+ ['code' => 'isv.SHORTURL_DOMAIN_EMPTY', 'message' => '创建失败,请先提交该链接的一级域名报备', 'http_code' => 200, 'description' => 'Create failed. Submit your original domain name for approval first.'],
+ ['code' => 'isv.SHORTURL_DOMAIN_EMPTY', 'message' => 'Unregistered original URL domain.', 'http_code' => 400, 'description' => 'Unregistered original URL domain'],
+ ['code' => 'isv.SHORTURL_NAME_ILLEGAL', 'message' => '短链服务名称不能超过13个字符长度', 'http_code' => 200, 'description' => 'The activity name of the short URL cannot exceed 13 characters in length.'],
+ ['code' => 'isv.SHORTURL_NAME_ILLEGAL', 'message' => 'A short URL name can contain a maximum of 13 characters.', 'http_code' => 400, 'description' => 'Short URL name over max length'],
+ ['code' => 'isv.SHORTURL_NOT_FOUND', 'message' => '没有可删除的短链', 'http_code' => 200, 'description' => 'No short URL can be deleted.'],
+ ['code' => 'isv.SHORTURL_OVER_LIMIT', 'message' => 'The maximum number of short URLs that can be applied in a day has been exceeded.', 'http_code' => 400, 'description' => 'The max count of short URL registered daily is reached'],
+ ['code' => 'isv.SHORTURL_STILL_AVAILABLE', 'message' => '原始链接生成的短链仍在有效期内', 'http_code' => 200, 'description' => 'The short URL is still valid.'],
+ ['code' => 'isv.SHORTURL_STILL_AVAILABLE', 'message' => 'The short URL is still within the effective period.', 'http_code' => 400, 'description' => 'The short URL is still available'],
+ ['code' => 'isv.SHORTURL_TIME_ILLEGAL', 'message' => '短链有效期期限超过限制', 'http_code' => 200, 'description' => 'The validity period of the short URL is valid.'],
+ ['code' => 'isv.SHORTURL_TIME_ILLEGAL', 'message' => 'EffectiveDays is over the limit.', 'http_code' => 400, 'description' => 'Over the max EffectiveDays'],
+ ['code' => 'isv.SHORTURL_URL_NAME_REPEAT', 'message' => '短链服务名称重复', 'http_code' => 200, 'description' => 'The activity name of the short URL already exists.'],
+ ['code' => 'isv.SIGN_COUNT_OVER_LIMIT', 'message' => 'The maximum number of signatures that can be applied in a day has been exceeded.', 'http_code' => 400, 'description' => 'The max count of sign name registered daily is reached'],
+ ['code' => 'isv.SIGN_FILE_LIMIT', 'message' => 'The specified file is over the size limit.', 'http_code' => 400, 'description' => 'The specified file is over max size'],
+ ['code' => 'isv.SIGN_NAME_ILLEGAL', 'message' => 'The specified signature does not exist or is blocked.', 'http_code' => 400, 'description' => 'The specified signature does not exist or is blocked.'],
+ ['code' => 'isv.SIGN_OVER_LIMIT', 'message' => 'The maximum number of signatures has been exceeded.', 'http_code' => 400, 'description' => 'The specified signature over max length'],
+ ['code' => 'isv.SMS_CONTENT_ILLEGAL', 'message' => 'The message content is invalid.', 'http_code' => 400, 'description' => 'The message content is invalid.'],
+ ['code' => 'isv.SMS_OVER_LIMIT', 'message' => 'A maximum of 100 templates or signatures can be applied.', 'http_code' => 400, 'description' => 'The max count of sign name or template registered daily is reached'],
+ ['code' => 'isv.SMS_OVER_LIMIT', 'message' => '单日最多申请模板或签名100条', 'http_code' => 200, 'description' => 'Apply for up to 100 templates or signatures in a single day.'],
+ ['code' => 'isv.SMS_SIGNATURE_ILLEGAL', 'message' => '该账号下找不到对应签名', 'http_code' => 400, 'description' => 'The specified signature is not found in the account.'],
+ ['code' => 'isv.SMS_SIGNATURE_ILLEGAL', 'message' => 'The specified signature does not exist or is blocked.', 'http_code' => 400, 'description' => 'The specified signature does not exist or is blocked.'],
+ ['code' => 'isv.SMS_SIGNATURE_SCENE_ILLEGAL', 'message' => 'The signature and template type does not match.', 'http_code' => 400, 'description' => 'Sign Name type and template type mismatch'],
+ ['code' => 'isv.SMS_SIGN_EMOJI_ILLEGAL', 'message' => 'Emojis are not supported.', 'http_code' => 400, 'description' => 'Emoji is not supported'],
+ ['code' => 'isv.SMS_SIGN_ILLEGAL', 'message' => 'The specified signature does not exist or is blocked.', 'http_code' => 400, 'description' => 'The specified signature does not exist or is blocked.'],
+ ['code' => 'isv.SMS_TEMPLATE_ILLEGAL', 'message' => '该账号下找不到对应模板', 'http_code' => 400, 'description' => 'The specified template is not found in the account.'],
+ ['code' => 'isv.SMS_TEMPLATE_ILLEGAL', 'message' => 'The specified message template does not exist or is blocked.', 'http_code' => 400, 'description' => 'The specified message template does not exist or is blocked.'],
+ ['code' => 'isv.SMS_TEST_NUMBER_LIMIT', 'message' => 'Test templates can only be sent to authorized phone numbers.', 'http_code' => 400, 'description' => 'Test template can not send to authorized phone'],
+ ['code' => 'isv.SMS_TEST_SIGN_TEMPLATE_LIMIT', 'message' => 'Test signatures must be used together with test templates.', 'http_code' => 400, 'description' => 'Test sign name must use together with test template'],
+ ['code' => 'isv.SMS_TEST_TEMPLATE_PARAMS_ILLEGAL', 'message' => 'Parameters in test templates support only numeric values that consist of 4 to 6 digits.', 'http_code' => 400, 'description' => 'Only 4~6 numeric supported for test template'],
+ ['code' => 'isv.SOURCEURL_OVER_LIMIT', 'message' => 'The maximum number of characters in a source URL name has been exceeded.', 'http_code' => 400, 'description' => 'Source URL name over max length'],
+ ['code' => 'isv.TEMPLATE_COUNT_OVER_LIMIT', 'message' => 'The maximum number of templates that can be applied in a day has been reached.', 'http_code' => 400, 'description' => 'The max count of template registered daily is reached'],
+ ['code' => 'isv.TEMPLATE_MISSING_PARAMETERS', 'message' => 'The variable in the template is empty.', 'http_code' => 400, 'description' => 'The variable in the template is empty.'],
+ ['code' => 'isv.TEMPLATE_OVER_LIMIT', 'message' => 'The maximum number of characters in a template has been exceeded.', 'http_code' => 400, 'description' => 'The specified template content over max length'],
+ ['code' => 'isv.TEMPLATE_PARAMS_ILLEGAL', 'message' => '模版变量里包含非法字符,如emoji表情等', 'http_code' => 400, 'description' => 'Template parameters include invalid characters such as emojis.'],
+ ['code' => 'isv.TEMPLATE_PARAMS_ILLEGAL', 'message' => 'The specified parameter value is of an invalid type.', 'http_code' => 400, 'description' => 'The input parameters are invalid is miss matched with template'],
+ ['code' => 'lc.INVOKE_HSF_ERROR', 'message' => '[lc.INVOKE_HSF_ERROR].', 'http_code' => 500, 'description' => 'Call interface exception'],
+ ['code' => 'LegalBackOssFileNotUploadError', 'message' => 'Legal person ID card portrait photo not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'LegalDateNotValid', 'message' => 'Current time is outside the legal person ID card validity period.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'LegalFrontOssFileNotUploadError', 'message' => 'Legal person ID card national emblem photo not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'LegalIdCardNoNullError', 'message' => 'Legal person\'s ID number cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'LegalIdCardNotMatchRegex', 'message' => 'Invalid legal person ID number format.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'LegalPersonIdcardEfftimeNotMatchRegexError', 'message' => 'Invalid legal person ID card expiration time format.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'LegalPersonIdcardTypeError', 'message' => 'Invalid legal person ID card type.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'LegalPersonNameNullError', 'message' => 'Legal person\'s name cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'MissApplySceneContent', 'message' => 'In some signature sources, the applySceneContent is required.', 'http_code' => 400, 'description' => 'Under some signature sources, the application scenario is required.'],
+ ['code' => 'MissingParameter', 'message' => 'The ResourceId and Tag lists cannot be empty at the same time.', 'http_code' => 400, 'description' => 'Resource list (ResourceId) and tag list (Tag) cannot be empty at the same time'],
+ ['code' => 'MissingParameter.id', 'message' => 'Parameter "id" which is mandatory for the request is not provided.', 'http_code' => 400, 'description' => 'The request is missing the required parameter id field'],
+ ['code' => 'MissingParameter.Message', 'message' => 'You must specify Message.', 'http_code' => 400, 'description' => 'The Message parameter is missing.'],
+ ['code' => 'MissingParameter.To', 'message' => 'You must specify To.', 'http_code' => 400, 'description' => 'The To parameter is missing.'],
+ ['code' => 'MissingSignName', 'message' => 'The signature name cannot be empty.', 'http_code' => 400, 'description' => 'Signature name cannot be empty'],
+ ['code' => 'MissingTemplateName', 'message' => 'The template name cannot be empty.', 'http_code' => 404, 'description' => 'Template name cannot be empty.'],
+ ['code' => 'MonthLimitControl', 'message' => 'The monthly volume limit is exceeded.', 'http_code' => 400, 'description' => 'The number of the sent messages has exceeded the monthly limit.'],
+ ['code' => 'NotEnterpriseCertifyCustCheckError', 'message' => 'Non-enterprise certified customers are not allowed to access.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'OneExtCodeMultipleSign', 'message' => 'One code with multiple signature error, please verify.', 'http_code' => 400, 'description' => 'One extension code multiple sign error, please check'],
+ ['code' => 'OrderDefinition.NotExist', 'message' => 'The work order scenario definition does not exist.', 'http_code' => 400, 'description' => 'Job scene definition does not exist'],
+ ['code' => 'OrganizationCodeNullError', 'message' => 'Unified Social Credit Code cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'OrganizationCodeOverLimit', 'message' => 'The organization code is limited to 150 characters.', 'http_code' => 400, 'description' => 'Social credit code is not allowed to exceed 150 characters'],
+ ['code' => 'OssBiztypeNotSupportError', 'message' => 'Retrieving OSS configuration does not support this biz type.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'OtherFileTypeError', 'message' => 'Invalid file format for other documents.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'OtherOssFileNotUploadError', 'message' => 'Other files not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'OutOfService', 'message' => 'The account is suspended.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'ParameterMismatch.ThirdParty', 'message' => 'The type of signature, whether for personal use or for a third party, should be consistent with the qualifications.', 'http_code' => 400, 'description' => 'Whether the signature is used by a third party should be consistent with the qualification.'],
+ ['code' => 'PARAMS_ILLEGAL', 'message' => 'Invalid parameter value.', 'http_code' => 400, 'description' => 'The parameter input is invalid'],
+ ['code' => 'PhoneNoCertifyCodeNullError', 'message' => 'Phone number and verification code cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'PhoneNumber.Illegal', 'message' => 'The specified phone number is invalid.', 'http_code' => 400, 'description' => 'The mobile phone number is invalid.'],
+ ['code' => 'ProxyAuthorizationNotMatchRegex', 'message' => 'The authorized party name currently does not support any symbols except middle dots, spaces, Chinese brackets, and English parentheses or purely numeric input.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'ProxyAuthorizationOverLimit', 'message' => 'The authorized party exceeds the 1000-character length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'QualificationNameAlreadyExist', 'message' => 'The qualification name already exists. Please modify and resubmit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'QualificationNameNotMatchRegex', 'message' => 'Qualification names must be in Chinese, English, or alphanumeric combinations. Symbols or pure numbers are not supported.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'QualificationNameNullError', 'message' => 'Qualification name cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'QualificationNotComplete', 'message' => 'The qualification elements are incomplete.', 'http_code' => 400, 'description' => 'The qualification elements are incomplete, and the missing elements are []'],
+ ['code' => 'QualificationNotExist', 'message' => 'Can\'t query qualification information.', 'http_code' => 400, 'description' => 'Can\'t query qualification information'],
+ ['code' => 'QualificationNotExist', 'message' => 'Qualification does not exist.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'QualificationNotFound', 'message' => 'Qualification does not exist.', 'http_code' => 404, 'description' => 'Qualification does not exist.'],
+ ['code' => 'SameQualificationGroupError', 'message' => 'A qualification with the same company and administrator information already exists.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'ServiceNotOpened', 'message' => 'This product service is not opened.', 'http_code' => 400, 'description' => 'Product service not activated'],
+ ['code' => 'SignatureDoesNotMatch', 'message' => 'The signature generated by the client does not match the server.', 'http_code' => 400, 'description' => 'Signature does not matches'],
+ ['code' => 'SignatureNonceUsed', 'message' => 'The specified signature has been used.', 'http_code' => 400, 'description' => 'The specified signature is been used'],
+ ['code' => 'SignatureNotFound', 'message' => 'The signature does not exist.', 'http_code' => 404, 'description' => 'The corresponding signature cannot be found under the account.'],
+ ['code' => 'SIGNATURE_BLACKLIST', 'message' => 'The sign name is intercepted based on the specified risk control strategies.', 'http_code' => 400, 'description' => 'The sign name is intercepted based on the specified risk control strategies.'],
+ ['code' => 'SignName.Exists', 'message' => 'Sorry, this signature already exists and cannot be applied for again.', 'http_code' => 400, 'description' => 'Sorry, this signature already exists and cannot be reapplied.'],
+ ['code' => 'SignNotMatchRegex', 'message' => 'The signature length is limited to 2-12 characters and does not support some special characters.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'SignNumOverLimit', 'message' => 'The signature exceeds the limit of 100 entries.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'SmsAuthorizationLetterNotExist', 'message' => 'Authorization does not belong to the customer.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'SmsAuthorizationLetterNotMatch', 'message' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification.', 'http_code' => 400, 'description' => 'Please bind the available authorization letter whose the social credit code is same to the the social credit code of qualification'],
+ ['code' => 'SmsPassedAuthorizationLetterNotMatch', 'message' => 'Please bind audited authorization letter whose the social credit code is same to the the social credit code of qualification.', 'http_code' => 400, 'description' => 'Please bind and unify the qualification authorization letter with the same and available social credit code.'."\n"],
+ ['code' => 'SmsQualificationNotPassed', 'message' => 'The qualification has not been approved and cannot be bound to the signature.', 'http_code' => 400, 'description' => 'The qualification has not been approved and cannot be bound to the signature.'],
+ ['code' => 'SmsQualificationRegisterFailed', 'message' => 'The registration of the current qualification fails. Please modify the qualification and re-bind the qualification before completing the signature registration process again.', 'http_code' => 400, 'description' => 'The registration of the current qualification fails. Please modify the qualification and re-bind the qualification before completing the signature registration process again.'],
+ ['code' => 'SmsSignatureNotExist', 'message' => 'Signature does not exist.', 'http_code' => 400, 'description' => 'Signature does not exist'],
+ ['code' => 'SmsSignatureNotFound', 'message' => 'The associated SMS signature does not exist.', 'http_code' => 404, 'description' => 'The associated SMS signature does not exist.'],
+ ['code' => 'SmsSignNotAuthorized', 'message' => 'The signature is not within the scope of the authorization.', 'http_code' => 400, 'description' => 'The signature is not within the scope of the authorization.'],
+ ['code' => 'SmsSignNotAuthorized', 'message' => 'the signature is not in the sign scope of the authorization letter.', 'http_code' => 400, 'description' => 'The signature is not within the scope of the authorization.'],
+ ['code' => 'SMS_STATUS_ILLEGAL', 'message' => 'When replacing the qualification and power of attorney of the signature, the signature status must be approved.', 'http_code' => 400, 'description' => 'When replacing the qualification and power of attorney of the signature, the signature status must be approved.'],
+ ['code' => 'TemplateNotFound', 'message' => 'The template does not exist.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'TemplateParameterCountIllegal', 'message' => 'The verification code template only supports 1 verification code as a variable', 'http_code' => 400, 'description' => 'Verification code templates support only one variable, which must be a verification code.'],
+ ['code' => 'TemplateVarLimitExceeded', 'message' => 'The verification code template only supports one variable.', 'http_code' => 400, 'description' => 'The verification code template only supports one variable.'],
+ ['code' => 'template_code.NotFound', 'message' => 'The resource of "template_code" is not found..', 'http_code' => 400, 'description' => 'Could not find template code'],
+ ['code' => 'template_parameter_count_illegal', 'message' => 'Only one parameter is supported in an OTP template.', 'http_code' => 400, 'description' => 'Only one parameter supported for OTP template'],
+ ['code' => 'ThreeAbnormal', 'message' => 'Three party anomaly.', 'http_code' => 400, 'description' => 'tripartite anomaly'],
+ ['code' => 'Unknown.CountryCode', 'message' => 'The specified country code is invalid.', 'http_code' => 400, 'description' => 'The country code is unknown.'],
+ ['code' => 'Unsupport.CountryCode', 'message' => 'The specified country code is not supported.', 'http_code' => 400, 'description' => 'The country code is not supported.'],
+ ['code' => 'VALVE:D_MC', 'message' => '重复过滤', 'http_code' => 400, 'description' => 'We recommend that you reduce the number of messages sent per day.'],
+ ['code' => 'VALVE:H_MC', 'message' => '重复过滤', 'http_code' => 400, 'description' => 'We recommend that you reduce the number of messages sent per hour.'],
+ ['code' => 'VALVE:M_MC', 'message' => '重复过滤', 'http_code' => 400, 'description' => 'We recommend that you reduce the number of messages sent per minute.'],
+ ['code' => 'WorkOrderIdExpired', 'message' => 'Qualification details have changed. Please re-query the qualification list and resubmit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkPicsFileError', 'message' => 'The format of the trademark screenshot file is incorrect.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppIcpRecordOssFileNotUploadError', 'message' => 'The APP-ICP record screenshot file is not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkApplicantNameNotMatchRegex', 'message' => 'The trademark applicant cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppPrincipalUnitNameOverLimit', 'message' => 'The principal unit name of the APP exceeds the length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppIcpRecordDateNotMatchRegex', 'message' => 'The format of the APP-ICP record approval date is incorrect.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkLetterDateNotMatchRegex', 'message' => 'The format of the trademark\'s validity period is incorrect.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppIcpLicenseNumberOverLimit', 'message' => 'The ICP record/license number exceeds the length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkApplicantNameOverLimit', 'message' => 'The trademark applicant exceeds the length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppApprovalDateNotValid', 'message' => 'The validity period of the APP-ICP record is not within the valid range.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppIcpRecordPicsFileError', 'message' => 'The format of the APP-ICP record screenshot file is incorrect.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkRegistrationNumberNotMatchRegex', 'message' => 'The trademark registration number cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppDomainNotMatchRegex', 'message' => 'The APP app store link cannot be empty and must start with http:// or https://.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkDateNotValid', 'message' => 'The trademark\'s validity period is not within the valid range.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkNameNotMatchRegex', 'message' => 'The trademark name cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppPrincipalUnitNameNotMatchRegex', 'message' => 'The principal unit name of the APP cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppIcpLicenseNumberNotMatchRegex', 'message' => 'The ICP record/license number cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkOssFileNotUploadError', 'message' => 'The trademark screenshot file is not uploaded.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkRegistrationNumberOverLimit', 'message' => 'The trademark registration number exceeds the length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkNameOverLimit', 'message' => 'The trademark name exceeds the length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppDomainOverLimit', 'message' => 'The APP app store link exceeds the length limit.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'AppIcpRecordNotExist', 'message' => 'The APP-ICP record does not exist.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'TrademarkNotExist', 'message' => 'The trademark does not exist.', 'http_code' => 400, 'description' => ''],
+ ],
+ 'changeSet' => [
[
- 'regionId' => 'ap-southeast-1',
- 'endpoint' => 'dysmsapi.ap-southeast-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySendStatistics'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySendDetails'],
+ ],
+ 'createdAt' => '2026-07-02T08:24:57.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySendStatistics'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySendDetails'],
+ ],
+ 'createdAt' => '2026-07-02T08:24:57.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySendDetails'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySendStatistics'],
+ ],
+ 'createdAt' => '2026-07-01T06:01:22.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsAppIcpRecord'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsAppIcpRecord'],
+ ],
+ 'createdAt' => '2026-06-30T09:32:48.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsAppIcpRecord'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsAppIcpRecord'],
+ ],
+ 'createdAt' => '2026-06-30T09:32:45.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsAppIcpRecord'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsAppIcpRecord'],
+ ],
+ 'createdAt' => '2026-06-30T08:39:47.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsAppIcpRecord'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsAppIcpRecord'],
+ ],
+ 'createdAt' => '2026-06-30T08:39:42.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsAppIcpRecord'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsAppIcpRecord'],
+ ],
+ 'createdAt' => '2026-06-30T08:39:42.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-15T07:45:24.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-15T07:45:22.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-southeast-5',
- 'endpoint' => 'dysmsapi.ap-southeast-5.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-15T07:45:22.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2026-06-08T07:44:54.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2026-06-08T07:44:54.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2026-06-08T07:44:54.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2026-06-08T07:44:50.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-04T07:56:01.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2026-06-04T07:55:58.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2026-06-04T07:55:45.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2026-06-04T07:55:45.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-03T12:32:29.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-03T12:32:23.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hongkong',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-03T08:56:43.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-northeast-2-pop',
- 'endpoint' => 'dysmsapi.ap-southeast-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2026-06-03T08:56:31.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-beijing-finance-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ],
+ 'createdAt' => '2026-04-07T06:43:39.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-beijing-finance-pop',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ],
+ 'createdAt' => '2026-04-07T06:43:33.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-beijing-gov-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ],
+ 'createdAt' => '2026-04-07T06:43:31.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-beijing-nu16-b01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ],
+ 'createdAt' => '2026-03-30T02:44:05.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-chengdu',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsTemplate'],
+ ],
+ 'createdAt' => '2026-03-30T02:44:02.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-edge-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'CreateSmsSign'],
+ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'UpdateSmsSign'],
+ ],
+ 'createdAt' => '2025-12-11T12:44:31.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-fujian',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'CreateSmsSign'],
+ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'UpdateSmsSign'],
+ ],
+ 'createdAt' => '2025-12-11T12:44:31.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-haidian-cm12-c01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'CreateSmsSign'],
+ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'UpdateSmsSign'],
+ ],
+ 'createdAt' => '2025-12-11T12:44:31.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou-bj-b01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ],
+ 'createdAt' => '2025-12-11T10:08:22.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou-finance',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2025-11-27T03:33:20.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou-internal-prod-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ],
+ 'createdAt' => '2025-11-27T03:33:12.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou-internal-test-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateCardSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateCardSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateCardSmsTemplate'],
+ ],
+ 'createdAt' => '2025-11-24T02:44:52.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou-internal-test-2',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateCardSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateCardSmsTemplate'],
+ ],
+ 'createdAt' => '2025-11-24T02:44:41.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou-internal-test-3',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ],
+ 'createdAt' => '2025-11-03T13:14:37.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou-test-306',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ],
+ 'createdAt' => '2025-11-03T13:14:37.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hongkong-finance-pop',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsSignList'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsSign'],
+ ],
+ 'createdAt' => '2025-11-03T13:13:58.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-huhehaote-nebula-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-15T04:21:05.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-north-2-gov-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-15T04:21:01.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-qingdao-nebula',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ],
+ 'createdAt' => '2025-08-15T04:03:26.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shanghai-et15-b01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ],
+ 'createdAt' => '2025-08-15T04:02:05.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shanghai-et2-b01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T14:41:31.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shanghai-finance-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T14:41:26.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shanghai-inner',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsTemplateList'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T14:41:26.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shanghai-internal-test-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T14:37:16.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shenzhen',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T14:37:06.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shenzhen-finance-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T14:37:06.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shenzhen-inner',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T14:37:03.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shenzhen-st4-d01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T08:38:21.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shenzhen-su18-b01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsTemplate'],
+ ],
+ 'createdAt' => '2025-08-12T07:59:59.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-wuhan',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ChangeSignatureQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsAuthorizationLetter'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySingleSmsQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'DeleteSmsQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'RequiredPhoneCode'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsQualificationRecord'],
+ ['description' => 'OpenAPI offline', 'api' => 'ValidPhoneCode'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsAuthorizationLetter'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetQualificationOssInfo'],
+ ],
+ 'createdAt' => '2025-08-01T04:05:19.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-yushanfang',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ChangeSignatureQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsAuthorizationLetter'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySingleSmsQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'DeleteSmsQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'RequiredPhoneCode'],
+ ['description' => 'OpenAPI offline', 'api' => 'QuerySmsQualificationRecord'],
+ ['description' => 'OpenAPI offline', 'api' => 'ValidPhoneCode'],
+ ['description' => 'OpenAPI offline', 'api' => 'UpdateSmsQualification'],
+ ['description' => 'OpenAPI offline', 'api' => 'CreateSmsAuthorizationLetter'],
+ ['description' => 'OpenAPI offline', 'api' => 'GetQualificationOssInfo'],
+ ],
+ 'createdAt' => '2025-08-01T04:05:19.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-zhangbei',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:25.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-zhangbei-na61-b01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:24.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-zhangjiakou-na62-a01',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:18.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-zhengzhou-nebula-1',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:18.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'eu-central-1',
- 'endpoint' => 'dysmsapi.eu-central-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:18.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'eu-west-1-oxs',
- 'endpoint' => 'dysmsapi.ap-southeast-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:18.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'rus-west-1-pop',
- 'endpoint' => 'dysmsapi.ap-southeast-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:05.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-qingdao',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:05.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-zhangjiakou',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:05.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-huhehaote',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsSign'],
+ ['description' => 'OpenAPI offline', 'api' => 'AddSmsTemplate'],
+ ['description' => 'OpenAPI offline', 'api' => 'ModifySmsTemplate'],
+ ],
+ 'createdAt' => '2025-07-09T12:20:05.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou',
- 'endpoint' => 'dysmsapi.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'OpenAPI offline', 'api' => 'GetSmsSign'],
+ ],
+ 'createdAt' => '2025-06-18T07:40:37.000Z',
+ 'description' => '',
+ ],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSmsTemplate'],
+ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddSmsSign'],
+ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagResources'],
+ ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'],
+ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UntagResources'],
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCardSmsTemplate'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddSmsTemplate'],
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSmsSign'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendBatchCardSms'],
+ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddShortUrl'],
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySendDetails'],
+ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySendStatistics'],
+ ['threshold' => '150', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSmsSign'],
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendSms'],
+ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsTemplateList'],
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ConversionDataIntl'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSmsTemplate'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSmsSign'],
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOSSInfoForUploadFile'],
+ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteShortUrl'],
+ ['threshold' => '8000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCardSmsLink'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifySmsSign'],
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryShortUrl'],
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCardSmsDetails'],
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSmsSign'],
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryCardSmsTemplate'],
+ ['threshold' => '500', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SmsConversionIntl'],
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsSign'],
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMediaResourceId'],
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsTemplate'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifySmsTemplate'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSmsTemplate'],
+ ['threshold' => '1000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendCardSms'],
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryCardSmsTemplateReport'],
+ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSmsTemplate'],
+ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QuerySmsSignList'],
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryMobilesCardSupport'],
+ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TagResources'],
+ ['threshold' => '5000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SendBatchSms'],
+ ['threshold' => '2000', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckMobilesCardSupport'],
+ ['threshold' => '300', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOSSInfoForCardTemplate'],
+ ],
+ 'product' => ['code' => 'dysms', 'title' => 'Dysmsapi'],
+ ],
+ 'ram' => [
+ 'productCode' => 'SMS',
+ 'productName' => 'Short Message Service',
+ 'ramCodes' => ['dysms', 'cloudcomm', 'dybase', 'sms'],
+ 'ramLevel' => 'SERVICE',
+ 'ramConditions' => [
+ [
+ 'name' => 'dysms:TLSVersion',
+ 'schema' => [
+ 'type' => 'String',
+ 'description' => 'TLS version',
+ 'enums' => ['TLSv1.0', 'TLSv1.1', 'TLSv1.2', 'TLSv1.3'],
+ ],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'apiName' => 'UntagResources',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:UntagResources',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySmsTemplate',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'TagResources',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'dysms:TagResources',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QueryMobilesCardSupport',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryMobilesCardSupport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:DeleteSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetCardSmsLink',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetCardSmsLink',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateSmsTrademark',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateSmsTrademark',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateCardSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateCardSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySendStatistics',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySendStatistics',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CheckMobilesCardSupport',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:CheckMobilesCardSupport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteShortUrl',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:DeleteShortUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QueryShortUrl',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryShortUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'SendCardSms',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendCardSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetSmsOcrOssInfo',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetSmsOcrOssInfo',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetCardSmsDetails',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:GetCardSmsDetails',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'AddSmsSign',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:AddSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifySmsSign',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'dysms:ModifySmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateSmsSign',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:UpdateSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetOSSInfoForCardTemplate',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetOSSInfoForCardTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'SendBatchSms',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendBatchSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetMediaResourceId',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:GetMediaResourceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:GetSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateSmsAppIcpRecord',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateSmsAppIcpRecord',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'SendSms',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateDigitalSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:CreateDigitalSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'SmsConversionIntl',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SmsConversionIntl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'AddSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:AddSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySendDetails',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySendDetails',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ConversionDataIntl',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:ConversionDataIntl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySmsAppIcpRecord',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsAppIcpRecord',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QueryCardSmsTemplateReport',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryCardSmsTemplateReport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListTagResources',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'dysms:ListTagResources',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QueryCardSmsTemplate',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QueryCardSmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySmsSignList',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsSignList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'AddShortUrl',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'dysms:AddShortUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteSmsSign',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'dysms:DeleteSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'SendBatchCardSms',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:SendBatchCardSms',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySmsSign',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySmsTemplateList',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsTemplateList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QuerySmsTrademark',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'dysms:QuerySmsTrademark',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetSmsSign',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:GetSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateSmsSign',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'dysms:UpdateSmsSign',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifySmsTemplate',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'dysms:ModifySmsTemplate',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'SMS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'resourceTypes' => [],
],
];