diff options
| author | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
|---|---|---|
| committer | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
| commit | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch) | |
| tree | 0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/en_us/dm | |
| download | acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.tar.gz acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.zip | |
first commitHEADv1.0.0+20260212main
Diffstat (limited to 'data/en_us/dm')
| -rw-r--r-- | data/en_us/dm/2015-11-23/api-docs.php | 12649 | ||||
| -rw-r--r-- | data/en_us/dm/2016-08-25/api-docs.php | 5240 | ||||
| -rw-r--r-- | data/en_us/dm/2017-06-22/api-docs.php | 4705 |
3 files changed, 22594 insertions, 0 deletions
diff --git a/data/en_us/dm/2015-11-23/api-docs.php b/data/en_us/dm/2015-11-23/api-docs.php new file mode 100644 index 0000000..45cdd5d --- /dev/null +++ b/data/en_us/dm/2015-11-23/api-docs.php @@ -0,0 +1,12649 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'Dm', + 'version' => '2015-11-23', + ], + 'directories' => [ + [ + 'children' => [ + 'DescAccountSummary', + ], + 'type' => 'directory', + 'title' => 'Account', + ], + [ + 'children' => [ + 'QueryTaskByParam', + ], + 'type' => 'directory', + 'title' => 'Tasks', + ], + [ + 'children' => [ + [ + 'children' => [ + 'SenderStatisticsByTagNameAndBatchID', + 'SenderStatisticsDetailByParam', + ], + 'type' => 'directory', + 'title' => 'Statistics', + ], + 'GetTrackList', + 'GetTrackListByMailFromAndTagName', + 'SingleSendMail', + 'BatchSendMail', + ], + 'type' => 'directory', + 'title' => 'Mail', + ], + [ + 'children' => [ + 'QueryMailAddressByParam', + 'CheckReplyToMailAddress', + ], + 'type' => 'directory', + 'title' => 'MailAddress', + ], + [ + 'children' => [ + 'SaveReceiverDetail', + ], + 'type' => 'directory', + 'title' => 'Receiver', + ], + [ + 'children' => [ + 'CreateTag', + ], + 'type' => 'directory', + 'title' => 'Tag', + ], + [ + 'children' => [ + 'DedicatedIpPoolCreate', + 'DedicatedIpPoolDelete', + 'DedicatedIpPoolUpdate', + 'DedicatedIpPoolList', + 'DedicatedIpNonePoolList', + 'DedicatedIpAutoRenewal', + 'DedicatedIpChangeWarmupType', + 'DedicatedIpList', + ], + 'type' => 'directory', + 'title' => 'Independent IP', + ], + [ + 'children' => [ + 'RemoveUserSuppression', + 'UnblockSending', + 'ListBlockSending', + ], + 'type' => 'directory', + 'title' => 'Invalid address', + ], + [ + 'children' => [ + 'ConfigSetCreate', + 'ConfigSetDelete', + 'ConfigSetUpdate', + 'ConfigSetDetail', + 'ConfigSetList', + 'ConfigSetRelationFromAddress', + 'ConfigSetCancelRelationFromAddress', + ], + 'type' => 'directory', + 'title' => 'Configuration Sets', + ], + [ + 'children' => [ + 'DescTemplate', + 'QueryTemplateByParam', + ], + 'type' => 'directory', + 'title' => 'Template', + ], + [ + 'children' => [ + 'GetValidationQuota', + 'ValidateEmail', + 'SendValidateFile', + 'GetValidateFileStatus', + 'GetValidateFile', + 'DeleteValidateFile', + ], + 'type' => 'directory', + 'title' => 'Address validation', + ], + [ + 'children' => [ + 'AddIpfilter', + 'ApproveReplyMailAddress', + 'CheckDomain', + 'CreateDomain', + 'CreateMailAddress', + 'CreateReceiver', + 'CreateUserSuppression', + 'DeleteDomain', + 'DeleteInvalidAddress', + 'DeleteIpfilterByEdmId', + 'DeleteMailAddress', + 'DeleteReceiver', + 'DeleteReceiverDetail', + 'DeleteTag', + 'DescDomain', + 'GetIpProtection', + 'GetIpfilterList', + 'GetUser', + 'ListUserSuppression', + 'ListValidateFile', + 'ModifyMailAddress', + 'ModifyPWByDomain', + 'ModifyTag', + 'QueryDomainByParam', + 'QueryInvalidAddress', + 'QueryReceiverByParam', + 'QueryReceiverDetail', + 'QueryTagByParam', + 'SendTestByTemplate', + 'UpdateIpProtection', + 'UpdateUser', + ], + 'title' => 'Others', + 'type' => 'directory', + ], + ], + 'components' => [ + 'schemas' => [], + ], + 'apis' => [ + 'AddIpfilter' => [ + 'summary' => 'Add IP Protection Information', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'IpAddress', + 'in' => 'query', + 'schema' => [ + 'description' => 'IP Address/IP Range/IP Segment', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '单个IP格式,如:xxx.xxx.xxx.xxx'."\n" + .'IP区间格式,如:xxx.xxx.xxx.xxx-xxx.xxx.xxx.xxx'."\n" + .'IP段格式,如:xxx.xxx.xxx.xxx/xxx', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '0E9282E8-DC08-5445-8FB0-B9F0CA28B249', + 'title' => '', + ], + 'IpFilterId' => [ + 'description' => 'ID corresponding to the IP', + 'type' => 'string', + 'example' => '10795', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0E9282E8-DC08-5445-8FB0-B9F0CA28B249\\",\\n \\"IpFilterId\\": \\"10795\\"\\n}","errorExample":""},{"type":"xml","example":"<AddIpfilterResponse>\\n <RequestId>F814E960-5AEE-5CB1-881B-6F1A3250B55A</RequestId>\\n <IpFilterId>10795</IpFilterId>\\n</AddIpfilterResponse>","errorExample":""}]', + 'title' => 'Add IP Whitelist', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:AddIpfilter', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ApproveReplyMailAddress' => [ + 'summary' => 'Verify Reply Address', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Ticket', + 'in' => 'query', + 'schema' => [ + 'description' => 'Email address Ticket credential, part of the string in the verification email\'s URL.', + 'type' => 'string', + 'required' => true, + 'example' => 'a724068dac9a45d19574375adeca0d7d', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Verify Reply Address', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:ApproveReplyMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'BatchSendMail' => [ + 'summary' => 'Sends a batch of emails.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'autoTest' => false, + ], + 'parameters' => [ + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of a pre-created and approved template.', + 'type' => 'string', + 'required' => true, + 'example' => 'test1', + 'title' => '', + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender address configured in the console.', + 'type' => 'string', + 'required' => true, + 'example' => '[email protected]', + 'title' => '', + ], + ], + [ + 'name' => 'ReceiversName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of a pre-created recipient list to which recipients have been uploaded.'."\n" + ."\n" + .'Note:'."\n" + ."\n" + .'The number of recipients in the list must not exceed your remaining daily quota. Otherwise, email sending fails.'."\n" + ."\n" + .'Do not delete the recipient list for at least 10 minutes after triggering the task. Otherwise, email sending may fail.', + 'type' => 'string', + 'required' => true, + 'example' => 'test2', + 'title' => '', + ], + ], + [ + 'name' => 'AddressType', + 'in' => 'query', + 'schema' => [ + 'description' => '- 0: Random account'."\n" + ."\n" + .'- 1: Sender address', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '1', + 'minimum' => '0', + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the email tag.', + 'type' => 'string', + 'required' => false, + 'example' => 'test3', + 'title' => '', + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reply-to address.', + 'type' => 'string', + 'required' => false, + 'example' => 'test2***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'ReplyAddressAlias', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alias for the reply-to address.', + 'type' => 'string', + 'required' => false, + 'example' => '小红', + 'title' => '', + ], + ], + [ + 'name' => 'ClickTrace', + 'in' => 'query', + 'schema' => [ + 'description' => '- 1: Enables the data tracking feature.'."\n" + ."\n" + .'- 0 (default): Disables the data tracking feature.', + 'type' => 'string', + 'required' => false, + 'example' => '0', + 'title' => '', + ], + ], + [ + 'name' => 'UnSubscribeLinkType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of unsubscribe link to generate. For more information, see [Unsubscribe link generation and filtering mechanism](~~2689048~~).'."\n" + ."\n" + .'- disabled: Does not generate a link.'."\n" + ."\n" + .'- default: Uses the default policy. An unsubscribe link is generated when batch emails are sent from a sender address to specific domains, such as those containing the keywords "gmail", "yahoo", "google", "aol.com", "hotmail", "outlook", or "ymail.com".'."\n" + ."\n" + .'The language of the unsubscribe link matches the recipient\'s browser language setting.', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + 'title' => '', + ], + ], + [ + 'name' => 'UnSubscribeFilterLevel', + 'in' => 'query', + 'schema' => [ + 'description' => 'The filtering level. For more information, see [Unsubscribe link generation and filtering mechanism](~~2689048~~).'."\n" + ."\n" + .'- disabled: No filtering.'."\n" + ."\n" + .'- default: Uses the default policy. Batch emails are filtered at the sender address level.'."\n" + ."\n" + .'- mailfrom: Filters at the sender address level.'."\n" + ."\n" + .'- mailfrom\\_domain: Filters at the email domain level.'."\n" + ."\n" + .'- edm\\_id: Filters at the account level.', + 'type' => 'string', + 'required' => false, + 'example' => 'mailfrom_domain', + 'title' => '', + ], + ], + [ + 'name' => 'Headers', + 'in' => 'query', + 'schema' => [ + 'description' => 'Message header settings.'."\n" + ."\n" + .'All fields, standard or non-standard, must follow standard header syntax. For API calls, the \\`headers\\` field supports up to 10 headers. Any headers beyond this limit are ignored. SMTP does not have a header limit.'."\n" + ."\n" + .'1\\. Standard fields'."\n" + ."\n" + .'\\`Message-ID\\`, \\`List-Unsubscribe\\`, \\`List-Unsubscribe-Post\\`'."\n" + ."\n" + .'Standard fields overwrite existing values in the message header.'."\n" + ."\n" + .'2\\. Non-standard fields'."\n" + ."\n" + .'Case-insensitive'."\n" + ."\n" + .'a. Start with \\`X-User-\\`. These fields are not pushed to EventBridge or Message Service. They are required only for API calls. SMTP supports any custom header.'."\n" + ."\n" + .'b. Start with \\`X-User-Notify-\\`. These fields are pushed to EventBridge and Message Service. They are supported by both API and SMTP.'."\n" + ."\n" + .'When pushed to EventBridge or Message Service, these fields appear under the \\`headers\\` object.', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "Message-ID": "<[email protected]>",'."\n" + .' "X-User-UID1": "UID-1-000001",'."\n" + .' "X-User-UID2": "UID-2-000001",'."\n" + .' "X-User-Notify-UID1": "UID-3-000001",'."\n" + .' "X-User-Notify-UID2": "UID-4-000001"'."\n" + .' '."\n" + .'}', + 'title' => '', + ], + ], + [ + 'name' => 'IpPoolId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The ID of the dedicated IP address pool. If you purchased dedicated IP addresses, use this parameter to specify the egress IP address for sending the email.', + 'type' => 'string', + 'required' => false, + 'example' => 'e4xxxxxe-4xx0-4xx3-8xxa-74cxxxxx1cef', + 'title' => '', + ], + ], + [ + 'name' => 'DomainAuth', + 'in' => 'query', + 'schema' => [ + 'description' => 'Enables domain-level authentication.'."\n" + ."\n" + .'- true'."\n" + ."\n" + .'- false'."\n" + ."\n" + .'Use this parameter only for domain-level authentication. Ignore it for sender address-level authentication.'."\n" + ."\n" + .'1\\. The console creates the address \\`domain-auth-created-by-system\\@example.com\\`. Do not change the prefix before the at sign (@). Replace the domain suffix with your own domain.'."\n" + ."\n" + .'2\\.'."\n" + ."\n" + .'**API scenario**'."\n" + ."\n" + .'Set \\`AccountName\\` to your domain. Recipients see \\`domain-auth-created-by-system\\@example.com\\` as the sender.'."\n" + ."\n" + .'**SMTP scenario**'."\n" + ."\n" + .'a. Use the \\`ModifyPWByDomain\\` API to set a password for your domain.'."\n" + ."\n" + .'b. Authenticate using your domain and the password. Set the actual sender address (\\`mailfrom\\`) to a custom address, such as \\`user\\@example.com\\`. Recipients see \\`user\\@example.com\\` as the sender.', + 'type' => 'boolean', + 'title' => '', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnvId' => [ + 'description' => 'The event ID.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '12D086F6-8F31-4658-84C1-006DED011A85', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"EnvId\\": \\"xxx\\",\\n \\"RequestId\\": \\"12D086F6-8F31-4658-84C1-006DED011A85\\"\\n}","type":"json"}]', + 'title' => 'Batch Send Emails', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:BatchSendMail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'CheckDomain' => [ + 'summary' => 'Check Domain Status', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Domain ID.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '153345', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainStatus' => [ + 'description' => 'Domain status. Indicates whether the verification was successful, with values as follows:'."\n" + ."\n" + .'- **0**: Available, verified successfully'."\n" + ."\n" + .'- **1**: Unavailable, verification failed', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => 'F0B82E83-A1D9-4FE6-97D2-F4B231F80B02', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Verify Domain', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:CheckDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DomainStatus\\": 1,\\n \\"RequestId\\": \\"F0B82E83-A1D9-4FE6-97D2-F4B231F80B02\\"\\n}","type":"json"}]', + ], + 'CheckReplyToMailAddress' => [ + 'summary' => 'Validate Reply-To Address', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Lang', + 'in' => 'query', + 'schema' => [ + 'description' => 'Language.'."\n" + ."\n" + .'en is English, and any other value or an empty value defaults to Chinese.', + 'type' => 'string', + 'required' => false, + 'example' => '无', + 'title' => '', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'Region', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + 'title' => '', + ], + ], + [ + 'name' => 'MailAddressId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sender Address ID', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '126545', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Verify Reply-To Address for Sending Emails', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:CheckReplyToMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'ConfigSetCancelRelationFromAddress' => [ + 'summary' => 'Disassociates a sender address from a configuration set.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The ID of the configuration set. This parameter is required.', + 'required' => false, + 'title' => '', + 'example' => 'xxx', + ], + ], + [ + 'name' => 'FromAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The sender address. This parameter is required.', + 'required' => false, + 'title' => '', + 'example' => '[email protected]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + 'title' => '', + 'description' => 'The ID of the request.', + 'example' => 'xxx', + ], + 'Result' => [ + 'type' => 'boolean', + 'description' => 'The result of the request.', + 'title' => '', + 'example' => 'true', + ], + ], + 'title' => '', + 'description' => 'Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ConfigSetCancelRelationFromAddress', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ConfigSetCancelRelationFromAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"Result\\": true\\n}","type":"json"}]', + ], + 'ConfigSetCreate' => [ + 'summary' => 'Creates a configuration set. You can create up to 100 configuration sets.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The name of the configuration set. This parameter is required. The name must be unique and can be up to 50 characters long.', + 'required' => false, + 'title' => '', + 'example' => 'XXX', + ], + ], + [ + 'name' => 'IpPoolId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The ID of the associated IP pool. This parameter is optional.', + 'required' => false, + 'title' => '', + 'example' => 'XXX', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The description of the configuration set. The description can be up to 50 characters long.', + 'required' => false, + 'title' => '', + 'example' => 'XXX', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + 'title' => '', + 'description' => 'The request ID.', + 'example' => 'XXX', + ], + 'Id' => [ + 'type' => 'string', + 'description' => 'The configuration set ID.', + 'title' => '', + 'example' => 'XXX', + ], + ], + 'title' => '', + 'description' => 'Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ConfigSetCreate', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:ConfigSetCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"XXX\\",\\n \\"Id\\": \\"XXX\\"\\n}","type":"json"}]', + ], + 'ConfigSetDelete' => [ + 'summary' => 'Deletes configuration sets.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Ids', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The IDs of the configuration sets. Separate multiple IDs with commas. This parameter is required.', + 'required' => false, + 'title' => '', + 'example' => 'xxx', + ], + ], + [ + 'name' => 'IsForce', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'description' => 'Specifies whether to force delete the associations with sender addresses.', + 'required' => false, + 'title' => '', + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + 'title' => '', + 'description' => 'The request ID.', + 'example' => 'xxx', + ], + ], + 'title' => '', + 'description' => 'The response.', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ConfigSetDelete', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:ConfigSetDelete', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\"\\n}","type":"json"}]', + ], + 'ConfigSetDetail' => [ + 'summary' => 'Retrieves the details of a configuration set.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The ID of the configuration set. This parameter is required.', + 'required' => false, + 'title' => '', + 'example' => 'xxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + 'title' => '', + 'description' => 'The request ID.', + 'example' => 'xxx', + ], + 'Detail' => [ + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'type' => 'string', + 'description' => 'The ID of the configuration set.', + 'title' => '', + 'example' => 'xxx', + ], + 'Name' => [ + 'type' => 'string', + 'description' => 'The name of the configuration set.', + 'title' => '', + 'example' => 'xxx', + ], + 'Description' => [ + 'type' => 'string', + 'description' => 'The description.', + 'title' => '', + 'example' => 'xxx', + ], + 'IpPool' => [ + 'type' => 'object', + 'properties' => [ + 'IpPoolId' => [ + 'type' => 'string', + 'description' => 'The ID of the associated IP pool.', + 'title' => '', + 'example' => 'xxx', + ], + 'IpPoolName' => [ + 'type' => 'string', + 'description' => 'The name of the associated IP pool.', + 'title' => '', + 'example' => 'xxx', + ], + ], + 'description' => 'The associated IP pool.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The details of the configuration set.', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'The response.', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ConfigSetDetail', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:ConfigSetDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"Detail\\": {\\n \\"Id\\": \\"xxx\\",\\n \\"Name\\": \\"xxx\\",\\n \\"Description\\": \\"xxx\\",\\n \\"IpPool\\": {\\n \\"IpPoolId\\": \\"xxx\\",\\n \\"IpPoolName\\": \\"xxx\\"\\n }\\n }\\n}","type":"json"}]', + ], + 'ConfigSetList' => [ + 'summary' => 'Lists configuration sets.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'PageIndex', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page index. The value starts from 1. This parameter is required.', + 'type' => 'string', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. This parameter is required.', + 'type' => 'string', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keyword to search by name.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + [ + 'name' => 'All', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to query all configuration sets. This parameter is optional.', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCounts' => [ + 'description' => 'The total number of entries that match the request.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '5', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'CurrentPage' => [ + 'description' => 'The current page number.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1', + ], + 'HasMore' => [ + 'description' => 'Indicates whether a next page of results exists.', + 'enumValueTitles' => [ + 'true' => 'Yes', + 'false' => 'No', + ], + 'type' => 'boolean', + 'example' => 'false', + 'title' => '', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'ConfigSets' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the configuration set.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'Name' => [ + 'description' => 'The name of the configuration set.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'IpPool' => [ + 'type' => 'object', + 'properties' => [ + 'IpPoolId' => [ + 'description' => 'The ID of the associated IP pool.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'IpPoolName' => [ + 'description' => 'The name of the associated IP pool.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + ], + 'description' => 'The IP pool information.', + 'title' => '', + 'example' => '', + ], + 'FromAddresses' => [ + 'type' => 'array', + 'items' => [ + 'description' => 'The sender address.', + 'type' => 'string', + 'example' => '[email protected]', + 'title' => '', + ], + 'description' => 'The list of associated sender addresses.', + 'title' => '', + 'example' => '', + ], + 'Description' => [ + 'description' => 'The description.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + ], + 'description' => 'The information about a configuration set.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The list of configuration sets.', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'The response.', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ConfigSetList', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:ConfigSetList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCounts\\": 5,\\n \\"RequestId\\": \\"xxx\\",\\n \\"CurrentPage\\": 1,\\n \\"HasMore\\": false,\\n \\"PageSize\\": 10,\\n \\"ConfigSets\\": [\\n {\\n \\"Id\\": \\"xxx\\",\\n \\"Name\\": \\"xxx\\",\\n \\"IpPool\\": {\\n \\"IpPoolId\\": \\"xxx\\",\\n \\"IpPoolName\\": \\"xxx\\"\\n },\\n \\"FromAddresses\\": [\\n \\"[email protected]\\"\\n ],\\n \\"Description\\": \\"xxx\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'ConfigSetRelationFromAddress' => [ + 'summary' => 'Associates a configuration set with a sender address.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The ID of the configuration set. This parameter is required.', + 'required' => false, + 'title' => '', + 'example' => 'xxx', + ], + ], + [ + 'name' => 'FromAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The sender address. This parameter is required.', + 'required' => false, + 'title' => '', + 'example' => '[email protected]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + 'title' => '', + 'description' => 'The request ID.', + 'example' => 'xxx', + ], + 'Result' => [ + 'type' => 'boolean', + 'description' => 'The result of the operation.', + 'title' => '', + 'example' => 'true', + ], + ], + 'title' => '', + 'description' => 'Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ConfigSetRelationFromAddress', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:ConfigSetRelationFromAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"Result\\": true\\n}","type":"json"}]', + ], + 'ConfigSetUpdate' => [ + 'summary' => 'Updates a configuration set.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The ID of the configuration set. This parameter is required.', + 'required' => false, + 'title' => '', + 'example' => 'XXX', + ], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The name of the configuration. This parameter is required. The name must be unique and can be up to 50 characters long.', + 'required' => false, + 'title' => '', + 'example' => 'XXX', + ], + ], + [ + 'name' => 'IpPoolId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The ID of the associated IP pool. This parameter is optional.', + 'required' => false, + 'title' => '', + 'example' => 'XXX', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'description' => 'The description. The description can be up to 50 characters long.', + 'required' => false, + 'title' => '', + 'example' => 'XXX', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + 'title' => '', + 'description' => 'The request ID.', + 'example' => 'xxx', + ], + 'Id' => [ + 'type' => 'string', + 'description' => 'The ID of the configuration set.', + 'title' => '', + 'example' => 'xxx', + ], + ], + 'title' => '', + 'description' => 'Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ConfigSetUpdate', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ConfigSetUpdate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"Id\\": \\"xxx\\"\\n}","type":"json"}]', + ], + 'CreateDomain' => [ + 'summary' => 'Create Domain', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => 'Domain name, length 1-50, can include numbers, uppercase letters, lowercase letters, ., and -.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'sub.example.com', + 'title' => '', + ], + ], + [ + 'name' => 'dkimSelector', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The selector field in the DKIM protocol, used to identify a specific public key. It is recommended to leave it blank, as the system will automatically generate it based on cluster information. If the user specifies it manually, for example, if the sending domain is "sub.example.com" and dkimSelector is set to "default", then the host record will be "default.\\_domainkey.sub"'."\n" + .'Constraints:'."\n" + ."\n" + .'1. The length must not exceed 60 characters.'."\n" + ."\n" + .'2. It must consist of visible characters only.'."\n" + ."\n" + .'3. It cannot start with a hyphen (-).'."\n" + ."\n" + .'4. It cannot end with a hyphen (-).'."\n" + ."\n" + .'5. It cannot contain any of the following characters: \\_ :;/!\\*\\~.@#$%^&()+=\\[{]}|?<>,\'"', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainId' => [ + 'description' => 'Domain ID', + 'type' => 'string', + 'example' => '158910', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => 'B49AD828-25D1-488C-90B7-8853C1944486', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Create Domain', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DomainId\\": \\"158910\\",\\n \\"RequestId\\": \\"B49AD828-25D1-488C-90B7-8853C1944486\\"\\n}","type":"json"}]', + ], + 'CreateMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sender\'s email address', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '账号+@+域名', + 'title' => '', + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'description' => 'Reply-to address', + 'type' => 'string', + 'required' => false, + 'example' => 'test1***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'Sendtype', + 'in' => 'query', + 'schema' => [ + 'description' => 'Type of sending. Values:'."\n" + ."\n" + .'- batch: Bulk emails'."\n" + ."\n" + .'- trigger: Triggered emails', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'batch', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'MailAddressId' => [ + 'description' => 'Mail address ID', + 'type' => 'string', + 'example' => '15123', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '95A7D497-F8DD-4834-B81E-C1783236E55F', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified email address already exists. Please change to another one.', + 'description' => 'The specified email address already exists. Please change to another one.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidUser.NotFound', + 'errorMessage' => 'The specified user does not exist. Please contact your master account to activate the Direct Mail service.', + 'description' => 'The specified user does not exist. Please contact your master account to activate the Direct Mail service.', + ], + ], + ], + 'title' => 'Create Mail Address', + 'summary' => 'Create a mail address.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"MailAddressId\\": \\"15123\\",\\n \\"RequestId\\": \\"95A7D497-F8DD-4834-B81E-C1783236E55F\\"\\n}","type":"json"}]', + ], + 'CreateReceiver' => [ + 'summary' => 'Create Receiver List', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'ReceiversName', + 'in' => 'query', + 'schema' => [ + 'description' => 'List name, must be unique, with a length of 1-30 characters.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'test', + 'title' => '', + ], + ], + [ + 'name' => 'ReceiversAlias', + 'in' => 'query', + 'schema' => [ + 'description' => 'List alias, an email address less than 30 characters long.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'a***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'Desc', + 'in' => 'query', + 'schema' => [ + 'description' => 'List description.', + 'type' => 'string', + 'required' => false, + 'example' => '描述', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ReceiverId' => [ + 'description' => 'Receiver list ID', + 'type' => 'string', + 'example' => '7312e09b8fffc5c7b2e2fbf5b6dc2073', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Create Receiver List', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateReceiver', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ReceiverId\\": \\"7312e09b8fffc5c7b2e2fbf5b6dc2073\\",\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'CreateTag' => [ + 'summary' => 'Creates a tag.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tag name. The name must be 1 to 128 characters long and can contain letters, digits, and underscores (\\_).', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'test', + 'title' => '', + ], + ], + [ + 'name' => 'TagDescription', + 'in' => 'query', + 'schema' => [ + 'description' => 'The description of the tag.', + 'type' => 'string', + 'required' => false, + 'example' => 'test description', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TagId' => [ + 'description' => 'The tag ID.', + 'type' => 'string', + 'example' => '91141', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Create Tag', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateTag', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TagId\\": \\"91141\\",\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'CreateUserSuppression' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'Address', + 'in' => 'query', + 'schema' => [ + 'description' => 'Email address or domain name', + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]或example.net', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '1A846D66-5EC7-551B-9687-5BF1963DCFC1', + 'title' => '', + ], + 'SuppressionId' => [ + 'description' => 'Invalid address number', + 'type' => 'string', + 'example' => '59511', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'Create Invalid Address or Domain', + 'summary' => 'Create User\'s Invalid Address', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateUserSuppression', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A846D66-5EC7-551B-9687-5BF1963DCFC1\\",\\n \\"SuppressionId\\": \\"59511\\"\\n}","type":"json"}]', + ], + 'DedicatedIpAutoRenewal' => [ + 'summary' => 'Sets auto-renewal for a dedicated IP address.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'BuyResourceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the purchased instances. Separate multiple IDs with commas.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'xxx,xxx', + ], + ], + [ + 'name' => 'AutoRenewal', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable auto-renewal.', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'true' => 'Yes', + 'false' => 'No', + ], + 'title' => '', + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'xxx', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\"\\n}","type":"json"}]', + 'title' => 'Set IP Auto Renewal', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpAutoRenewal', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DedicatedIpChangeWarmupType' => [ + 'summary' => 'Updates the prefetch method for a dedicated IP address.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the dedicated IP address.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'title' => '', + 'example' => 'xxx', + ], + ], + [ + 'name' => 'WarmupType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The prefetch method.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => [ + 'sysCusStream' => 'System prefetch', + 'cusSelfManager' => 'Manual prefetch', + ], + 'title' => '', + 'example' => 'sysCusStream', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'xxx', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\"\\n}","type":"json"}]', + 'title' => 'Update Purchased IP Warmup Method', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpChangeWarmupType', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DedicatedIpList' => [ + 'summary' => 'Queries the IP addresses that you have purchased.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'PageIndex', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value starts from 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'default' => '1', + 'title' => '', + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'default' => '10', + 'title' => '', + 'example' => '10', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keyword for searching IP addresses.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'xxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'TotalCounts' => [ + 'title' => 'TotalCount本次请求条件下的数据总量,此参数为可选参数,默认可不返回', + 'description' => 'The total number of purchased IP addresses.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'xxx', + ], + 'HasMore' => [ + 'description' => 'Indicates whether the next page exists.', + 'type' => 'boolean', + 'title' => '', + 'example' => 'false', + ], + 'CurrentPage' => [ + 'description' => 'The current page number.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '10', + ], + 'Ips' => [ + 'description' => 'The list of IP addresses.', + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the purchased IP address.', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The IP address ID. This is the same as the purchased instance ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'Ip' => [ + 'description' => 'The IP address.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'InstanceId' => [ + 'description' => 'The ID of the purchased instance.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'StartTime' => [ + 'description' => 'The purchase time.', + 'type' => 'string', + 'title' => '', + 'example' => '2025-05-12T09:19:20Z', + ], + 'ExpiredTime' => [ + 'description' => 'The expiration time.', + 'type' => 'string', + 'title' => '', + 'example' => '2025-06-12T09:19:20Z', + ], + 'Status' => [ + 'description' => 'The status of the IP address.', + 'type' => 'string', + 'enumValueTitles' => [ + 'sold' => 'The IP address is purchased.', + 'expired' => 'The IP address has expired.', + ], + 'title' => '', + 'example' => 'sold', + ], + 'WarmupStatus' => [ + 'description' => 'The prefetch status.', + 'type' => 'string', + 'enumValueTitles' => [ + 'init' => 'The IP address is pending processing.', + 'processing' => 'The IP address is being processed.', + 'finish' => 'The process is complete.', + ], + 'title' => '', + 'example' => 'finish', + ], + 'WarmupType' => [ + 'description' => 'The prefetch method.', + 'type' => 'string', + 'enumValueTitles' => [ + 'sysCusStream' => 'System prefetch.', + 'cusSelfManager' => 'Manual prefetch.', + ], + 'title' => '', + 'example' => 'cusSelfManager', + ], + 'IpPoolName' => [ + 'description' => 'The name of the IP pool to which the IP address belongs.', + 'type' => 'string', + 'enumValueTitles' => [], + 'title' => '', + 'example' => 'xxx', + ], + 'IpExt' => [ + 'description' => 'The extended information.', + 'type' => 'object', + 'properties' => [ + 'HasSendMail' => [ + 'description' => 'Indicates whether emails have been sent.', + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => 'Yes', + 'false' => 'No', + ], + 'title' => '', + 'example' => 'true', + ], + 'AutoRenewal' => [ + 'description' => 'Indicates whether auto-renewal is enabled.', + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => 'Yes', + 'false' => 'No', + ], + 'title' => '', + 'example' => 'false', + ], + 'LastWarmUpTypeChangedTime' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'ZoneId' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCounts\\": 5,\\n \\"RequestId\\": \\"xxx\\",\\n \\"HasMore\\": false,\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 10,\\n \\"Ips\\": [\\n {\\n \\"Id\\": \\"xxx\\",\\n \\"Ip\\": \\"xxx\\",\\n \\"InstanceId\\": \\"xxx\\",\\n \\"StartTime\\": \\"2025-05-12T09:19:20Z\\",\\n \\"ExpiredTime\\": \\"2025-06-12T09:19:20Z\\",\\n \\"Status\\": \\"sold\\",\\n \\"WarmupStatus\\": \\"finish\\",\\n \\"WarmupType\\": \\"cusSelfManager\\",\\n \\"IpPoolName\\": \\"xxx\\",\\n \\"IpExt\\": {\\n \\"HasSendMail\\": true,\\n \\"AutoRenewal\\": false,\\n \\"LastWarmUpTypeChangedTime\\": \\"\\"\\n },\\n \\"ZoneId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'List Purchased IP Addresses', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DedicatedIpNonePoolList' => [ + 'summary' => 'Lists the IP addresses that are not assigned to any IP pool. This operation is used for IP pool configuration.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Response', + 'type' => 'object', + 'properties' => [ + 'Ips' => [ + 'description' => 'The IP addresses that are not added to an IP pool.', + 'type' => 'array', + 'items' => [ + 'description' => 'The relationship between the purchased instance and the IP address.', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The ID of the purchased instance.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'Ip' => [ + 'description' => 'The IP address.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'ZoneId' => [ + 'type' => 'string', + 'description' => 'The zone ID.', + 'title' => '', + 'example' => 'xxx', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Ips\\": [\\n {\\n \\"Id\\": \\"xxx\\",\\n \\"Ip\\": \\"xxx\\",\\n \\"ZoneId\\": \\"xxx\\"\\n }\\n ],\\n \\"RequestId\\": \\"xxx\\"\\n}","type":"json"}]', + 'title' => 'List IPs Not Added to IP Pool', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpNonePoolList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DedicatedIpPoolCreate' => [ + 'summary' => 'Creates a dedicated IP pool.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the IP pool. The name must be 1 to 50 characters in length. It can contain letters, digits, underscores (\\_), and hyphens (-). The name cannot be changed after the IP pool is created.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'maxLength' => 50, + 'minLength' => 1, + 'title' => '', + 'example' => 'xxx', + ], + ], + [ + 'name' => 'BuyResourceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of the purchased IP instances. Separate multiple IDs with commas (,). You can obtain the instance IDs from the response of the DedicatedIpNonePoolList operation.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'xxx,xxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'xxx', + ], + 'Id' => [ + 'description' => 'The ID of the IP pool.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"Id\\": \\"xxx\\"\\n}","type":"json"}]', + 'title' => 'Create IP Pool', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DedicatedIpPoolDelete' => [ + 'summary' => 'Deletes a dedicated IP pool.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP pool ID.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'title' => '', + 'example' => 'xxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'xxx', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\"\\n}","type":"json"}]', + 'title' => 'Delete IP Pool', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolDelete', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DedicatedIpPoolList' => [ + 'summary' => 'Queries a list of dedicated IP pools.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'PageIndex', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page index. The index starts from 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'default' => '1', + 'title' => '', + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'default' => '10', + 'title' => '', + 'example' => '10', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keyword for a name-based search.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'xxx', + ], + ], + [ + 'name' => 'All', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'default' => 'false', + 'title' => '', + 'description' => 'The identifier for a full query.', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'xxx', + ], + 'HasMore' => [ + 'description' => 'Indicates whether there is a next page.', + 'type' => 'boolean', + 'enumValueTitles' => [ + 'ture' => 'Yes', + 'false' => 'No', + ], + 'title' => '', + 'example' => 'false', + ], + 'CurrentPage' => [ + 'description' => 'The current page.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The page size.', + 'type' => 'string', + 'title' => '', + 'example' => '10', + ], + 'TotalCounts' => [ + 'description' => 'The total number of entries that meet the request conditions.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '5', + ], + 'IpPools' => [ + 'description' => 'The list of IP pools.', + 'type' => 'array', + 'items' => [ + 'description' => 'The IP pool information.', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The IP pool ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'CreateTime' => [ + 'description' => 'The creation time.', + 'type' => 'string', + 'title' => '', + 'example' => '2025-05-23T07:41:43Z', + ], + 'Name' => [ + 'description' => 'The IP pool name.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'IpCount' => [ + 'description' => 'The number of source IP addresses.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1', + ], + 'Ips' => [ + 'description' => 'The list of IP addresses.', + 'type' => 'array', + 'items' => [ + 'description' => 'The IP address information.', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The purchased instance ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'Ip' => [ + 'description' => 'The IP address.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'ZoneId' => [ + 'type' => 'string', + 'description' => 'The zone ID.', + 'title' => '', + 'example' => 'xxx', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"HasMore\\": false,\\n \\"CurrentPage\\": \\"1\\",\\n \\"PageSize\\": \\"10\\",\\n \\"TotalCounts\\": 5,\\n \\"IpPools\\": [\\n {\\n \\"Id\\": \\"xxx\\",\\n \\"CreateTime\\": \\"2025-05-23T07:41:43Z\\",\\n \\"Name\\": \\"xxx\\",\\n \\"IpCount\\": 1,\\n \\"Ips\\": [\\n {\\n \\"Id\\": \\"xxx\\",\\n \\"Ip\\": \\"xxx\\",\\n \\"ZoneId\\": \\"xxx\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'List IP Pools', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DedicatedIpPoolUpdate' => [ + 'summary' => 'Updates an IP pool.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the IP pool.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'title' => '', + 'example' => 'xxx', + ], + ], + [ + 'name' => 'BuyResourceIds', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The IDs of the purchased IP instances. Separate multiple IDs with commas. Obtain these IDs from the response of the DedicatedIpNonePoolList operation.', + 'type' => 'string', + 'required' => false, + 'title' => '', + 'example' => 'xxx,xxx', + ], + ], + [ + 'name' => 'UpdateResource', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to change the associated IP addresses. Set this parameter to true.', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'Yes', + 'false' => 'No', + ], + 'title' => '', + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'xxx', + ], + 'Id' => [ + 'description' => 'The ID of the IP pool.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"Id\\": \\"xxx\\"\\n}","type":"json"}]', + 'title' => 'Update IP Pool', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolUpdate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'DeleteDomain' => [ + 'summary' => 'Delete Domain', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Domain ID.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '326***', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID.', + 'type' => 'string', + 'example' => 'E3DFF97B-00CF-5333-8125-3D6819471984', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Delete Domain', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E3DFF97B-00CF-5333-8125-3D6819471984\\"\\n}","type":"json"}]', + ], + 'DeleteInvalidAddress' => [ + 'summary' => 'Remove invalid addresses from the invalid address database', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ToAddress', + 'in' => 'query', + 'schema' => [ + 'description' => 'Target address', + 'type' => 'string', + 'required' => false, + 'example' => 'test1***@example.net'."\n", + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '2D086F6-xxxx-xxxx-xxxx-006DED011A85', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Delete Invalid Address', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:DeleteInvalidAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2D086F6-xxxx-xxxx-xxxx-006DED011A85\\"\\n}","type":"json"}]', + ], + 'DeleteIpfilterByEdmId' => [ + 'summary' => 'Delete IP Protection Information', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'description' => 'Deprecated, kept for historical compatibility.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + 'example' => '废弃,历史原因兼容'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'description' => 'Record ID', + 'type' => 'string', + 'required' => false, + 'example' => '10120', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID.', + 'type' => 'string', + 'example' => 'E3DFF97B-00CF-5333-8125-3D6819471984', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Delete IP Whitelist', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteIpfilterByEdmId', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E3DFF97B-00CF-5333-8125-3D6819471984\\"\\n}","type":"json"}]', + ], + 'DeleteMailAddress' => [ + 'summary' => 'Delete Mail Address', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'MailAddressId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Mail Address ID', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '23457', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Delete Mail Address', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'DeleteReceiver' => [ + 'summary' => 'Delete Receiver List', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Receiver list ID', + 'type' => 'string', + 'required' => true, + 'example' => '144adfa772cfe47631de7e86d7da13ae', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Delete Receiver List', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteReceiver', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'DeleteReceiverDetail' => [ + 'summary' => 'Delete a Single Recipient', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Recipient list ID', + 'type' => 'string', + 'required' => true, + 'example' => '53228b7d80c36257927ecd029ccd3c9a', + 'title' => '', + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'description' => 'The single recipient to be deleted from the recipient list', + 'type' => 'string', + 'required' => false, + 'example' => '账号+@+域名', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Delete a Single Recipient', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteReceiverDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'DeleteTag' => [ + 'summary' => 'Delete Tag', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'TagId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the tag', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '123', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Delete Tag', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteTag', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'DeleteValidateFile' => [ + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'FileId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the file that is returned after the task is submitted.', + 'type' => 'string', + 'title' => '', + 'required' => false, + 'example' => 'xxxx-xxxx-xxxx-xxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'yyyy-yyyy-yyyy-yyyy', + ], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'DeleteValidateFile', + 'summary' => 'Deletes the verification file after the verification process is complete.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteValidateFile', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"yyyy-yyyy-yyyy-yyyy\\"\\n}","type":"json"}]', + ], + 'DescAccountSummary' => [ + 'summary' => 'Retrieves account information.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnableTimes' => [ + 'description' => 'The effective period.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'SmsSign' => [ + 'description' => 'This parameter is deprecated. It is retained for compatibility.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'MonthQuota' => [ + 'description' => 'The monthly quota.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60000', + 'title' => '', + ], + 'Receivers' => [ + 'description' => 'The number of recipients.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'DayuStatus' => [ + 'description' => 'The status of Dayu. This parameter is deprecated and retained for compatibility.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'DailyQuota' => [ + 'description' => 'The daily quota.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2000', + 'title' => '', + ], + 'SmsRecord' => [ + 'description' => 'This parameter is deprecated. It is retained for compatibility.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'Tags' => [ + 'description' => 'The number of tags.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'Templates' => [ + 'description' => 'The number of templates.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'MailAddresses' => [ + 'description' => 'The number of sender addresses.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '82B295BB-7E69-491F-9896-ECEAFF09E1A4', + 'title' => '', + ], + 'QuotaLevel' => [ + 'description' => 'The reputation level.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'MaxQuotaLevel' => [ + 'description' => 'The maximum reputation level.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'Domains' => [ + 'description' => 'The number of domain names.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'UserStatus' => [ + 'description' => 'The status of the user. Valid values: 0: Normal. 1: Freeze. 2: Overdue payment. 4: Outbound messages are restricted. 8: The user is logically deleted.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'SmsTemplates' => [ + 'description' => 'This parameter is deprecated. It is retained for compatibility.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'RemainFreeQuota' => [ + 'description' => 'The remaining free quota.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1910', + 'title' => '', + ], + 'DailyRemainFreeQuota' => [ + 'description' => 'The remaining daily free quota.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'IpChannelType' => [ + 'description' => 'The type of the outbound IP channel.'."\n" + ."\n" + .'1. backup: A backup IP channel that is not actively maintained. Customers using this channel are advised to purchase a dedicated IP for better stability.'."\n" + ."\n" + .'2. normal: A normal IP channel that is continuously maintained by the email delivery team to ensure stable and reliable service.', + 'type' => 'string', + 'enum' => [ + 'backup', + 'normal', + ], + 'example' => 'normal', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'User.Blacklisted', + 'errorMessage' => 'The specified user is in the blacklist.', + 'description' => '', + ], + [ + 'errorCode' => 'User.RegisterTooMuch', + 'errorMessage' => 'The specified user has registered more than one DirectMail account.', + 'description' => '', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + 'description' => '', + ], + ], + ], + 'title' => 'Get Account Information', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:DescAccountSummary', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"EnableTimes\\": 0,\\n \\"SmsSign\\": 0,\\n \\"MonthQuota\\": 60000,\\n \\"Receivers\\": 0,\\n \\"DayuStatus\\": 0,\\n \\"DailyQuota\\": 2000,\\n \\"SmsRecord\\": 0,\\n \\"Tags\\": 0,\\n \\"Templates\\": 1,\\n \\"MailAddresses\\": 0,\\n \\"RequestId\\": \\"82B295BB-7E69-491F-9896-ECEAFF09E1A4\\",\\n \\"QuotaLevel\\": 2,\\n \\"MaxQuotaLevel\\": 10,\\n \\"Domains\\": 1,\\n \\"UserStatus\\": 0,\\n \\"SmsTemplates\\": 0,\\n \\"RemainFreeQuota\\": 1910,\\n \\"DailyRemainFreeQuota\\": 100,\\n \\"IpChannelType\\": \\"normal\\"\\n}","type":"json"}]', + ], + 'DescDomain' => [ + 'summary' => 'You can configure domain names.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The domain name ID. Obtain this ID by calling the QueryDomainByParam operation.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '13464', + 'title' => '', + ], + ], + [ + 'name' => 'RequireRealTimeDnsRecords', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to perform real-time DNS parsing.', + 'type' => 'boolean', + 'default' => 'true', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SpfRecord' => [ + 'description' => 'The SPF record value provided by the Direct Mail console.', + 'type' => 'string', + 'example' => 'include:spf1.dm.aliyun.com', + 'title' => '', + ], + 'CnameConfirmStatus' => [ + 'description' => 'Indicates whether the CNAME host record was modified. A value of 1 means the record was modified. Reverting to the original value is also considered a modification. A value of 0 means the record was not modified.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'DefaultDomain' => [ + 'description' => 'Indicates whether the domain name is the default domain name.'."\n" + ."\n" + .'Value: 0 (No). This field is deprecated.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'The time when the domain name was created.', + 'type' => 'string', + 'example' => '2025-03-19T12:49Z', + 'title' => '', + ], + 'CnameRecord' => [ + 'description' => 'The custom part of the CNAME host record.', + 'type' => 'string', + 'example' => 'dmtrace', + 'title' => '', + ], + 'CnameAuthStatus' => [ + 'description' => 'The CNAME authentication flag. 0: Succeeded. 1: Failed.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'IcpStatus' => [ + 'description' => 'The ICP filing status. **1** indicates that the domain name has an ICP filing. **0** indicates that the domain name does not have an ICP filing.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'DnsTxt' => [ + 'description' => 'The ownership record value parsed from the public domain name.', + 'type' => 'string', + 'example' => '0c40d5f125af4e42892a', + 'title' => '', + ], + 'DomainName' => [ + 'description' => 'The domain name.', + 'type' => 'string', + 'example' => 'test.example.net', + 'title' => '', + ], + 'DomainId' => [ + 'description' => 'The domain name ID.', + 'type' => 'string', + 'example' => '158910', + 'title' => '', + ], + 'DnsSpf' => [ + 'description' => 'The SPF record value parsed from the public domain name.', + 'type' => 'string', + 'example' => 'v=xxxx', + 'title' => '', + ], + 'SpfAuthStatus' => [ + 'description' => 'The SPF authentication flag. 0: Succeeded. 1: Failed.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '51B74264-46B4-43C8-A9A0-6B8E8BC04F34', + 'title' => '', + ], + 'MxRecord' => [ + 'description' => 'The MX record value provided by the Direct Mail console.', + 'type' => 'string', + 'example' => 'mx01.dm.aliyun.com', + 'title' => '', + ], + 'MxAuthStatus' => [ + 'description' => 'The MX authentication flag. 0: Succeeded. 1: Failed.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'DnsMx' => [ + 'description' => 'The MX record value parsed from the public domain name.', + 'type' => 'string', + 'example' => 'mx01.dm.aliyun.com', + 'title' => '', + ], + 'DomainStatus' => [ + 'description' => 'The domain status. This indicates whether the domain name passed authentication. Valid values:'."\n" + ."\n" + .'- **0**: Active. The domain name passed authentication.'."\n" + ."\n" + .'- **1**: Inactive. The domain name failed authentication.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'TlDomainName' => [ + 'description' => 'The primary domain name.', + 'type' => 'string', + 'example' => 'example.com', + 'title' => '', + ], + 'TracefRecord' => [ + 'description' => 'The CNAME record value provided by the Direct Mail console.', + 'type' => 'string', + 'example' => 'tracedm.aliyuncs.com', + 'title' => '', + ], + 'DomainType' => [ + 'description' => 'The ownership record provided by the Direct Mail console.', + 'type' => 'string', + 'example' => '0c40d5f125af4e42892a', + 'title' => '', + ], + 'SpfRecordV2' => [ + 'description' => 'The SPF record. This field replaces the \\`spfRecord\\` field. You can directly display the value of this field without needing to calculate it from the response.', + 'type' => 'string', + 'example' => 'v=spf1 include:spf1.dm.aliyun.com -all', + 'title' => '', + ], + 'DkimRR' => [ + 'description' => 'The DKIM host record. This is the key of the DKIM record to configure in your DNS settings.', + 'type' => 'string', + 'example' => 'aliyun-cn-hangzhou._domainkey.hangzhou26', + 'title' => '', + ], + 'DkimPublicKey' => [ + 'description' => 'The DKIM public key. This is the value of the DKIM record to configure in your DNS settings.', + 'type' => 'string', + 'example' => 'v=DKIM1; k=rsa; p=MIGfMA0GCSqGSI...', + 'title' => '', + ], + 'DkimAuthStatus' => [ + 'description' => 'The DKIM authentication flag. Indicates if the DKIM record in your DNS settings passed verification. 0: Passed. 1: Not passed.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'HostRecord' => [ + 'description' => 'The host record.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'DmarcRecord' => [ + 'description' => 'The DMARC record value.', + 'type' => 'string', + 'example' => 'v=DMARC1;p=none;rua=mailto:[email protected]', + 'title' => '', + ], + 'DnsDmarc' => [ + 'description' => 'The DMARC record value parsed from the public domain name.', + 'type' => 'string', + 'example' => 'v=DMARC1;p=none;rua=mailto:[email protected]', + 'title' => '', + ], + 'DmarcAuthStatus' => [ + 'description' => 'The DMARC authentication flag. Indicates if the DMARC record in your DNS settings passed verification. 0: Passed. 1: Not passed.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'DmarcHostRecord' => [ + 'description' => 'The DMARC host record value.', + 'type' => 'string', + 'example' => '_dmarc.xxx', + 'title' => '', + ], + 'DkimRsaLength' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Configure Domain', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:DescDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SpfRecord\\": \\"include:spf1.dm.aliyun.com\\",\\n \\"CnameConfirmStatus\\": \\"0\\",\\n \\"DefaultDomain\\": \\"0\\",\\n \\"CreateTime\\": \\"2025-03-19T12:49Z\\",\\n \\"CnameRecord\\": \\"dmtrace\\",\\n \\"CnameAuthStatus\\": \\"1\\",\\n \\"IcpStatus\\": \\"1\\",\\n \\"DnsTxt\\": \\"0c40d5f125af4e42892a\\",\\n \\"DomainName\\": \\"test.example.net\\",\\n \\"DomainId\\": \\"158910\\",\\n \\"DnsSpf\\": \\"v=xxxx\\",\\n \\"SpfAuthStatus\\": \\"1\\",\\n \\"RequestId\\": \\"51B74264-46B4-43C8-A9A0-6B8E8BC04F34\\",\\n \\"MxRecord\\": \\"mx01.dm.aliyun.com\\",\\n \\"MxAuthStatus\\": \\"1\\",\\n \\"DnsMx\\": \\"mx01.dm.aliyun.com\\",\\n \\"DomainStatus\\": \\"1\\",\\n \\"TlDomainName\\": \\"example.com\\",\\n \\"TracefRecord\\": \\"tracedm.aliyuncs.com\\",\\n \\"DomainType\\": \\"0c40d5f125af4e42892a\\",\\n \\"SpfRecordV2\\": \\"v=spf1 include:spf1.dm.aliyun.com -all\\",\\n \\"DkimRR\\": \\"aliyun-cn-hangzhou._domainkey.hangzhou26\\",\\n \\"DkimPublicKey\\": \\"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSI...\\",\\n \\"DkimAuthStatus\\": \\"0\\",\\n \\"HostRecord\\": \\"xxx\\",\\n \\"DmarcRecord\\": \\"v=DMARC1;p=none;rua=mailto:[email protected]\\",\\n \\"DnsDmarc\\": \\"v=DMARC1;p=none;rua=mailto:[email protected]\\",\\n \\"DmarcAuthStatus\\": 1,\\n \\"DmarcHostRecord\\": \\"_dmarc.xxx\\",\\n \\"DkimRsaLength\\": 0\\n}","type":"json"}]', + ], + 'DescTemplate' => [ + 'summary' => 'Views the information about a template.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '3xxxx2', + 'title' => '', + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + 'example' => 'Abandoned, historical reasons for compatibility', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SmsContent' => [ + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'type' => 'string', + 'example' => 'Abandoned, historical reasons for compatibility', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '95xxx5F', + 'title' => '', + ], + 'Remark' => [ + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'type' => 'string', + 'example' => 'Abandoned, historical reasons for compatibility', + 'title' => '', + ], + 'SmsType' => [ + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'type' => 'string', + 'example' => 'Abandoned, historical reasons for compatibility', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'The time when the template was created.', + 'type' => 'string', + 'example' => '2025-11-14T13:28Z', + 'title' => '', + ], + 'TemplateSubject' => [ + 'description' => 'The template subject, which is used to create the email subject.', + 'type' => 'string', + 'example' => 'test', + 'title' => '', + ], + 'TemplateStatus' => [ + 'description' => 'The status of the template. Valid values:'."\n" + ."\n" + .'- 0: The template is a draft.'."\n" + ."\n" + .'- 1: The template is pending approval.'."\n" + ."\n" + .'- 2: The template is approved.'."\n" + ."\n" + .'- 3: The template is rejected.', + 'type' => 'string', + 'example' => '2', + 'title' => '', + ], + 'TemplateNickName' => [ + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'type' => 'string', + 'example' => 'Abandoned, historical reasons for compatibility', + 'title' => '', + ], + 'TemplateType' => [ + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'type' => 'string', + 'example' => 'Abandoned, historical reasons for compatibility', + 'title' => '', + ], + 'TemplateName' => [ + 'description' => 'The template name.', + 'type' => 'string', + 'example' => 'test1', + 'title' => '', + ], + 'TemplateText' => [ + 'description' => 'The template content.', + 'type' => 'string', + 'example' => '<p>1</p>', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'DescTemplate', + 'description' => 'You can call this operation to view the information about a template.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:DescTemplate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SmsContent\\": \\"Abandoned, historical reasons for compatibility\\",\\n \\"RequestId\\": \\"95xxx5F\\",\\n \\"Remark\\": \\"Abandoned, historical reasons for compatibility\\",\\n \\"SmsType\\": \\"Abandoned, historical reasons for compatibility\\",\\n \\"CreateTime\\": \\"2025-11-14T13:28Z\\",\\n \\"TemplateSubject\\": \\"test\\",\\n \\"TemplateStatus\\": \\"2\\",\\n \\"TemplateNickName\\": \\"Abandoned, historical reasons for compatibility\\",\\n \\"TemplateType\\": \\"Abandoned, historical reasons for compatibility\\",\\n \\"TemplateName\\": \\"test1\\",\\n \\"TemplateText\\": \\"<p>1</p>\\"\\n}","type":"json"}]', + ], + 'GetIpProtection' => [ + 'summary' => 'Get IP Protection Information', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'Detailed Record', + 'type' => 'object', + 'properties' => [ + 'IpProtection' => [ + 'description' => 'IP protection switch, On: 1 Off: 0', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => 'B30E5A62-2E64-577D-A70E-8C6781D6C975', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"IpProtection\\": \\"0\\",\\n \\"RequestId\\": \\"B30E5A62-2E64-577D-A70E-8C6781D6C975\\"\\n}","type":"json"}]', + 'title' => 'Check if IP Protection is Enabled', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetIpProtection', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'GetIpfilterList' => [ + 'summary' => 'Retrieve IP Protection Information', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'Number of items per page', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '84DD77C7-A091-5139-9530-2D1F7CCE59E0', + 'title' => '', + ], + 'PageNumber' => [ + 'description' => 'Current page number', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'Total count', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ipfilters' => [ + 'description' => 'Data records', + 'type' => 'array', + 'items' => [ + 'description' => 'Detailed record', + 'type' => 'object', + 'properties' => [ + 'IpAddress' => [ + 'description' => 'IP address/IP range/IP segment', + 'type' => 'string', + 'example' => '单个IP格式,如:xxx.xxx.xxx.xxx'."\n" + .'IP区间格式,如:xxx.xxx.xxx.xxx-xxx.xxx.xxx.xxx'."\n" + .'IP段格式,如:xxx.xxx.xxx.xxx/xxx', + 'title' => '', + ], + 'Id' => [ + 'description' => 'Record ID', + 'type' => 'string', + 'example' => '10083', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'timestamp', + 'type' => 'string', + 'example' => '1653547140', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Get IP Filter List', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetIpfilterList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"84DD77C7-A091-5139-9530-2D1F7CCE59E0\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"data\\": {\\n \\"ipfilters\\": [\\n {\\n \\"IpAddress\\": \\"单个IP格式,如:xxx.xxx.xxx.xxx\\\\nIP区间格式,如:xxx.xxx.xxx.xxx-xxx.xxx.xxx.xxx\\\\nIP段格式,如:xxx.xxx.xxx.xxx/xxx\\",\\n \\"Id\\": \\"10083\\",\\n \\"CreateTime\\": \\"1653547140\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'GetTrackList' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time. The time cannot be more than 30 days in the past. The format is yyyy-MM-dd.', + 'type' => 'string', + 'required' => true, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time. The time range between the start and end times cannot exceed 7 days. The format is yyyy-MM-dd.', + 'type' => 'string', + 'required' => true, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'Total', + 'in' => 'query', + 'schema' => [ + 'description' => '(This field is deprecated.)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)', + 'title' => '', + ], + ], + [ + 'name' => 'Offset', + 'in' => 'query', + 'schema' => [ + 'description' => 'The value is 0 for the first query and 1 for subsequent queries. A value of 1 indicates a paged query in chronological order. (This field is deprecated.)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'string', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'OffsetCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Used for paging. Do not set this parameter for the first query. For subsequent queries, set it to the OffsetCreateTime value from the previous response. (This field is deprecated.)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)', + 'title' => '', + ], + ], + [ + 'name' => 'OffsetCreateTimeDesc', + 'in' => 'query', + 'schema' => [ + 'description' => '(This field is deprecated.)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)', + 'title' => '', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.', + 'type' => 'string', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender address.'."\n" + ."\n" + .'> Leave this parameter empty to query all addresses. If TagName is specified, this parameter is required.', + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + 'title' => '', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tag name.', + 'type' => 'string', + 'required' => false, + 'example' => 'tagname', + 'title' => '', + ], + ], + [ + 'name' => 'DedicatedIpPoolId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the dedicated IP pool to query. This parameter is for users of dedicated IPs.'."\n" + ."\n" + .'If this parameter is not specified, data for all IP pools is queried.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + [ + 'name' => 'DedicatedIp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dedicated IP address to query. This parameter is for users of dedicated IPs.'."\n" + ."\n" + .'If this parameter is not specified, data for all dedicated IPs is queried.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx.xxx.xxx.xxx', + 'title' => '', + ], + ], + [ + 'name' => 'Esp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The Email Service Provider (ESP). This parameter is for users of dedicated IPs and queries data for a specific ESP. Valid values include the following:'."\n" + ."\n" + .'- gmail.com'."\n" + ."\n" + .'- yahoo.com'."\n" + ."\n" + .'- outlook.com'."\n" + ."\n" + .'- icloud.com'."\n" + ."\n" + .'- others (for data from ESPs other than the ones listed)'."\n" + ."\n" + .'If this parameter is not specified, data for all ESPs is queried.', + 'type' => 'string', + 'title' => '', + 'required' => false, + 'example' => 'gmail.com', + ], + ], + [ + 'name' => 'ConfigSetId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The configuration set ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'OffsetCreateTimeDesc' => [ + 'description' => '(This field is deprecated.)', + 'type' => 'string', + 'example' => '(本字段已废弃)', + 'title' => '', + ], + 'OffsetCreateTime' => [ + 'description' => 'Used for paging. Do not set this parameter for the first query. For subsequent queries, set it to the OffsetCreateTime value from the previous response. (This field is deprecated.)', + 'type' => 'string', + 'example' => '(本字段已废弃)', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'PageNo' => [ + 'description' => 'The current page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'Total' => [ + 'description' => 'The total number of entries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'TotalPages' => [ + 'description' => 'The total number of pages.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'data' => [ + 'itemNode' => true, + 'type' => 'object', + 'properties' => [ + 'stat' => [ + 'description' => 'The tracking data records.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RcptClickRate' => [ + 'description' => 'The click-through rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptUniqueOpenCount' => [ + 'description' => 'The number of unique opens.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptClickCount' => [ + 'description' => 'The number of clicks.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptUniqueClickCount' => [ + 'description' => 'The number of unique clicks.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'The time of creation.', + 'type' => 'string', + 'example' => '2019-09-29T13:28Z', + 'title' => '', + ], + 'RcptUniqueOpenRate' => [ + 'description' => 'The unique open rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptUniqueClickRate' => [ + 'description' => 'The unique click-through rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'TotalNumber' => [ + 'description' => 'The total number.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptOpenRate' => [ + 'description' => 'The open rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptOpenCount' => [ + 'description' => 'The number of opens.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'Retrieve sent email tracking data', + 'summary' => 'Retrieves email tracking data.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:GetTrackList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"OffsetCreateTimeDesc\\": \\"(本字段已废弃)\\",\\n \\"OffsetCreateTime\\": \\"(本字段已废弃)\\",\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 100,\\n \\"TotalPages\\": 2,\\n \\"data\\": {\\n \\"stat\\": [\\n {\\n \\"RcptClickRate\\": \\"0\\",\\n \\"RcptUniqueOpenCount\\": \\"0\\",\\n \\"RcptClickCount\\": \\"0\\",\\n \\"RcptUniqueClickCount\\": \\"0\\",\\n \\"CreateTime\\": \\"2019-09-29T13:28Z\\",\\n \\"RcptUniqueOpenRate\\": \\"0\\",\\n \\"RcptUniqueClickRate\\": \\"0\\",\\n \\"TotalNumber\\": \\"0\\",\\n \\"RcptOpenRate\\": \\"0\\",\\n \\"RcptOpenCount\\": \\"0\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'GetTrackListByMailFromAndTagName' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Total', + 'in' => 'query', + 'schema' => [ + 'description' => '(This field is deprecated)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time. The time cannot be earlier than 30 days ago. The format is yyyy-MM-dd.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time. The time span between the start time and end time cannot exceed 15 days. The format is yyyy-MM-dd.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'Offset', + 'in' => 'query', + 'schema' => [ + 'description' => 'The value is 0 for the first query and 1 for subsequent queries. A value of 1 indicates a paged query in chronological order. (This field is deprecated)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'string', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'OffsetCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Used for paging. Do not set this parameter for the first query. For subsequent queries, set this parameter to the OffsetCreateTime value from the previous response. (This field is deprecated)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'OffsetCreateTimeDesc', + 'in' => 'query', + 'schema' => [ + 'description' => '(This field is deprecated)', + 'type' => 'string', + 'required' => false, + 'example' => '(本字段已废弃)'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The current page number.', + 'type' => 'string', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender address.'."\n" + ."\n" + .'> If you leave this parameter empty, data for all addresses is returned. This parameter is required if you specify TagName.', + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + 'title' => '', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The email tag. If you leave this parameter empty, data for all tags is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'Subscription', + 'title' => '', + ], + ], + [ + 'name' => 'DedicatedIpPoolId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the dedicated IP pool. This parameter is available only for users of dedicated IPs.'."\n" + ."\n" + .'If you do not specify this parameter, data for all IP pools is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + [ + 'name' => 'DedicatedIp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dedicated IP address. This parameter is available only for users of dedicated IPs.'."\n" + ."\n" + .'If you do not specify this parameter, data for all IPs is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx.xxx.xxx.xxx', + 'title' => '', + ], + ], + [ + 'name' => 'Esp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The Email Service Provider (ESP). This parameter is available only for users of dedicated IPs. Valid values:'."\n" + ."\n" + .'- gmail.com'."\n" + ."\n" + .'- yahoo.com'."\n" + ."\n" + .'- outlook.com'."\n" + ."\n" + .'- icloud.com'."\n" + ."\n" + .'- others (data for ESPs other than the ones listed above)'."\n" + ."\n" + .'If you do not specify this parameter, data for all ESPs is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'gmail.com', + 'title' => '', + ], + ], + [ + 'name' => 'ConfigSetId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The configuration set ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'OffsetCreateTime' => [ + 'description' => 'Used for paging. Do not set this parameter for the first query. For subsequent queries, set this parameter to the OffsetCreateTime value from the previous response. (This field is deprecated)', + 'type' => 'string', + 'example' => '(本字段已废弃)', + 'title' => '', + ], + 'PageNo' => [ + 'description' => 'The current page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + 'title' => '', + ], + 'Total' => [ + 'description' => '(This field is deprecated)', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + 'title' => '', + ], + 'OffsetCreateTimeDesc' => [ + 'description' => '(This field is deprecated)', + 'type' => 'string', + 'example' => '(本字段已废弃)', + 'title' => '', + ], + 'TrackList' => [ + 'itemNode' => true, + 'type' => 'object', + 'properties' => [ + 'Stat' => [ + 'description' => 'The tracking data records.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RcptClickRate' => [ + 'description' => 'The click-through rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptUniqueOpenCount' => [ + 'description' => 'The number of unique opens.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptClickCount' => [ + 'description' => 'The number of clicks.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptUniqueClickCount' => [ + 'description' => 'The number of unique clicks.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'The time when the record was created.', + 'type' => 'string', + 'example' => '2025-01-11T10:11Z', + 'title' => '', + ], + 'RcptUniqueOpenRate' => [ + 'description' => 'The unique open rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptUniqueClickRate' => [ + 'description' => 'The unique click-through rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'TotalNumber' => [ + 'description' => 'The total number.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptOpenRate' => [ + 'description' => 'The open rate.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'RcptOpenCount' => [ + 'description' => 'The number of opens.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'TotalPages' => [ + 'description' => 'The total number of pages.', + 'type' => 'string', + 'example' => '2', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'Retrieve email tracking sending data by sender address and label', + 'summary' => 'Retrieves email tracking data that meets specified conditions.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:GetTrackListByMailFromAndTagName', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"OffsetCreateTime\\": \\"(本字段已废弃)\\",\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 20,\\n \\"Total\\": 4,\\n \\"OffsetCreateTimeDesc\\": \\"(本字段已废弃)\\",\\n \\"TrackList\\": {\\n \\"Stat\\": [\\n {\\n \\"RcptClickRate\\": \\"0\\",\\n \\"RcptUniqueOpenCount\\": \\"0\\",\\n \\"RcptClickCount\\": \\"0\\",\\n \\"RcptUniqueClickCount\\": \\"0\\",\\n \\"CreateTime\\": \\"2025-01-11T10:11Z\\",\\n \\"RcptUniqueOpenRate\\": \\"0\\",\\n \\"RcptUniqueClickRate\\": \\"0\\",\\n \\"TotalNumber\\": \\"0\\",\\n \\"RcptOpenRate\\": \\"0\\",\\n \\"RcptOpenCount\\": \\"0\\"\\n }\\n ]\\n },\\n \\"TotalPages\\": \\"2\\"\\n}","type":"json"}]', + ], + 'GetUser' => [ + 'summary' => 'Get Account Details', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'Data' => [ + 'description' => 'Returned Content', + 'type' => 'object', + 'properties' => [ + 'EnableEventbridge' => [ + 'description' => 'Whether EventBridge is enabled', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"Data\\": {\\n \\"EnableEventbridge\\": true\\n }\\n}","type":"json"}]', + 'title' => 'Get User Information', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:GetUser', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'GetValidateFile' => [ + 'summary' => 'Retrieves the results file of a batch validation task.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'FileId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file ID returned after the task is submitted.', + 'type' => 'string', + 'title' => '', + 'required' => false, + 'example' => 'xxxx-xxxx-xxxx-xxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.', + 'type' => 'string', + 'title' => '', + 'example' => 'yyyy-yyyy-yyyy-yyyy', + ], + 'FileUrl' => [ + 'description' => 'The download URL of the result file.', + 'type' => 'string', + 'title' => '', + 'example' => 'https://xxxxxx/yyy', + ], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'GetValidateFile', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetValidateFile', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"yyyy-yyyy-yyyy-yyyy\\",\\n \\"FileUrl\\": \\"https://xxxxxx/yyy\\"\\n}","type":"json"}]', + ], + 'GetValidateFileStatus' => [ + 'summary' => 'Retrieves the status of a validation file.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'FileId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The file ID returned after the task is submitted.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'xxxx-xxxx-xxxx-xxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'yyyy-yyyy-yyyy-yyyy', + ], + 'FileName' => [ + 'description' => 'The name of the file that was uploaded when the task was submitted.', + 'type' => 'string', + 'title' => '', + 'example' => 'file.txt', + ], + 'UploadTime' => [ + 'description' => 'The time when the file was submitted.', + 'type' => 'string', + 'title' => '', + 'example' => '2000-01-01T00:00:00Z', + ], + 'Status' => [ + 'description' => 'The task status.', + 'enumValueTitles' => [ + 'deleted' => 'The task was deleted.', + 'processing' => 'The task is being processed.', + 'completed' => 'The task is complete.', + ], + 'type' => 'string', + 'title' => '', + 'example' => 'completed', + ], + 'Percentage' => [ + 'description' => 'The progress of the task execution.', + 'type' => 'string', + 'title' => '', + 'example' => '100%', + ], + 'CompleteTime' => [ + 'description' => 'The time when the task was completed.', + 'type' => 'string', + 'title' => '', + 'example' => '2000-01-01T00:00:00Z', + ], + 'TotalNum' => [ + 'description' => 'The total number of email addresses to validate.', + 'type' => 'string', + 'title' => '', + 'example' => '10', + ], + 'ProcessedNum' => [ + 'description' => 'The number of email addresses that have been validated.', + 'type' => 'string', + 'title' => '', + 'example' => '10', + ], + 'ValidNum' => [ + 'description' => 'The number of email addresses with the validation result \\`Valid\\`.', + 'type' => 'string', + 'title' => '', + 'example' => '4', + ], + 'InvalidNum' => [ + 'description' => 'The number of email addresses with the validation result \\`Invalid\\`.', + 'type' => 'string', + 'title' => '', + 'example' => '2', + ], + 'CatchAllNum' => [ + 'description' => 'The number of email addresses with the validation result \\`CatchAll\\`.', + 'type' => 'string', + 'title' => '', + 'example' => '2', + ], + 'DoNotMailNum' => [ + 'description' => 'The number of email addresses with the validation result \\`DoNotMail\\`.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'UnknownNum' => [ + 'description' => 'The number of email addresses with the validation result \\`Unknown\\`.', + 'type' => 'string', + 'title' => '', + 'example' => '1', + ], + 'FileId' => [ + 'type' => 'string', + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'GetValidateFileStatus', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetValidateFileStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"yyyy-yyyy-yyyy-yyyy\\",\\n \\"FileName\\": \\"file.txt\\",\\n \\"UploadTime\\": \\"2000-01-01T00:00:00Z\\",\\n \\"Status\\": \\"completed\\",\\n \\"Percentage\\": \\"100%\\",\\n \\"CompleteTime\\": \\"2000-01-01T00:00:00Z\\",\\n \\"TotalNum\\": \\"10\\",\\n \\"ProcessedNum\\": \\"10\\",\\n \\"ValidNum\\": \\"4\\",\\n \\"InvalidNum\\": \\"2\\",\\n \\"CatchAllNum\\": \\"2\\",\\n \\"DoNotMailNum\\": \\"1\\",\\n \\"UnknownNum\\": \\"1\\",\\n \\"FileId\\": \\"\\"\\n}","type":"json"}]', + ], + 'GetValidationQuota' => [ + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxxx-xxxx-xxxx-xxxx', + ], + 'UsedQuota' => [ + 'description' => 'The used quota.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1', + ], + 'TotalQuota' => [ + 'description' => 'The total available quota.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '10', + ], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'GetValidationQuota', + 'summary' => 'Retrieves the email validation quota.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetValidationQuota', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxx-xxxx-xxxx-xxxx\\",\\n \\"UsedQuota\\": 1,\\n \\"TotalQuota\\": 10\\n}","type":"json"}]', + ], + 'ListBlockSending' => [ + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => [ + 'description' => 'The token used to start the query. If you do not specify this parameter, the query starts from the beginning of the results.', + 'type' => 'string', + 'title' => '', + 'required' => false, + 'example' => 'xxxxxyyyyyy', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries to return.<br>'."\n" + .'Valid values: 1 to 500.<br>', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'required' => false, + 'example' => '50', + ], + ], + [ + 'name' => 'BlockType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of block.'."\n" + ."\n" + .'- UNSUB: Unsubscribe'."\n" + ."\n" + .'- REPORT: Spam report', + 'type' => 'string', + 'required' => true, + 'enum' => [ + 'UNSUB', + 'REPORT', + ], + 'title' => '', + 'example' => 'UNSUB', + ], + ], + [ + 'name' => 'SenderEmail', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender email address.', + 'type' => 'string', + 'title' => '', + 'required' => false, + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'BlockEmail', + 'in' => 'query', + 'schema' => [ + 'description' => 'The recipient email address.', + 'type' => 'string', + 'title' => '', + 'required' => false, + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'BeginTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start of the time range to query blocked emails.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'required' => false, + 'example' => '1763973206', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query blocked emails.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'required' => false, + 'example' => '1764146006', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => 'The schema of the response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX', + ], + 'NextToken' => [ + 'description' => 'The token to retrieve the next page of results. An empty string indicates that no more data is available.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxxxyyyy', + ], + 'Data' => [ + 'title' => '', + 'description' => 'A list of data about unsubscribes or spam reports.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SenderEmail' => [ + 'description' => 'The sender email address.', + 'type' => 'string', + 'title' => '', + 'example' => '[email protected]', + ], + 'SendTime' => [ + 'description' => 'The time the email was sent.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1723249364', + ], + 'BlockEmail' => [ + 'description' => 'The recipient email address.', + 'type' => 'string', + 'title' => '', + 'example' => '[email protected]', + ], + 'BlockTime' => [ + 'description' => 'The time the block was initiated.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1723259364', + ], + 'Reason' => [ + 'description' => 'The reason for the block. The value is a bitset. The meaning of each bit is as follows:'."\n" + ."\n" + .'- 0: The reason is not specified.'."\n" + ."\n" + .'- 1: The recipient is not interested in the content.'."\n" + ."\n" + .'- 2: The content is repetitive.'."\n" + ."\n" + .'- 3: The content is sent too frequently.', + 'type' => 'integer', + 'format' => 'int32', + 'title' => '', + 'example' => '1', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'example' => '', + ], + 'MaxResults' => [ + 'description' => 'The maximum number of entries returned.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '50', + 'title' => '', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ListBlockSending', + 'summary' => 'Queries the email sending blacklist.', + 'description' => 'Queries data about unsubscribes or spam reports.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:ListBlockSending', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\\",\\n \\"NextToken\\": \\"xxxxyyyy\\",\\n \\"Data\\": [\\n {\\n \\"SenderEmail\\": \\"[email protected]\\",\\n \\"SendTime\\": 1723249364,\\n \\"BlockEmail\\": \\"[email protected]\\",\\n \\"BlockTime\\": 1723259364,\\n \\"Reason\\": 1\\n }\\n ],\\n \\"MaxResults\\": 50\\n}","type":"json"}]', + ], + 'ListUserSuppression' => [ + 'summary' => 'List User Invalid Addresses.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'StartCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Start creation time, timestamp, accurate to the second.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1715668852', + 'title' => '', + ], + ], + [ + 'name' => 'EndCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'End creation time, timestamp, accurate to the second. The span between start and end times cannot exceed 7 days.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1715669077', + 'title' => '', + ], + ], + [ + 'name' => 'StartBounceTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Start time of the last bounce hit, timestamp, accurate to the second.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1715668852', + 'title' => '', + ], + ], + [ + 'name' => 'EndBounceTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'End time of the last bounce hit, timestamp, accurate to the second. The span between start and end times cannot exceed 7 days.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1715669077', + 'title' => '', + ], + ], + [ + 'name' => 'Address', + 'in' => 'query', + 'schema' => [ + 'description' => 'Email address or domain name', + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + 'title' => '', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'Current page number', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'Page size', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'Page size', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '1A846D66-5EC7-551B-9687-5BF1963DCFC1', + 'title' => '', + ], + 'PageNumber' => [ + 'description' => 'Page number', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'Total count', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UserSuppressions' => [ + 'description' => 'Returned results.', + 'type' => 'array', + 'items' => [ + 'description' => 'detailed information', + 'type' => 'object', + 'properties' => [ + 'SuppressionId' => [ + 'description' => 'Invalid address ID', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '59511', + 'title' => '', + ], + 'Address' => [ + 'description' => 'Email address or domain name', + 'type' => 'string', + 'example' => '[email protected]', + 'title' => '', + ], + 'LastBounceTime' => [ + 'description' => 'Last bounce hit time, timestamp, accurate to the second.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1715667451', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'Creation time, timestamp, accurate to the second.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1715667435', + 'title' => '', + ], + 'Type' => [ + 'description' => 'Source of entry, invalid address type'."\n" + ."\n" + .'- system'."\n" + ."\n" + .'- user', + 'type' => 'string', + 'example' => 'user', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'List Personal and System Invalid Addresses', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:ListUserSuppression', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"1A846D66-5EC7-551B-9687-5BF1963DCFC1\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"Data\\": {\\n \\"UserSuppressions\\": [\\n {\\n \\"SuppressionId\\": 59511,\\n \\"Address\\": \\"[email protected]\\",\\n \\"LastBounceTime\\": 1715667451,\\n \\"CreateTime\\": 1715667435,\\n \\"Type\\": \\"user\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'ListValidateFile' => [ + 'summary' => 'Retrieves a list of uploaded validation files.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time. The time is in UTC and follows the RFC 3339 format.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '2025-12-19T08:30:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time. The time is in UTC and follows the RFC 3339 format.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '2025-12-19T20:30:00Z', + ], + ], + [ + 'name' => 'FileKeyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'A keyword in the file name.', + 'type' => 'string', + 'required' => false, + 'example' => 'keyword', + 'title' => '', + ], + ], + [ + 'name' => 'Page', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'HasNext' => [ + 'description' => 'Indicates whether a next page of data exists.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'Page' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'TotalSize' => [ + 'description' => 'The total number of entries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '', + ], + 'TotalPages' => [ + 'description' => 'The total number of pages.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'Files' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'FileName' => [ + 'description' => 'The file name.', + 'type' => 'string', + 'example' => 'test.csv', + 'title' => '', + ], + 'UploadTime' => [ + 'description' => 'The time when the file was submitted.', + 'type' => 'string', + 'example' => '2000-01-01T00:00:00Z', + 'title' => '', + ], + 'Status' => [ + 'description' => 'The status of the task.', + 'type' => 'string', + 'example' => 'completed', + 'title' => '', + ], + 'Percentage' => [ + 'description' => 'The task execution progress.', + 'type' => 'string', + 'example' => '100%', + 'title' => '', + ], + 'CompleteTime' => [ + 'description' => 'The time when the task was completed.', + 'type' => 'string', + 'example' => '2000-01-01T00:00:00Z', + 'title' => '', + ], + 'TotalNum' => [ + 'description' => 'The number of addresses to validate in the task.', + 'type' => 'string', + 'example' => '10', + 'title' => '', + ], + 'ProcessedNum' => [ + 'description' => 'The number of addresses that have been validated.', + 'type' => 'string', + 'example' => '10', + 'title' => '', + ], + 'ValidNum' => [ + 'description' => 'The number of addresses with the validation result \'Valid\'.', + 'type' => 'string', + 'example' => '5', + 'title' => '', + ], + 'InvalidNum' => [ + 'description' => 'The number of addresses with the validation result \'Invalid\'.', + 'type' => 'string', + 'example' => '4', + 'title' => '', + ], + 'CatchAllNum' => [ + 'description' => 'The number of addresses with the validation result \'CatchAll\'.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'DoNotMailNum' => [ + 'description' => 'The number of addresses with the validation result \'DoNotMail\'.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'UnknownNum' => [ + 'description' => 'The number of addresses with the validation result \'Unknown\'.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'IsDownloadable' => [ + 'description' => 'Indicates whether the result can be downloaded.', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + 'FileId' => [ + 'description' => 'The file ID.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => 'The list of files.', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'The response object.', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ListValidateFile', + 'changeSet' => [], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxx\\",\\n \\"HasNext\\": true,\\n \\"Page\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalSize\\": 100,\\n \\"TotalPages\\": 10,\\n \\"Files\\": [\\n {\\n \\"FileName\\": \\"test.csv\\",\\n \\"UploadTime\\": \\"2000-01-01T00:00:00Z\\",\\n \\"Status\\": \\"completed\\",\\n \\"Percentage\\": \\"100%\\",\\n \\"CompleteTime\\": \\"2000-01-01T00:00:00Z\\",\\n \\"TotalNum\\": \\"10\\",\\n \\"ProcessedNum\\": \\"10\\",\\n \\"ValidNum\\": \\"5\\",\\n \\"InvalidNum\\": \\"4\\",\\n \\"CatchAllNum\\": \\"1\\",\\n \\"DoNotMailNum\\": \\"0\\",\\n \\"UnknownNum\\": \\"0\\",\\n \\"IsDownloadable\\": true,\\n \\"FileId\\": \\"xxx\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'ModifyMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'MailAddressId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Sending address ID', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '1344565', + 'title' => '', + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'description' => 'Reply address', + 'type' => 'string', + 'required' => false, + 'example' => 'a***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'Password', + 'in' => 'query', + 'schema' => [ + 'description' => '- Length should be 10 to 20 characters, and must include numbers, uppercase letters, and lowercase letters.'."\n" + ."\n" + .'- Must contain at least 2 digits, 2 uppercase letters, and 2 lowercase letters, and neither the digits nor the letters can consist of a single character repeated.'."\n" + ."\n" + .'- Cannot be the same as the last set password.', + 'type' => 'string', + 'required' => false, + 'example' => 'DM1mail1234', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Set SMTP Password and Reply Address for Sending Address', + 'summary' => 'Modify the sending address', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ModifyMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'ModifyPWByDomain' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => 'Domain name, length 1-50, can include numbers, uppercase letters, lowercase letters, ., and -.', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + 'title' => '', + ], + ], + [ + 'name' => 'Password', + 'in' => 'query', + 'schema' => [ + 'description' => '- Length should be between 10 to 20 characters, and must contain numbers, uppercase letters, and lowercase letters.'."\n" + ."\n" + .'- At least 2 digits, 2 uppercase letters, and 2 lowercase letters are required, and neither digits nor letters can consist of a single character repeated.'."\n" + ."\n" + .'- Cannot be the same as the last set password.', + 'type' => 'string', + 'required' => true, + 'example' => 'DM1mail1234', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'Status code', + 'type' => 'string', + 'example' => 'OK', + 'title' => '', + ], + 'Message' => [ + 'description' => 'Description of the status code', + 'type' => 'string', + 'example' => '请求成功', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '02B2A890-CBD8-4806-9BCA-C93190CE7EF6', + 'title' => '', + ], + 'Success' => [ + 'description' => 'Whether it was successful', + 'type' => 'boolean', + 'example' => 'true', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'Set the SMTP password for a domain', + 'summary' => 'Modify the domain-level password', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ModifyPWByDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"OK\\",\\n \\"Message\\": \\"请求成功\\",\\n \\"RequestId\\": \\"02B2A890-CBD8-4806-9BCA-C93190CE7EF6\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'ModifyTag' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'TagId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Tag ID', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '100674', + 'title' => '', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => 'Tag Name', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + 'title' => '', + ], + ], + [ + 'name' => 'TagDescription', + 'in' => 'query', + 'schema' => [ + 'description' => 'Tag Description', + 'type' => 'string', + 'required' => false, + 'example' => 'test description', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '00BD30D8-2E86-523A-BFC7-63B7FF931A06', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Modify Tag', + 'summary' => 'Modify Tag', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ModifyTag', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"00BD30D8-2E86-523A-BFC7-63B7FF931A06\\"\\n}","type":"json"}]', + ], + 'QueryDomainByParam' => [ + 'summary' => 'Query domain information', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'Current page number. Default: 1', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'Number of items per page, default: 10', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '1000', + 'minimum' => '1', + 'default' => '50', + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'Domain name, length 1-50, can include numbers, uppercase and lowercase letters, ., -.', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + 'title' => '', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => '- 0 indicates normal'."\n" + ."\n" + .'- 1 indicates abnormal', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + 'example' => '0', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'Page size', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '50', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '8C90CCD3-627C-4F87-AD8C-2F03146071EB', + 'title' => '', + ], + 'PageNumber' => [ + 'description' => 'Current page number', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'Total count', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'domain' => [ + 'description' => 'List of domains', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DomainRecord' => [ + 'description' => 'Domain record', + 'type' => 'string', + 'example' => '6bd86901b9fe4618a046', + 'title' => '', + ], + 'SpfAuthStatus' => [ + 'description' => 'SPF authentication status, success: 0, failure: 1.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'MxAuthStatus' => [ + 'description' => 'MX authentication status, success: 0, failure: 1.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'Creation time', + 'type' => 'string', + 'example' => '2019-09-29T13:28Z', + 'title' => '', + ], + 'CnameAuthStatus' => [ + 'description' => 'Track verification', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'ConfirmStatus' => [ + 'description' => 'CName verification status, success: 0; failure: 1', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'IcpStatus' => [ + 'description' => 'ICP filing status.'."\n" + ."\n" + .'- 1 indicates filed'."\n" + ."\n" + .'- 0 indicates not filed', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'UtcCreateTime' => [ + 'description' => 'Creation time in UTC format.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1569734892', + 'title' => '', + ], + 'DomainStatus' => [ + 'description' => 'Domain status.'."\n" + ."\n" + .'- 0: Available, verified'."\n" + ."\n" + .'- 1: Unavailable, verification failed', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'DomainName' => [ + 'description' => 'Domain name', + 'type' => 'string', + 'example' => 'example.com', + 'title' => '', + ], + 'DomainId' => [ + 'description' => 'Domain ID', + 'type' => 'string', + 'example' => '158923', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Query Domain List Information', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryDomainByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 50,\\n \\"RequestId\\": \\"8C90CCD3-627C-4F87-AD8C-2F03146071EB\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"data\\": {\\n \\"domain\\": [\\n {\\n \\"DomainRecord\\": \\"6bd86901b9fe4618a046\\",\\n \\"SpfAuthStatus\\": \\"0\\",\\n \\"MxAuthStatus\\": \\"0\\",\\n \\"CreateTime\\": \\"2019-09-29T13:28Z\\",\\n \\"CnameAuthStatus\\": \\"0\\",\\n \\"ConfirmStatus\\": \\"0\\",\\n \\"IcpStatus\\": \\"1\\",\\n \\"UtcCreateTime\\": 1569734892,\\n \\"DomainStatus\\": \\"0\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DomainId\\": \\"158923\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryInvalidAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Start time, which cannot be earlier than 30 days ago, in the format yyyy-MM-dd.', + 'type' => 'string', + 'required' => false, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'End time, with a span from the start time that cannot exceed 30 days, in the format yyyy-MM-dd.', + 'type' => 'string', + 'required' => false, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'Keyword. If not provided, it represents all invalid addresses.', + 'type' => 'string', + 'required' => false, + 'example' => 'info', + 'title' => '', + ], + ], + [ + 'name' => 'Length', + 'in' => 'query', + 'schema' => [ + 'description' => 'Number of items per request.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'default' => '10', + 'example' => '100', + 'title' => '', + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'Request starting position.', + 'type' => 'string', + 'required' => false, + 'example' => '***', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'description' => 'Next request starting position.', + 'type' => 'string', + 'example' => '2', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID.', + 'type' => 'string', + 'example' => '95A7D497-F8DD-4834-B81E-C1783236E55F', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'Total count.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailDetail' => [ + 'description' => 'Records.', + 'type' => 'array', + 'items' => [ + 'description' => 'Detailed records.', + 'type' => 'object', + 'properties' => [ + 'LastUpdateTime' => [ + 'description' => 'Update time.', + 'type' => 'string', + 'example' => '2021-04-28T17:11Z', + 'title' => '', + ], + 'ToAddress' => [ + 'description' => 'Recipient address.', + 'type' => 'string', + 'example' => '[email protected]', + 'title' => '', + ], + 'UtcLastUpdateTime' => [ + 'description' => 'Update time (in timestamp format).', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1619601108', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Get Invalid Address Information', + 'summary' => 'NextStart changed to string', + 'description' => 'Retrieve deduplicated invalid address information. If an email is sent to the same invalid address multiple times, only the first occurrence will be recorded. The query should be based on the time when the address was first classified as invalid.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryInvalidAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextStart\\": \\"2\\",\\n \\"RequestId\\": \\"95A7D497-F8DD-4834-B81E-C1783236E55F\\",\\n \\"TotalCount\\": 3,\\n \\"data\\": {\\n \\"mailDetail\\": [\\n {\\n \\"LastUpdateTime\\": \\"2021-04-28T17:11Z\\",\\n \\"ToAddress\\": \\"[email protected]\\",\\n \\"UtcLastUpdateTime\\": 1619601108\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryMailAddressByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The current page number. The default value is 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The default value is 10.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'minimum' => '1', + 'default' => '500', + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'The email address. The length is 1 to 60 characters. It supports digits, letters, periods (.), hyphens (-), and at signs (@).', + 'type' => 'string', + 'required' => false, + 'example' => '账号+@+域名', + 'title' => '', + ], + ], + [ + 'name' => 'Sendtype', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the sender address. Valid values:'."\n" + ."\n" + .'- batch: batch emails'."\n" + ."\n" + .'- trigger: triggered emails', + 'type' => 'string', + 'required' => false, + 'example' => 'batch', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '95A7D497-F8DD-4834-B81E-C1783236E55F', + 'title' => '', + ], + 'PageNumber' => [ + 'description' => 'The current page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'data' => [ + 'itemNode' => true, + 'type' => 'object', + 'properties' => [ + 'mailAddress' => [ + 'description' => 'The list of sender addresses.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MailAddressId' => [ + 'description' => 'The ID of the sender address.', + 'type' => 'string', + 'example' => '12122', + 'title' => '', + ], + 'MonthCount' => [ + 'description' => 'The monthly quota limit.', + 'type' => 'string', + 'example' => '300000', + 'title' => '', + ], + 'AccountStatus' => [ + 'description' => 'The status of the account. 1: The account is frozen. 0: The account is normal.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'The time when the sender address was created.', + 'type' => 'string', + 'example' => '2019-09-29T13:28Z', + 'title' => '', + ], + 'ReplyStatus' => [ + 'description' => 'The status of the reply-to address.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'Sendtype' => [ + 'description' => 'The type of the sender address. Valid values:'."\n" + ."\n" + .'- batch: batch emails'."\n" + ."\n" + .'- trigger: triggered emails', + 'type' => 'string', + 'example' => 'batch', + 'title' => '', + ], + 'MonthReqCount' => [ + 'description' => 'The monthly quota.', + 'type' => 'string', + 'example' => '20000', + 'title' => '', + ], + 'ReplyAddress' => [ + 'description' => 'The reply-to address.', + 'type' => 'string', + 'example' => '[email protected]', + 'title' => '', + ], + 'DailyReqCount' => [ + 'description' => 'The daily quota.', + 'type' => 'string', + 'example' => '100', + 'title' => '', + ], + 'DailyCount' => [ + 'description' => 'The daily quota limit.', + 'type' => 'string', + 'example' => '10000', + 'title' => '', + ], + 'DomainStatus' => [ + 'description' => 'The status of the domain name. 0: The domain name is normal. 1: The domain name is abnormal.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'AccountName' => [ + 'description' => 'The sender address.', + 'type' => 'string', + 'example' => '账户+@+域名', + 'title' => '', + ], + 'ConfigSetId' => [ + 'description' => 'The ID of the associated configuration set.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'ConfigSetName' => [ + 'description' => 'The name of the associated configuration set.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Query sender address list ', + 'summary' => 'Queries a list of sender addresses.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryMailAddressByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"95A7D497-F8DD-4834-B81E-C1783236E55F\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"data\\": {\\n \\"mailAddress\\": [\\n {\\n \\"MailAddressId\\": \\"12122\\",\\n \\"MonthCount\\": \\"300000\\",\\n \\"AccountStatus\\": \\"0\\",\\n \\"CreateTime\\": \\"2019-09-29T13:28Z\\",\\n \\"ReplyStatus\\": \\"0\\",\\n \\"Sendtype\\": \\"batch\\",\\n \\"MonthReqCount\\": \\"20000\\",\\n \\"ReplyAddress\\": \\"[email protected]\\",\\n \\"DailyReqCount\\": \\"100\\",\\n \\"DailyCount\\": \\"10000\\",\\n \\"DomainStatus\\": \\"0\\",\\n \\"AccountName\\": \\"账户+@+域名\\",\\n \\"ConfigSetId\\": \\"xxx\\",\\n \\"ConfigSetName\\": \\"xxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryReceiverByParam' => [ + 'summary' => 'Query the recipient list.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'Page number.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'Number of entries per page. Default value: 10.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'Search keyword. Default value: all information.', + 'type' => 'string', + 'required' => false, + 'example' => 'mesh-notification', + 'title' => '', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'List status. Valid values:'."\n" + ."\n" + .'- 0: uploading'."\n" + ."\n" + .'- 1: upload complete', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + 'example' => '1', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'description' => 'Used for paging. If more results are available, set this value as the NextStart parameter in your next request.', + 'type' => 'string', + 'example' => '6aec200853#102#1638894326#[email protected]', + 'title' => '', + ], + 'PageSize' => [ + 'description' => 'Number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'Total number of entries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'receiver' => [ + 'description' => 'Detailed information about recipients.', + 'type' => 'array', + 'items' => [ + 'description' => 'Detailed record.', + 'type' => 'object', + 'properties' => [ + 'ReceiversAlias' => [ + 'description' => 'Alias of the recipient list.', + 'type' => 'string', + 'example' => '10***@example.com', + 'title' => '', + ], + 'ReceiversName' => [ + 'description' => 'Name of the recipient list.', + 'type' => 'string', + 'example' => 'TKP000442-333', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'Creation time.', + 'type' => 'string', + 'example' => '2019-09-29T13:28Z', + 'title' => '', + ], + 'ReceiverId' => [ + 'description' => 'ID of the recipient list.', + 'type' => 'string', + 'example' => '0c910a7143044b1e116719eb678907b3', + 'title' => '', + ], + 'UtcCreateTime' => [ + 'description' => 'Creation time in UTC format.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1569734892', + 'title' => '', + ], + 'ReceiversStatus' => [ + 'description' => 'List status. Valid values:'."\n" + ."\n" + .'- 0: uploading'."\n" + ."\n" + .'- 1: upload complete', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'Count' => [ + 'description' => 'Total number of email addresses in the recipient list.', + 'type' => 'string', + 'example' => '3', + 'title' => '', + ], + 'Desc' => [ + 'description' => 'Description.', + 'type' => 'string', + 'example' => '通知', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextStart\\": \\"6aec200853#102#1638894326#[email protected]\\",\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"TotalCount\\": 15,\\n \\"data\\": {\\n \\"receiver\\": [\\n {\\n \\"ReceiversAlias\\": \\"10***@example.com\\",\\n \\"ReceiversName\\": \\"TKP000442-333\\",\\n \\"CreateTime\\": \\"2019-09-29T13:28Z\\",\\n \\"ReceiverId\\": \\"0c910a7143044b1e116719eb678907b3\\",\\n \\"UtcCreateTime\\": 1569734892,\\n \\"ReceiversStatus\\": \\"0\\",\\n \\"Count\\": \\"3\\",\\n \\"Desc\\": \\"通知\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'Query Recipient List', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryReceiverByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'QueryReceiverDetail' => [ + 'summary' => 'Retrieve detailed information about a recipient list', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'description' => 'Recipient list ID (returned when creating a recipient list using the CreateReceiver API).', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1235', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'Number of items per page, default: 10', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'Recipient address, length 0-50', + 'type' => 'string', + 'required' => false, + 'example' => 'b***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'Starting position for the next item, default: 0', + 'type' => 'string', + 'required' => false, + 'example' => '0', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DataSchema' => [ + 'description' => 'Field name for the Data of recipients', + 'type' => 'string', + 'example' => 'UserName,NickName,Gender,Birthday,Mobile', + 'title' => '', + ], + 'NextStart' => [ + 'description' => 'Used for pagination. If there are more results, set this returned value to the NextStart in the next request.', + 'type' => 'string', + 'example' => '90f0243616#[email protected]', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'Total count (deprecated field, kept for historical compatibility)', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '361', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'detail' => [ + 'description' => 'Detailed information', + 'type' => 'array', + 'items' => [ + 'description' => 'Detailed information', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Content', + 'type' => 'string', + 'example' => '{\'Domains\': [\'a.example.net\', \'b.example.net\', \'c.example.net\', \'d.example.net\']}', + 'title' => '', + ], + 'UtcCreateTime' => [ + 'description' => 'Creation time in UTC format', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1569734892', + 'title' => '', + ], + 'Email' => [ + 'description' => 'Recipient address', + 'type' => 'string', + 'example' => 'a***@example.net', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'Creation Time', + 'type' => 'string', + 'example' => '2019-09-29T13:28Z', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Query Details of a Specific Recipient List', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryReceiverDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DataSchema\\": \\"UserName,NickName,Gender,Birthday,Mobile\\",\\n \\"NextStart\\": \\"90f0243616#[email protected]\\",\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"TotalCount\\": 361,\\n \\"data\\": {\\n \\"detail\\": [\\n {\\n \\"Data\\": \\"{\'Domains\': [\'a.example.net\', \'b.example.net\', \'c.example.net\', \'d.example.net\']}\\",\\n \\"UtcCreateTime\\": 1569734892,\\n \\"Email\\": \\"a***@example.net\\",\\n \\"CreateTime\\": \\"2019-09-29T13:28Z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryTagByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'Page number', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'Page size', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'minimum' => '1', + 'default' => '500', + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'Tag name, length 1-50, defaults to all tags if not specified.', + 'type' => 'string', + 'required' => false, + 'example' => '1aTag', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'Page size', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'PageNumber' => [ + 'description' => 'Current page number', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'Total count', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'tag' => [ + 'description' => 'Data records', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TagName' => [ + 'description' => 'Tag name', + 'type' => 'string', + 'example' => 'hellopal', + 'title' => '', + ], + 'TagId' => [ + 'description' => 'Tag ID', + 'type' => 'string', + 'example' => '52366', + 'title' => '', + ], + 'TagDescription' => [ + 'description' => 'Tag description', + 'type' => 'string', + 'example' => 'test description', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Retrieve Tags', + 'summary' => 'Call QueryTagByParam to retrieve tags.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryTagByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"PageNumber\\": 5,\\n \\"TotalCount\\": 2,\\n \\"data\\": {\\n \\"tag\\": [\\n {\\n \\"TagName\\": \\"hellopal\\",\\n \\"TagId\\": \\"52366\\",\\n \\"TagDescription\\": \\"test description\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryTaskByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '10', + 'example' => '10', + 'title' => '', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keyword for the query. If you leave this blank, all tasks are returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'mesh-notification-788717', + 'title' => '', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The task status. If you leave this blank, tasks in all states are returned.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + 'example' => '0', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'The number of entries per page.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'PageNumber' => [ + 'description' => 'The page number.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + 'title' => '', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + 'title' => '', + ], + 'data' => [ + 'itemNode' => true, + 'type' => 'object', + 'properties' => [ + 'task' => [ + 'description' => 'The returned data.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ReceiversName' => [ + 'description' => 'The recipient name.', + 'type' => 'string', + 'example' => 'TKP000442-333', + 'title' => '', + ], + 'TagName' => [ + 'description' => 'The tag.', + 'type' => 'string', + 'example' => '202201', + 'title' => '', + ], + 'TaskStatus' => [ + 'description' => 'The task status. A value of 1 indicates that the email is sent.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'The time when the task was created.', + 'type' => 'string', + 'example' => '2022-04-18T10:36Z', + 'title' => '', + ], + 'RequestCount' => [ + 'description' => 'The number of requests.', + 'type' => 'string', + 'example' => '1', + 'title' => '', + ], + 'AddressType' => [ + 'description' => 'The address type. 1: sender address. 0: random address.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'UtcCreateTime' => [ + 'description' => 'The time when the task was created, in UTC format.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1569734892', + 'title' => '', + ], + 'TemplateName' => [ + 'description' => 'The template name.', + 'type' => 'string', + 'example' => 'Short Simple', + 'title' => '', + ], + 'TaskId' => [ + 'description' => 'The task ID.', + 'type' => 'string', + 'example' => '1054296', + 'title' => '', + ], + 'IpPoolId' => [ + 'description' => 'The ID of the dedicated IP address pool.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'IpPoolName' => [ + 'description' => 'The name of the dedicated IP address pool.', + 'type' => 'string', + 'example' => '测试专属IP地址池1', + 'title' => '', + ], + 'ConfigSetId' => [ + 'description' => 'The configuration set ID.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'ConfigSetName' => [ + 'description' => 'The configuration set name.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + 'description' => '', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + 'description' => '', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'Query Job', + 'summary' => 'Queries tasks based on specified parameters.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryTaskByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"PageNumber\\": 3,\\n \\"TotalCount\\": 15,\\n \\"data\\": {\\n \\"task\\": [\\n {\\n \\"ReceiversName\\": \\"TKP000442-333\\",\\n \\"TagName\\": \\"202201\\",\\n \\"TaskStatus\\": \\"1\\",\\n \\"CreateTime\\": \\"2022-04-18T10:36Z\\",\\n \\"RequestCount\\": \\"1\\",\\n \\"AddressType\\": \\"0\\",\\n \\"UtcCreateTime\\": 1569734892,\\n \\"TemplateName\\": \\"Short Simple\\",\\n \\"TaskId\\": \\"1054296\\",\\n \\"IpPoolId\\": \\"xxx\\",\\n \\"IpPoolName\\": \\"测试专属IP地址池1\\",\\n \\"ConfigSetId\\": \\"xxx\\",\\n \\"ConfigSetName\\": \\"xxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryTemplateByParam' => [ + 'summary' => 'Performs a paged query to retrieve a list of templates.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + 'description' => 'The page number. The default value is 1.', + 'title' => '', + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + 'description' => 'The number of entries per page. The default value is 20.', + 'title' => '', + 'example' => '20', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The keyword of the template name. By default, a paged query is performed for all templates.', + 'title' => '', + 'example' => 'test', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '4', + 'minimum' => '0', + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'title' => '', + 'example' => 'Abandoned, historical reasons for compatibility', + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'title' => '', + 'example' => 'Abandoned, historical reasons for compatibility', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'The number of entries per page.', + 'title' => '', + 'example' => '20', + ], + 'RequestId' => [ + 'type' => 'string', + 'description' => 'The request ID.', + 'title' => '', + 'example' => '10Axxxxxxxxxxxx37', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'The page number.', + 'title' => '', + 'example' => '1', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'The total number of entries.', + 'title' => '', + 'example' => '21', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'template' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TemplateComment' => [ + 'type' => 'string', + 'description' => 'The review comments on the template.', + 'title' => '', + 'example' => 'pass', + ], + 'UtcCreatetime' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The time when the template was created, in UTC format.', + 'title' => '', + 'example' => '1661830382', + ], + 'Smsrejectinfo' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'title' => '', + 'example' => 'Abandoned, historical reasons for compatibility', + ], + 'SmsTemplateCode' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'title' => '', + 'example' => 'Abandoned, historical reasons for compatibility', + ], + 'CreateTime' => [ + 'type' => 'string', + 'description' => 'The time when the template was created.', + 'title' => '', + 'example' => '2019-09-29T13:28Z', + ], + 'TemplateStatus' => [ + 'type' => 'string', + 'description' => 'The status of the template. Valid values:'."\n" + ."\n" + .'- 0: The template is a draft.'."\n" + ."\n" + .'- 1: The template is pending approval.'."\n" + ."\n" + .'- 2: The template is approved.'."\n" + ."\n" + .'- 3: The template is rejected.', + 'title' => '', + 'example' => '2', + ], + 'TemplateType' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'title' => '', + 'example' => 'Abandoned, historical reasons for compatibility', + ], + 'TemplateName' => [ + 'type' => 'string', + 'description' => 'The template name.', + 'title' => '', + 'example' => 'test', + ], + 'SmsStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + 'description' => 'This parameter is deprecated. It is retained for historical compatibility.', + 'title' => '', + 'example' => 'Abandoned, historical reasons for compatibility', + ], + 'TemplateId' => [ + 'type' => 'string', + 'description' => 'The template ID.', + 'title' => '', + 'example' => '3xxxx8', + ], + ], + 'description' => 'The template information.', + 'title' => '', + 'example' => '', + ], + 'description' => 'An array of templates.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'Response', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'QueryTemplateByParam', + 'description' => 'Performs a paged query to retrieve a list of templates.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryTemplateByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 20,\\n \\"RequestId\\": \\"10Axxxxxxxxxxxx37\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 21,\\n \\"data\\": {\\n \\"template\\": [\\n {\\n \\"TemplateComment\\": \\"pass\\",\\n \\"UtcCreatetime\\": 1661830382,\\n \\"Smsrejectinfo\\": 0,\\n \\"SmsTemplateCode\\": 0,\\n \\"CreateTime\\": \\"2019-09-29T13:28Z\\",\\n \\"TemplateStatus\\": \\"2\\",\\n \\"TemplateType\\": 0,\\n \\"TemplateName\\": \\"test\\",\\n \\"SmsStatus\\": 0,\\n \\"TemplateId\\": \\"3xxxx8\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'RemoveUserSuppression' => [ + 'summary' => 'Deletes system-identified and manually added addresses from the user-level suppression list.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'SuppressionIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the suppressed address. To specify multiple IDs, separate them with commas (,). Call the ListUserSuppression operation to obtain the suppression ID.'."\n" + ."\n" + .'You can enter multiple values, separated by a comma ",".'."\n" + ."\n" + .'You can call ListUserSuppression to obtain the SuppressionId.', + 'type' => 'string', + 'required' => false, + 'example' => '59511', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '1A846D66-5EC7-551B-9687-5BF1963DCFC1', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'Remove Invalid Addresses for Individuals and Systems', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:RemoveUserSuppression', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A846D66-5EC7-551B-9687-5BF1963DCFC1\\"\\n}","type":"json"}]', + ], + 'SaveReceiverDetail' => [ + 'summary' => 'Create a single recipient.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the recipient list.', + 'type' => 'string', + 'required' => true, + 'example' => '34642', + 'title' => '', + ], + ], + [ + 'name' => 'Detail', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The recipient details. You can upload up to 500 recipients in a single request. The value is a string in a JSON array format. Each object in the array represents a recipient. For example: \\`\\[{ },{ },{ }...]\\`. The format for each recipient object is \\`\\[{"b":"birthday","e":"xxx\\@example.net","g":"gender","m":"mobile","n":"nickname","u":"name"}]\\`. If you add a duplicate recipient address, the system returns \\`"ErrorCount": 1\\`.'."\n" + ."\n" + .'The format is \\`\\[{ },{ },{ }...]\\`. The format of the content within each \\`{}\\` is as follows:'."\n" + ."\n" + .'\\[{"b":"birthday","e":"xxx\\@example.net","g":"gender","m":"mobile","n":"nickname","u":"name"}]. Pass the value as a string, not a list.'."\n" + ."\n" + .'Inserting a duplicate recipient address returns "ErrorCount": 1.', + 'type' => 'string', + 'required' => false, + 'example' => '[{"b":"birthday","e":"[email protected]","g":"gender","m":"mobile","n":"nickname","u":"name"}]', + 'title' => '', + ], + ], + [ + 'name' => 'CustomDetail', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The recipient\'s email address and template parameters, in an array format.', + 'type' => 'string', + 'example' => '[{ "Email": "[email protected]","CustomData": {"name":"Tom","age":"30"}}]', + 'title' => '', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ErrorCount' => [ + 'description' => 'The number of errors.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '638', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'SuccessCount' => [ + 'description' => 'The number of successful records.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '274', + 'title' => '', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Detail' => [ + 'description' => 'A list of recipient email addresses that failed to be uploaded.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Email' => [ + 'description' => 'The recipient\'s email address.', + 'type' => 'string', + 'example' => '[email protected]', + 'title' => '', + ], + 'ErrMessage' => [ + 'description' => 'The error message.', + 'type' => 'string', + 'example' => 'XXX', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Create a Single Recipient', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:SaveReceiverDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ErrorCount\\": 638,\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"SuccessCount\\": 274,\\n \\"Data\\": {\\n \\"Detail\\": [\\n {\\n \\"Email\\": \\"[email protected]\\",\\n \\"ErrMessage\\": \\"XXX\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'SendTestByTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The template ID.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '123', + 'title' => '', + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender address. The length cannot exceed 60 characters.', + 'type' => 'string', + 'required' => true, + 'example' => '账号+@+域名', + 'title' => '', + ], + ], + [ + 'name' => 'UserName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The user name. The length cannot exceed 30 characters.', + 'type' => 'string', + 'required' => false, + 'example' => '姓名', + 'title' => '', + ], + ], + [ + 'name' => 'NickName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The nickname. The length cannot exceed 30 characters.', + 'type' => 'string', + 'required' => false, + 'example' => '昵称', + 'title' => '', + ], + ], + [ + 'name' => 'Birthday', + 'in' => 'query', + 'schema' => [ + 'description' => 'The birthday. The length cannot exceed 30 characters.', + 'type' => 'string', + 'required' => false, + 'example' => '2000/01/01', + 'title' => '', + ], + ], + [ + 'name' => 'Gender', + 'in' => 'query', + 'schema' => [ + 'description' => 'The gender. The length cannot exceed 30 characters.', + 'type' => 'string', + 'required' => false, + 'example' => '先生', + 'title' => '', + ], + ], + [ + 'name' => 'Mobile', + 'in' => 'query', + 'schema' => [ + 'description' => 'The mobile number. The length cannot exceed 30 characters.', + 'type' => 'string', + 'required' => false, + 'example' => '1380000****', + 'title' => '', + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'description' => 'The recipient email address. The length cannot exceed 60 characters.', + 'type' => 'string', + 'required' => true, + 'example' => '账号+@+域名', + 'title' => '', + ], + ], + [ + 'name' => 'TemplateParams', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'type' => 'string', + 'example' => '{"age":"20","nickName":"tom"}', + 'description' => '', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The details.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Send Test Email', + 'summary' => 'You can send a test email.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:SendTestByTemplate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + ], + 'SendValidateFile' => [ + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'FileUrl', + 'in' => 'query', + 'schema' => [ + 'description' => 'The URL of the file that contains the list of email addresses.', + 'type' => 'string', + 'required' => true, + 'isFileTransferUrl' => true, + 'title' => '', + 'example' => 'http://xxxx.oss-xxx.com/file.txt', + ], + ], + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the file that contains the list of email addresses.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'file.txt', + ], + ], + [ + 'name' => 'AddressColumn', + 'in' => 'query', + 'schema' => [ + 'description' => 'The column that contains the email addresses in the file. The index starts from 1.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'title' => '', + 'example' => '1', + ], + ], + [ + 'name' => 'HasHeaderRow', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether the first row is a table header.', + 'type' => 'boolean', + 'required' => true, + 'title' => '', + 'example' => 'false', + ], + ], + [ + 'name' => 'RemoveDuplicate', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to remove duplicate email addresses in the output file.', + 'type' => 'boolean', + 'required' => true, + 'title' => '', + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The ID of the request.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxxx-xxxx-xxxx-xxxx', + ], + 'FileId' => [ + 'description' => 'The ID of the file. Use this ID to query the results.', + 'type' => 'string', + 'title' => '', + 'example' => 'yyyy-yyyy-yyyy-yyyy', + ], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'SendValidateFile', + 'summary' => 'You can upload the list of addresses to be verified.', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:SendValidateFile', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxx-xxxx-xxxx-xxxx\\",\\n \\"FileId\\": \\"yyyy-yyyy-yyyy-yyyy\\"\\n}","type":"json"}]', + ], + 'SenderStatisticsByTagNameAndBatchID' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender address. If you leave this parameter empty, data for all sender addresses is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time. The time cannot be earlier than 30 days ago. The format is yyyy-MM-dd.', + 'type' => 'string', + 'required' => true, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time. The time span between the start time and the end time cannot exceed 7 days. The format is yyyy-MM-dd.', + 'type' => 'string', + 'required' => true, + 'example' => '2019-09-29', + 'title' => '', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The email tag. If you leave this parameter empty, data for all tags is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + [ + 'name' => 'DedicatedIpPoolId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the dedicated IP pool. This parameter is available only for users of dedicated IPs.'."\n" + ."\n" + .'If you leave this parameter empty, data for all IP pools is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + ], + [ + 'name' => 'DedicatedIp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The dedicated IP address. This parameter is available only for users of dedicated IPs.'."\n" + ."\n" + .'If you leave this parameter empty, data for all dedicated IPs is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx.xxx.xxx.xxx'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'Esp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The Email Service Provider (ESP). This parameter is available only for users of dedicated IPs. You can set this parameter to one of the following values:'."\n" + ."\n" + .'- gmail.com'."\n" + ."\n" + .'- yahoo.com'."\n" + ."\n" + .'- outlook.com'."\n" + ."\n" + .'- icloud.com'."\n" + ."\n" + .'- others (Data for ESPs other than the ones listed above)'."\n" + ."\n" + .'If you leave this parameter empty, data for all ESPs is returned.', + 'type' => 'string', + 'required' => false, + 'example' => 'gmail.com', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'description' => 'The total number of entries.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'title' => '', + ], + 'data' => [ + 'itemNode' => true, + 'type' => 'object', + 'properties' => [ + 'stat' => [ + 'description' => 'The data records.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'unavailablePercent' => [ + 'description' => 'The percentage of emails sent to unavailable addresses.', + 'type' => 'string', + 'example' => '0%', + 'title' => '', + ], + 'CreateTime' => [ + 'description' => 'The time when the record was created.', + 'type' => 'string', + 'example' => '2025-03-02', + 'title' => '', + ], + 'succeededPercent' => [ + 'description' => 'The percentage of emails that were successfully sent.', + 'type' => 'string', + 'example' => '100.00%', + 'title' => '', + ], + 'faildCount' => [ + 'description' => 'The number of emails that failed to be sent.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'unavailableCount' => [ + 'description' => 'The number of emails sent to unavailable addresses.', + 'type' => 'string', + 'example' => '0', + 'title' => '', + ], + 'successCount' => [ + 'description' => 'The number of emails that were successfully sent.', + 'type' => 'string', + 'example' => '4', + 'title' => '', + ], + 'requestCount' => [ + 'description' => 'The total number of requests.', + 'type' => 'string', + 'example' => '4', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Retrieve the send data under specified conditions.', + 'summary' => 'Queries statistics about sent emails that meet specified conditions.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:SenderStatisticsByTagNameAndBatchID', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"data\\": {\\n \\"stat\\": [\\n {\\n \\"unavailablePercent\\": \\"0%\\",\\n \\"CreateTime\\": \\"2025-03-02\\",\\n \\"succeededPercent\\": \\"100.00%\\",\\n \\"faildCount\\": \\"0\\",\\n \\"unavailableCount\\": \\"0\\",\\n \\"successCount\\": \\"4\\",\\n \\"requestCount\\": \\"4\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'SenderStatisticsDetailByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender address. If you leave this parameter empty, emails from all sender addresses are queried.'."\n" + ."\n" + .'> You can leave **AccountName**, **TagName**, and **ToAddress** empty. You can specify a value for only one of these parameters at a time.', + 'type' => 'string', + 'required' => false, + 'example' => 's***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'ToAddress', + 'in' => 'query', + 'schema' => [ + 'description' => 'The recipient address. If you leave this parameter empty, emails sent to all recipient addresses are queried.', + 'type' => 'string', + 'required' => false, + 'example' => 'b***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The delivery status. If you leave this parameter empty, emails in all delivery statuses are queried. Valid values:'."\n" + ."\n" + .'- 0: delivered successfully'."\n" + ."\n" + .'- 2: invalid address'."\n" + ."\n" + .'- 3: spam'."\n" + ."\n" + .'- 4: failed', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '4', + 'minimum' => '0', + 'example' => '0', + 'title' => '', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time. The time range between the start time and the end time cannot exceed 30 days. The format is yyyy-MM-dd HH:mm.', + 'type' => 'string', + 'required' => false, + 'example' => '2021-04-28 00:00', + 'title' => '', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time. The time range between the start time and the end time cannot exceed 30 days. The format is yyyy-MM-dd HH:mm.', + 'type' => 'string', + 'required' => false, + 'example' => '2021-04-29 00:00', + 'title' => '', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The email tag. If you leave this parameter empty, emails with all tags are queried.'."\n" + .'When you send an email using SMTP, specify the \\`TagName\\` and its value for the \\`X-AliDM-Trace\\` field. For more information, see the examples for email tracking.', + 'type' => 'string', + 'required' => false, + 'example' => 'EmailQuestionnaireHelioscam', + 'title' => '', + ], + ], + [ + 'name' => 'Length', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of results to return. The value can range from 1 to 100.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'default' => '10', + 'example' => '5', + 'title' => '', + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'description' => 'The offset for this request, used for paging. If more results are available, set the \\`NextStart\\` parameter in your next request to this return value.', + 'type' => 'string', + 'required' => false, + 'example' => '90f0243616#203#a***@example.net-1658817837#a***@example.net.247475288187', + 'title' => '', + ], + ], + [ + 'name' => 'IpPoolId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The ID of the independent IP address pool.', + 'type' => 'string', + 'required' => false, + 'example' => 'e42a4d8e-66e0-4ea3-88aa-74c66c661cef', + 'title' => '', + ], + ], + [ + 'name' => 'ConfigSetId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => 'The ID of the configuration set.', + 'type' => 'string', + 'required' => false, + 'example' => '95437e39-5433-4c6c-8b66-0c4eac2f4d97', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'description' => 'Used for paging. If more results are available, set the \\`NextStart\\` parameter in your next request to this return value.', + 'type' => 'string', + 'example' => '90f0243616#203#a***@example.net-1658817689#a***@example.net.247141122178', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => 'B5AB8EBB-EE64-4BB2-B085-B92CC5DEDC41', + 'title' => '', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailDetail' => [ + 'description' => 'The detailed records.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The delivery status. 0: delivered successfully, 2: invalid address, 3: spam, 4: failed for other reasons.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + 'title' => '', + ], + 'LastUpdateTime' => [ + 'description' => 'The time when the status was last updated.', + 'type' => 'string', + 'example' => '2021-04-28T17:11Z', + 'title' => '', + ], + 'Message' => [ + 'description' => 'The detailed information about the delivery.', + 'type' => 'string', + 'example' => '250 Send Mail OK', + 'title' => '', + ], + 'ToAddress' => [ + 'description' => 'The recipient address.', + 'type' => 'string', + 'example' => 'b***@example.net', + 'title' => '', + ], + 'UtcLastUpdateTime' => [ + 'description' => 'The time when the status was last updated, in UTC format.', + 'type' => 'string', + 'example' => '1619601108', + 'title' => '', + ], + 'AccountName' => [ + 'description' => 'The sender address.', + 'type' => 'string', + 'example' => 's***@example.net', + 'title' => '', + ], + 'Subject' => [ + 'description' => 'The email subject.', + 'type' => 'string', + 'example' => 'test subject', + 'title' => '', + ], + 'ErrorClassification' => [ + 'description' => 'The detailed classification of the error:'."\n" + ."\n" + .'- SendOk: The email was delivered successfully.'."\n" + ."\n" + .'- SmtpNxBox: The recipient\'s email server determined that the address is invalid. The address is added to the invalid address list of your account.'."\n" + ."\n" + .'- SysOutRcptOnAccountLevelBounceList: The recipient address is in the invalid address list for your account. If you confirm that the address is valid, remove it from the list. You can also disable the invalid address list for your account.'."\n" + ."\n" + .'For more information about error descriptions, see [Explanations of common failed\\_type values](~~52048~~).', + 'type' => 'string', + 'example' => 'SendOk', + 'title' => '', + ], + 'IpPoolId' => [ + 'description' => 'The ID of the independent IP address pool.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'IpPoolName' => [ + 'description' => 'The name of the independent IP address pool.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'ConfigSetId' => [ + 'description' => 'The ID of the configuration set.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + 'ConfigSetName' => [ + 'description' => 'The name of the configuration set.', + 'type' => 'string', + 'example' => 'xxx', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Get Sending Details', + 'summary' => 'Queries sending details.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:SenderStatisticsDetailByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextStart\\": \\"90f0243616#203#a***@example.net-1658817689#a***@example.net.247141122178\\",\\n \\"RequestId\\": \\"B5AB8EBB-EE64-4BB2-B085-B92CC5DEDC41\\",\\n \\"data\\": {\\n \\"mailDetail\\": [\\n {\\n \\"Status\\": 0,\\n \\"LastUpdateTime\\": \\"2021-04-28T17:11Z\\",\\n \\"Message\\": \\"250 Send Mail OK\\",\\n \\"ToAddress\\": \\"b***@example.net\\",\\n \\"UtcLastUpdateTime\\": \\"1619601108\\",\\n \\"AccountName\\": \\"s***@example.net\\",\\n \\"Subject\\": \\"test subject\\",\\n \\"ErrorClassification\\": \\"SendOk\\",\\n \\"IpPoolId\\": \\"xxx\\",\\n \\"IpPoolName\\": \\"xxx\\",\\n \\"ConfigSetId\\": \\"xxx\\",\\n \\"ConfigSetName\\": \\"xxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'SingleSendMail' => [ + 'summary' => 'Sends a single email.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The sender address configured in the Direct Mail console.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'test***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'AddressType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The address type. Valid values:'."\n" + ."\n" + .'0: Random account'."\n" + ."\n" + .'1: Sender address', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'maximum' => '1', + 'minimum' => '0', + 'example' => '1', + 'title' => '', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The email tag that you create in the Direct Mail console. Use tags to classify email batches and query the sending status of each batch. If email tracking is enabled, you must specify an email tag.'."\n" + .'The tag can be 1 to 128 characters in length and can contain letters, digits, underscores (\\_), and hyphens (-).', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + 'title' => '', + ], + ], + [ + 'name' => 'ReplyToAddress', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to use the reply-to address configured in the console. The reply-to address must be verified. Valid values: true and false.', + 'type' => 'boolean', + 'required' => true, + 'docRequired' => true, + 'example' => 'true', + 'title' => '', + ], + ], + [ + 'name' => 'ToAddress', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The destination address. To specify multiple addresses, separate them with commas (,). You can specify a maximum of 100 addresses. Recipient groups are supported.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'test1***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'Subject', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The subject of the email. The subject cannot exceed 256 characters in length.', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'Subject', + 'title' => '', + ], + ], + [ + 'name' => 'HtmlBody', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The HTML body of the email.'."\n" + ."\n" + .'Note: Specify HtmlBody or TextBody.'."\n" + ."\n" + .'- The size of the parameter passed in a URL is limited to approximately 80 KB.'."\n" + ."\n" + .'- The new SDK limits the body parameter to approximately 8 MB (Java 1.4.0 and later, Python 3 1.4.0 and later, PHP 1.4.0 and later).', + 'type' => 'string', + 'required' => false, + 'example' => 'body', + 'title' => '', + ], + ], + [ + 'name' => 'TextBody', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The text body of the email.'."\n" + ."\n" + .'Note: Specify HtmlBody or TextBody.'."\n" + ."\n" + .'- The size of the parameter passed in a URL is limited to approximately 80 KB.'."\n" + ."\n" + .'- The new SDK limits the body parameter to approximately 8 MB (Java 1.4.0 and later, Python 3 1.4.0 and later, PHP 1.4.0 and later).', + 'type' => 'string', + 'required' => false, + 'example' => 'body', + 'title' => '', + ], + ], + [ + 'name' => 'FromAlias', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The nickname of the sender. The nickname must be fewer than 15 characters.'."\n" + ."\n" + .'For example, if you set the nickname to "Xiao Hong" and the sender address is test\\*\\*\\*@example.net, the recipient sees the sender as "Xiao Hong" \\<test\\*\\*\\*@example.net>.', + 'type' => 'string', + 'required' => false, + 'example' => '小红', + 'title' => '', + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The reply-to address.', + 'type' => 'string', + 'required' => false, + 'example' => 'test2***@example.net', + 'title' => '', + ], + ], + [ + 'name' => 'ReplyAddressAlias', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The nickname of the reply-to address.', + 'type' => 'string', + 'required' => false, + 'example' => '小红', + 'title' => '', + ], + ], + [ + 'name' => 'ClickTrace', + 'in' => 'formData', + 'schema' => [ + 'description' => '1: Enables data tracking.'."\n" + ."\n" + .'0 (default): Disables data tracking.', + 'type' => 'string', + 'required' => false, + 'example' => '0', + 'title' => '', + ], + ], + [ + 'name' => 'UnSubscribeLinkType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'disabled: No link is generated.'."\n" + ."\n" + .'default: The default policy is used. An unsubscribe link is generated for batch emails sent to specific domains, such as domains that contain keywords like "gmail", "yahoo",'."\n" + .'"google", "aol.com", "hotmail",'."\n" + .'"outlook", or "ymail.com". For more information, see [Unsubscribe link generation and filtering mechanism]().'."\n" + ."\n" + .'The display language is automatically detected based on the recipient\'s browser settings.'."\n" + ."\n" + .'"outlook", or "ymail.com". For more information, see [Unsubscribe link generation and filtering mechanism]().'."\n" + ."\n" + .'The display language is automatically detected based on the recipient\'s browser settings.', + 'type' => 'string', + 'required' => false, + 'example' => 'default', + 'title' => '', + ], + ], + [ + 'name' => 'UnSubscribeFilterLevel', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The filtering level. For more information, see [Unsubscribe link generation and filtering mechanism]().'."\n" + ."\n" + .'disabled: No filtering.'."\n" + ."\n" + .'default: The default policy is used. Batch addresses are filtered at the sender address level.'."\n" + ."\n" + .'mailfrom: Filters at the sender address level.'."\n" + ."\n" + .'mailfrom\\_domain: Filters at the email domain level.'."\n" + ."\n" + .'edm\\_id: Filters at the account level.', + 'type' => 'string', + 'required' => false, + 'example' => 'mailfrom_domain', + 'title' => '', + ], + ], + [ + 'name' => 'Headers', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Message header settings'."\n" + ."\n" + .'Both standard and non-standard fields must follow the syntax rules for message headers. The API supports a maximum of 10 headers in the headers field. Any headers exceeding this limit are ignored. SMTP, however, does not have this limit.'."\n" + ."\n" + .'1\\. Standard fields'."\n" + ."\n" + .'Message-ID, List-Unsubscribe, List-Unsubscribe-Post'."\n" + ."\n" + .'Standard fields overwrite existing values in the message header.'."\n" + ."\n" + .'2\\. Non-standard fields'."\n" + ."\n" + .'Case-insensitive'."\n" + ."\n" + .'a. Fields that start with X-User- (These are not pushed to the EventBridge event bus or Message Service MNS. They are required only for the API, whereas SMTP supports any custom header.)'."\n" + ."\n" + .'b. Fields that start with X-User-Notify- (These are pushed to the EventBridge event bus and Message Service MNS, and are supported by both the API and SMTP.)'."\n" + ."\n" + .'When pushed to EventBridge or MNS, these fields appear in the header field.', + 'type' => 'string', + 'isFileTransferUrl' => false, + 'required' => false, + 'example' => '{'."\n" + .' "Message-ID": "<[email protected]>",'."\n" + .' "X-User-UID1": "UID-1-000001",'."\n" + .' "X-User-UID2": "UID-2-000001",'."\n" + .' "X-User-Notify-UID1": "UID-3-000001",'."\n" + .' "X-User-Notify-UID2": "UID-4-000001"'."\n" + .' '."\n" + .'}', + 'title' => '', + ], + ], + [ + 'name' => 'IpPoolId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the dedicated IP address pool. If you purchased dedicated IP addresses, use this parameter to specify the outbound IP address for the current email. For more information, see [Dedicated IPs]().', + 'type' => 'string', + 'required' => false, + 'example' => 'e4xxxxxe-4xx0-4xx3-8xxa-74cxxxxx1cef', + 'title' => '', + ], + ], + [ + 'name' => 'Attachments', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'This feature is available only in the latest software development kit (SDK). It is not supported by OpenAPI or signature mechanisms. For more information, see [How do I send an email with attachments using an SDK?]().', + 'type' => 'array', + 'items' => [ + 'description' => 'This feature is available only in the latest SDK. It is not supported by OpenAPI or signature mechanisms.', + 'type' => 'object', + 'properties' => [ + 'AttachmentName' => [ + 'description' => 'This feature is available only in the latest SDK. It is not supported by OpenAPI or signature mechanisms.', + 'type' => 'string', + 'isFileTransferUrl' => false, + 'required' => false, + 'example' => 'test.txt', + 'title' => '', + ], + 'AttachmentUrl' => [ + 'description' => 'This feature is available only in the latest SDK. It is not supported by OpenAPI or signature mechanisms.', + 'type' => 'string', + 'isFileTransferUrl' => true, + 'required' => false, + 'example' => 'C:\\Users\\Downloads\\test.txt', + 'title' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'Template', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'description' => 'The template ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + 'title' => '', + ], + 'TemplateData' => [ + 'type' => 'object', + 'additionalProperties' => [ + 'description' => 'The template variables and their values.', + 'type' => 'string', + 'title' => '', + 'example' => '{ "name": "Tom", "age": "22" }', + ], + 'title' => '', + 'description' => 'The variables and their values in the template.', + 'required' => false, + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'The template information for sending template-based emails.', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'BccAddress', + 'in' => 'formData', + 'schema' => [ + 'description' => '- The list of blind carbon copy (BCC) recipients.'."\n" + ."\n" + .'- A copy of the email is sent to each BCC address. The BCC information is not visible to any recipient, including those in the ToAddress and BccAddress fields.'."\n" + ."\n" + .'- To protect the privacy of BCC recipients, email tracking is disabled by default for emails sent to BCC addresses. This means that behavioral data, such as open rates and click-through rates, is not recorded for BCC emails. However, billing, sending details, and sending status statistics are the same as for regular emails.'."\n" + ."\n" + .'- You can specify up to two BCC recipients for each email.', + 'type' => 'string', + 'example' => '[email protected],[email protected]', + 'title' => '', + 'required' => false, + ], + ], + [ + 'name' => 'DomainAuth', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Enable domain-level authentication.'."\n" + ."\n" + .'- true'."\n" + ."\n" + .'- false'."\n" + ."\n" + .'Use this only for domain-level authentication. Ignore it for sender address-level authentication.'."\n" + ."\n" + .'1\\. Create the \\`domain-auth-created-by-system\\@example.com\\` address in the console. Keep the prefix before the at sign (@) fixed and use your own domain as the suffix.'."\n" + ."\n" + .'2\\.'."\n" + ."\n" + .'**API scenario**'."\n" + ."\n" + .'Set \\`AccountName\\` to your domain. The recipient sees the sender as \\`domain-auth-created-by-system\\@example.com\\`.'."\n" + ."\n" + .'**SMTP scenario**'."\n" + ."\n" + .'a. Set the domain password using the \\`ModifyPWByDomain\\` API.'."\n" + ."\n" + .'b. Authenticate using the domain and the set password. For the actual sender, pass a custom address, such as \\`user\\@example.com\\`, in the \\`mailfrom\\` field. The recipient sees the sender as \\`user\\@example.com\\`.', + 'type' => 'boolean', + 'title' => '', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnvId' => [ + 'description' => 'The event ID.', + 'type' => 'string', + 'example' => '600000xxxxxxxxxx642', + 'title' => '', + ], + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '2D086F6-xxxx-xxxx-xxxx-006DED011A85', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The format of the receiver name is invalid. It must contain the @ sign. The domain must only contain numbers, letters, underscores, minus signs, and periods. The account name must only contain numbers, letters, underscores, minus signs, and periods.', + 'description' => 'The format of the receiver name is invalid. It must contain the @ sign. The domain must only contain numbers, letters, underscores, minus signs, and periods. The account name must only contain numbers, letters, underscores, minus signs, and periods.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mail address is not found.', + 'description' => 'The specified mail address is not found.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"EnvId\\": \\"600000xxxxxxxxxx642\\",\\n \\"RequestId\\": \\"2D086F6-xxxx-xxxx-xxxx-006DED011A85\\"\\n}","type":"json"}]', + 'title' => 'Send a Single Email', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:SingleSendMail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'UnblockSending' => [ + 'summary' => 'Removes sending restrictions caused by unsubscribes or complaints.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'SenderEmail', + 'in' => 'query', + 'schema' => [ + 'description' => 'The sender address.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'BlockEmail', + 'in' => 'query', + 'schema' => [ + 'description' => 'The blacklisted recipient address.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'BlockType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The blacklist type.'."\n" + ."\n" + .'- UNSUB: Unsubscribe'."\n" + ."\n" + .'- REPORT: Complaint', + 'type' => 'string', + 'required' => true, + 'enum' => [ + 'UNSUB', + 'REPORT', + ], + 'title' => '', + 'example' => 'UNSUB', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The schema of the return value.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + ], + ], + 'example' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IdempotentParameterMismatch', + 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', + 'description' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\"\\n}","type":"json"}]', + 'title' => 'Lift Sending Restrictions', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:UnblockSending', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'UpdateIpProtection' => [ + 'summary' => 'Update IP Protection API', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'IpProtection', + 'in' => 'query', + 'schema' => [ + 'description' => 'IP protection switch, On: 1 Off: 0', + 'type' => 'string', + 'required' => false, + 'docRequired' => true, + 'example' => '0', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'Request ID', + 'type' => 'string', + 'example' => 'B653A6FC-D1AD-5936-A262-F50994ED2574', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'Enable or Disable IP Protection Function', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:UpdateIpProtection', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B653A6FC-D1AD-5936-A262-F50994ED2574\\"\\n}","type":"json"}]', + ], + 'UpdateUser' => [ + 'summary' => 'Update account information', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + ], + 'parameters' => [ + [ + 'name' => 'User', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'User Information', + 'type' => 'object', + 'properties' => [ + 'EnableEventbridge' => [ + 'description' => 'Whether EventBridge is enabled', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request', + 'type' => 'string', + 'example' => '7BC346F6-1092-5852-B6E2-CCE2E5AAE51F', + ], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7BC346F6-1092-5852-B6E2-CCE2E5AAE51F\\"\\n}","type":"json"}]', + 'title' => 'Update user information', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:UpdateUser', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + ], + 'ValidateEmail' => [ + 'summary' => 'Validates an email address.', + 'path' => '', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'paid', + ], + 'parameters' => [ + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'description' => 'The email address to validate.', + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => '[email protected]', + ], + ], + [ + 'name' => 'Timeout', + 'in' => 'query', + 'schema' => [ + 'description' => 'The timeout period. The default value is 60 seconds.', + 'type' => 'integer', + 'format' => 'int64', + 'default' => '60', + 'required' => false, + 'example' => '20', + 'title' => '', + ], + ], + [ + 'name' => 'CheckGraylist', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to check the graylist. The default value is false. The result is sent through an asynchronous notification message from EventBridge.', + 'type' => 'boolean', + 'title' => '', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxxx-xxxx-xxxx-xxxx', + ], + 'Status' => [ + 'description' => 'The validation status of the email address.', + 'enumValueTitles' => [ + 'VALID' => 'The address is valid.', + 'CATCHALL' => 'The address is a catch-all address. This indicates that the domain accepts emails sent to any non-existent mailbox at the domain.', + 'UNKNOWN' => 'The address status is unknown.', + 'INVALID' => 'The address is invalid.', + 'DONOTMAIL' => 'The address is abnormal. You can remove this type of address in marketing scenarios.', + ], + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'VALID', + ], + 'SubStatus' => [ + 'description' => 'The detailed validation status of the email address. This provides more information about the Status.', + 'enumValueTitles' => [ + 'NO_DNS_ENTRIES' => 'Invalid address. No DNS records found.', + 'MISSPELLED' => 'Invalid address. The address is misspelled.', + 'MAILBOX_NOT_EXISTS' => 'Invalid address. The mailbox does not exist.', + 'SYSTEM_ERROR' => 'Unknown status. A system error occurred.', + 'SYNTAX_INVALID' => 'Invalid address. A syntax error exists.', + 'ROLE_ACCOUNT' => 'Abnormal address. The address is a role account.', + 'SMTP_CONNECT_FAILED' => 'Unknown status. The connection to the recipient\'s SMTP server failed.', + 'DISABLED' => 'Invalid address. The mailbox is disabled.', + 'UNSPECIFIED' => 'No specific details. This sub-status can be returned for VALID, CATCHALL, or UNKNOWN statuses.', + 'IP_UNROUTABLE' => 'Invalid address. The mail server IP address is unreachable.', + 'MAILBOX_FULL' => 'Invalid address. The mailbox is full.', + 'DISPOSABLE' => 'Abnormal address. The address is a disposable email address.', + 'TIMEOUT_EXCEEDED' => 'Unknown status. The specified timeout period was exceeded.', + ], + 'type' => 'string', + 'required' => true, + 'title' => '', + 'example' => 'UNSPECIFIED', + ], + 'Provider' => [ + 'description' => 'The email service provider of the address.', + 'enumValueTitles' => [ + 'Others' => 'Others', + 'Yahoo' => 'Yahoo', + 'Gmx' => 'Gmx', + 'MailDotCom' => 'MailDotCom', + 'Tencent' => 'Tencent', + 'Gmail' => 'Gmail', + 'Outlook' => 'Outlook', + 'Zoho' => 'Zoho', + 'Proton' => 'Proton', + 'Netease' => 'Netease', + 'Icloud' => 'Icloud', + 'Webde' => 'Webde', + ], + 'type' => 'string', + 'title' => '', + 'example' => 'Gmail', + ], + 'IsFreeMail' => [ + 'description' => 'Indicates whether the address is from a free email service.', + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'type' => 'boolean', + 'title' => '', + 'example' => 'true', + ], + 'LocalPart' => [ + 'description' => 'The local part of the email address parsed from the syntax check. The local part is converted to lowercase and the content after the plus sign (+) is removed.', + 'type' => 'string', + 'title' => '', + 'example' => 'xxx', + ], + 'DomainPart' => [ + 'description' => 'The domain part of the email address parsed from the syntax check. The domain part is converted to lowercase.', + 'type' => 'string', + 'title' => '', + 'example' => 'yyy.com', + ], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'title' => 'ValidateEmail', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:ValidateEmail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxx-xxxx-xxxx-xxxx\\",\\n \\"Status\\": \\"VALID\\",\\n \\"SubStatus\\": \\"UNSPECIFIED\\",\\n \\"Provider\\": \\"Gmail\\",\\n \\"IsFreeMail\\": true,\\n \\"LocalPart\\": \\"xxx\\",\\n \\"DomainPart\\": \\"yyy.com\\"\\n}","type":"json"}]', + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'ap-southeast-1', + 'regionName' => 'Singapore', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'dm.ap-southeast-1.aliyuncs.com', + 'endpoint' => 'dm.ap-southeast-1.aliyuncs.com', + 'vpc' => 'dm-vpc.ap-southeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou', + 'regionName' => 'China (Hangzhou)', + 'areaId' => 'asiaPacific', + 'areaName' => 'Asia Pacific', + 'public' => 'dm.aliyuncs.com', + 'endpoint' => 'dm.aliyuncs.com', + 'vpc' => 'dm-vpc.cn-hangzhou.aliyuncs.com', + ], + [ + 'regionId' => 'us-east-1', + 'regionName' => 'US (Virginia)', + 'areaId' => 'europeAmerica', + 'areaName' => 'Europe & Americas', + 'public' => 'dm.us-east-1.aliyuncs.com', + 'endpoint' => 'dm.us-east-1.aliyuncs.com', + 'vpc' => 'dm-vpc.us-east-1.aliyuncs.com', + ], + [ + 'regionId' => 'eu-central-1', + 'regionName' => 'Germany (Frankfurt)', + 'areaId' => 'europeAmerica', + 'areaName' => 'Europe & Americas', + 'public' => 'dm.eu-central-1.aliyuncs.com', + 'endpoint' => 'dm.eu-central-1.aliyuncs.com', + 'vpc' => 'dm-vpc.eu-central-1.aliyuncs.com', + ], + ], + 'errorCodes' => [ + [ + 'code' => 'Abs.InvalidNetworkType.NotFound', + 'message' => 'The specified InstanceNetworkType is not found.', + 'http_code' => 404, + 'description' => 'The specified InstanceNetworkType is not found.', + ], + [ + 'code' => 'AvailableSubDomain.GetFailed', + 'message' => 'Failed to get the available subdomain name.', + 'http_code' => 400, + 'description' => 'Failed to get the available subdomain name.', + ], + [ + 'code' => 'AvailableSubDomain.Limit', + 'message' => 'The maximum number of available subdomain specifying prefixes is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of available subdomain specifying prefixes is exceeded.', + ], + [ + 'code' => 'CheckDomain.Failed', + 'message' => 'Domain check failed.', + 'http_code' => 400, + 'description' => 'Domain check failed.', + ], + [ + 'code' => 'EmailFormatError', + 'message' => 'The Email format is invalid. It must only contain numbers, letters, underscores, minus sign, plus sign, and period.', + 'http_code' => 400, + 'description' => 'The Email format is invalid. It must only contain numbers, letters, underscores, minus sign, plus sign, and period.', + ], + [ + 'code' => 'EmailLengthError', + 'message' => 'The maximum length of Email is 192 characters.', + 'http_code' => 400, + 'description' => 'The maximum length of Email is 192 characters.', + ], + [ + 'code' => 'FastConfigFlow.Create.Failed', + 'message' => 'Failed to create the quick configuration flow.', + 'http_code' => 400, + 'description' => 'Failed to create the quick configuration flow.', + ], + [ + 'code' => 'FastConfigFlow.Exist', + 'message' => 'The specified quick configuration flow already exists.', + 'http_code' => 400, + 'description' => 'The specified quick configuration flow already exists.', + ], + [ + 'code' => 'FastConfigFlow.NotFound', + 'message' => 'The specified quick configuration flow is not found.', + 'http_code' => 400, + 'description' => 'The specified quick configuration flow is not found.', + ], + [ + 'code' => 'Forbidden', + 'message' => 'The user is not authorized to operate on the specified resource.', + 'http_code' => 400, + 'description' => 'The user is not authorized to operate on the specified resource.', + ], + [ + 'code' => 'InternalServiceError', + 'message' => 'Failed to call the internal service. Please try again later.', + 'http_code' => 500, + 'description' => 'Failed to access the internal service. Please try again later.', + ], + [ + 'code' => 'InvalidAddress.Locked', + 'message' => 'The specified address is already locked.', + 'http_code' => 400, + 'description' => 'The specified address is already locked.', + ], + [ + 'code' => 'InvalidAddress.NotFound', + 'message' => 'The invalid address is not in the invalid address database.', + 'http_code' => 400, + 'description' => 'The invalid address is not in the invalid address database.', + ], + [ + 'code' => 'InvalidAddressNumber.Malformed', + 'message' => 'The maximum number of invalid addresses is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of invalid addresses is exceeded.', + ], + [ + 'code' => 'InvalidAuth.Malformed', + 'message' => 'The specified auth is invalid.', + 'http_code' => 400, + 'description' => 'The specified auth is invalid.', + ], + [ + 'code' => 'InvalidBeginTime.Malformed', + 'message' => 'The interval between start time and current time should be less than 30 days.', + 'http_code' => 400, + 'description' => 'The interval between the start time and the end time must be shorter than 30 days.', + ], + [ + 'code' => 'InvalidBetweenTime.Malformed', + 'message' => 'The start time must be at least seven days earlier than the end time.', + 'http_code' => 400, + 'description' => 'The start time must be at least seven days earlier than the end time.', + ], + [ + 'code' => 'InvalidBody', + 'message' => 'The format of the specified textBody or htmlBody is invalid.', + 'http_code' => 400, + 'description' => 'The format of the specified textBody or htmlBody is invalid.', + ], + [ + 'code' => 'InvalidDate.Malformed', + 'message' => 'The specified date is invalid.', + 'http_code' => 400, + 'description' => 'The specified date is invalid.', + ], + [ + 'code' => 'InvalidDate.NotFound', + 'message' => 'The specified date does not exist.', + 'http_code' => 404, + 'description' => 'The specified date does not exist.', + ], + [ + 'code' => 'InvalidDayu.Malformed', + 'message' => 'The specified template type is invalid.', + 'http_code' => 400, + 'description' => 'The specified template type is invalid.', + ], + [ + 'code' => 'InvalidDayuParamString.Malformed', + 'message' => 'The maximum length of paramString is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum length of paramString is exceeded.', + ], + [ + 'code' => 'InvalidDayuStatus.Malformed', + 'message' => 'The Dayu status is invalid.', + 'http_code' => 400, + 'description' => 'The Dayu status is invalid.', + ], + [ + 'code' => 'InvalidDkimSelector.Malformed', + 'message' => 'The specified dkim selector is wrongly formed.', + 'http_code' => 400, + 'description' => 'The selector for dkim is not in the correct format.', + ], + [ + 'code' => 'InvalidDomain.Malformed', + 'message' => 'The specified domain is invalid.', + 'http_code' => 400, + 'description' => 'The specified domain is invalid.', + ], + [ + 'code' => 'InvalidDomain.NotFound', + 'message' => 'The specified domain does not exist.', + 'http_code' => 404, + 'description' => 'The specified domain does not exist.', + ], + [ + 'code' => 'InvalidDomain.Using', + 'message' => 'The specified domain has been used to create another sender address.', + 'http_code' => 400, + 'description' => 'The specified domain has been used to create another sender address.', + ], + [ + 'code' => 'InvalidDomainId.Malformed', + 'message' => 'The specified domain ID does not exist.', + 'http_code' => 404, + 'description' => 'The specified domain ID does not exist.', + ], + [ + 'code' => 'InvalidDomainId.NotFound', + 'message' => 'The specified domainId is not found.', + 'http_code' => 404, + 'description' => 'The specified domainId is not found.', + ], + [ + 'code' => 'InvalidDomainMail.Malformed', + 'message' => 'The specified domainId and mailId are invalid.', + 'http_code' => 400, + 'description' => 'The specified domainId and mailId are invalid.', + ], + [ + 'code' => 'InvalidDomainName.Conflict', + 'message' => 'The specified domain name is in use.', + 'http_code' => 400, + 'description' => 'The specified domain name is in use.', + ], + [ + 'code' => 'InvalidDomainName.Duplicate', + 'message' => 'The specified domain name already exists.', + 'http_code' => 400, + 'description' => 'The specified domain name already exists.', + ], + [ + 'code' => 'InvalidDomainName.DuplicateTLD', + 'message' => 'The top-level domain of the specified domain name already exists.', + 'http_code' => 400, + 'description' => 'The top-level domain of the specified domain name already exists.', + ], + [ + 'code' => 'InvalidDomainName.Malformed', + 'message' => 'The specified domain name is invalid.', + 'http_code' => 400, + 'description' => 'The specified domain name is invalid.', + ], + [ + 'code' => 'InvalidDomainNumber.Malformed', + 'message' => 'The maximum number of domains is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of domains is exceeded.', + ], + [ + 'code' => 'InvalidDomainPassword.EqualCurrent', + 'message' => 'The password must be different from the current password.', + 'http_code' => 400, + 'description' => 'The password must be different from the current password.', + ], + [ + 'code' => 'InvalidDomainPassword.Malformed', + 'message' => 'The specified domain password is incorrect.', + 'http_code' => 400, + 'description' => 'The specified domain password is incorrect.', + ], + [ + 'code' => 'InvalidDomainStatus.Malformed', + 'message' => 'The specified domain status is invalid.', + 'http_code' => 400, + 'description' => 'The specified domain status is invalid.', + ], + [ + 'code' => 'InvalidFlowType.Malformed', + 'message' => 'The specified flowType is invalid.', + 'http_code' => 400, + 'description' => 'The specified flowType is invalid.', + ], + [ + 'code' => 'InvalidFromAlias.Malformed', + 'message' => 'The specified fromAlias is invalid. The length must not exceed 15 characters.', + 'http_code' => 400, + 'description' => 'The specified fromAlias is invalid. The length must not exceed 15 characters.', + ], + [ + 'code' => 'InvalidHtmlBodyPlaceHolderKey.Malformed', + 'message' => 'The HTML body placeholder must start with user Defined.', + 'http_code' => 400, + 'description' => 'Placeholder key must start with userDefined_', + ], + [ + 'code' => 'InvalidIntervalTime.Malformed', + 'message' => 'The interval between start time and end time should be less than 15 days.', + 'http_code' => 400, + 'description' => 'The interval between the start time and the end time must be shorter than 15 days.', + ], + [ + 'code' => 'InvalidIP.NotFound', + 'message' => 'The specified IP address is invalid.', + 'http_code' => 404, + 'description' => 'The specified IP address is invalid.', + ], + [ + 'code' => 'InvalidKeyword.Malformed', + 'message' => 'The specified keyword is invalid.', + 'http_code' => 400, + 'description' => 'The specified keyword is invalid.', + ], + [ + 'code' => 'InvalidMail.Malformed', + 'message' => 'The specified mail is invalid.', + 'http_code' => 400, + 'description' => 'The specified mail is invalid.', + ], + [ + 'code' => 'InvalidMailAddress.DeleteTimes', + 'message' => 'The maximum number of delete times is exceeded. Please try again in the next calendar month.', + 'http_code' => 400, + 'description' => 'The maximum number of delete times is exceeded. Please try again in the next calendar month.', + ], + [ + 'code' => 'InvalidMailAddress.DelteTimes', + 'message' => 'The maximum number of delete times is exceeded. Please try again in the next calendar month.', + 'http_code' => 400, + 'description' => 'The maximum number of delete times is exceeded.', + ], + [ + 'code' => 'InvalidMailAddress.NotFound', + 'message' => 'The specified mail address is not found.', + 'http_code' => 404, + 'description' => 'The specified mail address is not found.', + ], + [ + 'code' => 'InvalidMailAddressDomain.Malformed', + 'message' => 'The format of the specified mail address domain is invalid. It must only contain numbers, letters, underscores, minus signs, and periods.', + 'http_code' => 400, + 'description' => 'The format of the specified mail address domain is invalid. It must only contain numbers, letters, underscores, minus signs, and periods.', + ], + [ + 'code' => 'InvalidMailAddressDomainStatus.Malformed', + 'message' => 'The status of the specified mail address domain is invalid.', + 'http_code' => 400, + 'description' => 'The status of the specified mail address domain is invalid.', + ], + [ + 'code' => 'InvalidMailAddressId.Malformed', + 'message' => 'The specified sender address ID does not exist.', + 'http_code' => 404, + 'description' => 'The specified sender address ID does not exist.', + ], + [ + 'code' => 'InvalidMailAddressName.Duplicate', + 'message' => 'The specified email address already exists. Please change to another one.', + 'http_code' => 400, + 'description' => 'The specified email address already exists. Please change to another one.', + ], + [ + 'code' => 'InvalidMailAddressName.Malformed', + 'message' => 'The specified MailAddress name is wrongly formed.', + 'http_code' => null, + 'description' => 'The specified sender address is invalid. It must contain the @ sign. The domain must consist of numbers, letters, underscores, minus signs, and periods. The account name must consist of numbers, letters, underscores, minus signs, and periods.', + ], + [ + 'code' => 'InvalidMailAddressName.Malformed', + 'message' => 'The specified account name is invalid. It must only contain numbers, letters, underscores, minus signs, plus signs, and periods.', + 'http_code' => 400, + 'description' => 'The specified account name is invalid. It must only contain numbers, letters, underscores, minus signs, plus signs, and periods.', + ], + [ + 'code' => 'InvalidMailAddressNumber.Malformed', + 'message' => 'The maximum number of sender addresses is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of sender addresses is exceeded.', + ], + [ + 'code' => 'InvalidMailAddressPassword.EqualCurrent', + 'message' => 'The password must be different from the current password.', + 'http_code' => 400, + 'description' => 'The password must be different from the current password.', + ], + [ + 'code' => 'InvalidMailAddressPassword.Malformed', + 'message' => 'The format of the specified mail address password is invalid.', + 'http_code' => 400, + 'description' => 'The format of the specified mail address password is invalid.', + ], + [ + 'code' => 'InvalidMailAddressReplyName.Malformed', + 'message' => 'The reply address set by the sender address is invalid.', + 'http_code' => 404, + 'description' => 'The reply address set by the sender address is invalid.', + ], + [ + 'code' => 'InvalidMailAddressSendType.Malformed', + 'message' => 'The specified send type is invalid.', + 'http_code' => 400, + 'description' => 'The specified send type is invalid.', + ], + [ + 'code' => 'InvalidMailAddressStatus.Malformed', + 'message' => 'The status of the sender address is invalid.', + 'http_code' => 400, + 'description' => 'The status of the sender address is invalid.', + ], + [ + 'code' => 'InvalidMailAddressTicket.Malformed', + 'message' => 'No ticket exists under the specified mail address.', + 'http_code' => 404, + 'description' => 'No ticket exists under the specified mail address.', + ], + [ + 'code' => 'InvalidNode.Malformed', + 'message' => 'The specified node is invalid.', + 'http_code' => 400, + 'description' => 'The specified node is invalid.', + ], + [ + 'code' => 'InvalidNotifyUrl.Malformed', + 'message' => 'The specified notifyUrl is invalid.', + 'http_code' => 400, + 'description' => 'The specified notifyUrl is invalid.', + ], + [ + 'code' => 'InvalidParameter', + 'message' => 'You must specify the parameter. Please check the API documentation.', + 'http_code' => 400, + 'description' => 'You must specify the parameter. Please check the API documentation.', + ], + [ + 'code' => 'InvalidParamString.Malformed', + 'message' => 'The specified paramString is invalid.', + 'http_code' => 400, + 'description' => 'The specified paramString is invalid.', + ], + [ + 'code' => 'InvalidParamStringTemplate.Malformed', + 'message' => 'The specified paramString and template are invalid.', + 'http_code' => 400, + 'description' => 'The specified paramString and template are invalid.', + ], + [ + 'code' => 'InvalidQuota', + 'message' => 'The mail sending quota is exceeded.', + 'http_code' => 400, + 'description' => 'The mail sending quota is exceeded. If your sending volume is over 90% of the daily quota, and if the percentage of invalid addresses is lower than 5%, you may submit a ticket to raise the quota.', + ], + [ + 'code' => 'InvalidQuotaLevel', + 'message' => 'The format of credit rating is invalid.', + 'http_code' => 400, + 'description' => 'The format of credit rating is invalid.', + ], + [ + 'code' => 'InvalidReceiver.NotFound', + 'message' => 'The specified receiver is invalid.', + 'http_code' => 404, + 'description' => 'The specified receiver is invalid.', + ], + [ + 'code' => 'InvalidReceiverAlias.Duplicate', + 'message' => 'The specified receiverAlias already exists.', + 'http_code' => 400, + 'description' => 'The specified receiverAlias already exists.', + ], + [ + 'code' => 'InvalidReceiverAlias.Malformed', + 'message' => 'The specified receiverAlias is invalid.', + 'http_code' => 400, + 'description' => 'The specified receiverAlias is invalid.', + ], + [ + 'code' => 'InvalidReceiverDesc.Malformed', + 'message' => 'The specified receiverDesc is invalid.', + 'http_code' => 400, + 'description' => 'The specified receiverDesc is invalid.', + ], + [ + 'code' => 'InvalidReceiverDetail.Malformed', + 'message' => 'The specified receiver detail is invalid.', + 'http_code' => 400, + 'description' => 'The specified receiver detail is invalid.', + ], + [ + 'code' => 'InvalidReceiverDetail.Spam', + 'message' => 'The email that was sent to the specified address in the receiver detail is rejected by spam filter.', + 'http_code' => 400, + 'description' => 'The email that was sent to the specified address in the receiver detail is rejected by spam filter.', + ], + [ + 'code' => 'InvalidReceiverDetailMax.Malformed', + 'message' => 'The maximum number of addresses in the receiver detail is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of addresses in the receiver detail is exceeded.', + ], + [ + 'code' => 'InvalidReceiverDetatil.NotFound', + 'message' => 'The specified address is not found in the receiver detail.', + 'http_code' => 404, + 'description' => 'The specified address is not found in the receiver detail.', + ], + [ + 'code' => 'InvalidReceiverEmail.Malformed', + 'message' => 'The specified receiver email address is invalid.', + 'http_code' => 400, + 'description' => 'The specified receiver email address is invalid.', + ], + [ + 'code' => 'InvalidReceiverId.Malformed', + 'message' => 'The specified recipient list ID does not exist.', + 'http_code' => 404, + 'description' => 'The specified recipient list ID does not exist.', + ], + [ + 'code' => 'InvalidReceiverName.Duplicate', + 'message' => 'The specified recipient list name already exists.', + 'http_code' => 400, + 'description' => 'The specified recipient list name already exists.', + ], + [ + 'code' => 'InvalidReceiverName.Malformed', + 'message' => 'The format of the receiver name is invalid. It must contain the @ sign. The domain must only contain numbers, letters, underscores, minus signs, and periods. The account name must only contain numbers, letters, underscores, minus signs, and periods.', + 'http_code' => 400, + 'description' => 'The format of the receiver name is invalid. It must contain the @ sign. The domain must only contain numbers, letters, underscores, minus signs, and periods. The account name must only contain numbers, letters, underscores, minus signs, and periods.', + ], + [ + 'code' => 'InvalidReceiverNumber.Malformed', + 'message' => 'The maximum number of receivers is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of receivers is exceeded.', + ], + [ + 'code' => 'InvalidReceiverStatus.Malformed', + 'message' => 'The specified receiver status is invalid. Please check whether a receiver is uploaded on the console.', + 'http_code' => 400, + 'description' => 'The specified receiver status is invalid. Please check whether a receiver is uploaded on the console.', + ], + [ + 'code' => 'InvalidRecNum.Malformed', + 'message' => 'The specified recNum is invalid.', + 'http_code' => 400, + 'description' => 'The specified recNum is invalid.', + ], + [ + 'code' => 'InvalidReplyAddress.Malformed', + 'message' => 'The specified replyAddress is invalid. It must contain the @ sign. The domain must consist of numbers, letters, underscores, minus signs, and periods. The account name must consist of numbers, letters, underscores, minus signs, and periods.', + 'http_code' => 400, + 'description' => 'The specified replyAddress is invalid. It must contain the @ sign. The domain must consist of numbers, letters, underscores, minus signs, and periods. The account name must consist of numbers, letters, underscores, minus signs, and periods.', + ], + [ + 'code' => 'InvalidReplyAddressAlias.Malformed', + 'message' => 'The format of the specified replyAddressAlias is invalid. The length must not exceed 15 characters.', + 'http_code' => 400, + 'description' => 'The format of the specified replyAddressAlias is invalid. The length must not exceed 15 characters.', + ], + [ + 'code' => 'InvalidSendMail.Spam', + 'message' => 'The email you sent was rejected by spam filter.', + 'http_code' => 400, + 'description' => 'The email you sent was rejected by spam filter.', + ], + [ + 'code' => 'InvalidSendSms', + 'message' => 'The frequency limit is exceeded.', + 'http_code' => 400, + 'description' => 'The frequency limit is exceeded.', + ], + [ + 'code' => 'InvalidSign.NotFound', + 'message' => 'The specified signature is not found.', + 'http_code' => 400, + 'description' => 'The specified signature is not found.', + ], + [ + 'code' => 'InvalidSignFileNames.Malformed', + 'message' => 'The specified signature file is not found.', + 'http_code' => 404, + 'description' => 'The specified signature file is not found.', + ], + [ + 'code' => 'InvalidSignName.Duplicate', + 'message' => 'The specified signature already exists.', + 'http_code' => 400, + 'description' => 'The specified signature already exists.', + ], + [ + 'code' => 'InvalidSignName.Malformed', + 'message' => 'The specified signature is invalid.', + 'http_code' => 400, + 'description' => 'The specified signature is invalid.', + ], + [ + 'code' => 'InvalidSignNumber.Malformed', + 'message' => 'The maximum number of signatures is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of signatures is exceeded.', + ], + [ + 'code' => 'InvalidSource.Malformed', + 'message' => 'The specified source is invalid.', + 'http_code' => 400, + 'description' => 'The specified source is invalid.', + ], + [ + 'code' => 'InvalidStartTime.Malformed', + 'message' => 'The start time must be earlier than the end time.', + 'http_code' => 400, + 'description' => 'The start time must be earlier than the end time.', + ], + [ + 'code' => 'InvalidStatus.Malformed', + 'message' => 'The specified status is invalid.', + 'http_code' => 400, + 'description' => 'The specified status is invalid.', + ], + [ + 'code' => 'InvalidStatus.Update.Failed', + 'message' => 'The specified quick configuration update failed.', + 'http_code' => 400, + 'description' => 'The specified quick configuration update failed.', + ], + [ + 'code' => 'InvalidSubject.Malformed', + 'message' => 'The specified subject is invalid. It must not exceed 100 characters.', + 'http_code' => 400, + 'description' => 'The specified subject is invalid. It must not exceed 256 characters.', + ], + [ + 'code' => 'InvalidTag.NotFound', + 'message' => 'The specified tag does not exist.', + 'http_code' => 404, + 'description' => 'The specified tag does not exist.', + ], + [ + 'code' => 'InvalidTagId.Malformed', + 'message' => 'The specified tag ID does not exist.', + 'http_code' => 400, + 'description' => 'The specified tag ID does not exist.', + ], + [ + 'code' => 'InvalidTagName.Duplicate', + 'message' => 'The specified tag name already exists.', + 'http_code' => 400, + 'description' => 'The specified tag name already exists.', + ], + [ + 'code' => 'InvalidTagName.Malformed', + 'message' => 'The specified tag name is invalid.', + 'http_code' => 404, + 'description' => 'The specified tag name is invalid.', + ], + [ + 'code' => 'InvalidTagNumber.Malformed', + 'message' => 'The maximum number of tags is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of tags is exceeded.', + ], + [ + 'code' => 'InvalidTask.NotFound', + 'message' => 'The specified task is not found.', + 'http_code' => 404, + 'description' => 'The specified task is not found.', + ], + [ + 'code' => 'InvalidTemplate.NotFound', + 'message' => 'The specified template is not found.', + 'http_code' => 404, + 'description' => 'The specified template is not found.', + ], + [ + 'code' => 'InvalidTemplateCode.Malformed', + 'message' => 'The specified template code is invalid.', + 'http_code' => 400, + 'description' => 'The specified template code is invalid.', + ], + [ + 'code' => 'InvalidTemplateId.Malformed', + 'message' => 'The specified templateId does not exist.', + 'http_code' => 404, + 'description' => 'The specified templateId does not exist.', + ], + [ + 'code' => 'InvalidTemplateName.Duplicate', + 'message' => 'The specified template name already exists.', + 'http_code' => 400, + 'description' => 'The specified template name already exists.', + ], + [ + 'code' => 'InvalidTemplateName.Malformed', + 'message' => 'The length of the template name must not exceed 30 characters.', + 'http_code' => 400, + 'description' => 'The length of the template name must not exceed 30 characters.', + ], + [ + 'code' => 'InvalidTemplateNickName.Malformed', + 'message' => 'The specified TemplateNickName is invalid.', + 'http_code' => 400, + 'description' => 'The specified TemplateNickName is invalid.', + ], + [ + 'code' => 'InvalidTemplateNumber.Malformed', + 'message' => 'The maximum number of templates is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of templates is exceeded.', + ], + [ + 'code' => 'InvalidTemplateRemark.Malformed', + 'message' => 'The specified template remark is invalid.', + 'http_code' => 400, + 'description' => 'The specified template remark is invalid.', + ], + [ + 'code' => 'InvalidTemplateSmsContent.Malformed', + 'message' => 'The specified template smsContent is invalid.', + 'http_code' => 400, + 'description' => 'The specified template subject is invalid.', + ], + [ + 'code' => 'InvalidTemplateSmsType.Malformed', + 'message' => 'The format of the specified template smsType is invalid.', + 'http_code' => 400, + 'description' => 'The format of the specified template smsType is invalid.', + ], + [ + 'code' => 'InvalidTemplateStatus.Malformed', + 'message' => 'The specified template status is invalid. Please check whether the template has passed verification.', + 'http_code' => 400, + 'description' => 'The specified template status is invalid. Please check whether the template has passed verification.', + ], + [ + 'code' => 'InvalidTemplateSubject.Malformed', + 'message' => 'The specified template subject is invalid.', + 'http_code' => 400, + 'description' => 'The specified template subject is invalid.', + ], + [ + 'code' => 'InvalidTemplateText.Malformed', + 'message' => 'The specified template text must not exceed 1 MB.', + 'http_code' => 400, + 'description' => 'The specified template text must not exceed 1 MB.', + ], + [ + 'code' => 'InvalidTemplateType.Malformed', + 'message' => 'The specified template type is invalid.', + 'http_code' => 400, + 'description' => 'The specified template type is invalid.', + ], + [ + 'code' => 'InvalidTemplateVariable.Malformed', + 'message' => 'The specified template variable is invalid.', + 'http_code' => 400, + 'description' => 'The specified template variable is invalid.', + ], + [ + 'code' => 'InvalidToAddress', + 'message' => 'The specified toAddress is invalid. It must contain the @ sign. The domain must consist of numbers, letters, underscores, minus signs, and periods. The account name must consist of numbers, letters, underscores, minus signs, and periods.', + 'http_code' => 400, + 'description' => 'The format of the receiver name is invalid. It must contain the @ sign. The domain must only contain numbers, letters, underscores, minus signs, and periods. The account name must only contain numbers, letters, underscores, minus signs, and periods.', + ], + [ + 'code' => 'InvalidToAddress.Spam', + 'message' => 'The email you sent was rejected due to invalid address.', + 'http_code' => 400, + 'description' => 'The email you sent was rejected due to invalid address.', + ], + [ + 'code' => 'InvalidUser.NotFound', + 'message' => 'The specified user does not exist. Please contact your master account to activate the Direct Mail service.', + 'http_code' => 404, + 'description' => 'The specified user does not exist. Please contact your master account to activate the Direct Mail service.', + ], + [ + 'code' => 'InvalidUserStatus.Malformed', + 'message' => 'The specified user status is abnormal.', + 'http_code' => 400, + 'description' => 'The specified user status is wrongly formed.', + ], + [ + 'code' => 'InvalidYear.Malformed', + 'message' => 'The specified year is invalid.', + 'http_code' => 400, + 'description' => 'The specified year is invalid.', + ], + [ + 'code' => 'ListAlibabaCloudDomains.GetFailed', + 'message' => 'Failed to get Alibaba Cloud domains.', + 'http_code' => 404, + 'description' => 'Failed to get Alibaba Cloud domains.', + ], + [ + 'code' => 'LogicalDeleteUserStatus', + 'message' => 'The specified user status is deleted.', + 'http_code' => 400, + 'description' => 'The specified user status is deleted.', + ], + [ + 'code' => 'MissingTemplateText', + 'message' => 'You must specify TemplateText.', + 'http_code' => 400, + 'description' => 'You must specify TemplateText.', + ], + [ + 'code' => 'notification.errorparam', + 'message' => 'The specified parameter is invalid.', + 'http_code' => 400, + 'description' => 'The specified parameter is invalid.', + ], + [ + 'code' => 'RAM.ApiNotSupported', + 'message' => 'The API does not support RAM access.', + 'http_code' => 400, + 'description' => 'The API does not support RAM access.', + ], + [ + 'code' => 'RecordDuplicated', + 'message' => 'The specified record already exists.', + 'http_code' => 400, + 'description' => 'The specified record already exists.', + ], + [ + 'code' => 'RecordLimit', + 'message' => 'The maximum number of records is exceeded.', + 'http_code' => 400, + 'description' => 'The maximum number of records is exceeded.', + ], + [ + 'code' => 'UnsupportedSourceControl', + 'message' => 'You are not authorized to perform the operation.', + 'http_code' => 400, + 'description' => 'You are not authorized to perform the operation.', + ], + [ + 'code' => 'User.Blacklisted', + 'message' => 'The specified user is in the blacklist.', + 'http_code' => 400, + 'description' => 'The specified user is in the blacklist.', + ], + [ + 'code' => 'User.RegisterTooMuch', + 'message' => 'The specified user has registered more than one DirectMail account.', + 'http_code' => 400, + 'description' => 'The specified user has registered more than one DirectMail account.', + ], + [ + 'code' => 'UserSuppressionList.AddressExists', + 'message' => 'The address already exists.', + 'http_code' => 400, + 'description' => 'Mail address or domain already exists', + ], + [ + 'code' => 'UserSuppressionList.AddressOverLength', + 'message' => 'The address length should less than 60.', + 'http_code' => 400, + 'description' => 'Invalid address should be less than 60 characters in length', + ], + [ + 'code' => 'UserSuppressionList.AddressWithSpecialChar', + 'message' => 'Please remove special characters.', + 'http_code' => 400, + 'description' => 'Invalid addresses only support email addresses or domain names and do not support special characters.', + ], + [ + 'code' => 'UserSuppressionList.EmptyAddress', + 'message' => 'Please enter the address.', + 'http_code' => 400, + 'description' => 'Invalid address cannot be empty', + ], + [ + 'code' => 'UserSuppressionList.InvalidAddress', + 'message' => 'Invalid address, please enter domain or email.', + 'http_code' => 400, + 'description' => 'Invalid address format error, only domain or mailbox', + ], + [ + 'code' => 'InvalidSubject.Malformed', + 'message' => 'The specified subject is invalid. It exceeds the allowed length limit.', + 'http_code' => 400, + 'description' => 'Subject error, exceeds allowed length limit', + ], + ], + 'changeSet' => [], + 'ram' => [ + 'productCode' => 'DirectMail', + 'productName' => 'Direct Mail', + 'ramCodes' => [ + 'dm', + ], + 'ramLevel' => 'OPERATION', + 'ramConditions' => [], + 'ramActions' => [ + [ + 'apiName' => 'DeleteIpfilterByEdmId', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteIpfilterByEdmId', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CheckDomain', + 'description' => '', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:CheckDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'RemoveUserSuppression', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:RemoveUserSuppression', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CreateMailAddress', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ModifyTag', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ModifyTag', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CreateDomain', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteMailAddress', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ListUserSuppression', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:ListUserSuppression', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'SenderStatisticsByTagNameAndBatchID', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:SenderStatisticsByTagNameAndBatchID', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetIpProtection', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetIpProtection', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetTrackListByMailFromAndTagName', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:GetTrackListByMailFromAndTagName', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ConfigSetDelete', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:ConfigSetDelete', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetUser', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:GetUser', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ConfigSetRelationFromAddress', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:ConfigSetRelationFromAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ApproveReplyMailAddress', + 'description' => '', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:ApproveReplyMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CheckReplyToMailAddress', + 'description' => '', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:CheckReplyToMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpNonePoolList', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpNonePoolList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpPoolList', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ListValidateFile', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:ListValidateFile', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'BatchSendMail', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:BatchSendMail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ConfigSetDetail', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:ConfigSetDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DescAccountSummary', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:DescAccountSummary', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'SaveReceiverDetail', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:SaveReceiverDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpAutoRenewal', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpAutoRenewal', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryMailAddressByParam', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryMailAddressByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetTrackList', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:GetTrackList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryDomainByParam', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryDomainByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetValidationQuota', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetValidationQuota', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteReceiver', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteReceiver', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteReceiverDetail', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteReceiverDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteTag', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteTag', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DescTemplate', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:DescTemplate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryReceiverByParam', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryReceiverByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CreateTag', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateTag', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetIpfilterList', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetIpfilterList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CreateReceiver', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateReceiver', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetValidateFile', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetValidateFile', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpPoolUpdate', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolUpdate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'SendTestByTemplate', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:SendTestByTemplate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'SenderStatisticsDetailByParam', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:SenderStatisticsDetailByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryTaskByParam', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryTaskByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ConfigSetCreate', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:ConfigSetCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'GetValidateFileStatus', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:GetValidateFileStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'SingleSendMail', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:SingleSendMail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ListBlockSending', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'dm:ListBlockSending', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteInvalidAddress', + 'description' => '', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'dm:DeleteInvalidAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ModifyPWByDomain', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ModifyPWByDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpChangeWarmupType', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpChangeWarmupType', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'AddIpfilter', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:AddIpfilter', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ConfigSetList', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:ConfigSetList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryTemplateByParam', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryTemplateByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ModifyMailAddress', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ModifyMailAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryReceiverDetail', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryReceiverDetail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteDomain', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'SendValidateFile', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:SendValidateFile', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpPoolDelete', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolDelete', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ValidateEmail', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:ValidateEmail', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateIpProtection', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:UpdateIpProtection', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'UpdateUser', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:UpdateUser', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ConfigSetUpdate', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ConfigSetUpdate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'UnblockSending', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:UnblockSending', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryTagByParam', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryTagByParam', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'QueryInvalidAddress', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:QueryInvalidAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'CreateUserSuppression', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:CreateUserSuppression', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpList', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpList', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DescDomain', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'dm:DescDomain', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'ConfigSetCancelRelationFromAddress', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'dm:ConfigSetCancelRelationFromAddress', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DeleteValidateFile', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'dm:DeleteValidateFile', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + [ + 'apiName' => 'DedicatedIpPoolCreate', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'dm:DedicatedIpPoolCreate', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + [ + 'validationType' => 'always', + 'product' => 'DirectMail', + 'resourceType' => 'All Resource', + 'arn' => '*', + ], + ], + ], + ], + ], + 'resourceTypes' => [], + ], +]; diff --git a/data/en_us/dm/2016-08-25/api-docs.php b/data/en_us/dm/2016-08-25/api-docs.php new file mode 100644 index 0000000..8472347 --- /dev/null +++ b/data/en_us/dm/2016-08-25/api-docs.php @@ -0,0 +1,5240 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'Dm', + 'version' => '2016-08-25', + ], + 'directories' => [ + [ + 'id' => 60726, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'ModifyMailAddress', + 'DescAccountSummary', + ], + ], + [ + 'id' => 60729, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateMailAddress', + 'QueryInvalidAddress', + 'QueryMailAddressByParam', + 'ApproveReplyMailAddress', + ], + ], + [ + 'id' => 60734, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateReceiver', + 'DeleteReceiver', + 'DeleteReceiverDetail', + 'QueryReceiverByParam', + 'QueryReceiverDetail', + 'SaveReceiverDetail', + ], + ], + [ + 'id' => 60741, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateDomain', + 'DeleteDomain', + 'QueryDomainByParam', + 'CheckDomain', + ], + ], + [ + 'id' => 60746, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'QuerySmsStatistics', + 'QueryTaskByParam', + 'BatchSendMail', + 'CheckReplyToMailAddress', + 'SenderStatisticsByTagNameAndBatchID', + 'SenderStatisticsDetailByParam', + 'SendTestByTemplate', + 'SingleSendMail', + 'SingleSendSms', + ], + ], + [ + 'id' => 60756, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateTag', + 'DeleteTag', + 'ModifyTag', + ], + ], + [ + 'id' => 60760, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateSign', + 'DeleteSign', + 'QuerySignByParam', + 'QueryTagByParam', + ], + ], + [ + 'id' => 60765, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateTemplate', + 'DeleteTemplate', + 'ModifyTemplate', + 'QueryTemplateByParam', + 'ApproveMailTemplate', + 'ApproveSmsTemplate', + 'DescTemplate', + ], + ], + [ + 'id' => 0, + 'title' => '其它', + 'type' => 'directory', + 'children' => [ + 'CreateDayu', + ], + ], + ], + 'components' => [ + 'schemas' => [], + ], + 'apis' => [ + 'ModifyMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'MailAddressId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Password', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified mailAddress accountName is already existed', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressNumber.Malformed', + 'errorMessage' => 'The amount of MailAddress exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressReplyName.Malformed', + 'errorMessage' => 'The specified mailAddress replyAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomainStatus.Malformed', + 'errorMessage' => 'The mailAddress domain Status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressTicket.Malformed', + 'errorMessage' => 'The specified mailAddress ticket does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressPassword.Malformed', + 'errorMessage' => 'The specified mailAddress password is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DescAccountSummary' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SmsSign' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'MonthQuota' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Receivers' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'DayuStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'DailyQuota' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SmsRecord' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Tags' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Templates' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'MailAddresses' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'QuotaLevel' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Domains' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'UserStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SmsTemplates' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Sendtype', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified mailAddress accountName is already existed', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressNumber.Malformed', + 'errorMessage' => 'The amount of MailAddress exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressReplyName.Malformed', + 'errorMessage' => 'The specified mailAddress replyAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomainStatus.Malformed', + 'errorMessage' => 'The mailAddress domain Status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressTicket.Malformed', + 'errorMessage' => 'The specified mailAddress ticket does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryInvalidAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Length', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailDetail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LastUpdateTime' => [ + 'type' => 'string', + ], + 'ToAddress' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryMailAddressByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Sendtype', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailAddress' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MailAddressId' => [ + 'type' => 'string', + ], + 'MonthCount' => [ + 'type' => 'string', + ], + 'AccountStatus' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'ReplyStatus' => [ + 'type' => 'string', + ], + 'Sendtype' => [ + 'type' => 'string', + ], + 'MonthReqCount' => [ + 'type' => 'string', + ], + 'ReplyAddress' => [ + 'type' => 'string', + ], + 'DailyReqCount' => [ + 'type' => 'string', + ], + 'DailyCount' => [ + 'type' => 'string', + ], + 'DomainStatus' => [ + 'type' => 'string', + ], + 'AccountName' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified mailAddress accountName is already existed', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressNumber.Malformed', + 'errorMessage' => 'The amount of MailAddress exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressReplyName.Malformed', + 'errorMessage' => 'The specified mailAddress replyAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomainStatus.Malformed', + 'errorMessage' => 'The mailAddress domain Status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressTicket.Malformed', + 'errorMessage' => 'The specified mailAddress ticket does not exist.', + ], + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'ApproveReplyMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'Ticket', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified mailAddress accountName is already existed', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressNumber.Malformed', + 'errorMessage' => 'The amount of MailAddress exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressReplyName.Malformed', + 'errorMessage' => 'The specified mailAddress replyAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomainStatus.Malformed', + 'errorMessage' => 'The mailAddress domain Status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressTicket.Malformed', + 'errorMessage' => 'The specified mailAddress ticket does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateReceiver' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'ReceiversName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'ReceiversAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'Desc', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteReceiver' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteReceiverDetail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetatil.NotFound', + 'errorMessage' => 'The specified receiver detail does not found.', + ], + [ + 'errorCode' => 'InvalidReceiverEmail.Malformed', + 'errorMessage' => 'The specified receiver email is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryReceiverByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'type' => 'string', + ], + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'receiver' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ReceiversAlias' => [ + 'type' => 'string', + ], + 'ReceiversName' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'ReceiverId' => [ + 'type' => 'string', + ], + 'ReceiversStatus' => [ + 'type' => 'string', + ], + 'Count' => [ + 'type' => 'string', + ], + 'Desc' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryReceiverDetail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DataSchema' => [ + 'type' => 'string', + ], + 'NextStart' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'detail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'type' => 'string', + ], + 'Email' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SaveReceiverDetail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'Detail', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ErrorCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'SuccessCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Detail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Email' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateDomain' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainName.Duplicate', + 'errorMessage' => 'The specified domain name is already existed', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified domain name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidDomainNumber.Malformed', + 'errorMessage' => 'The amount of domain exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidDomainName.Conflict', + 'errorMessage' => 'The specified domain name is already used by other user', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteDomain' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainId.Malformed', + 'errorMessage' => 'The specified domainId does not exist.', + ], + [ + 'errorCode' => 'InvalidDomain.Using', + 'errorMessage' => 'The specified domain has been used to create mailAddress.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryDomainByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '20', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'domain' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DomainRecord' => [ + 'type' => 'string', + ], + 'SpfAuthStatus' => [ + 'type' => 'string', + ], + 'MxAuthStatus' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'ConfirmStatus' => [ + 'type' => 'string', + ], + 'DomainStatus' => [ + 'type' => 'string', + ], + 'DomainName' => [ + 'type' => 'string', + ], + 'DomainId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CheckDomain' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainId.Malformed', + 'errorMessage' => 'The specified domainId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QuerySmsStatistics' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'stat' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'faildCount' => [ + 'type' => 'string', + ], + 'successCount' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'requestCount' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryTaskByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'task' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ReceiversName' => [ + 'type' => 'string', + ], + 'TagName' => [ + 'type' => 'string', + ], + 'TaskStatus' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'RequestCount' => [ + 'type' => 'string', + ], + 'AddressType' => [ + 'type' => 'string', + ], + 'TemplateName' => [ + 'type' => 'string', + ], + 'TaskId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'BatchSendMail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'ReceiversName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'AddressType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '1', + 'minimum' => '0', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddressAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnvId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSendMail.Spam', + 'errorMessage' => 'Sendmail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddressAlias.Malformed', + 'errorMessage' => 'The specified replyAddressAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddress.Malformed', + 'errorMessage' => 'The specified replyAddress is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not exist.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CheckReplyToMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'MailAddressId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified mailAddress accountName is already existed', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressNumber.Malformed', + 'errorMessage' => 'The amount of MailAddress exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressReplyName.Malformed', + 'errorMessage' => 'The specified mailAddress replyAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomainStatus.Malformed', + 'errorMessage' => 'The mailAddress domain Status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressTicket.Malformed', + 'errorMessage' => 'The specified mailAddress ticket does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SenderStatisticsByTagNameAndBatchID' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'stat' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'unavailablePercent' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'succeededPercent' => [ + 'type' => 'string', + ], + 'faildCount' => [ + 'type' => 'string', + ], + 'unavailableCount' => [ + 'type' => 'string', + ], + 'successCount' => [ + 'type' => 'string', + ], + 'requestCount' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SenderStatisticsDetailByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ToAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '4', + 'minimum' => '0', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Length', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailDetail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Message' => [ + 'type' => 'string', + ], + 'LastUpdateTime' => [ + 'type' => 'string', + ], + 'ToAddress' => [ + 'type' => 'string', + ], + 'AccountName' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + [ + 'errorCode' => 'InvalidToAddress', + 'errorMessage' => 'The specified toAddress is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SendTestByTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'UserName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'NickName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Birthday', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Gender', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Mobile', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateVariable.Malformed', + 'errorMessage' => 'The specified template variable is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSendMail.Spam', + 'errorMessage' => 'Sendmail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SingleSendMail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'AddressType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '1', + 'minimum' => '0', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyToAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => true, + ], + ], + [ + 'name' => 'ToAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'Subject', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'HtmlBody', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TextBody', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddressAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnvId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidToAddress', + 'errorMessage' => 'The specified toAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidToAddress.Spam', + 'errorMessage' => 'Sendmail rejected by invalid address.', + ], + [ + 'errorCode' => 'InvalidBody', + 'errorMessage' => 'The specified textBody or htmlBody is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSendMail.Spam', + 'errorMessage' => 'Sendmail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidSubject.Malformed', + 'errorMessage' => 'The specified subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidFromAlias.Malformed', + 'errorMessage' => 'The specified fromAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddressAlias.Malformed', + 'errorMessage' => 'The specified replyAddressAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddress.Malformed', + 'errorMessage' => 'The specified replyAddress is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not exist.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SingleSendSms' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'SignName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'TemplateCode', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'RecNum', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'ParamString', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidSignName.Malformed', + 'errorMessage' => 'The specified sign name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateCode.Malformed', + 'errorMessage' => 'The specified templateCode is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidRecNum.Malformed', + 'errorMessage' => 'The specified recNum is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParamString.Malformed', + 'errorMessage' => 'The specified paramString is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParamStringTemplate.Malformed', + 'errorMessage' => 'The specified paramString and template is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidToAddress', + 'errorMessage' => 'The specified toAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidToAddress.Spam', + 'errorMessage' => 'Sendmail rejected by invalid address.', + ], + [ + 'errorCode' => 'InvalidBody', + 'errorMessage' => 'The specified textBody or htmlBody is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSendMail.Spam', + 'errorMessage' => 'Sendmail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidSubject.Malformed', + 'errorMessage' => 'The specified subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidFromAlias.Malformed', + 'errorMessage' => 'The specified fromAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddressAlias.Malformed', + 'errorMessage' => 'The specified replyAddressAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddress.Malformed', + 'errorMessage' => 'The specified replyAddress is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSendSms', + 'errorMessage' => 'Frequency limit reaches.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not exist.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateTag' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteTag' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'TagId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'ModifyTag' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'TagId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateSign' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'SignName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'Remark', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'SignType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '3', + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'FileNames', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidSignName.Malformed', + 'errorMessage' => 'The specified sign name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSignName.Duplicate', + 'errorMessage' => 'The specified sign name is already existed.', + ], + [ + 'errorCode' => 'InvalidSignNumber.Malformed', + 'errorMessage' => 'The amount of sign exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidSignFileNames.Malformed', + 'errorMessage' => 'The specified sign fileNames does not found.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidSign.NotFound', + 'errorMessage' => 'The specified sign does not found.', + ], + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteSign' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'SignId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QuerySignByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'sign' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Remark' => [ + 'type' => 'string', + ], + 'AuditState' => [ + 'type' => 'string', + ], + 'GmtCreate' => [ + 'type' => 'string', + ], + 'SignId' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'SignName' => [ + 'type' => 'string', + ], + 'OrderId' => [ + 'type' => 'string', + ], + 'RejectInfo' => [ + 'type' => 'string', + ], + 'SignType' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSignName.Malformed', + 'errorMessage' => 'The specified sign name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSignName.Duplicate', + 'errorMessage' => 'The specified sign name is already existed.', + ], + [ + 'errorCode' => 'InvalidSignNumber.Malformed', + 'errorMessage' => 'The amount of sign exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidSignFileNames.Malformed', + 'errorMessage' => 'The specified sign fileNames does not found.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidSign.NotFound', + 'errorMessage' => 'The specified sign does not found.', + ], + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryTagByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'tag' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TagName' => [ + 'type' => 'string', + ], + 'TagId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'TemplateType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + 'default' => '0', + ], + ], + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'TemplateSubject', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateNickName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateText', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'SmsType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + ], + ], + [ + 'name' => 'SmsContent', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Remark', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateRemark.Malformed', + 'errorMessage' => 'The specified template remark is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSmsContent.Malformed', + 'errorMessage' => 'The specified template smsContent is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateType.Malformed', + 'errorMessage' => 'The specified template type is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSmsType.Malformed', + 'errorMessage' => 'The specified template smsType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + [ + 'errorCode' => 'MissingTemplateText', + 'errorMessage' => 'TemplateText is mandatory for this action.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'ModifyTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + ], + ], + [ + 'name' => 'TemplateSubject', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateNickName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateText', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'SmsType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + ], + ], + [ + 'name' => 'SmsContent', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Remark', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateRemark.Malformed', + 'errorMessage' => 'The specified template remark is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSmsContent.Malformed', + 'errorMessage' => 'The specified template smsContent is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSmsType.Malformed', + 'errorMessage' => 'The specified template smsType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + [ + 'errorCode' => 'MissingTemplateText', + 'errorMessage' => 'TemplateText is mandatory for this action.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryTemplateByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '4', + 'minimum' => '0', + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'template' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TemplateComment' => [ + 'type' => 'string', + ], + 'Smsrejectinfo' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SmsTemplateCode' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'TemplateStatus' => [ + 'type' => 'string', + ], + 'TemplateType' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TemplateName' => [ + 'type' => 'string', + ], + 'SmsStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TemplateId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'ApproveMailTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'ApproveSmsTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DescTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SmsContent' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'Remark' => [ + 'type' => 'string', + ], + 'SmsType' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'TemplateSubject' => [ + 'type' => 'string', + ], + 'TemplateStatus' => [ + 'type' => 'string', + ], + 'TemplateNickName' => [ + 'type' => 'string', + ], + 'TemplateType' => [ + 'type' => 'string', + ], + 'TemplateName' => [ + 'type' => 'string', + ], + 'TemplateText' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateDayu' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'AccountType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-hangzhou', + 'endpoint' => 'dm.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'endpoint' => 'dm.ap-southeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'us-east-1', + 'endpoint' => 'dm.us-east-1.aliyuncs.com', + ], + [ + 'regionId' => 'eu-central-1', + 'endpoint' => 'dm.eu-central-1.aliyuncs.com', + ], + ], +]; diff --git a/data/en_us/dm/2017-06-22/api-docs.php b/data/en_us/dm/2017-06-22/api-docs.php new file mode 100644 index 0000000..badb3d5 --- /dev/null +++ b/data/en_us/dm/2017-06-22/api-docs.php @@ -0,0 +1,4705 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'Dm', + 'version' => '2017-06-22', + ], + 'directories' => [ + [ + 'id' => 60684, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateMailAddress', + 'DeleteMailAddress', + 'QueryInvalidAddress', + 'QueryMailAddressByParam', + ], + ], + [ + 'id' => 60689, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'ModifyMailAddress', + 'GetAccountList', + 'DescAccountSummary', + ], + ], + [ + 'id' => 60694, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateTag', + 'DeleteTag', + 'ModifyTag', + 'QueryTagByParam', + ], + ], + [ + 'id' => 60699, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateReceiver', + 'DeleteReceiver', + 'DeleteReceiverDetail', + 'QueryReceiverByParam', + 'QueryReceiverDetail', + 'SaveReceiverDetail', + ], + ], + [ + 'id' => 60707, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateTemplate', + 'DeleteTemplate', + 'ModifyTemplate', + 'QueryTemplateByParam', + 'DescTemplate', + ], + ], + [ + 'id' => 60713, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateDomain', + 'DeleteDomain', + 'QueryDomainByParam', + 'CheckDomain', + 'DescDomain', + ], + ], + [ + 'id' => 60719, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetTrackList', + 'QueryTaskByParam', + 'BatchSendMail', + 'SenderStatisticsByTagNameAndBatchID', + 'SenderStatisticsDetailByParam', + 'SingleSendMail', + ], + ], + [ + 'id' => 0, + 'title' => '其它', + 'type' => 'directory', + 'children' => [ + 'AddIpfilter', + ], + ], + ], + 'components' => [ + 'schemas' => [], + ], + 'apis' => [ + 'CreateMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Sendtype', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'MailAddressId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'MailAddressId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified mailAddress accountName is already existed', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressNumber.Malformed', + 'errorMessage' => 'The amount of MailAddress exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressReplyName.Malformed', + 'errorMessage' => 'The specified mailAddress replyAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomainStatus.Malformed', + 'errorMessage' => 'The mailAddress domain Status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressTicket.Malformed', + 'errorMessage' => 'The specified mailAddress ticket does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddress.delteTimes', + 'errorMessage' => 'Maximum number of deletion', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryInvalidAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Length', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailDetail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LastUpdateTime' => [ + 'type' => 'string', + ], + 'ToAddress' => [ + 'type' => 'string', + ], + 'UtcLastUpdateTime' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryMailAddressByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'minimum' => '1', + 'default' => '500', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Sendtype', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailAddress' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MailAddressId' => [ + 'type' => 'string', + ], + 'MonthCount' => [ + 'type' => 'string', + ], + 'AccountStatus' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'ReplyStatus' => [ + 'type' => 'string', + ], + 'Sendtype' => [ + 'type' => 'string', + ], + 'MonthReqCount' => [ + 'type' => 'string', + ], + 'ReplyAddress' => [ + 'type' => 'string', + ], + 'DailyReqCount' => [ + 'type' => 'string', + ], + 'DailyCount' => [ + 'type' => 'string', + ], + 'DomainStatus' => [ + 'type' => 'string', + ], + 'AccountName' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => null, + ], + 'ModifyMailAddress' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'MailAddressId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Password', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Duplicate', + 'errorMessage' => 'The specified mailAddress accountName is already existed', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressNumber.Malformed', + 'errorMessage' => 'The amount of MailAddress exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidMailAddressId.Malformed', + 'errorMessage' => 'The specified MailAddressId does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressReplyName.Malformed', + 'errorMessage' => 'The specified mailAddress replyAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomainStatus.Malformed', + 'errorMessage' => 'The mailAddress domain Status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressTicket.Malformed', + 'errorMessage' => 'The specified mailAddress ticket does not exist.', + ], + [ + 'errorCode' => 'InvalidMailAddressPassword.Malformed', + 'errorMessage' => 'The specified mailAddress password is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressPassword.equalcurrent', + 'errorMessage' => 'The password can not equal current one.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'GetAccountList' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Total', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Offset', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'OffsetCreateTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'OffsetCreateTimeDesc', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageNo' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'Total' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'accountNotificationInfo' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'type' => 'string', + ], + 'UpdateTime' => [ + 'type' => 'string', + ], + 'Region' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DescAccountSummary' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnableTimes' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SmsSign' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'MonthQuota' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Receivers' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'DayuStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'DailyQuota' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SmsRecord' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Tags' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Templates' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'MailAddresses' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'QuotaLevel' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'MaxQuotaLevel' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Domains' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'UserStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SmsTemplates' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RemainFreeQuota' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'DailyRemainFreeQuota' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'User.Blacklisted', + 'errorMessage' => 'The specified user is in the blacklist.', + ], + [ + 'errorCode' => 'User.RegisterTooMuch', + 'errorMessage' => 'The specified user has registered more than one DirectMail account.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateTag' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'TagDescription', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'test description', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TagId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TagId\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', + ], + 'DeleteTag' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'TagId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'ModifyTag' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'TagId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'example' => '123', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'TagDescription', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'test description', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Duplicate', + 'errorMessage' => 'The specified tag name is already existed.', + ], + [ + 'errorCode' => 'InvalidTagNumber.Malformed', + 'errorMessage' => 'The amount of tag exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTagId.Malformed', + 'errorMessage' => 'The specified tagId does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTag.NotFound', + 'errorMessage' => 'The specified tag does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', + ], + 'QueryTagByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'minimum' => '1', + 'default' => '500', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + ], + 'PageNumber' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'TotalCount' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'tag' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TagName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + 'TagId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '52366', + ], + 'TagDescription' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test description', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"PageNumber\\": 5,\\n \\"TotalCount\\": 2,\\n \\"data\\": {\\n \\"tag\\": [\\n {\\n \\"TagName\\": \\"test\\",\\n \\"TagId\\": \\"52366\\",\\n \\"TagDescription\\": \\"test description\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'CreateReceiver' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'ReceiversName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'ReceiversAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'Desc', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ReceiverId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteReceiver' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteReceiverDetail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetatil.NotFound', + 'errorMessage' => 'The specified receiver detail does not found.', + ], + [ + 'errorCode' => 'InvalidReceiverEmail.Malformed', + 'errorMessage' => 'The specified receiver email is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryReceiverByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'type' => 'string', + ], + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'receiver' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ReceiversAlias' => [ + 'type' => 'string', + ], + 'ReceiversName' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'ReceiverId' => [ + 'type' => 'string', + ], + 'UtcCreateTime' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'ReceiversStatus' => [ + 'type' => 'string', + ], + 'Count' => [ + 'type' => 'string', + ], + 'Desc' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryReceiverDetail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DataSchema' => [ + 'type' => 'string', + ], + 'NextStart' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'detail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'type' => 'string', + ], + 'UtcCreateTime' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'Email' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SaveReceiverDetail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'ReceiverId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'Detail', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ErrorCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'SuccessCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Detail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Email' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidReceiverName.Duplicate', + 'errorMessage' => 'The specified receiver name is already existed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverNumber.Malformed', + 'errorMessage' => 'The amount of receiver exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverId.Malformed', + 'errorMessage' => 'The specified receiverId does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetailMax.Malformed', + 'errorMessage' => 'The amount of receivers detail exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidReceiverDesc.Malformed', + 'errorMessage' => 'The specified receiversDesc is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Malformed', + 'errorMessage' => 'The specified receivers detail is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverDetail.Spam', + 'errorMessage' => 'The specified receiver detail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Malformed', + 'errorMessage' => 'The specified receiversAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverAlias.Duplicate', + 'errorMessage' => 'The specified receiversAlias is already existed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'TemplateType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + 'default' => '0', + ], + ], + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'TemplateSubject', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateNickName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateText', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'SmsType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + ], + ], + [ + 'name' => 'SmsContent', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Remark', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TemplateId' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateRemark.Malformed', + 'errorMessage' => 'The specified template remark is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSmsContent.Malformed', + 'errorMessage' => 'The specified template smsContent is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateType.Malformed', + 'errorMessage' => 'The specified template type is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSmsType.Malformed', + 'errorMessage' => 'The specified template smsType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + [ + 'errorCode' => 'MissingTemplateText', + 'errorMessage' => 'TemplateText is mandatory for this action.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'ModifyTemplate' => [ + 'summary' => '修改模板信息', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'TemplateSubject', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateNickName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TemplateText', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'SmsType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + ], + ], + [ + 'name' => 'SmsContent', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Remark', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryTemplateByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '40', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '4', + 'minimum' => '0', + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'template' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TemplateComment' => [ + 'type' => 'string', + ], + 'UtcCreatetime' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'Smsrejectinfo' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'SmsTemplateCode' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'TemplateStatus' => [ + 'type' => 'string', + ], + 'TemplateType' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TemplateName' => [ + 'type' => 'string', + ], + 'SmsStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TemplateId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DescTemplate' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'FromType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SmsContent' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'Remark' => [ + 'type' => 'string', + ], + 'SmsType' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'TemplateSubject' => [ + 'type' => 'string', + ], + 'TemplateStatus' => [ + 'type' => 'string', + ], + 'TemplateNickName' => [ + 'type' => 'string', + ], + 'TemplateType' => [ + 'type' => 'string', + ], + 'TemplateName' => [ + 'type' => 'string', + ], + 'TemplateText' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTemplateName.Duplicate', + 'errorMessage' => 'The specified template name is already existed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateNumber.Malformed', + 'errorMessage' => 'The amount of template exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTemplateId.Malformed', + 'errorMessage' => 'TemplateId does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateNickName.Malformed', + 'errorMessage' => 'The specified template nickName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateSubject.Malformed', + 'errorMessage' => 'The specified template subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDayuStatus.Malformed', + 'errorMessage' => 'The specified dayu status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CreateDomain' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainName.Duplicate', + 'errorMessage' => 'The specified domain name is already existed', + ], + [ + 'errorCode' => 'InvalidDomainName.DuplicateTLD', + 'errorMessage' => 'The specified domain of top-level domain name already exists.', + ], + [ + 'errorCode' => 'InvalidDomainName.TimeOut', + 'errorMessage' => 'The current response timeout, please try again later.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified domain name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidDomainNumber.Malformed', + 'errorMessage' => 'The amount of domain exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidDomainName.Conflict', + 'errorMessage' => 'The specified domain name is already used by other user', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DeleteDomain' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainId.Malformed', + 'errorMessage' => 'The specified domainId does not exist.', + ], + [ + 'errorCode' => 'InvalidDomain.Using', + 'errorMessage' => 'The specified domain has been used to create mailAddress.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'QueryDomainByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '1000', + 'minimum' => '1', + 'default' => '20', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'domain' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DomainRecord' => [ + 'type' => 'string', + ], + 'SpfAuthStatus' => [ + 'type' => 'string', + ], + 'MxAuthStatus' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'CnameAuthStatus' => [ + 'type' => 'string', + ], + 'ConfirmStatus' => [ + 'type' => 'string', + ], + 'IcpStatus' => [ + 'type' => 'string', + ], + 'UtcCreateTime' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'DomainStatus' => [ + 'type' => 'string', + ], + 'DomainName' => [ + 'type' => 'string', + ], + 'DomainId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + ], + 403 => [ + [ + 'errorCode' => 'User.Blacklisted', + 'errorMessage' => 'The specified user is in the blacklist.', + ], + [ + 'errorCode' => 'User.RegisterTooMuch', + 'errorMessage' => 'The specified user has registered more than one DirectMail account.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'CheckDomain' => [ + 'summary' => '校验域名状态', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainStatus' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'responseDemo' => null, + ], + 'DescDomain' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'DomainId', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'RequireRealTimeDnsRecords', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'default' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'SpfRecord' => [ + 'type' => 'string', + ], + 'CnameConfirmStatus' => [ + 'type' => 'string', + ], + 'DefaultDomain' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'CnameRecord' => [ + 'type' => 'string', + ], + 'CnameAuthStatus' => [ + 'type' => 'string', + ], + 'IcpStatus' => [ + 'type' => 'string', + ], + 'DnsTxt' => [ + 'type' => 'string', + ], + 'DomainName' => [ + 'type' => 'string', + ], + 'DomainId' => [ + 'type' => 'string', + ], + 'DnsSpf' => [ + 'type' => 'string', + ], + 'SpfAuthStatus' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'MxRecord' => [ + 'type' => 'string', + ], + 'MxAuthStatus' => [ + 'type' => 'string', + ], + 'DnsMx' => [ + 'type' => 'string', + ], + 'DomainStatus' => [ + 'type' => 'string', + ], + 'TlDomainName' => [ + 'type' => 'string', + ], + 'TracefRecord' => [ + 'type' => 'string', + ], + 'DomainType' => [ + 'type' => 'string', + ], + 'SpfRecordV2' => [ + 'type' => 'string', + ], + 'DkimRR' => [ + 'type' => 'string', + ], + 'DkimPublicKey' => [ + 'type' => 'string', + ], + 'DkimAuthStatus' => [ + 'type' => 'string', + ], + 'HostRecord' => [ + 'type' => 'string', + ], + 'DnsDmarc' => [ + 'type' => 'string', + ], + 'DmarcRecord' => [ + 'type' => 'string', + ], + 'DmarcAuthStatus' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'DmarcHostRecord' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainId.Malformed', + 'errorMessage' => 'The specified domainId does not exist.', + ], + [ + 'errorCode' => 'InvalidDomain.Using', + 'errorMessage' => 'The specified domain has been used to create mailAddress.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not found.', + ], + [ + 'errorCode' => 'InvalidDomainId.NotFound', + 'errorMessage' => 'The specified domainId is not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'GetTrackList' => [ + 'summary' => '获取打开、点击等跟踪行为的统计结果', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'docRequired' => true, + 'example' => '2022-09-29', + 'required' => true, + 'type' => 'string', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'docRequired' => true, + 'example' => '2022-09-29', + 'required' => true, + 'type' => 'string', + ], + ], + [ + 'name' => 'Total', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'example' => '', + 'required' => false, + 'type' => 'string', + ], + ], + [ + 'name' => 'Offset', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'example' => '', + 'required' => false, + 'type' => 'string', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'example' => '10', + 'required' => false, + 'type' => 'string', + ], + ], + [ + 'name' => 'OffsetCreateTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'example' => '', + 'required' => false, + 'type' => 'string', + ], + ], + [ + 'name' => 'OffsetCreateTimeDesc', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'example' => '', + 'required' => false, + 'type' => 'string', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'example' => '1', + 'required' => false, + 'type' => 'string', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'properties' => [ + 'RequestId' => [ + 'description' => '', + 'example' => '10A1AD70-E48E-476D-98D9-39BD92193837', + 'type' => 'string', + ], + 'OffsetCreateTime' => [ + 'description' => '', + 'example' => '', + 'type' => 'string', + ], + 'PageNo' => [ + 'description' => '', + 'example' => '1', + 'format' => 'int32', + 'type' => 'integer', + ], + 'PageSize' => [ + 'description' => '', + 'example' => '10', + 'format' => 'int32', + 'type' => 'integer', + ], + 'Total' => [ + 'description' => '', + 'example' => '100', + 'format' => 'int32', + 'type' => 'integer', + ], + 'OffsetCreateTimeDesc' => [ + 'description' => '', + 'example' => '', + 'type' => 'string', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'stat' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'properties' => [ + 'RcptClickRate' => [ + 'description' => '', + 'example' => '0', + 'type' => 'string', + ], + 'RcptUniqueOpenCount' => [ + 'description' => '', + 'example' => '0', + 'format' => 'int64', + 'type' => 'integer', + ], + 'RcptClickCount' => [ + 'description' => '', + 'example' => '0', + 'format' => 'int64', + 'type' => 'integer', + ], + 'RcptUniqueClickCount' => [ + 'description' => '', + 'example' => '0', + 'format' => 'int64', + 'type' => 'integer', + ], + 'CreateTime' => [ + 'description' => '', + 'example' => '2019-09-29T13:28Z', + 'format' => 'int64', + 'type' => 'integer', + ], + 'RcptUniqueOpenRate' => [ + 'description' => '', + 'example' => '0', + 'type' => 'string', + ], + 'RcptUniqueClickRate' => [ + 'description' => '', + 'example' => '0', + 'type' => 'string', + ], + 'TotalNumber' => [ + 'description' => '', + 'example' => '0', + 'format' => 'int64', + 'type' => 'integer', + ], + 'RcptOpenRate' => [ + 'description' => '', + 'example' => '0', + 'type' => 'string', + ], + 'RcptOpenCount' => [ + 'description' => '', + 'example' => '0', + 'format' => 'int64', + 'type' => 'integer', + ], + ], + 'type' => 'object', + ], + ], + ], + ], + ], + 'type' => 'object', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"10A1AD70-E48E-476D-98D9-39BD92193837\\",\\n \\"OffsetCreateTime\\": \\"(本字段已废弃)\\",\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 100,\\n \\"OffsetCreateTimeDesc\\": \\"(本字段已废弃)\\",\\n \\"data\\": {\\n \\"stat\\": [\\n {\\n \\"RcptClickRate\\": \\"0\\",\\n \\"RcptUniqueOpenCount\\": 0,\\n \\"RcptClickCount\\": 0,\\n \\"RcptUniqueClickCount\\": 0,\\n \\"CreateTime\\": 0,\\n \\"RcptUniqueOpenRate\\": \\"0\\",\\n \\"RcptUniqueClickRate\\": \\"0\\",\\n \\"TotalNumber\\": 0,\\n \\"RcptOpenRate\\": \\"0\\",\\n \\"RcptOpenCount\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'QueryTaskByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '50', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'KeyWord', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '2', + 'minimum' => '0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'PageNumber' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'task' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ReceiversName' => [ + 'type' => 'string', + ], + 'TagName' => [ + 'type' => 'string', + ], + 'TaskStatus' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'RequestCount' => [ + 'type' => 'string', + ], + 'AddressType' => [ + 'type' => 'string', + ], + 'UtcCreateTime' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'TemplateName' => [ + 'type' => 'string', + ], + 'TaskId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStatus.Malformed', + 'errorMessage' => 'The specified status is wrongly formed.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'BatchSendMail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'ReceiversName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'AddressType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'maximum' => '1', + 'minimum' => '0', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddressAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ClickTrace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'UnSubscribeLinkType', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'UnSubscribeFilterLevel', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnvId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified MailAddress name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSendMail.Spam', + 'errorMessage' => 'Sendmail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplateStatus.Malformed', + 'errorMessage' => 'The specified template status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverStatus.Malformed', + 'errorMessage' => 'The specified receivers status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddressAlias.Malformed', + 'errorMessage' => 'The specified replyAddressAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddress.Malformed', + 'errorMessage' => 'The specified replyAddress is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not exist.', + ], + [ + 'errorCode' => 'InvalidIP.NotFound', + 'errorMessage' => 'Invalid IP', + ], + ], + ], + 'responseDemo' => null, + ], + 'SenderStatisticsByTagNameAndBatchID' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'stat' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'unavailablePercent' => [ + 'type' => 'string', + ], + 'CreateTime' => [ + 'type' => 'string', + ], + 'succeededPercent' => [ + 'type' => 'string', + ], + 'faildCount' => [ + 'type' => 'string', + ], + 'unavailableCount' => [ + 'type' => 'string', + ], + 'successCount' => [ + 'type' => 'string', + ], + 'requestCount' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SenderStatisticsDetailByParam' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ToAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '4', + 'minimum' => '0', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'Length', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'default' => '10', + ], + ], + [ + 'name' => 'NextStart', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'NextStart' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'mailDetail' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'LastUpdateTime' => [ + 'type' => 'string', + ], + 'Message' => [ + 'type' => 'string', + ], + 'ToAddress' => [ + 'type' => 'string', + ], + 'UtcLastUpdateTime' => [ + 'type' => 'string', + ], + 'AccountName' => [ + 'type' => 'string', + ], + 'Subject' => [ + 'type' => 'string', + ], + 'ErrorClassification' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDate.Malformed', + 'errorMessage' => 'The specified date is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'Start time should earlyer than end time.', + ], + [ + 'errorCode' => 'InvalidBetweenTime.Malformed', + 'errorMessage' => 'More than seven days between start time and end time.', + ], + [ + 'errorCode' => 'InvalidYear.Malformed', + 'errorMessage' => 'The specified year is invalid.', + ], + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress accountName is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidKeyword.Malformed', + 'errorMessage' => 'The specified keyword is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTagName.Malformed', + 'errorMessage' => 'The specified tag name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The input parameter is mandatory for processing this request is not supplied', + ], + [ + 'errorCode' => 'InvalidToAddress', + 'errorMessage' => 'The specified toAddress is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDate.NotFound', + 'errorMessage' => 'The specified date does not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'The request processing has failed due to some unknown error.', + ], + ], + ], + 'responseDemo' => null, + ], + 'SingleSendMail' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'AccountName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'AddressType', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'docRequired' => true, + 'maximum' => '1', + 'minimum' => '0', + ], + ], + [ + 'name' => 'TagName', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyToAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'ToAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'Subject', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + ], + ], + [ + 'name' => 'HtmlBody', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TextBody', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'FromAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddress', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ReplyAddressAlias', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'ClickTrace', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'UnSubscribeLinkType', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'UnSubscribeFilterLevel', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EnvId' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidMailAddressName.Malformed', + 'errorMessage' => 'The specified mailAddress name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReceiverName.Malformed', + 'errorMessage' => 'The specified receiver name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidTemplateName.Malformed', + 'errorMessage' => 'The specified template name is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidToAddress', + 'errorMessage' => 'The specified toAddress is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidToAddress.Spam', + 'errorMessage' => 'Sendmail rejected by invalid address.', + ], + [ + 'errorCode' => 'InvalidBody', + 'errorMessage' => 'The specified textBody or htmlBody is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidSendMail.Spam', + 'errorMessage' => 'Sendmail rejected by spam filter.', + ], + [ + 'errorCode' => 'InvalidMailAddressSendType.Malformed', + 'errorMessage' => 'The specified mailAddress sendType is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressStatus.Malformed', + 'errorMessage' => 'The specified mailAddress status is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidMailAddressDomain.Malformed', + 'errorMessage' => 'The specified mailAddress domain does not exist.', + ], + [ + 'errorCode' => 'InvalidSubject.Malformed', + 'errorMessage' => 'The specified subject is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidFromAlias.Malformed', + 'errorMessage' => 'The specified fromAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddressAlias.Malformed', + 'errorMessage' => 'The specified replyAddressAlias is wrongly formed.', + ], + [ + 'errorCode' => 'InvalidReplyAddress.Malformed', + 'errorMessage' => 'The specified replyAddress is wrongly formed.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidMailAddress.NotFound', + 'errorMessage' => 'The specified mailAddress does not exist.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'The specified template does not exist.', + ], + [ + 'errorCode' => 'InvalidReceiver.NotFound', + 'errorMessage' => 'The specified receiver does not exist.', + ], + [ + 'errorCode' => 'InvalidIP.NotFound', + 'errorMessage' => 'Invalid IP', + ], + ], + ], + 'responseDemo' => null, + ], + 'AddIpfilter' => [ + 'summary' => '添加IP白名单', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [], + 'parameters' => [ + [ + 'name' => 'IpAddress', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'F814E960-5AEE-5CB1-881B-6F1A3250B55A', + ], + 'IpFilterId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '10795', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F814E960-5AEE-5CB1-881B-6F1A3250B55A\\",\\n \\"IpFilterId\\": \\"10795\\"\\n}","errorExample":""},{"type":"xml","example":"<AddIpfilterResponse>\\n <RequestId>F814E960-5AEE-5CB1-881B-6F1A3250B55A</RequestId>\\n <IpFilterId>10795</IpFilterId>\\n</AddIpfilterResponse>","errorExample":""}]', + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-hangzhou', + 'endpoint' => 'dm.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'endpoint' => 'dm.ap-southeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'us-east-1', + 'endpoint' => 'dm.us-east-1.aliyuncs.com', + ], + [ + 'regionId' => 'eu-central-1', + 'endpoint' => 'dm.eu-central-1.aliyuncs.com', + ], + ], +]; |
