'1.0', 'info' => ['style' => 'ROA', 'product' => 'AliGenie', 'version' => 'iap_1.0'], 'directories' => [ [ 'children' => ['GetBusAppConfig', 'AppUseTimeReport', 'PullCashier', 'VideoAppReport', 'GetAccountForApp'], 'type' => 'directory', 'title' => 'Application Monetization', ], [ 'children' => ['GetPhoneNumber'], 'type' => 'directory', 'title' => 'Obtain Phone Number', ], [ 'children' => ['CreateReminder', 'GetReminder', 'ListReminders', 'UpdateReminder', 'DeleteReminder'], 'type' => 'directory', 'title' => 'Calendar Reminder', ], [ 'children' => ['WakeUpApp'], 'type' => 'directory', 'title' => 'Application Invocation', ], [ 'children' => ['PushNotifications', 'SendNotifications'], 'type' => 'directory', 'title' => 'Message Push', ], [ 'children' => ['CheckThirdRightSendPlan', 'CallBackThirdRightSendPlan'], 'type' => 'directory', 'title' => 'Other', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'AppUseTimeReport' => [ 'summary' => 'Used to report application usage duration on Tmall Genie devices. ', 'path' => '/v1.0/iap/vip/use/time/report', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'Business parameters', 'type' => 'object', 'properties' => [ 'UserId' => ['title' => 'User ID', 'type' => 'string', 'required' => true, 'description' => '', 'example' => ''], 'DeviceId' => ['title' => 'Device ID', 'type' => 'string', 'required' => false, 'description' => '', 'example' => ''], 'SubjectId' => ['title' => 'Application ID', 'type' => 'string', 'required' => true, 'description' => '', 'example' => ''], 'Action' => ['title' => '', 'description' => 'Action item'."\n" ."\n" .'- start indicates Start'."\n" .'- end indicates End', 'type' => 'string', 'required' => true, 'example' => 'start'], 'StepCode' => ['title' => '', 'description' => 'Step code. The start and end actions must be uniquely matched.', 'type' => 'string', 'required' => true, 'example' => '2'], 'ResourceId' => ['title' => '', 'description' => 'Resource ID.', 'type' => 'string', 'required' => true, 'example' => '1'], 'ResourceType' => ['title' => 'resourceType', 'description' => 'Resource type:'."\n" ."\n" .'- 0 indicates game'."\n" .'- 1 indicates audio'."\n" .'- 2 indicates video', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], 'IsPrivilege' => ['title' => '', 'description' => 'Indicates whether the benefit is exclusive to members:'."\n" ."\n" .'- 1 indicates Yes '."\n" .'- 0 indicates No', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], 'VipType' => ['title' => '', 'description' => 'Membership type:'."\n" ."\n" .'- 0 indicates Cat Spirit Membership'."\n" .'- 1 indicates third-party proprietary membership', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], 'originUuid' => ['description' => 'Plaintext UUID', 'type' => 'string', 'required' => false, 'example' => '731D5F********DC3B', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identifier information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User identifier, set to either userOpenId or userUnionId.', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of User ID '."\n" .'- OPEN_ID: Default User ID identifier. '."\n" .'- UNION_ID: Organization-dimension User ID identifier. This value is available only after an organization has been requested on the Tmall Genie Skill Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier from Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer flow. '."\n" .'- SKILL_ID: Skill ID, used for the cloud-based flow.', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type '."\n" ."\n" .'- When the encoding type is SKILL_ID, the value is the application\'s Skill ID. '."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client application.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device identity information ', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, set to deviceOpenId or deviceUnionId. ', 'type' => 'string', 'required' => false, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of device ID '."\n" .'- OPEN_ID: Default device ID. '."\n" .'- UNION_ID: Organization-dimension device ID, available only after an organization has been requested in the Tmall Genie Skill Application Open Platform. ', 'type' => 'string', 'required' => false, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device identity for Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used for Android application customer-side integration. '."\n" .'- SKILL_ID: Skill ID, used for cloud-side integration. ', 'type' => 'string', 'required' => false, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type.'."\n" ."\n" .'- When the encoding type is SKILL_ID, the value is the application\'s Skill ID.'."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client application.', 'type' => 'string', 'required' => false, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID, required if IdType is UNION_ID. ', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RetCode' => ['description' => 'Error code returned; `0` indicates success. ', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'RetMsg' => ['description' => 'Error message returned; no message is returned upon success. ', 'type' => 'string', 'example' => '请求异常', 'title' => ''], 'RetValue' => ['description' => 'Result of invoking the API '."\n" ."\n" .'- true indicates success '."\n" .'- false indicates failure ', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => '500', 'errorMessage' => '内部服务错误_xxx', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RetCode\\": 0,\\n \\"RetMsg\\": \\"请求异常\\",\\n \\"RetValue\\": true\\n}","type":"json"}]', 'title' => 'Report Application Usage Duration ', 'translator' => 'machine', 'changeSet' => [], ], 'CallBackThirdRightSendPlan' => [ 'summary' => 'Third-party membership redemption callback API.', 'path' => '/v1.0/iap/business/CallBackThirdRightSendPlan', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'deprecated' => false, 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'BizType', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'device Type', 'type' => 'string', 'required' => false, 'example' => 'ailabs'], ], [ 'name' => 'BizGroup', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'device group', 'type' => 'string', 'required' => false, 'example' => 'cc'], ], [ 'name' => 'Sn', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'SN of the device ', 'type' => 'string', 'required' => false, 'example' => '01000019100307010000600'], ], [ 'name' => 'SupplierId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Supplier ID', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], ], [ 'name' => 'GenieOpenId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Genie ID', 'type' => 'string', 'required' => false, 'example' => '1dsds2FzCXFGVA1ADS'], ], [ 'name' => 'ReceiveStatus', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'redemption status', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'CardType', 'in' => 'query', 'schema' => ['title' => '', 'description' => '1001 daily card, 1002 monthly card, 1003 quarterly card, 1004 annual card', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1001'], ], [ 'name' => 'ErrorMsg', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'error message', 'type' => 'string', 'required' => false, 'example' => '领取异常'], ], [ 'name' => 'ExtendInfo', 'in' => 'query', 'style' => 'json', 'schema' => ['title' => '', 'description' => 'Extension fields ', 'type' => 'object', 'required' => false, 'example' => '{}'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RetValue' => ['title' => '', 'description' => 'Return Result true/false', 'type' => 'boolean', 'example' => ''], 'RetMsg' => ['title' => '', 'description' => 'error message', 'type' => 'string', 'example' => '系统异常'], 'RetCode' => ['title' => '', 'description' => 'fault status code', 'type' => 'string', 'example' => '400'], 'requestId' => ['title' => '', 'description' => 'Request ID', 'type' => 'string', 'example' => '908FA068-529C-0C20-8DB5-63B0EF7CFF1F'], ], 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RetValue\\": false,\\n \\"RetMsg\\": \\"系统异常\\",\\n \\"RetCode\\": \\"400\\",\\n \\"requestId\\": \\"908FA068-529C-0C20-8DB5-63B0EF7CFF1F\\"\\n}","type":"json"}]', 'title' => 'Third-party membership redemption callback', 'translator' => 'machine', 'changeSet' => [], ], 'CheckThirdRightSendPlan' => [ 'summary' => 'Commercial mobile screen third-party app card issuance validation.', 'path' => '/v1.0/iap/business/CheckThirdRightSendPlan', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'BizType', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Device type', 'type' => 'string', 'required' => false, 'example' => 'ailabs'], ], [ 'name' => 'BizGroup', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Device group', 'type' => 'string', 'required' => false, 'example' => 'cc'], ], [ 'name' => 'Sn', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Device SN', 'type' => 'string', 'required' => false, 'example' => '01000019100307010000600'], ], [ 'name' => 'SupplierId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Supplier ID', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], ], [ 'name' => 'ExtendInfo', 'in' => 'query', 'style' => 'json', 'schema' => ['title' => '', 'description' => 'Extension field', 'type' => 'object', 'required' => false, 'example' => '{}'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RetCode' => ['title' => '', 'description' => 'Return code', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'RetMsg' => ['title' => '', 'description' => 'Error message', 'type' => 'string', 'example' => '系统异常'], 'RetValue' => [ 'description' => 'Result of invoking the API', 'type' => 'object', 'properties' => [ 'CardType' => ['title' => '', 'description' => 'Card type', 'type' => 'integer', 'format' => 'int32', 'example' => '1001 日卡 1002 月卡 1003 季卡 1004 年卡'], 'RightsExpiredDate' => ['title' => '', 'description' => 'Rights expiration time', 'type' => 'string', 'example' => '"1713262192005"'], 'ActivateDate' => ['title' => '', 'description' => 'Activation time', 'type' => 'string', 'example' => '"1713262192005"'], 'ChannelCode' => ['title' => '', 'description' => 'Channel code', 'type' => 'string', 'example' => 'TB'], 'ChannelName' => ['title' => '', 'description' => 'Channel Name', 'type' => 'string', 'example' => '淘宝'], 'RequestId' => ['title' => '', 'description' => 'Request ID', 'type' => 'string', 'example' => '908FA068-529C-0C20-8DB5-63B0EF7CFF1F'], 'ExtendInfo' => ['title' => '', 'description' => 'Extension field', 'type' => 'object', 'example' => '{}'], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 500 => [ ['errorCode' => 'AliGenie.Public.InternalError', 'errorMessage' => 'An internal error occurred.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RetCode\\": 0,\\n \\"RetMsg\\": \\"系统异常\\",\\n \\"RetValue\\": {\\n \\"CardType\\": 0,\\n \\"RightsExpiredDate\\": \\"\\\\\\"1713262192005\\\\\\"\\",\\n \\"ActivateDate\\": \\"\\\\\\"1713262192005\\\\\\"\\",\\n \\"ChannelCode\\": \\"TB\\",\\n \\"ChannelName\\": \\"淘宝\\",\\n \\"RequestId\\": \\"908FA068-529C-0C20-8DB5-63B0EF7CFF1F\\",\\n \\"ExtendInfo\\": {}\\n }\\n}","type":"json"}]', 'title' => 'Third-party membership validation', 'translator' => 'machine', 'changeSet' => [], ], 'CreateReminder' => [ 'summary' => 'Used to create a reminder on a Tmall Genie device. ', 'path' => '/v1.0/iap/reminder/create', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_Token' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The input parameters for this service request.', 'type' => 'object', 'properties' => [ 'Content' => ['title' => '', 'description' => 'The detailed content of the reminder message.', 'type' => 'string', 'required' => true, 'example' => '提醒内容'], 'UserId' => ['title' => 'Genie ID', 'type' => 'string', 'required' => true, 'example' => '12****78', 'description' => ''], 'DeviceId' => ['title' => 'Device ID', 'type' => 'string', 'required' => true, 'example' => 'BED****AAC', 'description' => ''], 'SubjectId' => ['title' => 'Application ID', 'type' => 'string', 'required' => true, 'example' => '20******01', 'description' => ''], 'IsDebug' => ['title' => '', 'description' => 'Indicates whether this invocation is for debug purposes.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'default' => 'false'], 'RecurrenceRule' => [ 'title' => '', 'description' => 'Scheduling information for the reminder.', 'type' => 'object', 'properties' => [ 'Year' => ['title' => '', 'description' => 'The year of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2021'], 'Month' => ['title' => '', 'description' => 'The month in which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], 'Day' => ['title' => '', 'description' => 'The date on which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '25'], 'Hour' => ['title' => '', 'description' => 'The hour of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '12'], 'Minute' => ['title' => '', 'description' => 'The minute of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], 'Second' => ['title' => '', 'description' => 'The second of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], 'Freq' => [ 'title' => '', 'description' => 'Loop type:'."\n" ."\n" .'- ONCE: One-time'."\n" .'- DAILY: Daily'."\n" .'- WEEKLY: Weekly'."\n" .'- MONTHLY: Monthly', 'type' => 'string', 'required' => true, 'example' => 'ONCE', 'enum' => ['ONCE', 'DAILY', 'WEEKLY', 'MONTHLY'], ], 'StartDateTime' => ['title' => '', 'description' => 'The effective start time of the reminder, in milliseconds as a UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1635134400000'], 'EndDateTime' => ['title' => '', 'description' => 'The expiration time when the reminder ends, in milliseconds UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1635134700000'], 'DaysOfMonth' => [ 'title' => '', 'description' => 'Configure monthly reminders, indicating the day of the month when the reminder is triggered.', 'type' => 'array', 'items' => ['description' => 'Set the specific dates for monthly reminders. The value range is 1 to 31.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'required' => false, 'example' => '', ], 'DaysOfWeek' => [ 'title' => '', 'description' => 'Configure weekly reminders, indicating on which days of the week the reminder is triggered.', 'type' => 'array', 'items' => ['description' => 'Specific days for weekly reminders, with values ranging from 1 to 7.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'required' => false, 'example' => '', ], ], 'required' => true, 'example' => '', ], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identifier information.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User identifier, set to either userOpenId or userUnionId.', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of the User ID: '."\n" .'- OPEN_ID: The default User ID identity. '."\n" .'- UNION_ID: The User ID identity at the organization dimension. This value is available only after an organization has been requested on the Tmall Genie Skills Application Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow '."\n" .'- SKILL_ID: Skill ID, used in the cloud-based flow', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type: '."\n" .'- When the encoding type is SKILL_ID, the value is the Skill ID of the application. '."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. This parameter is required when **IdType** is configured as **UNION_ID**.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device identification information. ', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, set to either deviceOpenId or deviceUnionId. ', 'type' => 'string', 'required' => true, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of the device ID: '."\n" .'- OPEN_ID: Default device ID identifier. '."\n" .'- UNION_ID: Organization-level device ID identifier. This value is available only after an organization has been registered on the Tmall Genie Skill Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID for Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow. '."\n" .'- SKILL_ID: Skill ID, used in the cloud-based flow. ', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type.'."\n" ."\n" .'- When the encoding type is set to SKILL_ID, the value is the application\'s Skill ID.'."\n" .'- When the encoding type is set to PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. This parameter is required when **IdType** is set to **UNION_ID**. ', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response information returned by calling this API. ', 'type' => 'object', 'properties' => [ 'Success' => ['title' => '', 'description' => 'Indicates the result of the API call. true indicates success, and false indicates failure. ', 'type' => 'boolean', 'example' => 'true'], 'ErrorCode' => ['title' => '', 'description' => 'Error code. ', 'type' => 'string', 'example' => '400'], 'ErrorMsg' => ['title' => '', 'description' => 'Detailed description of the error message. ', 'type' => 'string', 'example' => '不能设置过去的时间。'], 'Model' => ['title' => '', 'description' => 'The ID of the created reminder. ', 'type' => 'integer', 'format' => 'int64', 'example' => '20****1'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"ErrorCode\\": \\"400\\",\\n \\"ErrorMsg\\": \\"不能设置过去的时间。\\",\\n \\"Model\\": 0\\n}","type":"json"}]', 'title' => 'Create Reminder ', 'translator' => 'machine', 'changeSet' => [], ], 'DeleteReminder' => [ 'summary' => 'User deletes a reminder created on a Tmall Genie device. ', 'path' => '/v1.0/iap/reminder/delete', 'methods' => ['delete'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_Token' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Input parameters for the service request', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Unique ID of the reminder', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '20****34'], 'UserId' => ['title' => 'Genie ID', 'type' => 'string', 'required' => true, 'example' => '12****56', 'description' => ''], 'DeviceId' => ['title' => 'Device ID', 'type' => 'string', 'required' => true, 'example' => 'BED****AAC', 'description' => ''], 'SubjectId' => ['title' => 'Application ID', 'type' => 'string', 'required' => true, 'example' => '20****01', 'description' => ''], 'IsDebug' => ['title' => '', 'description' => 'Debug flag', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'default' => 'false'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identifier information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User Identifier (userOpenId or userUnionId)', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of the User ID:'."\n" .'- OPEN_ID: The default User ID identity.'."\n" .'- UNION_ID: The User ID identity at the organization dimension. This is available only after an organization has been requested on the Maojing Skill Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Maojing, and each method corresponds to a different encoding type: '."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer ingest endpoint '."\n" .'- SKILL_ID: Skill ID, used for the cloud service ingest endpoint', 'type' => 'string', 'required' => true, 'example' => 'SKILL_ID', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type. When the encoding type is `SKILL_ID`, the value is the application\'s Skill ID. When the encoding type is `PACKAGE_NAME`, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required when IdType is `UNION_ID`.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'device identity information ', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'device ID (deviceOpenId or deviceUnionId) ', 'type' => 'string', 'required' => true, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'type of device ID '."\n" .'- OPEN_ID: default device ID '."\n" .'- UNION_ID: organization-level device ID; available only after an organization has been requested on the Tmall Genie Skill Application Open Platform ', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'encoding type; there are multiple ways to obtain the Tmall Genie device ID, and each method corresponds to a different encoding type '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow '."\n" .'- SKILL_ID: skill ID, used in the cloud-based flow ', 'type' => 'string', 'required' => true, 'example' => 'SKILL_ID', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type. When the encoding type is `SKILL_ID`, the value is the application\'s Skill ID. When the encoding type is `PACKAGE_NAME`, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'organization ID; required if IdType is `UNION_ID` ', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'Success' => ['title' => '', 'description' => 'service success indicator ', 'type' => 'boolean', 'example' => 'true'], 'ErrorCode' => ['title' => '', 'description' => 'error code ', 'type' => 'integer', 'format' => 'int32', 'example' => '400'], 'ErrorMsg' => ['title' => '', 'description' => 'error message ', 'type' => 'string', 'example' => '参数错误。'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"ErrorCode\\": 400,\\n \\"ErrorMsg\\": \\"参数错误。\\"\\n}","type":"json"}]', 'title' => 'Delete Reminder ', 'translator' => 'machine', 'changeSet' => [], ], 'GetAccountForApp' => [ 'summary' => 'Used by developers to obtain membership information in business scenarios that depend on CatGenie Membership.', 'path' => '/v1.0/iap/vip/account/get', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'Business parameters', 'type' => 'object', 'properties' => [ 'UserId' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], 'SubjectId' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], 'DeviceId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Phone' => ['description' => 'Phone number of the authorized membership user.', 'type' => 'string', 'required' => false, 'example' => '188*777', 'title' => ''], 'originUuid' => ['description' => 'Plaintext UUID', 'type' => 'string', 'required' => false, 'example' => '731D5F********DC3B', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identifier information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User identifier, which can be set to userOpenId or userUnionId.', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of User ID: '."\n" .'- OPEN_ID: The default user ID identity. '."\n" .'- UNION_ID: Organization-dimension user ID identity. This value is available only after an organization has been requested on the Tmall Genie Skill Application Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Tmall Genie, and each way corresponds to a different encoding type: '."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer link. '."\n" .'- SKILL_ID: Skill ID, used for the cloud-based link.', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type: '."\n" .'- When the encoding type is SKILL_ID, the value is the application\'s Skill ID. '."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. This field is required if IdType is set to UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device ID information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, set to deviceOpenId or deviceUnionId.', 'type' => 'string', 'required' => false, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of the device ID: '."\n" .'- OPEN_ID: Default device ID identifier '."\n" .'- UNION_ID: Device ID identifier at the organization dimension. This value is available only after an organization has been requested on the Tmall Genie Skill Application Open Platform.', 'type' => 'string', 'required' => false, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID for Tmall Genie, and each method corresponds to a different encoding type.'."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow.'."\n" .'- SKILL_ID: Skill ID, used in the cloud-based flow.', 'type' => 'string', 'required' => false, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type: '."\n" .'- When the encoding type is SKILL_ID, the value is the application\'s Skill ID. '."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => false, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RetCode' => ['title' => '', 'description' => 'Error code returned. A value of `0` indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'RetMsg' => ['title' => '', 'description' => 'Error message returned. No message is returned upon success.', 'type' => 'string', 'example' => '请求异常'], 'RetValue' => [ 'title' => '', 'description' => 'List of result objects returned.', 'type' => 'object', 'properties' => [ 'IsVip' => ['title' => '', 'description' => 'Indicates whether the user is an authorized member.', 'type' => 'boolean', 'example' => 'true'], 'VipExpireAt' => ['title' => '', 'description' => 'Millisecond-level UNIX timestamp.'."\n" ."\n" .'- If the user has activated membership, returns the membership expiration time.'."\n" .'- If the user has never activated membership, the value is always `0`.', 'type' => 'integer', 'format' => 'int64', 'example' => '1652340138347'], 'StrVipExpire' => ['title' => '', 'description' => 'Membership expiration time.', 'type' => 'string', 'example' => '2022-05-12 15:22:18'], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => '500', 'errorMessage' => '内部服务错误_xx', 'description' => ''], ['errorCode' => '10000', 'errorMessage' => '猫精用户已更换手机号,请重登', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RetCode\\": 0,\\n \\"RetMsg\\": \\"请求异常\\",\\n \\"RetValue\\": {\\n \\"IsVip\\": true,\\n \\"VipExpireAt\\": 1652340138347,\\n \\"StrVipExpire\\": \\"2022-05-12 15:22:18\\"\\n }\\n}","type":"json"}]', 'title' => 'Obtain CatGenie Membership Information', 'translator' => 'machine', 'changeSet' => [], ], 'GetBusAppConfig' => [ 'summary' => 'Obtain application configuration.', 'path' => '/v1.0/iap/app/config/get', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Business parameters', 'type' => 'object', 'properties' => [ 'UserId' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], 'SubjectId' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], 'DeviceId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'phone' => ['title' => '', 'description' => 'Phone number', 'type' => 'string', 'required' => false, 'example' => '136****1111'], 'originUuid' => ['title' => '', 'description' => 'Plaintext UUID', 'type' => 'string', 'required' => false, 'example' => '731D5F********DC3B'], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identity information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User Identifier (UserOpenId or UserUnionId)', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of User ID: OPEN_ID: default User ID identity; UNION_ID: organization-dimension User ID identity, available only after an organization has been requested on the Maojing Skill Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Maojing, and each method corresponds to a different encoding type: PACKAGE_NAME: APK package name, used for Android application customer ingest endpoints; SKILL_ID: skill ID, used for cloud-based ingest endpoints.', 'type' => 'string', 'required' => true, 'example' => 'SKILL_ID', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. If the encoding type is SKILL_ID, the value is the application\'s Skill ID. If the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device ID information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID (deviceOpenId or deviceUnionId)', 'type' => 'string', 'required' => false, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of device ID: OPEN_ID: default device ID; UNION_ID: organization-dimension device ID, available only after an organization has been requested on the Maojing Skill Application Open Platform.', 'type' => 'string', 'required' => false, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID for Maojing, and each method corresponds to a different encoding type: PACKAGE_NAME: APK package name, used for Android application customer journeys; SKILL_ID: skill ID, used for cloud-based journeys.', 'type' => 'string', 'required' => false, 'example' => 'SKILL_ID', 'enum' => ['SKILL_ID', 'PACKAGE_NAME'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. When the encoding type is SKILL_ID, the value is the application\'s Skill ID. When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => false, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RetCode' => ['title' => '', 'description' => 'Error code returned. 0 indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => ' 0'], 'RetMsg' => ['title' => '', 'description' => 'Error message returned. No message is returned if the operation succeeded.', 'type' => 'string', 'example' => ' 请求异常'], 'RetValue' => [ 'title' => '', 'description' => 'Configuration Information (VIP label, shopping guide bar, shopping guide pop-up)', 'type' => 'object', 'properties' => [ 'VipLabel' => ['title' => '', 'description' => 'VIP label transparency URL', 'type' => 'string', 'example' => 'https://******.com/design/******?imageId=xxxxx'], 'ShoppingBar' => ['title' => '', 'description' => 'Shopping guide bar URL', 'type' => 'string', 'example' => 'https://******.com/design/******?imageId=xxxxx'], 'ShoppingWindow' => ['title' => '', 'description' => 'Shopping guide pop-up URL', 'type' => 'string', 'example' => 'https://******.com/design/******?imageId=xxxxx'], 'Cashier' => ['description' => 'Cashier URL', 'title' => 'Cashier URL', 'type' => 'string', 'example' => 'https://******.com/*****/******?appId=xxxxx'], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 500 => [ ['errorCode' => 'AliGenie.Public.InternalError', 'errorMessage' => 'An internal error occurred.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RetCode\\": 0,\\n \\"RetMsg\\": \\"\\\\t请求异常\\",\\n \\"RetValue\\": {\\n \\"VipLabel\\": \\"https://******.com/design/******?imageId=xxxxx\\",\\n \\"ShoppingBar\\": \\"https://******.com/design/******?imageId=xxxxx\\",\\n \\"ShoppingWindow\\": \\"https://******.com/design/******?imageId=xxxxx\\",\\n \\"Cashier\\": \\"https://******.com/*****/******?appId=xxxxx\\"\\n }\\n}","type":"json"}]', 'title' => 'Obtain application configuration', 'translator' => 'machine', 'changeSet' => [], ], 'GetPhoneNumber' => [ 'summary' => 'Obtain the phone number bound to the user\'s Maojing device. You must first request this capability on the Maojing Skill Application Platform and obtain user authorization on the device side. ', 'path' => '/v1.0/iap/profile/phoneNumber', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_Token' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'UserInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identifier information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User Identifier (userOpenId or userUnionId)', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of User ID: '."\n" .'- OPEN_ID: Default User ID identifier '."\n" .'- UNION_ID: Organization-dimension User ID identifier, available only after an organization has been requested on the Maojing Skill Application Open Platform', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Maojing, and each method corresponds to a different encoding type: '."\n" .'- PACKAGE_NAME: APK package name, used for Android application customer journeys '."\n" .'- SKILL_ID: Skill ID, used for cloud-based journeys', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. When the encoding type is `SKILL_ID`, the value is the application\'s Skill ID. When the encoding type is `PACKAGE_NAME`, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is `UNION_ID`.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device identification information ', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID (deviceOpenId or deviceUnionId) ', 'type' => 'string', 'required' => true, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of device ID: '."\n" .'- OPEN_ID: Default device ID '."\n" .'- UNION_ID: Organization-dimension device ID, available only after an organization has been requested on the Maojing Skill Application Open Platform ', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the Maojing device ID, and each method corresponds to a different encoding type: '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow '."\n" .'- SKILL_ID: Skill ID, used in the cloud-based flow ', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. If the encoding type is `SKILL_ID`, the value is the application\'s Skill ID. If the encoding type is `PACKAGE_NAME`, the value is the packageName of the corresponding client app. ', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is `UNION_ID`. ', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Return Result ', 'type' => 'object', 'properties' => [ 'phoneNumber' => ['title' => '', 'description' => 'User\'s phone number ', 'type' => 'string', 'example' => '137****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'AliGenie.GetPhoneNumber.InvalidParameter.UserIdentity', 'errorMessage' => 'The user information does not exist.', 'description' => ''], ['errorCode' => 'AliGenie.GetPhoneNumber.BizError', 'errorMessage' => 'The user has no phoneNumber.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"phoneNumber\\": \\"137****\\"\\n}","type":"json"}]', 'title' => 'Obtain the phone number bound to the user\'s Maojing device ', 'translator' => 'machine', 'changeSet' => [], ], 'GetReminder' => [ 'summary' => 'User retrieves reminders created on Tmall Genie devices. ', 'path' => '/v1.0/iap/reminder/get', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_Token' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Input parameters for the service request.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The unique ID of the reminder.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '20****34'], 'UserId' => ['title' => 'Genie ID', 'type' => 'string', 'required' => true, 'example' => '12****56', 'description' => ''], 'DeviceId' => ['title' => 'Device ID', 'type' => 'string', 'required' => true, 'example' => 'BED****AAC', 'description' => ''], 'SubjectId' => ['title' => 'Application ID', 'type' => 'string', 'required' => true, 'example' => '20****01', 'description' => ''], 'IsDebug' => ['title' => '', 'description' => 'Indicates whether this invocation is for debug purposes.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'default' => 'false'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'List of user identity information.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User identifier, set to either userOpenId or userUnionId.', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of the User ID '."\n" .'- OPEN_ID: The default User ID identifier. '."\n" .'- UNION_ID: The organization-dimension User ID identifier. This value is available only after an organization has been requested on the Tmall Genie Skills Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Tmall Genie, and each method corresponds to a different encoding type.'."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer ingest endpoint.'."\n" .'- SKILL_ID: Skill ID, used for the cloud-based ingest endpoint.', 'type' => 'string', 'required' => true, 'example' => 'SKILL_ID', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. '."\n" ."\n" .'- When the encoding type is SKILLID, the value is the application\'s Skill ID. '."\n" .'- When the encoding type is PACKAGENAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required when **IdType** is set to **UNION_ID**.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'List of device identity information.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, set to either deviceOpenId or deviceUnionId.', 'type' => 'string', 'required' => true, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of device ID. '."\n" .'- OPEN_ID: The default device ID. '."\n" .'- UNION_ID: Organization-level device ID, available only after an organization has been requested on the Tmall Genie Skill Application Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID for Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer link. '."\n" .'- SKILL_ID: Skill ID, used for the cloud-based link.', 'type' => 'string', 'required' => true, 'example' => 'SKILL_ID', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type.'."\n" ."\n" .'- When the encoding type is SKILLID, the value is the application\'s Skill ID.'."\n" .'- When the encoding type is PACKAGENAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required when **IdType** is set to **UNION_ID**.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'List of response messages returned by invoking this API. ', 'type' => 'object', 'properties' => [ 'Success' => ['title' => '', 'description' => 'Indicates the result of the API call. true means succeeded, and false means failed.', 'type' => 'boolean', 'example' => 'true'], 'ErrorCode' => ['title' => '', 'description' => 'Error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '400'], 'ErrorMsg' => ['title' => '', 'description' => 'Detailed description of the error message. ', 'type' => 'string', 'example' => '参数不合法。'], 'Model' => [ 'title' => '', 'description' => 'Reminder information. ', 'type' => 'object', 'properties' => [ 'RemindResponses' => [ 'title' => '', 'description' => 'List of reminder information returned by invoking this API. ', 'type' => 'array', 'items' => [ 'description' => 'List of information entries. ', 'type' => 'object', 'properties' => [ 'RemindId' => ['title' => '', 'description' => 'The ID of the reminder message.', 'type' => 'integer', 'format' => 'int64', 'example' => '20*****1'], 'RepeatCount' => ['title' => '', 'description' => 'The number of times the reminder repeats.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'ActionTopic' => ['title' => '', 'description' => 'The topic of the action executed by the reminder.', 'type' => 'string', 'example' => '宝宝快去刷牙'], 'DayDesc' => ['title' => '', 'description' => 'Description of the trigger condition for the reminder.', 'type' => 'string', 'example' => '每天'], 'RemindTime' => ['title' => '', 'description' => 'Next reminder time. ', 'type' => 'string', 'example' => '1629850800000'], 'Week' => ['title' => '', 'description' => 'The day of the week on which the reminder is triggered, indicating which day of the week the reminder occurs.', 'type' => 'string', 'example' => '周三'], 'RecurrenceRule' => [ 'title' => '', 'description' => 'Schedule information list, which contains detailed timing information for the reminder. ', 'type' => 'object', 'properties' => [ 'Freq' => ['title' => '', 'description' => 'The loop epoch of the reminder.', 'type' => 'string', 'example' => 'WEEKLY'], 'Year' => ['title' => '', 'description' => 'The year when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '2021'], 'Month' => ['title' => '', 'description' => 'Month in which the reminder is triggered. ', 'type' => 'integer', 'format' => 'int32', 'example' => '8'], 'Day' => ['title' => '', 'description' => 'The date on which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '27'], 'Hour' => ['title' => '', 'description' => 'The hour of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '18'], 'Minute' => ['title' => '', 'description' => 'The minute when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'Second' => ['title' => '', 'description' => 'The second of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'DaysOfMonth' => [ 'title' => '', 'description' => 'Information for monthly reminders.', 'type' => 'array', 'items' => ['description' => 'The day of the month on which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'example' => '', ], 'DaysOfWeek' => [ 'title' => '', 'description' => 'Information for weekly reminders.', 'type' => 'array', 'items' => ['description' => 'The day(s) of the week on which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'example' => '', ], 'StartDateTime' => ['title' => '', 'description' => 'The start time when the reminder becomes effective.', 'type' => 'string', 'format' => 'int64', 'example' => '1630054800000'], 'EndDateTime' => ['title' => '', 'description' => 'The end time when the reminder becomes inactive.', 'type' => 'string', 'format' => 'int64', 'example' => '1661598000000'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"ErrorCode\\": 400,\\n \\"ErrorMsg\\": \\"参数不合法。\\",\\n \\"Model\\": {\\n \\"RemindResponses\\": [\\n {\\n \\"RemindId\\": 0,\\n \\"RepeatCount\\": 1,\\n \\"ActionTopic\\": \\"宝宝快去刷牙\\",\\n \\"DayDesc\\": \\"每天\\",\\n \\"RemindTime\\": \\"1629850800000\\",\\n \\"Week\\": \\"周三\\",\\n \\"RecurrenceRule\\": {\\n \\"Freq\\": \\"WEEKLY\\",\\n \\"Year\\": 2021,\\n \\"Month\\": 8,\\n \\"Day\\": 27,\\n \\"Hour\\": 18,\\n \\"Minute\\": 0,\\n \\"Second\\": 0,\\n \\"DaysOfMonth\\": [\\n 1\\n ],\\n \\"DaysOfWeek\\": [\\n 1\\n ],\\n \\"StartDateTime\\": \\"1630054800000\\",\\n \\"EndDateTime\\": \\"1661598000000\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Retrieve Reminders', 'translator' => 'machine', 'changeSet' => [], ], 'ListReminders' => [ 'summary' => 'The User batch retrieves reminders created on Tmall Genie devices. ', 'path' => '/v1.0/iap/reminder/list', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_Token' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Input parameters for the service request.', 'type' => 'object', 'properties' => [ 'UserId' => ['title' => 'Genie ID', 'type' => 'string', 'required' => true, 'example' => '12****56', 'description' => ''], 'DeviceId' => ['title' => 'Device ID', 'type' => 'string', 'required' => true, 'example' => 'BED****AAC', 'description' => ''], 'SubjectId' => ['title' => 'Application ID', 'type' => 'string', 'required' => true, 'example' => '20****01', 'description' => ''], 'IsDebug' => ['title' => '', 'description' => 'Indicates whether this invocation is for debug purposes.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'default' => 'false'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'List of user identity information.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User Identifier, either userOpenId or userUnionId.', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of the User ID:'."\n" .' - OPEN_ID: The default User ID identity.'."\n" .' - UNION_ID: The User ID identity at the organization dimension. This value is available only after an organization has been requested on the Tmall Genie Skill Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer ingest endpoint. '."\n" .'- SKILL_ID: Skill ID, used for the cloud-side ingest endpoint.', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type:'."\n" .' - When the encoding type is SKILLID, the value is the application\'s Skill ID.'."\n" .' - When the encoding type is PACKAGENAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. This parameter is required when **IdType** is configured as **UNION_ID**.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'List of device identity information.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, either deviceOpenId or deviceUnionId.', 'type' => 'string', 'required' => true, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of the device ID. '."\n" .'- OPEN_ID: The default device ID. '."\n" .'- UNION_ID: Organization-level device ID. This value is available only after an organization has been requested on the Tmall Genie Skill Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID for Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow. '."\n" .'- SKILL_ID: Skill ID, used in the cloud-based flow.', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type.'."\n" ."\n" .'- When the encoding type is SKILLID, the value is the application\'s Skill ID. '."\n" .'- When the encoding type is PACKAGENAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required when **IdType** is set to **UNION_ID**.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The list of return information from invoking this API. ', 'type' => 'object', 'properties' => [ 'Success' => ['title' => '', 'description' => 'Indicates the result of the API call. true indicates success, and false indicates failure.', 'type' => 'boolean', 'example' => 'true'], 'ErrorCode' => ['title' => '', 'description' => 'Error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '400'], 'ErrorMsg' => ['title' => '', 'description' => 'Detailed description of the error message. ', 'type' => 'string', 'example' => '参数不合法。'], 'Model' => [ 'title' => '', 'description' => 'Reminder information. ', 'type' => 'object', 'properties' => [ 'RemindResponses' => [ 'title' => '', 'description' => 'The list of reminder information returned by invoking this API. ', 'type' => 'array', 'items' => [ 'description' => 'List of information. ', 'type' => 'object', 'properties' => [ 'RemindId' => ['title' => '', 'description' => 'The ID of the reminder message.', 'type' => 'integer', 'format' => 'int64', 'example' => '20****1'], 'RepeatCount' => ['title' => '', 'description' => 'The number of times the reminder repeats.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'ActionTopic' => ['title' => '', 'description' => 'The topic of the action executed by the reminder.', 'type' => 'string', 'example' => '宝宝快去刷牙'], 'DayDesc' => ['title' => '', 'description' => 'Description of the trigger condition for the reminder.', 'type' => 'string', 'example' => '每天'], 'RemindTime' => ['title' => '', 'description' => 'The next reminder time. ', 'type' => 'string', 'example' => '1629850800000'], 'Week' => ['title' => '', 'description' => 'The day of the week on which the reminder is triggered weekly.', 'type' => 'string', 'example' => '周三'], 'RecurrenceRule' => [ 'title' => '', 'description' => 'The schedule information list, which contains detailed timing information for the reminder. ', 'type' => 'object', 'properties' => [ 'Freq' => ['title' => '', 'description' => 'The recurrence epoch of the reminder.', 'type' => 'string', 'example' => 'WEEKLY'], 'Year' => ['title' => '', 'description' => 'The year when the reminder is triggered. ', 'type' => 'integer', 'format' => 'int32', 'example' => '2021'], 'Month' => ['title' => '', 'description' => 'The month when the reminder is triggered. ', 'type' => 'integer', 'format' => 'int32', 'example' => '8'], 'Day' => ['title' => '', 'description' => 'The date on which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '27'], 'Hour' => ['title' => '', 'description' => 'The hour of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '18'], 'Minute' => ['title' => '', 'description' => 'The minute of the hour when the reminder is triggered. ', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'Second' => ['title' => '', 'description' => 'The second of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'DaysOfMonth' => [ 'title' => '', 'description' => 'Information for monthly reminders.', 'type' => 'array', 'items' => ['description' => 'The day of the month on which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'example' => '', ], 'DaysOfWeek' => [ 'title' => '', 'description' => 'Information for weekly reminders. ', 'type' => 'array', 'items' => ['description' => 'The day(s) of the week on which the reminder is triggered. ', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'example' => '', ], 'StartDateTime' => ['title' => '', 'description' => 'The start time when the reminder becomes effective. ', 'type' => 'string', 'format' => 'int64', 'example' => '1630054800000'], 'EndDateTime' => ['title' => '', 'description' => 'The end time when the reminder becomes inactive.', 'type' => 'string', 'format' => 'int64', 'example' => '1661598000000'], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"ErrorCode\\": 400,\\n \\"ErrorMsg\\": \\"参数不合法。\\",\\n \\"Model\\": {\\n \\"RemindResponses\\": [\\n {\\n \\"RemindId\\": 0,\\n \\"RepeatCount\\": 1,\\n \\"ActionTopic\\": \\"宝宝快去刷牙\\",\\n \\"DayDesc\\": \\"每天\\",\\n \\"RemindTime\\": \\"1629850800000\\",\\n \\"Week\\": \\"周三\\",\\n \\"RecurrenceRule\\": {\\n \\"Freq\\": \\"WEEKLY\\",\\n \\"Year\\": 2021,\\n \\"Month\\": 8,\\n \\"Day\\": 27,\\n \\"Hour\\": 18,\\n \\"Minute\\": 0,\\n \\"Second\\": 0,\\n \\"DaysOfMonth\\": [\\n 1\\n ],\\n \\"DaysOfWeek\\": [\\n 1\\n ],\\n \\"StartDateTime\\": \\"1630054800000\\",\\n \\"EndDateTime\\": \\"1661598000000\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Retrieve Reminder List', 'translator' => 'machine', 'changeSet' => [], ], 'PullCashier' => [ 'summary' => 'The user launches the checkout page on a Tmall Genie device. ', 'path' => '/v1.0/iap/pull/cashier/', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'Business parameters', 'type' => 'object', 'properties' => [ 'SubjectId' => ['title' => 'Application ID', 'type' => 'string', 'required' => true, 'description' => '', 'example' => ''], 'DeviceId' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], 'originUuid' => ['description' => 'Plaintext UUID', 'type' => 'string', 'required' => false, 'example' => '731D5F********DC3B', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identifier information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User identifier, set to either userOpenId or userUnionId.', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of the User ID.'."\n" ."\n" .'- OPEN_ID: The default User ID identity.'."\n" .'- UNION_ID: Organization-dimension User ID identity. This value is available only after an organization has been requested on the Tmall Genie Skill Application Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier from Tmall Genie, and each method corresponds to a different encoding type.'."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer ingest endpoint.'."\n" .'- SKILL_ID: Skill ID, used for the cloud-based ingest endpoint.', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type.'."\n" ."\n" .'- When the encoding type is SKILL_ID, the value is the application\'s Skill ID.'."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'device ID information ', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, set to deviceOpenId or deviceUnionId. ', 'type' => 'string', 'required' => false, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of device ID '."\n" .'- OPEN_ID: The default device ID. '."\n" .'- UNION_ID: Organization-level device ID. This value is available only after an organization has been requested on the Tmall Genie skill application Open Platform. ', 'type' => 'string', 'required' => false, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID of Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow. '."\n" .'- SKILL_ID: Skill ID, used in the cloud-based flow. ', 'type' => 'string', 'required' => false, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type.'."\n" ."\n" .'- When the encoding type is SKILL_ID, the value is the Skill ID of the application.'."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => false, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID. ', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RetCode' => ['title' => '', 'description' => 'The returned error code. `0` indicates success. ', 'type' => 'integer', 'format' => 'int32', 'example' => '0'], 'RetMsg' => ['title' => '', 'description' => 'The returned error message. No message is returned upon success. ', 'type' => 'string', 'example' => '请求成功'], 'RetValue' => ['description' => 'The result of pulling up the checkout page. true indicates success, and false indicates failure. ', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => '500', 'errorMessage' => '内部服务错误_xxx', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RetCode\\": 0,\\n \\"RetMsg\\": \\"请求成功\\",\\n \\"RetValue\\": true\\n}","type":"json"}]', 'title' => 'Launch Checkout Page ', 'translator' => 'machine', 'changeSet' => [], ], 'PushNotifications' => [ 'summary' => 'Execute the message push feature of Tmall Genie. You must first request the capability and configure the message template on the Tmall Genie Skill Application Platform.', 'path' => '/v1.0/iap/notifications', 'methods' => ['put'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'NotificationUnicastRequest', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Input parameter object for message push.', 'type' => 'object', 'properties' => [ 'SendTarget' => [ 'title' => '', 'description' => 'The target information for message push.', 'type' => 'object', 'properties' => [ 'TargetType' => [ 'title' => '', 'description' => 'The type of the Push Target, indicating the type when obtaining the corresponding device or User Identifier: '."\n" .'- `DEVICE_UNION_ID`: device unionId '."\n" .'- `DEVICE_OPEN_ID`: device openId '."\n" .'- `USER_UNION_ID`: user unionId '."\n" .'- `USER_OPEN_ID`: user openId', 'type' => 'string', 'required' => false, 'example' => 'DEVICE_OPEN_ID', 'enum' => ['DEVICE_UNION_ID', 'DEVICE_OPEN_ID', 'USER_UNION_ID', 'USER_OPEN_ID'], ], 'TargetIdentity' => ['title' => '', 'description' => 'The identity value corresponding to the Push Target Type.', 'type' => 'string', 'required' => false, 'example' => '2VpiDQ6aMjxz******Eo7r6e08oIVZ3fKrm5TyEfY='], ], 'required' => true, 'example' => '', ], 'MessageTemplateId' => ['title' => '', 'description' => 'Message template ID obtained when applying for a message template on the Tmall Genie Application Platform.', 'type' => 'string', 'required' => true, 'example' => '2iU81*****G9elJ'], 'PlaceHolder' => [ 'title' => '', 'description' => 'Placeholder information. For example, for the template ["Hello, {nick}!"], this could be {"nick":"Sweetie"}. Additionally, within the placeholder parameters, you can append parameters to the application launch link to support hyperlinking to a specific address, such as: `{"nick":"Sweetie","_URL_SUFFIX_":"xxx"}`. The hyperlink address in the message pop-up will then be: application launch link + `${_URL_SUFFIX_}`. This feature only works for applications that have configured a launch link.', 'type' => 'object', 'required' => false, 'additionalProperties' => ['type' => 'string', 'example' => '{"nick":"小甜甜"}', 'description' => 'Placeholder information. For example, for the template ["Hello, {nick}!"], this could be {"nick":"Sweetie"}.', 'title' => ''], 'example' => '{"nick":"张三"}', ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the Tmall Genie device ID, and each method corresponds to a different encoding type: '."\n" .'- PACKAGE_NAME: APK package name '."\n" .'- SKILL_ID: Skill ID', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type. '."\n" .'- When the encoding type is SKILL_ID, the value is the skill ID obtained from the webhook service. '."\n" .'- When the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => 'apk包名'], 'OrganizationId' => ['title' => '', 'description' => 'Organization Identifier. This parameter is required only when the push type is `XX_UNION_XX`. If you obtain CatGenie device or user identifiers through multiple channels and need interoperability among them, you must request an organization from the platform. After approval, the platform will assign an organization identifier.', 'type' => 'string', 'required' => false, 'example' => '2'], 'IsDebug' => ['title' => '', 'description' => 'Debug flag. When the skill application is in the debug phase, setting this flag determines whether the retrieved skill application information is from the editing state or the online state.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'false'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'TenantInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Identity information.', 'type' => 'object', 'properties' => [ 'SubjectId' => ['title' => 'The application ID obtained after creating an application in the Developer Platform under Skill Applications.', 'type' => 'string', 'example' => '20*****01', 'description' => ''], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter.PlaceHolder', 'errorMessage' => 'The template placeholder information is missing.', 'description' => ''], ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter.SendTarget', 'errorMessage' => 'Failed to identify message target.', 'description' => ''], ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter.MessageTemplateId', 'errorMessage' => 'The template information is invalid.', 'description' => ''], ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter', 'errorMessage' => 'The request parameter is invalid.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.Application.Invalid', 'errorMessage' => 'The AliGenie app info is invalid.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.Application.Status', 'errorMessage' => 'The AliGenie app has not been released.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.Application.Url', 'errorMessage' => 'The AliGenie app awaken url is missing.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.InvalidParameter.DeviceInfo', 'errorMessage' => 'Failed to identify device.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.InvalidParameter.UserInfo', 'errorMessage' => 'Failed to identify user.', 'description' => ''], ], 500 => [ ['errorCode' => 'AliGenie.Public.InternalError', 'errorMessage' => 'An internal error occurred.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]', 'title' => 'Message Push_Custom Device Version', 'translator' => 'machine', 'changeSet' => [], ], 'SendNotifications' => [ 'summary' => 'Execute the message push feature of Tmall Genie. You must first request the capability and configure the message template in the Tmall Genie Skill Application Platform.', 'path' => '/v1.0/iap/general/notifications', 'methods' => ['put'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'NotificationUnicastRequest', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Input parameter object for message push.', 'type' => 'object', 'properties' => [ 'SendTarget' => [ 'title' => '', 'description' => 'Target information for message push.', 'type' => 'object', 'properties' => [ 'DeviceId' => ['title' => 'Device ID', 'type' => 'string', 'required' => true, 'description' => '', 'example' => ''], ], 'required' => true, 'example' => '', ], 'MessageTemplateId' => ['title' => '', 'description' => 'Message template ID obtained when requesting a message template in the Tmall Genie Application Platform.', 'type' => 'string', 'required' => true, 'example' => '2iU81*****G9elJ'], 'PlaceHolder' => [ 'title' => '', 'description' => 'Placeholder information. For example, for the template ["Hello, {nick}!"], this can be: {"nick":"Xiao Tian Tian"}. Additionally, within the placeholder parameters, you can append parameters to the application launch link to support hyperlinking to a specific address, such as: `{"nick":"Xiao Tian Tian","_URL_SUFFIX_":"xxx"}`. The hyperlink address in the message pop-up will then be: application launch link + `${_URL_SUFFIX_}`. This feature is only effective for applications that have configured a launch link.', 'type' => 'object', 'required' => false, 'additionalProperties' => ['type' => 'string', 'description' => 'Placeholder information. For example, for the template ["Hello, {nick}!"], this can be: {"nick":"Xiao Tian Tian"}.', 'example' => '{"nick":"小甜甜"}', 'title' => ''], 'example' => '{"nick":"张三"}', ], 'IsDebug' => ['title' => '', 'description' => 'Debug flag. When the skill application is in the debugging phase, setting this flag determines whether the retrieved skill application information is from the editing state or the online state.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'TenantInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Identity information.', 'type' => 'object', 'properties' => [ 'SubjectId' => ['title' => 'Maojing application identifier', 'type' => 'string', 'required' => true, 'example' => '20********01', 'description' => ''], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User Identifier information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User Identifier (userOpenId or userUnionId)', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of the User ID: '."\n" .'- OPEN_ID: Default User ID identifier '."\n" .'- UNION_ID: Organization-dimension User ID identifier, available only after an organization has been requested on the Maojing Skill Application Open Platform', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the Maojing User Identifier, and each method corresponds to a different encoding type: '."\n" .'- PACKAGE_NAME: APK package name, used for the Android application customer link '."\n" .'- SKILL_ID: Skill ID, used for the cloud-based link', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. If the encoding type is SKILL_ID, the value is the application\'s Skill ID. If the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device identity information ', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID (deviceOpenId or deviceUnionId) ', 'type' => 'string', 'required' => true, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of device ID: '."\n" .' - OPEN_ID: Default device ID '."\n" .' - UNION_ID: Organization-dimension device ID, available only after an organization has been requested on the Maojing Skill Application Open Platform ', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID for Maojing, and each method corresponds to a different encoding type: '."\n" .' - PACKAGE_NAME: APK package name, used for the Android application customer link '."\n" .' - SKILL_ID: Skill ID, used for the cloud link ', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. If the encoding type is SKILL_ID, the value is the application\'s Skill ID. If the encoding type is PACKAGE_NAME, the value is the packageName of the corresponding client app. ', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required if IdType is UNION_ID. ', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter.PlaceHolder', 'errorMessage' => 'The template placeholder information is missing.', 'description' => ''], ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter.SendTarget', 'errorMessage' => 'Failed to identify message target.', 'description' => ''], ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter.MessageTemplateId', 'errorMessage' => 'The template information is invalid.', 'description' => ''], ['errorCode' => 'AliGenie.PushNotifications.InvalidParameter', 'errorMessage' => 'The request parameter is invalid.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.Application.Invalid', 'errorMessage' => 'The AliGenie app info is invalid.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.Application.Status', 'errorMessage' => 'The AliGenie app has not been released.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.Application.Url', 'errorMessage' => 'The AliGenie app awaken url is missing.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.InvalidParameter.DeviceInfo', 'errorMessage' => 'Failed to identify device.', 'description' => ''], ['errorCode' => 'AliGenie.Notifications.InvalidParameter.UserInfo', 'errorMessage' => 'Failed to identify user.', 'description' => ''], ], 500 => [ ['errorCode' => 'AliGenie.Public.InternalError', 'errorMessage' => 'An internal error occurred.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]', 'title' => 'Message Push_General-purpose Edition', 'translator' => 'machine', 'changeSet' => [], ], 'UpdateReminder' => [ 'summary' => 'The user updates a reminder created on a Tmall Genie device. ', 'path' => '/v1.0/iap/reminder/update', 'methods' => ['put'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_Token' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The input parameters for this service request.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The ID of the reminder to update.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '20***34'], 'Content' => ['title' => '', 'description' => 'The detailed content of the reminder message.', 'type' => 'string', 'required' => true, 'example' => '更新提醒内容'], 'SubjectId' => ['title' => 'Application ID', 'type' => 'string', 'required' => true, 'example' => '20****01', 'description' => ''], 'UserId' => ['title' => 'Genie ID', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '12****56', 'description' => ''], 'DeviceId' => ['title' => 'Device ID', 'type' => 'string', 'required' => true, 'example' => 'BED****AAC', 'description' => ''], 'IsDebug' => ['title' => '', 'description' => 'Indicates whether this invocation is for debugging.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'default' => 'false'], 'RecurrenceRule' => [ 'title' => '', 'description' => 'Scheduling information for the reminder.', 'type' => 'object', 'properties' => [ 'Year' => ['title' => '', 'description' => 'The year of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2021'], 'Month' => ['title' => '', 'description' => 'The month in which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], 'Day' => ['title' => '', 'description' => 'The date on which the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '25'], 'Hour' => ['title' => '', 'description' => 'The hour of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '12'], 'Minute' => ['title' => '', 'description' => 'The minute of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], 'Second' => ['title' => '', 'description' => 'The second of the time when the reminder is triggered.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3'], 'Freq' => [ 'title' => '', 'description' => 'Recurrence type:'."\n" ."\n" .'- ONCE: One-time'."\n" .'- DAILY: Daily'."\n" .'- WEEKLY: Weekly'."\n" .'- MONTHLY: Monthly', 'type' => 'string', 'required' => true, 'example' => 'ONCE', 'enum' => ['ONCE', 'DAILY', 'WEEKLY', 'MONTHLY'], ], 'StartDateTime' => ['title' => '', 'description' => 'The effective start time of the reminder, in milliseconds as a UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1635134400000'], 'EndDateTime' => ['title' => '', 'description' => 'The expiration time when the reminder ends, in milliseconds as a UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1635134700000'], 'DaysOfMonth' => [ 'title' => '', 'description' => 'Configure monthly reminders, specifying on which day(s) of each month the reminder is triggered.', 'type' => 'array', 'items' => ['description' => 'Set the specific day of the month for the reminder. Valid values range from 1 to 31.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'required' => false, 'example' => '', ], 'DaysOfWeek' => [ 'title' => '', 'description' => 'Configure weekly reminders, indicating on which days of the week the reminder is triggered.', 'type' => 'array', 'items' => ['description' => 'Specific days of the week for weekly reminders. The valid values are 1–7.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'required' => false, 'example' => '', ], ], 'required' => true, 'example' => '', ], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'User identifier information.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'User identifier, set to either userOpenId or userUnionId.', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => 'Type of User ID '."\n" .'- OPEN_ID: The default User ID identifier. '."\n" .'- UNION_ID: The organization-dimension User ID identifier. This value is available only after an organization has been requested on the Tmall Genie Skill Application Open Platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the user identifier for Maojing, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer link. '."\n" .'- SKILL_ID: Skill ID, used in the cloud link.', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'Value corresponding to the encoding type. '."\n" ."\n" .'- When the encoding type is set to SKILL_ID, the value is the application\'s Skill ID. '."\n" .'- When the encoding type is set to PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. This parameter is required when **IdType** is set to **UNION_ID**.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device identity information. ', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, set to either deviceOpenId or deviceUnionId. ', 'type' => 'string', 'required' => true, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of the device ID. '."\n" .'- OPEN_ID: Default device ID. '."\n" .'- UNION_ID: Organization-level device ID. This value is available only after an organization has been registered on the Tmall Genie skill application platform.', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device identity for Tmall Genie, and each method corresponds to a different encoding type. '."\n" .'- PACKAGE_NAME: APK package name, used in the Android application customer flow. '."\n" .'- SKILL_ID: Skill ID, used in the cloud-based flow. ', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type.'."\n" ."\n" .'- When the encoding type is set to SKILL_ID, the value is the application\'s Skill ID.'."\n" .'- When the encoding type is set to PACKAGE_NAME, the value is the packageName of the corresponding client app.', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. This parameter is required when **IdType** is set to **UNION_ID**. ', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'Success' => ['title' => '', 'description' => 'Service success indicator ', 'type' => 'boolean', 'example' => 'true'], 'ErrorCode' => ['title' => '', 'description' => 'Error code ', 'type' => 'integer', 'format' => 'int32', 'example' => '400'], 'ErrorMsg' => ['title' => '', 'description' => 'Error message ', 'type' => 'string', 'example' => '不能设置过去的时间。'], 'Model' => ['title' => '', 'description' => 'ID of the updated reminder ', 'type' => 'integer', 'format' => 'int64', 'example' => '20****1'], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"ErrorCode\\": 400,\\n \\"ErrorMsg\\": \\"不能设置过去的时间。\\",\\n \\"Model\\": 0\\n}","type":"json"}]', 'title' => 'Update Reminder ', 'translator' => 'machine', 'changeSet' => [], ], 'VideoAppReport' => [ 'summary' => 'Used by developers to report membership information in scenarios involving membership collaboration with CatGenie.', 'path' => '/v1.0/iap/vip/use/video/report', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'Payload', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => '业务参数', 'type' => 'object', 'properties' => [ 'DeviceId' => ['title' => '设备di', 'type' => 'string', 'required' => false, 'description' => '', 'example' => ''], 'isLogin' => ['description' => '会员是否登录。', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''], 'isVip' => ['description' => '该账号是否为会员。', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''], 'startTime' => ['description' => '会员的开始时间。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1652337963097', 'title' => ''], 'endTime' => ['description' => '会员的结束时间。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1652337963097', 'title' => ''], 'loginNick' => ['description' => '账号的昵称。', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], 'phone' => ['description' => '账户的手机号码。', 'type' => 'string', 'required' => false, 'example' => '188*777', 'title' => ''], 'pkgName' => ['description' => '应用包名。', 'type' => 'string', 'required' => true, 'example' => 'com.***.test', 'title' => ''], 'originUuid' => ['description' => '明文uuid', 'type' => 'string', 'required' => false, 'example' => '731D5F********DC3B', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'UserInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => '用户标识信息', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => '用户标识,设置为userOpenId或userUnionId。', 'type' => 'string', 'required' => true, 'example' => 'HOFF****my7Iw='], 'IdType' => [ 'title' => '', 'description' => '用户Id的类型 '."\n" .'- OPEN_ID:默认的用户ID标识。'."\n" .'- UNION_ID: 组织维度的用户ID标识,在天猫精灵技能应用开放平台申请过组织后才会有该值。', 'type' => 'string', 'required' => true, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => '编码类型,获取天猫精灵的用户标识的途径有多种,不同途径对应不同的编码类型。'."\n" .'- PACKAGE_NAME:apk包名,Android应用客户链路的编码类型。'."\n" .'- SKILL_ID:技能ID,云端链路的编码类型。', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => '编码类型对应的值'."\n" ."\n" .'- 编码类型是SKILL_ID时,其值为应用的Skill ID。'."\n" .'- 编码类型是PACKAGE_NAME时,其值为对应客户端App的packageName。', 'type' => 'string', 'required' => true, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => '组织ID,如果IdType为UNION_ID时必填。', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'DeviceInfo', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Device identity information', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'Device ID, set to either deviceOpenId or deviceUnionId.', 'type' => 'string', 'required' => false, 'example' => 'DAFE****ce3ej='], 'IdType' => [ 'title' => '', 'description' => 'Type of the device ID.'."\n" .'- OPEN_ID: The default device ID.'."\n" .'- UNION_ID: Organization-level device ID. This value is available only after an organization has been registered on the Tmall Genie Skill Application Open Platform.', 'type' => 'string', 'required' => false, 'example' => 'OPEN_ID', 'enum' => ['OPEN_ID', 'UNION_ID'], ], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the device ID from Tmall Genie, and each method corresponds to a different encoding type.'."\n" .'- PACKAGE_NAME: APK package name, used for Android application customer flows.'."\n" .'- SKILL_ID: Skill ID, used for cloud-based flows.', 'type' => 'string', 'required' => false, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => '编码类型对应的值'."\n" ."\n" .'- 编码类型是SKILL_ID时,其值为应用的Skill ID。'."\n" .'- 编码类型是PACKAGE_NAME时,其值为对应客户端App的packageName。', 'type' => 'string', 'required' => false, 'example' => '12**45'], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. Required when IdType is UNION_ID.', 'type' => 'string', 'required' => false, 'example' => '1**2'], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RetCode' => ['description' => 'The returned error code. `0` indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'RetMsg' => ['description' => 'The returned error message. This field is not returned if the operation succeeded.', 'type' => 'string', 'example' => '请求异常', 'title' => ''], 'RetValue' => ['description' => 'The returned invocation result.'."\n" ."\n" .'- true indicates success.'."\n" .'- false indicates failure.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => '500', 'errorMessage' => '内部服务错误_xxx', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RetCode\\": 0,\\n \\"RetMsg\\": \\"请求异常\\",\\n \\"RetValue\\": true\\n}","type":"json"}]', 'title' => 'Report Third-party Membership Information', 'changeSet' => [], 'translator' => 'machine', ], 'WakeUpApp' => [ 'summary' => 'On a smart speaker with a screen, proactively launch the MeowGenie screen-display application. You must first request this capability on the MeowGenie skill application platform.', 'path' => '/v1.0/iap/wakeup', 'methods' => ['put'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AliGenie_Auth_SPI' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [], 'parameters' => [ [ 'name' => 'body', 'in' => 'body', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Input parameters for the service request.', 'type' => 'object', 'properties' => [ 'Path' => ['title' => '', 'description' => 'The path to launch the application, similar to the Link you enter in the skill application console.', 'type' => 'string', 'required' => true, 'example' => '应用拉起路径'], 'SubjectId' => ['title' => 'CatGenie application ID ', 'type' => 'string', 'required' => true, 'example' => '2021****001', 'description' => ''], 'TargetInfo' => [ 'title' => '', 'description' => 'Device Information of the target to be launched.', 'type' => 'object', 'properties' => [ 'TargetType' => [ 'title' => '', 'description' => 'Push Target Type, which indicates the type of the obtained device identity: '."\n" .'- `DEVICE_UNION_ID`: Device unionId '."\n" .'- `DEVICE_OPEN_ID`: Device openId', 'type' => 'string', 'required' => true, 'example' => 'DEVICE_OPEN_ID', 'enum' => ['DEVICE_UNION_ID', 'DEVICE_OPEN_ID'], ], 'TargetIdentity' => ['title' => '', 'description' => 'The identity value corresponding to the Push Target Type.', 'type' => 'string', 'required' => true, 'example' => '2VpiDQ6aMjxz******Eo7r6e08oIVZ3fKrm5TyEfY='], 'OrganizationId' => ['title' => '', 'description' => 'Organization ID. This is required only when the push type is `XX_UNION_XX`. If you have multiple methods to obtain MeowGenie device IDs and need interoperability among them, you must request an organization from the platform. After approval, the platform will assign an organization ID.', 'type' => 'string', 'required' => false, 'example' => '11'], 'EncodeType' => [ 'title' => '', 'description' => 'Encoding type. There are multiple ways to obtain the MeowGenie device ID, and each method corresponds to a different encoding type: '."\n" .'- PACKAGE_NAME: APK package name '."\n" .'- SKILL_ID: Skill ID', 'type' => 'string', 'required' => true, 'example' => 'PACKAGE_NAME', 'enum' => ['PACKAGE_NAME', 'SKILL_ID'], ], 'EncodeKey' => ['title' => '', 'description' => 'The value corresponding to the encoding type. '."\n" .'- When the encoding type is SKILLID, the value is the skill ID obtained from the webhook service. '."\n" .'- When the encoding type is PACKAGENAME, the value is the packageName of the corresponding client application. ', 'type' => 'string', 'required' => true, 'example' => 'apk包名'], ], 'required' => true, 'example' => '', ], 'IsDebug' => ['title' => '', 'description' => 'The debug identity. When the skill application is in the debugging phase, this setting determines whether the retrieved skill application information is from the editing state or the online state. ', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'false'], ], 'required' => true, 'example' => '', ], ], ], 'responses' => [ 200 => [], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'AliGenie.WakeUpApp.Device.Offline', 'errorMessage' => 'The Target Device is not online.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.GenieAppId', 'errorMessage' => 'The AliGenie app does not release.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.Body', 'errorMessage' => 'You must specify request body.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.TargetInfo', 'errorMessage' => 'You must specify TargetInfo.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.Path', 'errorMessage' => 'You must specify Path.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.TargetIdentity', 'errorMessage' => 'You must specify TargetIdentity.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.EncodeKey', 'errorMessage' => 'You must specify EncodeKey.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.EncodeType', 'errorMessage' => 'You must specify EncodeType.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.TargetType', 'errorMessage' => 'You must specify TargetType.', 'description' => ''], ['errorCode' => 'AliGenie.WakeUpApp.InvalidParameter.OrganizationId', 'errorMessage' => 'You must specify OrganizationId.', 'description' => ''], ], 500 => [ ['errorCode' => 'AliGenie.Public.InternalError', 'errorMessage' => 'An internal error occurred.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]', 'title' => 'Proactively Launch Screen-Display Application', 'translator' => 'machine', 'changeSet' => [], ], ], 'endpoints' => [], 'errorCodes' => [ ['code' => 'AliGenie.GetDeviceIdByIdentity.InvalidParameter', 'message' => 'The request parameter is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.GetPhoneNumber.BizError', 'message' => 'The user has no phoneNumber.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.GetPhoneNumber.InvalidParameter.UserIdentity', 'message' => 'The user information does not exist.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.ListDeviceIdByIdentity.InvalidParameter', 'message' => 'The request parameter is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Notifications.Application.Invalid', 'message' => 'The AliGenie app info is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Notifications.Application.Status', 'message' => 'The AliGenie app has not been released.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Notifications.Application.Url', 'message' => 'The AliGenie app awaken url is missing.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Notifications.InvalidParameter.DeviceInfo', 'message' => 'The device not bind user.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Notifications.InvalidParameter.DeviceInfo', 'message' => 'Failed to identify device.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Notifications.InvalidParameter.UserInfo', 'message' => 'Failed to identify user.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Public.InternalError', 'message' => 'An internal error occurred.', 'http_code' => 500, 'description' => ''], ['code' => 'AliGenie.Public.InvalidParameter', 'message' => 'The request parameter is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.PushNotifications.InvalidParameter', 'message' => 'The request parameter is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.PushNotifications.InvalidParameter.MessageTemplateId', 'message' => 'The template information is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.PushNotifications.InvalidParameter.MessageTemplateId', 'message' => 'The template is unavailable.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.PushNotifications.InvalidParameter.MessageTemplateId', 'message' => 'The template does not exist.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.PushNotifications.InvalidParameter.PlaceHolder', 'message' => 'The template placeholder information is missing.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.PushNotifications.InvalidParameter.SendTarget', 'message' => 'Failed to identify message target.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.Reminder.CreateFail', 'message' => 'The creation request is not allowed.', 'http_code' => 403, 'description' => ''], ['code' => 'AliGenie.Reminder.DeviceError', 'message' => 'The device is offline.', 'http_code' => 504, 'description' => ''], ['code' => 'AliGenie.Reminder.HasNoAuthority', 'message' => 'You are not authorized to perform this operation.', 'http_code' => 505, 'description' => ''], ['code' => 'AliGenie.Reminder.StopService', 'message' => 'The servic has stopped.', 'http_code' => 503, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.Device.Offline', 'message' => 'The target device is not online.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.Body', 'message' => 'You must specify request body.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.EncodeKey', 'message' => 'You must specify EncodeKey.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.EncodeType', 'message' => 'You must specify EncodeType.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.EncodeType', 'message' => 'The specified EncodeType is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.GenieAppId', 'message' => 'You must specify GenieAppId.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.GenieAppId', 'message' => 'The AliGenie app does not exist.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.GenieAppId', 'message' => 'The GenieApp information is inmcomplete.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.GenieAppId', 'message' => 'The AliGenie app has not configured wake up link.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.GenieAppId', 'message' => 'The application is not installed.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.GenieAppId', 'message' => 'The AliGenie app has not been released.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.OrganizationId', 'message' => 'You must specify OrganizationId.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.Path', 'message' => 'You must specify Path.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.Path', 'message' => 'The wake up path is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.TargetIdentity', 'message' => 'You must specify TargetIdentity.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.TargetInfo', 'message' => 'You must specify TargetInfo.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.TargetInfo', 'message' => 'The specified TargetInfo is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.TargetType', 'message' => 'You must specify TargetType.', 'http_code' => 400, 'description' => ''], ['code' => 'AliGenie.WakeUpApp.InvalidParameter.TargetType', 'message' => 'The specified TargetType is invalid.', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidParameter', 'message' => 'The request parameter is invalid', 'http_code' => 400, 'description' => ''], ['code' => 'ServerError', 'message' => 'internal server error', 'http_code' => 500, 'description' => ''], ['code' => 'SystemError', 'message' => 'System Error occured.', 'http_code' => 400, 'description' => '.'], ], 'changeSet' => [], ];