'1.0', 'info' => [ 'style' => 'RPC', 'product' => 'safconsole', 'version' => '2021-01-12', ], 'directories' => [ [ 'id' => 236784, 'title' => null, 'type' => 'directory', 'children' => [ 'RevokeFeedback', 'SendFeedback', 'UploadSampleApi', ], ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'RevokeFeedback' => [ 'summary' => 'Used for external deletion of community samples in risk identification services.', 'methods' => [ 'post', 'get', ], 'schemes' => [ 'http', 'https', ], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '79133', 'abilityTreeNodes' => [ 'FEATUREsafT73ZWM', ], ], 'parameters' => [ [ 'name' => 'SampleType', 'in' => 'formData', 'schema' => [ 'description' => 'Sample type. For phone number type samples, input PHONE; for email type samples, input EMAIL; for account type samples, input ACCOUNT.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'PHONE'."\n", ], ], [ 'name' => 'Value', 'in' => 'formData', 'schema' => [ 'description' => 'Sample value.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '10000000000', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => [ 'description' => 'Interface status or POP error code. Value explanations are as follows: 2xx: Success. 3xx: Redirect. 4xx: Request error. 5xx: Server error.', 'type' => 'string', 'example' => '200', ], 'Message' => [ 'description' => 'Return message.', 'type' => 'string', 'example' => 'success', ], 'RequestId' => [ 'description' => 'Public parameter, each request ID is unique and can be used for troubleshooting and problem localization.', 'type' => 'string', 'example' => '4A91D2D1-AEC9-1658-ABCE-5A39DE66A5C2', ], ], ], ], ], 'errorCodes' => [ 200 => [ [ 'errorCode' => 'NotAuthorized', 'errorMessage' => 'You are not authorized to call the service. The service has expired, the quota for the subscription is reached, or you have not purchased the service.', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"4A91D2D1-AEC9-1658-ABCE-5A39DE66A5C2\\"\\n}","type":"json"}]', 'title' => 'External Sample Deletion Interface', 'translator' => 'machine', ], 'SendFeedback' => [ 'summary' => 'Used for the external creation of community samples in risk identification services.', 'methods' => [ 'post', 'get', ], 'schemes' => [ 'http', 'https', ], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '79134', 'abilityTreeNodes' => [ 'FEATUREsafT73ZWM', ], ], 'parameters' => [ [ 'name' => 'SampleType', 'in' => 'query', 'schema' => [ 'description' => 'Sample type. For phone number type samples, input PHONE; for email type samples, input EMAIL; for account type samples, input ACCOUNT.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'PHONE', ], ], [ 'name' => 'RiskLabel', 'in' => 'query', 'schema' => [ 'description' => 'Sample labels. User-defined, separated by commas.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'OTHERS', ], ], [ 'name' => 'Value', 'in' => 'query', 'schema' => [ 'description' => 'Sample value.', 'type' => 'string', 'required' => true, 'docRequired' => false, 'example' => '10000000000', ], ], [ 'name' => 'Reason', 'in' => 'query', 'schema' => [ 'description' => 'The reason why you add the sample.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Abnormal transaction behavior.', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => [ 'description' => 'Interface status or POP error code. The values are as follows: 2xx: Success. 3xx: Redirect. 4xx: Request error. 5xx: Server error.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', ], 'Message' => [ 'description' => 'Return message.', 'type' => 'string', 'example' => 'success', ], 'RequestId' => [ 'description' => 'Public parameter, each request ID is unique and can be used for troubleshooting and problem localization.', 'type' => 'string', 'example' => '4A91D2D1-AEC9-1658-ABCE-5A39DE66A5C2', ], ], ], ], ], 'errorCodes' => [ 200 => [ [ 'errorCode' => 'NotAuthorized', 'errorMessage' => 'You are not authorized to call the service. The service has expired, the quota for the subscription is reached, or you have not purchased the service.', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"4A91D2D1-AEC9-1658-ABCE-5A39DE66A5C2\\"\\n}","type":"json"}]', 'title' => 'Create External Sample Interface', 'translator' => 'machine', ], 'UploadSampleApi' => [ 'summary' => 'Single User API for Sample Creation', 'methods' => [ 'post', 'get', ], 'schemes' => [ 'http', 'https', ], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '207197', 'abilityTreeNodes' => [ 'FEATUREsafT73ZWM', ], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SampleType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the sample'."\n" ."\n" .'- Blacklist: block'."\n" ."\n" .'- Whitelist: pass', 'type' => 'string', 'required' => true, 'example' => 'block', ], ], [ 'name' => 'DataType', 'in' => 'query', 'schema' => [ 'description' => 'The data type of the sample'."\n" ."\n" .'- Phone number: mobile'."\n" .'- MD5 of phone number: mobileMd5'."\n" .'- IP: ip'."\n" .'- Unique device ID: umid'."\n" .'- Account ID: accountId'."\n" .'- IMEI: imei'."\n" .'- MD5 of IMEI: imeiMd5'."\n" .'- OAID: oaid'."\n" .'- MD5 of OAID: oaidMd5'."\n" .'- Android ID: androidId'."\n" .'- MD5 of Android ID: androidIdMd5', 'type' => 'string', 'required' => true, 'example' => 'ip', ], ], [ 'name' => 'Service', 'in' => 'query', 'schema' => [ 'description' => 'List of effective services, separate multiple services with commas'."\n" ."\n" .'- Basic/Enhanced Registration Risk Identification: account_abuse'."\n" .'- Basic/Enhanced Marketing Risk Identification: coupon_abuse'."\n" .'- Basic/Enhanced Login Risk Identification: account_takeover', 'type' => 'string', 'required' => true, 'example' => 'account_abuse,coupon_abuse,account_takeover', ], ], [ 'name' => 'DataValue', 'in' => 'query', 'schema' => [ 'description' => 'Specific value of the sample, to be passed in JSON format. Do not exceed 1000 entries at a time.', 'type' => 'string', 'required' => true, 'example' => '["123.124.125.126","123.124.125.127"]', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response Schema', 'type' => 'object', 'properties' => [ 'RequestId' => [ 'title' => 'Id of the request', 'description' => 'ID of the request', 'type' => 'string', 'example' => '4A91D2D1-AEC9-1658-ABCE-5A39DE66A5C2', ], 'Message' => [ 'description' => 'Error message returned', 'type' => 'string', 'example' => 'null', ], 'Code' => [ 'description' => 'Request code returned', 'type' => 'string', 'example' => '200', ], 'Success' => [ 'description' => 'Indicator of whether the access was successful', 'type' => 'string', 'example' => 'true', ], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4A91D2D1-AEC9-1658-ABCE-5A39DE66A5C2\\",\\n \\"Message\\": \\"null\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', 'title' => 'Sample Upload Interface', 'translator' => 'machine', ], ], 'endpoints' => [ [ 'regionId' => 'cn-shanghai', 'endpoint' => 'safconsole.cn-shanghai.aliyuncs.com', ], [ 'regionId' => 'cn-hangzhou', 'endpoint' => 'safconsole.cn-hangzhou.aliyuncs.com', ], ], ];