'1.0', 'info' => ['style' => 'RPC', 'product' => 'brain-industrial', 'version' => '2020-09-20'], 'directories' => [ [ 'children' => ['AicsOpenApiInvoke'], 'type' => 'directory', 'title' => 'AICS', ], [ 'children' => ['GetLicense', 'ActivateLicense', 'UpdateLicenseDescription'], 'type' => 'directory', 'title' => 'Authorization and activation', ], [ 'children' => ['ListAivppResources', 'CreateLoadForecastJob', 'CreatePowerForecastJob', 'CreateEssOptJob', 'CreateLoadForecastByFileUrlJob', 'CreatePowerForecastByFileUrlJob', 'GetAivppAlgoJob'], 'type' => 'directory', 'title' => 'Virtual power plant API', ], [ 'children' => ['ListLicenses', 'ListUserResources'], 'title' => 'Others', 'type' => 'directory', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'ActivateLicense' => [ 'summary' => 'Activates a license.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrialGARA6B'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The ID.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'formData', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => '12bea6b4489fsde7b903fe05934a0adx', 'title' => ''], ], [ 'name' => 'Fingerprint', 'in' => 'formData', 'schema' => ['description' => 'The machine fingerprint.', 'type' => 'string', 'required' => false, 'example' => 'XXX', 'title' => ''], ], [ 'name' => 'OrderId', 'in' => 'formData', 'schema' => ['description' => 'The order ID.', 'type' => 'string', 'required' => false, 'example' => 'XXX', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '65308A66-8764-53EE-8D4A-201E86CA88C5'], 'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful.'."\n" ."\n" .'- **true**: The call was successful.'."\n" .'- **false**: The call failed.', 'type' => 'string', 'example' => 'true'], 'Code' => ['description' => 'The status code.'."\n" ."\n" .'> 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'Data' => [ 'description' => 'The returned result.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'Id', 'type' => 'string', 'example' => '1', 'title' => ''], 'LicenseSpecName' => ['description' => 'The license type name.', 'type' => 'string', 'example' => '边缘端1000型运行节点授权', 'title' => ''], 'BuyTime' => ['description' => 'The purchase time.', 'type' => 'string', 'example' => '2024-04-29 15:00:15', 'title' => ''], 'ActivateTime' => ['description' => 'The activation time.', 'type' => 'string', 'example' => '2024-04-29 15:03:12', 'title' => ''], 'Fingerprint' => ['description' => 'The machine fingerprint.', 'type' => 'string', 'example' => 'XXXX', 'title' => ''], 'LicenseCode' => ['description' => 'The authorization code.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], 'EffectTime' => ['description' => 'The effective period.', 'type' => 'string', 'example' => '2024-05-01 00:00:00', 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2025-05-01 00:00:00', 'title' => ''], 'Duration' => ['description' => 'The remaining duration after activation.', 'type' => 'string', 'example' => '2个月9天', 'title' => ''], 'Status' => ['description' => 'The status.', 'type' => 'string', 'example' => 'activated', 'title' => ''], 'CpuLimit' => ['description' => 'The maximum number of CPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '72', 'title' => ''], 'MemoryLimit' => ['description' => 'The memory upper limit (GB).', 'type' => 'integer', 'format' => 'int32', 'example' => '256', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'c39128fcb74e482546a72de90cdsaba3', 'title' => ''], 'AllDuration' => ['description' => 'The total duration after activation.', 'type' => 'string', 'example' => '1年', 'title' => ''], 'ApplicableSpecs' => ['description' => 'The applicable specifications.', 'type' => 'string', 'example' => '72核256G', 'title' => ''], 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '""', 'title' => ''], 'UnActivateAllDuration' => ['description' => 'The duration before activation.', 'type' => 'string', 'example' => '1个月', 'title' => ''], 'ActivateRecord' => [ 'description' => 'The activation records.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], 'BuyTime' => ['description' => 'The purchase time.', 'type' => 'string', 'example' => '2024-04-29 15:01:15', 'title' => ''], 'ActivateTime' => ['description' => 'The activation time.', 'type' => 'string', 'example' => '2024-04-29 15:03:12', 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2025-05-01 00:00:00', 'title' => ''], 'Duration' => ['description' => 'The duration.', 'type' => 'string', 'example' => '1年', 'title' => ''], 'Status' => ['description' => 'The status.', 'type' => 'string', 'example' => 'activated', 'title' => ''], 'LicenseCode' => ['description' => 'The activation code.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'AccessDeniedDetail' => ['description' => 'The details of the permission verification failure.', 'type' => 'string', 'example' => '{}', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65308A66-8764-53EE-8D4A-201E86CA88C5\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Id\\": \\"1\\",\\n \\"LicenseSpecName\\": \\"边缘端1000型运行节点授权\\",\\n \\"BuyTime\\": \\"2024-04-29 15:00:15\\",\\n \\"ActivateTime\\": \\"2024-04-29 15:03:12\\",\\n \\"Fingerprint\\": \\"XXXX\\",\\n \\"LicenseCode\\": \\"XXX\\",\\n \\"EffectTime\\": \\"2024-05-01 00:00:00\\",\\n \\"ExpireTime\\": \\"2025-05-01 00:00:00\\",\\n \\"Duration\\": \\"2个月9天\\",\\n \\"Status\\": \\"activated\\",\\n \\"CpuLimit\\": 72,\\n \\"MemoryLimit\\": 256,\\n \\"InstanceId\\": \\"c39128fcb74e482546a72de90cdsaba3\\",\\n \\"AllDuration\\": \\"1年\\",\\n \\"ApplicableSpecs\\": \\"72核256G\\",\\n \\"Description\\": \\"\\\\\\"\\\\\\"\\",\\n \\"UnActivateAllDuration\\": \\"1个月\\",\\n \\"ActivateRecord\\": [\\n {\\n \\"OrderId\\": \\"XXX\\",\\n \\"BuyTime\\": \\"2024-04-29 15:01:15\\",\\n \\"ActivateTime\\": \\"2024-04-29 15:03:12\\",\\n \\"ExpireTime\\": \\"2025-05-01 00:00:00\\",\\n \\"Duration\\": \\"1年\\",\\n \\"Status\\": \\"activated\\",\\n \\"LicenseCode\\": \\"XXX\\"\\n }\\n ]\\n },\\n \\"HttpStatusCode\\": 200,\\n \\"AccessDeniedDetail\\": \\"{}\\"\\n}","type":"json"}]', 'title' => 'Activate a license', 'changeSet' => [ ['createdAt' => '2025-01-10T02:52:16.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2024-04-29T06:06:37.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'brain-industrial:ActivateLicense', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], ], ], 'AicsOpenApiInvoke' => [ 'summary' => 'Calls an AICS OpenAPI.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrialQ3LUJC', 'FEATUREbrainindustrialWZ1RY1'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ServiceId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The service ID of the OpenAPI.', 'type' => 'string', 'required' => true, 'example' => 'ae5f9884c9914ed7af72b07e6c1616f9'], ], [ 'name' => 'NodeId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The node ID.', 'type' => 'string', 'required' => false, 'example' => '119397'], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The type.', 'enumValueTitles' => ['NODE' => 'NODE', 'EXPERIMENT' => 'EXPERIMENT'], 'type' => 'string', 'required' => false, 'default' => 'EXPERIMENT', 'example' => 'EXPERIMENT', 'title' => '', ], ], [ 'name' => 'Param', 'in' => 'formData', 'style' => 'json', 'schema' => ['description' => 'The input parameter.', 'type' => 'object', 'required' => false, 'example' => '{"a":1}', 'title' => ''], ], [ 'name' => 'JobId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The job ID. This parameter is used to query the results of an asynchronous canvas call.', 'type' => 'string', 'required' => false, 'example' => 'bd20e071eee74faabbe1fd12b82e1358'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful. Valid values:'."\n" .'- **True**: The call was successful.'."\n" .'- **False**: The call failed.', 'type' => 'string', 'example' => 'True'], 'Code' => ['title' => '', 'description' => 'The status code.'."\n" ."\n" .'> 200 indicates success.', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'successful'], 'Data' => ['description' => 'The response data.', 'type' => 'any', 'example' => '{"c":2}', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": \\"{\\\\\\"c\\\\\\":2}\\"\\n}","type":"json"}]', 'title' => 'Call AICS openAPI', 'changeSet' => [ ['createdAt' => '2025-08-20T08:41:21.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:AicsOpenApiInvoke', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateEssOptJob' => [ 'summary' => 'Creates a stored energy operation optimization task.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREbrainindustrial1ZR6M2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'Freq', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The data frequency. The value must match the data frequency of historyData. Default value: FIFTEEN_MIN. Valid values:'."\n" ."\n" .'- FIFTEEN_MIN: 15 minutes.'."\n" .'- FIVE_MIN: 5 minutes.'."\n" .'- ONE_HOUR: 1 hour.'."\n" .'- ONE_DAY: 1 day.', 'type' => 'string', 'example' => 'FIFTEEN_MIN', 'enum' => ['FIFTEEN_MIN', 'FIVE_MIN', 'ONE_HOUR', 'ONE_DAY'], 'required' => false, ], ], [ 'name' => 'Duration', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The prediction duration in days, starting from the run date (inclusive).'."\n" ."\n" .'This parameter is optional. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'RunDate', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The run date, accurate to the day, in the "yyyy-MM-dd" format.', 'type' => 'string', 'required' => false, 'example' => '2025-02-12'], ], [ 'name' => 'TimeZone', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The time zone. Default value: Asia/Shanghai.', 'type' => 'string', 'required' => false, 'example' => 'Asia/Shanghai'], ], [ 'name' => 'ModelVersion', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The model version number. Default value: latest.', 'type' => 'string', 'required' => false, 'example' => 'latest'], ], [ 'name' => 'TopoType', 'in' => 'formData', 'schema' => [ 'description' => 'The resource topology type within the site. Valid values:'."\n" ."\n" .'- LOAD_ESS: Grid power + stored energy.'."\n" .'- LOAD_ESS_SOLAR: Grid power + stored energy + photovoltaic.', 'type' => 'string', 'enum' => ['LOAD_ESS', 'LOAD_ESS_SOLAR'], 'required' => false, 'example' => 'LOAD_ESS_SOLAR', 'title' => '', ], ], [ 'name' => 'SystemData', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The system data, including the parameters and historical data of each system within the site.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'SystemType' => [ 'description' => 'The system type. Valid values:'."\n" ."\n" .'- load: grid power'."\n" .'- ess: stored energy'."\n" .'- solar: photovoltaic'."\n" .'- hvac: air conditioning'."\n" .'- flexible: lighting'."\n" .'- charge: charging station.', 'enumValueTitles' => ['hvac' => 'hvac', 'charge' => 'charge', 'load' => 'load', 'ess' => 'ess', 'flexible' => 'flexible', 'solar' => 'solar'], 'type' => 'string', 'required' => false, 'example' => 'ess', 'title' => '', ], 'SystemId' => ['description' => 'The system ID.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], 'SystemParams' => ['description' => 'The system parameters. The parameter values vary by system type.', 'type' => 'object', 'required' => false, 'example' => '如光伏系统参数:{'."\n" .' "sfktj": 0, //是否可调节:0-不可调 1-可调,一般光伏为 不可调'."\n" .' "cfdfs": 0, //充放电方式:0-正放电负充电 1-负放电正充电'."\n" .' "zjrl": "xxx", //装机容量'."\n" .' }', 'title' => ''], 'HistoryData' => [ 'description' => 'The historical operation data of each system.', 'type' => 'array', 'items' => ['description' => 'The operation data for a historical time period.', 'type' => 'object', 'required' => false, 'example' => '如市电的历史数据:{'."\n" .' "runTime": "2023-05-06 20:00:00",'."\n" .' "pwr": 0.0, //总有功功率, 单位kW'."\n" .' "qvr": 0.0, //总无功功率, 单位Var'."\n" .' "sva": 0.0, //总视在功率, 单位VA'."\n" .' "cos": 1, //总功率因数'."\n" .' "fwdActngy": 0.0, //累计正向有功总电量, 单位kWh'."\n" .' "rvsActngy": 0.0, //累计反相有功总电量, 单位kWh'."\n" .' "demandpwr": 0.0 //正向有功总需量, 单位kW'."\n" .' }', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ElecPrice', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The time-of-use grid electricity price changes for the target date. The time granularity is consistent with freq.', 'type' => 'array', 'items' => [ 'description' => 'The grid electricity price at a specific time on the target date.', 'type' => 'object', 'properties' => [ 'DataTime' => ['description' => 'The time of day.', 'type' => 'string', 'required' => false, 'example' => '00:00:15', 'title' => ''], 'Price' => ['description' => 'The grid electricity price.', 'type' => 'string', 'required' => false, 'example' => '0.5', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'GenPrice', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The time-of-use feed-in tariff changes for the target date. The time granularity is consistent with freq.', 'type' => 'array', 'items' => [ 'description' => 'The feed-in tariff at a specific time on the target date.', 'type' => 'object', 'properties' => [ 'DataTime' => ['description' => 'The time of day.', 'type' => 'string', 'required' => false, 'example' => '00:00:15', 'title' => ''], 'Price' => ['description' => 'The feed-in tariff.', 'type' => 'string', 'required' => false, 'example' => '0.3', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Location', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The location information, including longitude and latitude.', 'type' => 'object', 'properties' => [ 'Altitude' => ['title' => '', 'description' => 'The altitude, accurate to 3 decimal places. Default value: 10.', 'type' => 'number', 'format' => 'double', 'example' => '10.123', 'required' => false], 'Latitude' => ['title' => '', 'description' => 'The latitude, accurate to 3 decimal places.', 'type' => 'number', 'format' => 'double', 'example' => '40.027', 'required' => false], 'Longitude' => ['title' => '', 'description' => 'The longitude, accurate to 3 decimal places.', 'type' => 'number', 'format' => 'double', 'example' => '120.042', 'required' => false], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'BusinessKey', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The business key.', 'type' => 'string', 'required' => false, 'example' => 'stationA'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => [ 'title' => '', 'description' => 'Indicates whether the call was successful.'."\n" .'- **True**: The call was successful.'."\n" .'- **False**: The call failed.', 'enumValueTitles' => ['True' => 'True', 'False' => 'False'], 'type' => 'string', 'example' => 'True', ], 'Code' => ['title' => '', 'description' => 'The status code.'."\n" ."\n" .'> A value of 200 indicates success.', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'The returned message.', 'type' => 'string', 'example' => 'successful'], 'Data' => [ 'title' => '', 'description' => 'The detailed job information.', 'type' => 'object', 'properties' => [ 'Completed' => ['title' => '', 'description' => 'Indicates whether the operation is complete. Valid values: '."\n" .'- True: The job has been completed. '."\n" .'- False: The job is still running.', 'type' => 'boolean', 'example' => 'True'], 'CreateTime' => ['title' => '', 'description' => 'The task creation time.', 'type' => 'string', 'example' => '2024-12-22 00:00:21'], 'Error' => ['title' => '', 'description' => 'The error message when the current operation is abnormal or fails.', 'type' => 'string', 'example' => '""'], 'JobId' => ['title' => '', 'description' => 'The algorithm computation task ID.', 'type' => 'string', 'example' => '8c0ca18a-246a-4acd-80ca-e16d8ff5ef33'], 'Progress' => ['title' => '', 'description' => 'The progress.', 'type' => 'integer', 'format' => 'int32', 'example' => '25'], 'Response' => [ 'title' => '', 'description' => 'The result of the computation task.', 'type' => 'object', 'properties' => [ 'DebugInfo' => ['title' => '', 'description' => 'The debug information.', 'type' => 'any', 'example' => '{}'], 'JobType' => [ 'title' => '', 'description' => 'The computation task type. Valid values:'."\n" .'- LoadForecast: Load forecasting.'."\n" .'- PowerForecast: Power forecasting.'."\n" .'- EssOptStrategy: Stored energy optimization.', 'enumValueTitles' => ['EssOptStrategy' => 'EssOptStrategy', 'LoadForecast' => 'LoadForecast', 'PowerForecast' => 'PowerForecast'], 'type' => 'string', 'example' => 'EssOptStrategy', ], 'Result' => ['title' => '', 'description' => 'The result of the computation task.', 'type' => 'any', 'example' => '{}'], ], 'example' => '', ], 'Status' => [ 'title' => '', 'description' => 'The task status. Valid values: '."\n" .'- RUNNING'."\n" .'- SUCCESS'."\n" .'- FAIL.', 'enumValueTitles' => ['SUCCESS' => 'SUCCESS', 'RUNNING' => 'RUNNING', 'FAIL' => 'FAIL'], 'type' => 'string', 'example' => 'RUNNING', ], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ['errorCode' => 'NoNormalResource', 'errorMessage' => 'There is no normal resource.', 'description' => 'No resources available'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Completed\\": true,\\n \\"CreateTime\\": \\"2024-12-22 00:00:21\\",\\n \\"Error\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"8c0ca18a-246a-4acd-80ca-e16d8ff5ef33\\",\\n \\"Progress\\": 25,\\n \\"Response\\": {\\n \\"DebugInfo\\": \\"{}\\",\\n \\"JobType\\": \\"EssOptStrategy\\",\\n \\"Result\\": \\"{}\\"\\n },\\n \\"Status\\": \\"RUNNING\\"\\n }\\n}","type":"json"}]', 'title' => 'Create a stored energy optimization task', 'changeSet' => [ ['createdAt' => '2025-07-28T07:25:20.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-07-23T14:04:47.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreateEssOptJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateLoadForecastByFileUrlJob' => [ 'summary' => 'Creates an electricity load forecasting task with historical data from a file URL.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREbrainindustrial1ZR6M2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'DeviceType', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The device type. The device types supported by each system type are as follows: '."\n" ."\n" .'- load: electricityMeter (utility meter)'."\n" .'- hvac: gateway-hvac (air conditioner)'."\n" .'- flexible: electricityMeter (lighting meter)'."\n" .'- charge: gateway-charging (charging station).', 'type' => 'string', 'example' => 'electricityMeter', 'default' => 'electricityMeter', 'required' => false], ], [ 'name' => 'HistoryUrl', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The URL of the historical data CSV file. The URL must be publicly accessible during the call.', 'type' => 'string', 'required' => false, 'example' => 'https://bucket.oss-cn-hangzhou.aliyuncs.com/dir/target_file.csv'], ], [ 'name' => 'Freq', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The data frequency. The value must match the frequency of the historical data. Valid values:'."\n" .'- FIFTEEN_MIN: 15 minutes.'."\n" .'- FIVE_MIN: 5 minutes.'."\n" .'- ONE_HOUR: 1 hour.'."\n" .'- ONE_HOUR: 1 day.'."\n" ."\n" .'Default value: FIFTEEN_MIN.', 'type' => 'string', 'example' => 'FIFTEEN_MIN', 'default' => 'FIFTEEN_MIN', 'enum' => ['FIFTEEN_MIN', 'FIVE_MIN', 'ONE_HOUR', 'ONE_DAY'], 'required' => false, ], ], [ 'name' => 'Duration', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The forecast duration in days, starting from the run date (inclusive).'."\n" ."\n" .'Optional. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'SystemType', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The system type. Valid values: '."\n" .'- load: utility power. '."\n" .'- hvac: air conditioner. '."\n" .'- flexible: lighting. '."\n" .'- charge: charging station.', 'type' => 'string', 'example' => 'load', 'default' => 'load', 'required' => false], ], [ 'name' => 'RunDate', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The run date, accurate to the day, in the "yyyy-MM-dd" format.', 'type' => 'string', 'required' => false, 'example' => '2025-01-01'], ], [ 'name' => 'TimeZone', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The time zone. Default value: Asia/Shanghai.', 'type' => 'string', 'example' => 'Asia/Shanghai'."\n", 'default' => 'Asia/Shanghai', 'required' => false], ], [ 'name' => 'ModelVersion', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The model version number. Default value: latest. You can query the version number from the documentation to call a historical snapshot version or a preview version.', 'type' => 'string', 'example' => 'latest', 'default' => 'latest', 'required' => false], ], [ 'name' => 'BusinessKey', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The business key, such as a site name or ID.', 'type' => 'string', 'required' => false, 'example' => 'stationA'], ], [ 'name' => 'TimeColumn', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The time column in the historical data CSV file. The time column must be in the yyyy-MM-dd HH:mm:SS format, and the data frequency must match the Freq parameter.', 'type' => 'string', 'required' => false, 'example' => 'runTime'], ], [ 'name' => 'ValueColumn', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The value column in the historical data CSV file. The value must be of a numeric type.', 'type' => 'string', 'required' => false, 'example' => 'value'], ], [ 'name' => 'ForecastHorizon', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The forecast time horizon. Valid values:'."\n" .'- DAY_AHEAD: day-ahead forecast.'."\n" .'- INTRADAY: intraday forecast.', 'type' => 'string', 'example' => 'DAY_AHEAD', 'default' => 'DAY_AHEAD', 'enum' => ['DAY_AHEAD', 'INTRADAY'], 'required' => false, ], ], [ 'name' => 'DataMode', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The data mode for this call. Valid values:'."\n" .'- FULL: full data. Only the data passed in this call is used.'."\n" .'- INCREMENTAL: incremental data. Data from previous calls with the same BusinessKey is automatically associated.', 'type' => 'string', 'example' => 'FULL', 'default' => 'FULL', 'enum' => ['FULL', 'INCREMENTAL'], 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful. Valid values:'."\n" .'- **True**: The call was successful.'."\n" .'- **False**: The call failed.', 'type' => 'string', 'example' => 'True'], 'Code' => ['title' => '', 'description' => 'The status code.'."\n" ."\n" .'> A value of 200 indicates success.', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'successful'], 'Data' => [ 'title' => '', 'description' => 'The detailed job information.', 'type' => 'object', 'properties' => [ 'Completed' => ['title' => '', 'description' => 'Indicates whether the operation is complete. Valid values: '."\n" .'- True: The job has been completed.'."\n" .'- False: The job is still running.', 'type' => 'boolean', 'example' => 'True'], 'CreateTime' => ['title' => '', 'description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2024-12-22 00:00:21'], 'Error' => ['title' => '', 'description' => 'The error message returned when the operation is abnormal or fails.', 'type' => 'string', 'example' => '""'], 'JobId' => ['title' => '', 'description' => 'The ID of the algorithm computation task.', 'type' => 'string', 'example' => '8c0ca18a-246a-4acd-80ca-e16d8ff5ef33'], 'Progress' => ['title' => '', 'description' => 'The progress.', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], 'Response' => [ 'title' => '', 'description' => 'The result of the computation task.', 'type' => 'object', 'properties' => [ 'DebugInfo' => ['title' => '', 'description' => 'The debug information.', 'type' => 'any', 'example' => 'null'], 'JobType' => [ 'title' => '', 'description' => 'The computation task type. Valid values:'."\n" .'- LoadForecast: load forecasting.'."\n" .'- PowerForecast: power forecasting.'."\n" .'- EssOptStrategy: energy storage optimization.', 'enumValueTitles' => ['EssOptStrategy' => 'EssOptStrategy', 'LoadForecast' => 'LoadForecast', 'PowerForecast' => 'PowerForecast'], 'type' => 'string', 'example' => 'PowerForecast', ], 'Result' => ['title' => '', 'description' => 'The result of the computation task.', 'type' => 'any', 'example' => '{"runTime": \'2025-01-01 00:00:00\', "value": 0.0}'], ], 'example' => '', ], 'Status' => ['title' => '', 'description' => 'The task status. Valid values:'."\n" .'- RUNNING: running.'."\n" .'- SUCCESS: succeeded.'."\n" .'- FAIL: failed.', 'type' => 'string', 'example' => 'RUNNING'], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ['errorCode' => 'NoNormalResource', 'errorMessage' => 'There is no normal resource.', 'description' => 'No resources available'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Completed\\": true,\\n \\"CreateTime\\": \\"2024-12-22 00:00:21\\",\\n \\"Error\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"8c0ca18a-246a-4acd-80ca-e16d8ff5ef33\\",\\n \\"Progress\\": 100,\\n \\"Response\\": {\\n \\"DebugInfo\\": \\"null\\",\\n \\"JobType\\": \\"PowerForecast\\",\\n \\"Result\\": \\"{\\\\\\"runTime\\\\\\": \'2025-01-01 00:00:00\', \\\\\\"value\\\\\\": 0.0}\\"\\n },\\n \\"Status\\": \\"RUNNING\\"\\n }\\n}","type":"json"}]', 'title' => 'Create a load forecasting task by file URL', 'changeSet' => [ ['createdAt' => '2025-10-17T04:03:47.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreateLoadForecastByFileUrlJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateLoadForecastJob' => [ 'summary' => 'Creates an electricity load forecasting task.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREbrainindustrial1ZR6M2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'DeviceType', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The device type. The device types supported by each systemType are as follows:'."\n" .'System type: Device type '."\n" ."\n" .'- load: electricityMeter -- mains electricity meter '."\n" .'- hvac: gateway-hvac -- air conditioner '."\n" .'- flexible: electricityMeter -- lighting electricity meter '."\n" .'- charge: gateway-charging -- charging station.', 'enumValueTitles' => ['hvac' => 'hvac', 'charge' => 'charge', 'load' => 'load', 'flexible' => 'flexible'], 'type' => 'string', 'example' => 'electricityMeter', 'default' => 'electricityMeter', 'required' => false, ], ], [ 'name' => 'HistoryData', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The historical load data. 90 days of historical data is required.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RunTime' => ['title' => '', 'description' => 'The timestamp at every {freq} minutes, in the "yyyy-MM-dd HH:mm:ss" format. The data frequency must be aligned with the freq field.', 'type' => 'string', 'required' => false, 'example' => '2025-12-12 00:00:00'], 'Value' => ['title' => '', 'description' => 'The load data.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '1.0'], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100000, 'minItems' => 1, 'example' => '', ], ], [ 'name' => 'Freq', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The data frequency. Default value: FIFTEEN_MIN. The value must be consistent with the data frequency of historyData. Valid values:'."\n" ."\n" .'- FIFTEEN_MIN: 15 minutes'."\n" .'- FIVE_MIN: 5 minutes'."\n" .'- ONE_HOUR: 1 hour'."\n" .'- ONE_DAY: 1 day.', 'type' => 'string', 'example' => 'FIFTEEN_MIN', 'default' => 'FIFTEEN_MIN', 'enum' => ['FIFTEEN_MIN', 'FIVE_MIN', 'ONE_HOUR', 'ONE_DAY'], 'required' => false, ], ], [ 'name' => 'Duration', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The forecast duration in days, starting from the run date (inclusive).'."\n" ."\n" .'Optional. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'SystemType', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The system type. Valid values: '."\n" ."\n" .'- load: mains electricity '."\n" .'- hvac: air conditioner '."\n" .'- flexible: lighting '."\n" .'- charge: charging station.', 'enumValueTitles' => ['hvac' => 'hvac', 'charge' => 'charge', 'load' => 'load', 'flexible' => 'flexible'], 'type' => 'string', 'example' => 'load', 'default' => 'load', 'required' => false, ], ], [ 'name' => 'RunDate', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The run date, accurate to the day, in the "yyyy-MM-dd" format.', 'type' => 'string', 'required' => false, 'example' => '2025-12-12'], ], [ 'name' => 'TimeZone', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The time zone. Default value: Asia/Shanghai.', 'type' => 'string', 'example' => 'Asia/Shanghai', 'default' => 'Asia/Shanghai', 'required' => false], ], [ 'name' => 'ModelVersion', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The version number of the model. Default value: latest.', 'type' => 'string', 'example' => 'latest', 'default' => 'latest', 'required' => false], ], [ 'name' => 'BusinessKey', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The business key, such as the site name or ID.', 'type' => 'string', 'required' => false, 'example' => 'stationA'], ], [ 'name' => 'ForecastHorizon', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The forecast time horizon. Valid values:'."\n" .'- DAY_AHEAD: day-ahead forecast'."\n" .'- INTRADAY: intraday forecast.', 'type' => 'string', 'example' => 'DAY_AHEAD', 'default' => 'DAY_AHEAD', 'enum' => ['DAY_AHEAD', 'INTRADAY'], 'required' => false, ], ], [ 'name' => 'DataMode', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The data mode for this call. Valid values:'."\n" .'- FULL: full data (uses only the data passed in this call).'."\n" .'- INCREMENTAL: incremental data (automatically associates data from previous calls with the same BusinessKey).', 'type' => 'string', 'example' => 'FULL', 'default' => 'FULL', 'enum' => ['FULL', 'INCREMENTAL'], 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => [ 'title' => '', 'description' => 'Indicates whether the call was successful.'."\n" .'- **True**: The call was successful.'."\n" .'- **False**: The call failed.', 'enumValueTitles' => ['True' => 'True', 'False' => 'False'], 'type' => 'string', 'example' => 'True', ], 'Code' => ['title' => '', 'description' => 'The status code.'."\n" ."\n" .'> A value of 200 indicates success.', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'successful'], 'Data' => [ 'title' => '', 'description' => 'The detailed job information.', 'type' => 'object', 'properties' => [ 'Completed' => [ 'title' => '', 'description' => 'Indicates whether the operation is complete. Valid values: '."\n" .'- True: The current job has been completed. '."\n" .'- False: The current job is still running.', 'enumValueTitles' => ['True' => 'True', 'False' => 'False'], 'type' => 'boolean', 'example' => 'True', ], 'CreateTime' => ['title' => '', 'description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2024-12-22 00:00:21'], 'Error' => ['title' => '', 'description' => 'The error message returned when the current operation encounters an exception or fails.', 'type' => 'string', 'example' => '""'], 'JobId' => ['title' => '', 'description' => 'The ID of the algorithm computation task.', 'type' => 'string', 'example' => '8c0ca18a-246a-4acd-80ca-e16d8ff5ef33'], 'Progress' => ['title' => '', 'description' => 'The progress.', 'type' => 'integer', 'format' => 'int32', 'example' => '25'], 'Response' => [ 'title' => '', 'description' => 'The result of the computation task.', 'type' => 'object', 'properties' => [ 'DebugInfo' => ['title' => '', 'description' => 'The debugging information.', 'type' => 'any', 'example' => '{}'], 'JobType' => [ 'title' => '', 'description' => 'The computation task type. Valid values:'."\n" .'- LoadForecast: load forecasting.'."\n" .'- PowerForecast: power forecasting.'."\n" .'- EssOptStrategy: energy storage optimization.', 'enumValueTitles' => ['EssOptStrategy' => 'EssOptStrategy', 'LoadForecast' => 'LoadForecast', 'PowerForecast' => 'PowerForecast'], 'type' => 'string', 'example' => 'LoadForecast', ], 'Result' => ['title' => '', 'description' => 'The result of the computation task.', 'type' => 'any', 'example' => '{}'], ], 'example' => '', ], 'Status' => [ 'title' => '', 'description' => 'The task status. Valid values: '."\n" .'- RUNNING'."\n" .'- SUCCESS'."\n" .'- FAIL.', 'enumValueTitles' => ['SUCCESS' => 'SUCCESS', 'RUNNING' => 'RUNNING', 'FAIL' => 'FAIL'], 'type' => 'string', 'example' => 'RUNNING', ], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ['errorCode' => 'NoNormalResource', 'errorMessage' => 'There is no normal resource.', 'description' => 'No resources available'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Completed\\": true,\\n \\"CreateTime\\": \\"2024-12-22 00:00:21\\",\\n \\"Error\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"8c0ca18a-246a-4acd-80ca-e16d8ff5ef33\\",\\n \\"Progress\\": 25,\\n \\"Response\\": {\\n \\"DebugInfo\\": \\"{}\\",\\n \\"JobType\\": \\"LoadForecast\\",\\n \\"Result\\": \\"{}\\"\\n },\\n \\"Status\\": \\"RUNNING\\"\\n }\\n}","type":"json"}]', 'title' => 'Create a load forecasting task', 'changeSet' => [ ['createdAt' => '2025-10-17T04:03:47.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-07-28T07:25:20.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-07-23T14:04:47.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreateLoadForecastJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreatePowerForecastByFileUrlJob' => [ 'summary' => 'Creates a power generation forecast task with historical data from a file URL.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREbrainindustrial1ZR6M2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'DeviceType', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The device type. The device types supported by each system type are as follows:'."\n" .'- solar: solarInverter (solar inverter)'."\n" .'- wind: windTurbine (wind turbine).', 'enumValueTitles' => ['solarInverter' => 'solarInverter'], 'type' => 'string', 'example' => 'solarInverter', 'default' => 'solarInverter', 'required' => false, ], ], [ 'name' => 'HistoryUrl', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The URL of the historical data CSV file. The URL must be publicly accessible during the call.', 'type' => 'string', 'required' => false, 'example' => 'https://bucket.oss-cn-hangzhou.aliyuncs.com/dir/target_file.csv'], ], [ 'name' => 'Freq', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'Default value: FIFTEEN_MIN. The value must match the data frequency of the historical data. Valid values:'."\n" .'- FIFTEEN_MIN: 15 minutes'."\n" .'- FIVE_MIN: 5 minutes'."\n" .'- ONE_HOUR: 1 hour'."\n" .'- ONE_DAY: 1 day.', 'type' => 'string', 'example' => 'FIFTEEN_MIN', 'default' => 'FIFTEEN_MIN', 'enum' => ['FIFTEEN_MIN', 'FIVE_MIN', 'ONE_HOUR', 'ONE_DAY'], 'required' => false, ], ], [ 'name' => 'Duration', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The forecast duration in days, starting from the run date (inclusive).'."\n" ."\n" .'Optional. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'SystemType', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The system type. Valid values: '."\n" .'- solar: photovoltaic'."\n" .'- wind: wind power.', 'enumValueTitles' => ['solar' => 'solar'], 'type' => 'string', 'example' => 'solar', 'default' => 'solar', 'required' => false, ], ], [ 'name' => 'RunDate', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The run date, accurate to the day, in the "yyyy-MM-dd" format.', 'type' => 'string', 'required' => false, 'example' => '2025-01-01'], ], [ 'name' => 'TimeZone', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The time zone. Default value: Asia/Shanghai.', 'type' => 'string', 'example' => 'Asia/Shanghai', 'default' => 'Asia/Shanghai', 'required' => false], ], [ 'name' => 'ModelVersion', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The version number of the model. Default value: latest. You can query the version number in the documentation to call a historical snapshot version or a preview version.', 'type' => 'string', 'example' => 'latest', 'default' => 'latest', 'required' => false], ], [ 'name' => 'Location', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The location information, including longitude and latitude.', 'type' => 'object', 'properties' => [ 'Altitude' => ['title' => '', 'description' => 'The altitude, accurate to 3 decimal places. Default value: 10.', 'type' => 'number', 'format' => 'double', 'example' => '10.123', 'required' => false], 'Latitude' => ['title' => '', 'description' => 'The latitude, accurate to 3 decimal places.', 'type' => 'number', 'format' => 'double', 'example' => '40.027', 'required' => false], 'Longitude' => ['title' => '', 'description' => 'The longitude, accurate to 3 decimal places.', 'type' => 'number', 'format' => 'double', 'example' => '120.042', 'required' => false], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'BusinessKey', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The business key, such as a station name or ID.', 'type' => 'string', 'required' => false, 'example' => 'stationA'], ], [ 'name' => 'TimeColumn', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The time column in the historical data CSV file. The time column must be in the yyyy-MM-dd HH:mm:SS format. The data frequency must match the Freq parameter.', 'type' => 'string', 'required' => false, 'example' => 'runTime'], ], [ 'name' => 'ValueColumn', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The value column in the historical data CSV file. The value must be a numeric type.', 'type' => 'string', 'required' => false, 'example' => 'value'], ], [ 'name' => 'ForecastHorizon', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The forecast time horizon. Valid values:'."\n" .'- DAY_AHEAD: day-ahead forecast'."\n" .'- INTRADAY: intraday forecast.', 'type' => 'string', 'example' => 'DAY_AHEAD', 'default' => 'DAY_AHEAD', 'enum' => ['DAY_AHEAD', 'INTRADAY'], 'required' => false, ], ], [ 'name' => 'DataMode', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The data mode for this call. Valid values:'."\n" .'- FULL: full data (uses only the data passed in this call)'."\n" .'- INCREMENTAL: incremental data (automatically associates data from previous calls with the same BusinessKey).', 'type' => 'string', 'example' => 'FULL', 'default' => 'FULL', 'enum' => ['FULL', 'INCREMENTAL'], 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful.'."\n" .'- **True**: The call was successful.'."\n" .'- **False**: The call failed.', 'type' => 'string', 'example' => 'True'], 'Code' => ['title' => '', 'description' => 'The status code.'."\n" ."\n" .'> A value of 200 indicates success.', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'successful'], 'Data' => [ 'title' => '', 'description' => 'The detailed job information.', 'type' => 'object', 'properties' => [ 'Completed' => ['title' => '', 'description' => 'Indicates whether the operation is complete. Valid values: '."\n" .'- True: The job has been completed.'."\n" .'- False: The job is still running.', 'type' => 'boolean', 'example' => 'True'], 'CreateTime' => ['title' => '', 'description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2024-12-22 00:00:21'], 'Error' => ['title' => '', 'description' => 'The error message returned when the operation encounters an exception or fails.', 'type' => 'string', 'example' => '""'], 'JobId' => ['title' => '', 'description' => 'The ID of the algorithm computation task.', 'type' => 'string', 'example' => '8c0ca18a-246a-4acd-80ca-e16d8ff5ef33'], 'Progress' => ['title' => '', 'description' => 'The progress.', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], 'Response' => [ 'title' => '', 'description' => 'The result of the computation task.', 'type' => 'object', 'properties' => [ 'DebugInfo' => ['title' => '', 'description' => 'The debug information.', 'type' => 'any', 'example' => '{}'], 'JobType' => [ 'title' => '', 'description' => 'The computation task type. Valid values:'."\n" .'- LoadForecast: load forecast.'."\n" .'- PowerForecast: power forecast.'."\n" .'- EssOptStrategy: energy storage optimization.', 'enumValueTitles' => ['EssOptStrategy' => 'EssOptStrategy', 'LoadForecast' => 'LoadForecast', 'PowerForecast' => 'PowerForecast'], 'type' => 'string', 'example' => 'PowerForecast', ], 'Result' => ['title' => '', 'description' => 'The result of the computation task.', 'type' => 'any', 'example' => '{"runTime": \'2025-01-01 00:00:00\', "value": 0.0}'], ], 'example' => '', ], 'Status' => ['title' => '', 'description' => 'The task status. Valid values:'."\n" .'- RUNNING: running.'."\n" .'- SUCCESS: succeeded.'."\n" .'- FAIL: failed.', 'type' => 'string', 'example' => 'RUNNING'], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ['errorCode' => 'NoNormalResource', 'errorMessage' => 'There is no normal resource.', 'description' => 'No resources available'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Completed\\": true,\\n \\"CreateTime\\": \\"2024-12-22 00:00:21\\",\\n \\"Error\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"8c0ca18a-246a-4acd-80ca-e16d8ff5ef33\\",\\n \\"Progress\\": 100,\\n \\"Response\\": {\\n \\"DebugInfo\\": \\"{}\\",\\n \\"JobType\\": \\"PowerForecast\\",\\n \\"Result\\": \\"{\\\\\\"runTime\\\\\\": \'2025-01-01 00:00:00\', \\\\\\"value\\\\\\": 0.0}\\"\\n },\\n \\"Status\\": \\"RUNNING\\"\\n }\\n}","type":"json"}]', 'title' => 'Create a power forecast task by file URL', 'changeSet' => [ ['createdAt' => '2025-10-17T04:03:47.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreatePowerForecastByFileUrlJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreatePowerForecastJob' => [ 'summary' => 'Create a power generation prediction job. ', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREbrainindustrial1ZR6M2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'DeviceType', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Device type. The supported device types for each systemType are: '."\n" ."\n" .'System Type: Device Type '."\n" ."\n" .'- solar: solarInverter -- Photovoltaic inverter '."\n" .'- wind: windTurbine -- Wind turbine generator ', 'type' => 'string', 'required' => false, 'example' => 'solarInverter', 'default' => 'solarInverter'], ], [ 'name' => 'HistoryData', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Historical load data. Requires 90 days of historical data. ', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RunTime' => ['title' => '', 'description' => 'Every {freq} minutes, formatted as "yyyy-MM-dd HH:mm:ss". The data frequency must snap to the freq field. ', 'type' => 'string', 'required' => false, 'example' => '2025-02-12 00:00:00'], 'Value' => ['title' => '', 'description' => 'Load data. ', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '1.0'], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100000, 'minItems' => 1, 'example' => '', ], ], [ 'name' => 'Freq', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'Default is 15 min; must match the frequency of the historyData; enumeration values: '."\n" ."\n" .'- FIFTEEN_MIN: 15 minutes '."\n" .'- FIVE_MIN: 5 minutes '."\n" .'- ONE_HOUR: 1 hour '."\n" .'- ONE_DAY: 1 day ', 'type' => 'string', 'required' => false, 'example' => 'FIFTEEN_MIN', 'enum' => ['FIFTEEN_MIN', 'FIVE_MIN', 'ONE_HOUR', 'ONE_DAY'], 'default' => 'FIFTEEN_MIN', ], ], [ 'name' => 'Duration', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Prediction duration in days, starting from and including the run date. '."\n" ."\n" .'Optional. Default value is 1 day. ', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'SystemType', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'System type. Supported system types include: '."\n" ."\n" .'- solar: Photovoltaic '."\n" .'- wind: Wind power ', 'type' => 'string', 'required' => false, 'example' => 'solar', 'default' => 'solar'], ], [ 'name' => 'RunDate', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Run date, accurate to the day, in "yyyy-MM-dd" format. ', 'type' => 'string', 'required' => false, 'example' => '2025-02-12'], ], [ 'name' => 'TimeZone', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Time zone. The default is Asia/Shanghai (Shanghai time zone). ', 'type' => 'string', 'required' => false, 'example' => 'Asia/Shanghai'."\n", 'default' => 'Asia/Shanghai'], ], [ 'name' => 'ModelVersion', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Version number of the model. Default is latest. ', 'type' => 'string', 'required' => false, 'example' => 'latest', 'default' => 'latest'], ], [ 'name' => 'Location', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'Location information, including latitude and longitude. ', 'type' => 'object', 'properties' => [ 'Altitude' => ['title' => '', 'description' => 'Altitude, accurate to three decimal places. Default value is 10.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '10.123'], 'Latitude' => ['title' => '', 'description' => 'Latitude, accurate to three decimal places.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '40.027'], 'Longitude' => ['title' => '', 'description' => 'Longitude, accurate to three decimal places.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '120.042'], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'BusinessKey', 'in' => 'formData', 'schema' => ['description' => 'Business key, such as a site name or ID.', 'title' => 'Business key, such as a site name or ID', 'type' => 'string', 'required' => false, 'example' => 'stationA'], ], [ 'name' => 'ForecastHorizon', 'in' => 'formData', 'schema' => [ 'description' => 'Forecast time horizon, enumeration values: '."\n" .'- DAY_AHEAD: Day-ahead forecast '."\n" .'- INTRADAY: Intraday forecast ', 'title' => 'Forecast time horizon, enumeration values: '."\n" .'DAY_AHEAD: Day-ahead forecast '."\n" .'INTRADAY: Intraday forecast ', 'type' => 'string', 'example' => 'DAY_AHEAD', 'default' => 'DAY_AHEAD', 'enum' => ['DAY_AHEAD', 'INTRADAY'], 'required' => false, ], ], [ 'name' => 'DataMode', 'in' => 'formData', 'schema' => [ 'description' => 'Data mode for this invocation, enumeration values: '."\n" .'- FULL: Full data (uses only the data passed in this invocation) '."\n" .'- INCREMENTAL: Incremental data (automatically associates and uses data from previous invocations with the same BusinessKey) ', 'title' => 'Data mode for this invocation, enumeration values: '."\n" .'FULL: Full data (uses only the data passed in this invocation) '."\n" .'INCREMENTAL: Incremental data (automatically associates and uses data from previous invocations with the same BusinessKey) ', 'type' => 'string', 'example' => 'FULL', 'default' => 'FULL', 'enum' => ['FULL', 'INCREMENTAL'], 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => [ 'title' => '', 'description' => 'Indicates whether the invocation succeeded. '."\n" .'- **True**: The invocation succeeded. '."\n" .'- **False**: Failed to invoke. ', 'type' => 'string', 'example' => 'True', 'enumValueTitles' => ['True' => 'True', 'False' => 'False'], ], 'Code' => ['title' => '', 'description' => 'Status code. '."\n" ."\n" .'> 200 indicates success. ', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'Return message. ', 'type' => 'string', 'example' => 'successful'], 'Data' => [ 'title' => '', 'description' => 'Returns detailed job information. ', 'type' => 'object', 'properties' => [ 'Completed' => [ 'title' => '', 'description' => 'Indicates whether the operation is completed. Valid values: '."\n" .'- True: The current Job has been executed. '."\n" .'- False: The current Job is still running. ', 'type' => 'boolean', 'example' => 'True', 'enumValueTitles' => ['True' => 'True', 'False' => 'False'], ], 'CreateTime' => ['title' => '', 'description' => 'Creation Time of the Job. ', 'type' => 'string', 'example' => '2024-12-22 00:00:21'], 'Error' => ['title' => '', 'description' => 'Error message when the current operation is abnormal or failed. ', 'type' => 'string', 'example' => '""'], 'JobId' => ['title' => '', 'description' => 'Script Task ID. ', 'type' => 'string', 'example' => '8c0ca18a-246a-4acd-80ca-e16d8ff5ef33'], 'Progress' => ['title' => '', 'description' => 'Progress. ', 'type' => 'integer', 'format' => 'int32', 'example' => '25'], 'Response' => [ 'title' => '', 'description' => 'Result of the script task. ', 'type' => 'object', 'properties' => [ 'DebugInfo' => ['title' => '', 'description' => 'Debug Information. ', 'type' => 'any', 'example' => '{}'], 'JobType' => [ 'title' => '', 'description' => 'Task Type, enumeration values: '."\n" .'- LoadForecast: Load prediction. '."\n" .'- PowerForecast: Power prediction. '."\n" .'- EssOptStrategy: Stored energy optimization. ', 'type' => 'string', 'example' => 'PowerForecast', 'enumValueTitles' => ['EssOptStrategy' => 'EssOptStrategy', 'LoadForecast' => 'LoadForecast', 'PowerForecast' => 'PowerForecast'], ], 'Result' => ['title' => '', 'description' => 'Result of the script task.', 'type' => 'any', 'example' => '{}'], ], 'example' => '', ], 'Status' => [ 'title' => '', 'description' => 'Task Status, enumeration values: '."\n" .'- RUNNING: running. '."\n" .'- SUCCESS: Succeeded. '."\n" .'- FAIL: failed. ', 'type' => 'string', 'example' => 'RUNNING', 'enumValueTitles' => ['SUCCESS' => 'SUCCESS', 'RUNNING' => 'RUNNING', 'FAIL' => 'FAIL'], ], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ['errorCode' => 'NoNormalResource', 'errorMessage' => 'There is no normal resource.', 'description' => 'No resources available'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Completed\\": true,\\n \\"CreateTime\\": \\"2024-12-22 00:00:21\\",\\n \\"Error\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"8c0ca18a-246a-4acd-80ca-e16d8ff5ef33\\",\\n \\"Progress\\": 25,\\n \\"Response\\": {\\n \\"DebugInfo\\": \\"{}\\",\\n \\"JobType\\": \\"PowerForecast\\",\\n \\"Result\\": \\"{}\\"\\n },\\n \\"Status\\": \\"RUNNING\\"\\n }\\n}","type":"json"}]', 'title' => 'Creation of Power Prediction Job ', 'changeSet' => [ ['createdAt' => '2025-10-17T04:03:47.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-07-28T07:25:20.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-07-23T14:04:47.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreatePowerForecastJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetAivppAlgoJob' => [ 'summary' => 'Queries an AIVPP algorithm job.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrial1ZR6M2'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'JobId', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The JobId returned by the task creation operation. You can use this ID to query real-time details of the task generated by the asynchronous operation.', 'type' => 'string', 'example' => '5854bfa6-f002-43c2-8e1d-e9b2c28f9384', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful.'."\n" ."\n" .'- **True**: The call was successful.'."\n" .'- **False**: The call failed.', 'type' => 'string', 'example' => 'True'], 'Code' => ['title' => '', 'description' => 'The status code.'."\n" ."\n" .'> 200 indicates success.', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'successful'], 'Data' => [ 'title' => '', 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'Completed' => ['title' => '', 'description' => 'Indicates whether the operation is complete. Valid values: True: The current job has been completed. False: The current job is still running.', 'type' => 'boolean', 'example' => 'False'], 'CreateTime' => ['title' => '', 'description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2024-12-10 17:50:48'], 'Error' => ['title' => '', 'description' => 'The error message returned when the current operation encounters an exception or fails.', 'type' => 'string', 'example' => '""'], 'JobId' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => '5854bfa6-f002-43c2-8e1d-e9b2c28f9384'], 'Progress' => ['title' => '', 'description' => 'The task progress. Valid values: 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], 'Response' => [ 'title' => '', 'description' => 'The result of the compute task.', 'type' => 'object', 'properties' => [ 'DebugInfo' => ['title' => '', 'description' => 'The debug information.', 'type' => 'any', 'example' => '{}'], 'JobType' => ['title' => '', 'description' => 'The compute task type. Valid values: LoadForecast and PowerForecast.', 'type' => 'string', 'example' => 'PowerForecast'], 'Result' => ['title' => '', 'description' => 'The task result.', 'type' => 'any', 'example' => '{}'], ], 'example' => '', ], 'Status' => ['title' => '', 'description' => 'The task status. Valid values: RUNNING, SUCCESS, and FAIL.', 'type' => 'string', 'example' => 'RUNNING'], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Completed\\": true,\\n \\"CreateTime\\": \\"2024-12-10 17:50:48\\",\\n \\"Error\\": \\"\\\\\\"\\\\\\"\\",\\n \\"JobId\\": \\"5854bfa6-f002-43c2-8e1d-e9b2c28f9384\\",\\n \\"Progress\\": 100,\\n \\"Response\\": {\\n \\"DebugInfo\\": \\"{}\\",\\n \\"JobType\\": \\"PowerForecast\\",\\n \\"Result\\": \\"{}\\"\\n },\\n \\"Status\\": \\"RUNNING\\"\\n }\\n}","type":"json"}]', 'title' => 'Retrieve AIVPP algorithm job result', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'brain-industrial:GetAivppAlgoJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetLicense' => [ 'summary' => 'Queries the details of a license.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrialGARA6B'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'formData', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'c31238fcb74e482588a72de90cd7dba3', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The status code.'."\n" ."\n" .'> 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Success' => ['description' => 'Indicates whether the call was successful.'."\n" ."\n" .'- **true**: The call was successful.'."\n" .'- **false**: The call failed.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F', 'title' => ''], 'Data' => [ 'description' => 'The returned result.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'ID', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'LicenseSpecName' => ['title' => '', 'description' => 'The authorization type.', 'type' => 'string', 'example' => '边缘端1000型运行节点授权'], 'BuyTime' => ['title' => '', 'description' => 'The purchase time.', 'type' => 'string', 'example' => '2024-04-29 15:01:15'], 'ActivateTime' => ['title' => '', 'description' => 'The activation time.', 'type' => 'string', 'example' => '2024-04-29 15:03:12'], 'Fingerprint' => ['title' => '', 'description' => 'The machine fingerprint.', 'type' => 'string', 'example' => 'XXX'], 'LicenseCode' => ['description' => 'The authorization code.', 'type' => 'string', 'example' => 'XXX', 'title' => ''], 'EffectTime' => ['description' => 'The effective period.', 'type' => 'string', 'example' => '2024-05-01 00:00:00', 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2025-05-01 00:00:00', 'title' => ''], 'Duration' => ['description' => 'The total remaining activation duration.', 'type' => 'string', 'example' => '2个月9天', 'title' => ''], 'Status' => ['description' => 'The status.', 'type' => 'string', 'example' => 'activated', 'title' => ''], 'AdaptiveMachine' => ['description' => 'The compatible machine model.', 'type' => 'string', 'example' => '72核256G', 'title' => ''], 'LicenseSpecCode' => ['description' => 'The authorization commodity code.', 'type' => 'string', 'example' => 'aics_1000', 'title' => ''], 'LicenseSpecType' => ['description' => 'The license commodity type.', 'type' => 'string', 'example' => 'edge_license', 'title' => ''], 'CpuLimit' => ['description' => 'The maximum number of CPU cores allowed.', 'type' => 'integer', 'format' => 'int32', 'example' => '72', 'title' => ''], 'MemoryLimit' => ['description' => 'The memory limit (GB).', 'type' => 'integer', 'format' => 'int32', 'example' => '256', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'c31238fcb74e482588a72de90cd7dba3', 'title' => ''], 'AllDuration' => ['description' => 'The total activation duration.', 'type' => 'string', 'example' => '1年', 'title' => ''], 'ApplicableSpecs' => ['description' => 'The applicable specifications.', 'type' => 'string', 'example' => '72核256G', 'title' => ''], 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '""', 'title' => ''], 'UnActivateAllDuration' => ['description' => 'The unactivated duration.', 'type' => 'string', 'example' => '1个月', 'title' => ''], 'Proposal' => ['description' => 'The suggestion.', 'type' => 'string', 'example' => '最大用量建议(72核256G)', 'title' => ''], 'ActivateRecord' => [ 'description' => 'The list of activation records.', 'type' => 'array', 'items' => [ 'description' => 'The activation record.', 'type' => 'object', 'properties' => [ 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '1040b91765d14ad1a40ff22589070342', 'title' => ''], 'BuyTime' => ['description' => 'The purchase time.', 'type' => 'string', 'example' => '2024-04-29 15:01:15'."\n", 'title' => ''], 'ActivateTime' => ['description' => 'The activation time.', 'type' => 'string', 'example' => '2024-04-29 15:03:12'."\n", 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2025-05-01 00:00:00'."\n", 'title' => ''], 'Duration' => ['description' => 'The authorization duration.', 'type' => 'string', 'example' => '1年', 'title' => ''], 'Status' => ['description' => 'The status.', 'type' => 'string', 'example' => 'activated', 'title' => ''], 'LicenseCode' => ['description' => 'The authorization code.', 'type' => 'string', 'example' => 'XXXX', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'AccessDeniedDetail' => ['description' => 'The details about the access denial.', 'type' => 'string', 'example' => 'None', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Data\\": {\\n \\"Id\\": 1,\\n \\"LicenseSpecName\\": \\"边缘端1000型运行节点授权\\",\\n \\"BuyTime\\": \\"2024-04-29 15:01:15\\",\\n \\"ActivateTime\\": \\"2024-04-29 15:03:12\\",\\n \\"Fingerprint\\": \\"XXX\\",\\n \\"LicenseCode\\": \\"XXX\\",\\n \\"EffectTime\\": \\"2024-05-01 00:00:00\\",\\n \\"ExpireTime\\": \\"2025-05-01 00:00:00\\",\\n \\"Duration\\": \\"2个月9天\\",\\n \\"Status\\": \\"activated\\",\\n \\"AdaptiveMachine\\": \\"72核256G\\",\\n \\"LicenseSpecCode\\": \\"aics_1000\\",\\n \\"LicenseSpecType\\": \\"edge_license\\",\\n \\"CpuLimit\\": 72,\\n \\"MemoryLimit\\": 256,\\n \\"InstanceId\\": \\"c31238fcb74e482588a72de90cd7dba3\\",\\n \\"AllDuration\\": \\"1年\\",\\n \\"ApplicableSpecs\\": \\"72核256G\\",\\n \\"Description\\": \\"\\\\\\"\\\\\\"\\",\\n \\"UnActivateAllDuration\\": \\"1个月\\",\\n \\"Proposal\\": \\"最大用量建议(72核256G)\\",\\n \\"ActivateRecord\\": [\\n {\\n \\"OrderId\\": \\"1040b91765d14ad1a40ff22589070342\\",\\n \\"BuyTime\\": \\"2024-04-29 15:01:15\\\\n\\",\\n \\"ActivateTime\\": \\"2024-04-29 15:03:12\\\\n\\",\\n \\"ExpireTime\\": \\"2025-05-01 00:00:00\\\\n\\",\\n \\"Duration\\": \\"1年\\",\\n \\"Status\\": \\"activated\\",\\n \\"LicenseCode\\": \\"XXXX\\"\\n }\\n ]\\n },\\n \\"HttpStatusCode\\": 200,\\n \\"AccessDeniedDetail\\": \\"None\\"\\n}","type":"json"}]', 'title' => 'Retrieve license details', 'changeSet' => [ ['createdAt' => '2025-01-10T02:52:16.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2024-05-29T08:12:36.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-04-29T06:06:37.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'brain-industrial:GetLicense', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], ], ], 'ListAivppResources' => [ 'summary' => 'Retrieves the list of AIVPP resources for a user.', 'path' => '', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrial1ZR6M2'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'MaxResults', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The number of entries to return per page. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'example' => '20', 'default' => '20', 'required' => false], ], [ 'name' => 'CurrentPage', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The current page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'example' => '1', 'default' => '1', 'required' => false], ], [ 'name' => 'InstanceType', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The instance type. Valid values:'."\n" .'- API: API type.'."\n" .'- DATA: time series data type.', 'type' => 'string', 'example' => 'DATA', 'default' => 'API', 'enum' => ['API', 'DATA'], 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'Success' => ['title' => '', 'description' => 'Indicates whether the call was successful.'."\n" ."\n" .'- **True**: The call was successful.'."\n" .'- **False**: The call failed.', 'type' => 'string', 'example' => 'True'], 'Code' => ['title' => '', 'description' => 'The status code.'."\n" ."\n" .'> 200 indicates success.', 'type' => 'string', 'example' => '200'], 'Message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'successful'], 'Data' => [ 'title' => '', 'description' => 'The list of resources.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The list of resources.', 'type' => 'object', 'properties' => [ 'InstanceId' => ['title' => '', 'description' => 'The resource instance ID.', 'type' => 'string', 'example' => 'i-bp154xh3gt3adb4xu1ue'], 'Specification' => ['title' => '', 'description' => 'The specification.', 'type' => 'string', 'example' => 'LoadForecasting'], 'OrderId' => ['title' => '', 'description' => 'The order ID.', 'type' => 'string', 'example' => '231287932080007'], 'UserId' => ['title' => '', 'description' => 'The user ID.', 'type' => 'string', 'example' => '123456789'], 'Quantity' => ['title' => '', 'description' => 'The total number of calls allowed for the resource specification.', 'type' => 'string', 'example' => '1'], 'LeftQuantity' => ['title' => '', 'description' => 'The remaining number of calls available.', 'type' => 'string', 'example' => '1'], 'Status' => ['title' => '', 'description' => 'The status.', 'type' => 'string', 'example' => 'Normal'], 'StartTime' => ['title' => '', 'description' => 'The activation date.', 'type' => 'string', 'example' => '2024-09-08T01:16Z'], 'ExpireTime' => ['title' => '', 'description' => 'The expiration date.', 'type' => 'string', 'example' => '2034-03-09T17:47:11Z'], 'InstanceType' => ['description' => 'The commodity type.', 'type' => 'string', 'example' => 'api', 'title' => ''], 'Detail' => ['description' => 'The specification details.', 'type' => 'string', 'example' => '规格: LoadForecasting,api数量:50', 'title' => ''], 'ConnectNum' => ['title' => '', 'description' => 'The time series data specification: the number of online devices.', 'type' => 'integer', 'format' => 'int32', 'example' => '10000'], 'MessageTps' => ['title' => '', 'description' => 'The time series data specification: the message TPS.', 'type' => 'integer', 'format' => 'int32', 'example' => '500'], 'ConsoleUrl' => ['title' => '', 'description' => 'The console access URL.', 'type' => 'string', 'example' => 'industry-brain.aliyun.com'], ], 'example' => '', ], 'example' => '', ], 'MaxResults' => ['title' => '', 'description' => 'The number of entries per page for paginated queries. Valid values: 1 to 100. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], 'NextToken' => ['title' => '', 'description' => 'The token for the next query.', 'type' => 'string', 'example' => '37cc36b4344b182d36b45d95ae4ef03952ee5c24733ba461'], 'TotalCount' => ['title' => '', 'description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '30'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"Success\\": \\"True\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": [\\n {\\n \\"InstanceId\\": \\"i-bp154xh3gt3adb4xu1ue\\",\\n \\"Specification\\": \\"LoadForecasting\\",\\n \\"OrderId\\": \\"231287932080007\\",\\n \\"UserId\\": \\"123456789\\",\\n \\"Quantity\\": \\"1\\",\\n \\"LeftQuantity\\": \\"1\\",\\n \\"Status\\": \\"Normal\\",\\n \\"StartTime\\": \\"2024-09-08T01:16Z\\",\\n \\"ExpireTime\\": \\"2034-03-09T17:47:11Z\\",\\n \\"InstanceType\\": \\"api\\",\\n \\"Detail\\": \\"规格: LoadForecasting,api数量:50\\",\\n \\"ConnectNum\\": 10000,\\n \\"MessageTps\\": 500,\\n \\"ConsoleUrl\\": \\"industry-brain.aliyun.com\\"\\n }\\n ],\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"37cc36b4344b182d36b45d95ae4ef03952ee5c24733ba461\\",\\n \\"TotalCount\\": 30\\n}","type":"json"}]', 'title' => 'Query AIVPP resource list', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'brain-industrial:ListAivppResources', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListLicenses' => [ 'summary' => 'Queries the list of licenses.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrialGARA6B'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'CurrentPage', 'in' => 'formData', 'schema' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'formData', 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12', 'title' => ''], ], [ 'name' => 'QueryStr', 'in' => 'formData', 'schema' => ['description' => 'The keyword of the commodity name. You can perform a fuzzy match based on this keyword.', 'type' => 'string', 'required' => false, 'example' => '边缘端1000型', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '42', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FAC892CE-5A94-5616-91DC-629B09CC6792', 'title' => ''], 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '12', 'title' => ''], 'CurrentPage' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'string', 'example' => '4', 'title' => ''], 'TotalPageCount' => ['description' => 'The total number of pages.', 'type' => 'string', 'example' => '4', 'title' => ''], 'Code' => ['description' => 'The status code.'."\n" ."\n" .'> 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Success' => ['description' => 'Indicates whether the call was successful.'."\n" ."\n" .'- **true**: The call was successful.'."\n" .'- **false**: The call failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'LicenseList' => [ 'description' => 'The license list.', 'type' => 'array', 'items' => [ 'description' => 'The license information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The license ID.', 'type' => 'string', 'example' => '1', 'title' => ''], 'LicenseSpecName' => ['description' => 'The license specification name.', 'type' => 'string', 'example' => '边缘端1000型运行节点授权', 'title' => ''], 'LicenseSpecType' => ['description' => 'The license commodity type.', 'type' => 'string', 'example' => 'brainindustrial_aicsruntime_public_cn', 'title' => ''], 'LicenseSpecCode' => ['description' => 'The license commodity code.', 'type' => 'string', 'example' => 'aics_1000', 'title' => ''], 'BuyTime' => ['description' => 'The purchase time.', 'type' => 'string', 'example' => '2024-10-14 13:17:20', 'title' => ''], 'ActivateTime' => ['description' => 'The activation time.', 'type' => 'string', 'example' => '2024-10-14 14:15:45', 'title' => ''], 'EffectTime' => ['description' => 'The effective period.', 'type' => 'string', 'example' => '2024-10-14 14:15:45', 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2025-10-14 14:15:45', 'title' => ''], 'Duration' => ['description' => 'The remaining duration after activation.', 'type' => 'string', 'example' => '7个月23天', 'title' => ''], 'AdaptiveMachine' => ['description' => 'The authorized machine model.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Status' => ['description' => 'The status.', 'type' => 'string', 'example' => 'activated', 'title' => ''], 'MemoryLimit' => ['description' => 'The memory upper limit, in GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '256', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => '451f14ee73604aesdfe4da606764ce09', 'title' => ''], 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => '""', 'title' => ''], 'AllDuration' => ['description' => 'The total duration after activation.', 'type' => 'string', 'example' => '1年', 'title' => ''], 'CpuLimit' => ['description' => 'The maximum number of CPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '72', 'title' => ''], 'UnActivateAllDuration' => ['description' => 'The duration before activation.', 'type' => 'string', 'example' => '1个月', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'AccessDeniedDetail' => ['description' => 'The detailed reason why access was denied.', 'type' => 'string', 'example' => '{}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 42,\\n \\"RequestId\\": \\"FAC892CE-5A94-5616-91DC-629B09CC6792\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 12,\\n \\"CurrentPage\\": 1,\\n \\"TotalPage\\": \\"4\\",\\n \\"TotalPageCount\\": \\"4\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": true,\\n \\"LicenseList\\": [\\n {\\n \\"Id\\": \\"1\\",\\n \\"LicenseSpecName\\": \\"边缘端1000型运行节点授权\\",\\n \\"LicenseSpecType\\": \\"brainindustrial_aicsruntime_public_cn\\",\\n \\"LicenseSpecCode\\": \\"aics_1000\\",\\n \\"BuyTime\\": \\"2024-10-14 13:17:20\\",\\n \\"ActivateTime\\": \\"2024-10-14 14:15:45\\",\\n \\"EffectTime\\": \\"2024-10-14 14:15:45\\",\\n \\"ExpireTime\\": \\"2025-10-14 14:15:45\\",\\n \\"Duration\\": \\"7个月23天\\",\\n \\"AdaptiveMachine\\": 1,\\n \\"Status\\": \\"activated\\",\\n \\"MemoryLimit\\": 256,\\n \\"InstanceId\\": \\"451f14ee73604aesdfe4da606764ce09\\",\\n \\"Description\\": \\"\\\\\\"\\\\\\"\\",\\n \\"AllDuration\\": \\"1年\\",\\n \\"CpuLimit\\": 72,\\n \\"UnActivateAllDuration\\": \\"1个月\\"\\n }\\n ],\\n \\"HttpStatusCode\\": 200,\\n \\"AccessDeniedDetail\\": \\"{}\\"\\n}","type":"json"}]', 'title' => 'Query license list', 'changeSet' => [ ['createdAt' => '2025-01-10T02:52:16.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2024-04-29T06:06:37.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'brain-industrial:ListLicenses', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], ], ], 'ListUserResources' => [ 'summary' => 'Retrieves the resources of a user.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrialGARA6B'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'CommodityCode', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The commodity code.', 'type' => 'string', 'required' => false, 'example' => 'BrainIndustrial'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '65308A66-8764-53EE-8D4A-201E86CA88C5'], 'Success' => ['description' => 'Indicates whether the call was successful.'."\n" ."\n" .'- **true**: The call was successful.'."\n" .'- **false**: The call failed.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'Code' => ['description' => 'The status code.'."\n" ."\n" .'> 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'Data' => [ 'description' => 'The resources.', 'type' => 'array', 'items' => [ 'description' => 'The resource instance.', 'type' => 'object', 'properties' => [ 'startDate' => ['description' => 'The start time.', 'type' => 'string', 'example' => '20240902', 'title' => ''], 'endDate' => ['description' => 'The end time.', 'type' => 'string', 'example' => '2024-12-21', 'title' => ''], 'region' => ['description' => 'The region.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'status' => ['description' => 'The status.', 'type' => 'string', 'example' => '""', 'title' => ''], 'instanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => '12345ea3cff446e8837078c2baffbe83', 'title' => ''], 'chargeType' => ['description' => 'The billing type.', 'type' => 'string', 'example' => 'PREPAY', 'title' => ''], 'commodityCode' => ['description' => 'The commodity code.', 'type' => 'string', 'example' => 'brainindustrial_simupostpaid_public_cn', 'title' => ''], 'statusMsg' => ['description' => 'The status message.', 'type' => 'string', 'example' => '""', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'AccessDeniedDetail' => ['description' => 'The details about the access denial. This field is returned only when RAM authentication fails.', 'type' => 'string', 'example' => 'None', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65308A66-8764-53EE-8D4A-201E86CA88C5\\",\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": [\\n {\\n \\"startDate\\": \\"20240902\\",\\n \\"endDate\\": \\"2024-12-21\\",\\n \\"region\\": \\"cn-hangzhou\\",\\n \\"status\\": \\"\\\\\\"\\\\\\"\\",\\n \\"instanceId\\": \\"12345ea3cff446e8837078c2baffbe83\\",\\n \\"chargeType\\": \\"PREPAY\\",\\n \\"commodityCode\\": \\"brainindustrial_simupostpaid_public_cn\\",\\n \\"statusMsg\\": \\"\\\\\\"\\\\\\"\\"\\n }\\n ],\\n \\"HttpStatusCode\\": 200,\\n \\"AccessDeniedDetail\\": \\"None\\"\\n}","type":"json"}]', 'title' => 'Query resource list', 'changeSet' => [ ['createdAt' => '2025-01-10T02:52:16.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2021-03-29T07:54:19.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'brain-industrial:ListUserResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], ], ], 'UpdateLicenseDescription' => [ 'summary' => 'Topik ini menjelaskan sintaks dan memberikan contoh fitur deteksi kanker lambung (ScreenGC) dalam kategori analisis dan pemrosesan gambar (imageprocess).', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREbrainindustrialGARA6B'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'formData', 'schema' => ['type' => 'string', 'title' => '', 'description' => '', 'required' => false, 'example' => 'brainindustrial_aicsruntime_public_cn-mdu3ps3kw04'], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => '华新水泥-阳江厂授权', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Skema Tanggapan.', 'type' => 'object', 'properties' => [ 'Code' => ['type' => 'string', 'description' => '', 'example' => '200', 'title' => ''], 'Success' => ['type' => 'string', 'description' => '', 'example' => 'True', 'title' => ''], 'Message' => ['description' => 'Paket yang dikembalikan setelah Tugas asinkron dikirimkan.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['title' => '', 'description' => 'ID permintaan.', 'type' => 'string', 'example' => '68738E75-43C1-5AE5-9F3A-AFEF576D7B5F'], 'HttpStatusCode' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'example' => '200', 'title' => ''], 'AccessDeniedDetail' => ['type' => 'string', 'description' => '', 'example' => 'None', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'RamAuthenticationFailed', 'errorMessage' => 'RAM authentication failed.', 'description' => 'RAM authentication failed.'], ], 500 => [ ['errorCode' => 'SystemError', 'errorMessage' => '%s.', 'description' => 'Error message'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"True\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"68738E75-43C1-5AE5-9F3A-AFEF576D7B5F\\",\\n \\"HttpStatusCode\\": 200,\\n \\"AccessDeniedDetail\\": \\"None\\"\\n}","type":"json"}]', 'title' => 'Deteksi kanker lambung', 'description' => '## Deskripsi operasi'."\n" .'Karena penyesuaian bisnis Produk, layanan deteksi kanker lambung akan dimigrasikan ke situs web [Pencitraan Medis DAMO](https://damomed.com) Akademi DAMO Alibaba. Mulai 26 November 2025, pengguna baru tidak dapat lagi mengaktifkan atau memanggil layanan ini. Pengguna yang sudah ada yang sebelumnya telah mengaktifkan layanan ini dapat terus menggunakannya. Setelah 26 November 2026, layanan ini akan dihapus dari daftar dan tidak akan lagi tersedia untuk pengguna mana pun di Platform Terbuka Visual Intelligence. Jika Anda memiliki pertanyaan tentang migrasi layanan, kunjungi situs web [Pencitraan Medis DAMO](https://damomed.com) Akademi DAMO Alibaba untuk menghubungi personel terkait.'."\n" ."\n" .'## Deskripsi fitur'."\n" .'Algoritma deteksi kanker lambung dapat mendeteksi lesi kanker lambung dan non-kanker lambung berdasarkan pemindaian CT tanpa kontras yang mencakup lambung (seperti pemindaian CT tanpa kontras dada atau perut). Secara khusus, algoritma ini:'."\n" .'- Menghasilkan hasil diagnostik, termasuk sehat, kanker lambung, dan lesi non-kanker lambung.'."\n" .'- Menghasilkan probabilitas setiap hasil diagnostik.'."\n" .'- Menghasilkan volume setiap hasil diagnostik dan menampilkan wilayah yang sesuai (diidentifikasi oleh file NIFTI).'."\n" ."\n" .'> - Anda dapat mengunjungi [Konsultasi Online](https://www.aliyun.com/core/online-consult?from=aZgW6LJHr2) untuk bantuan online.'."\n" .'- Untuk mengakses operasi API AI visual Platform Terbuka Visual Intelligence Alibaba Cloud, mempelajari Penggunaan API, atau berkonsultasi mengenai masalah, bergabunglah dengan kelompok konsultasi DingTalk Platform Terbuka Visual Intelligence Alibaba Cloud (23109592) untuk menghubungi kami.'."\n" ."\n" .'## Skenario umum'."\n" .'Skrining pemeriksaan fisik: Mendukung masukan berupa pemindaian CT tanpa kontras dada dan perut untuk menilai risiko kanker lambung. Fitur ini dapat menghasilkan hasil Kategorisasi dan hasil segmentasi lesi.'."\n" ."\n" .'## Keunggulan'."\n" .'- Penilaian risiko kanker lambung: Menyediakan probabilitas keberadaan kanker lambung dan mengevaluasi tingkat keparahan kanker lambung.'."\n" .'- Visualisasi lesi: Menghasilkan volume kanker lambung dan hasil segmentasi yang sesuai (diidentifikasi oleh file NIFTI).'."\n" ."\n" .'## Batas masukan'."\n" .'Panjang URLList harus lebih dari 20 dan kurang dari 600 (artinya, setiap seri harus berisi minimal 20 irisan dan maksimal 600 irisan). Setiap URL harus dapat diakses melalui HTTP.'."\n" ."\n" .'## Prosedur'."\n" .'Fitur ini bersifat asinkron dan memerlukan dua langkah.'."\n" .'Langkah 1: Panggil operasi ScreenGC untuk mengirimkan Tugas. Jika permintaan berhasil, ID Tugas akan dikembalikan.'."\n" .'Langkah 2: Panggil operasi [GetAsyncJobResult](~~607824~~) untuk mengkueri hasil berdasarkan ID Tugas. Jika Tugas masih diproses, tunggu sebentar sebelum mengkueri lagi. Jangan mengirimkan Tugas duplikat saat Tugas yang sama masih diproses.'."\n" ."\n" .'## Deskripsi penagihan'."\n" .'Fitur deteksi kanker lambung saat ini berada dalam pratinjau publik dan dapat dipanggil secara gratis.', 'changeSet' => [ ['createdAt' => '2025-01-10T02:52:16.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'brain-industrial:UpdateLicenseDescription', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], ], 'extraInfo' => '## Kode error'."\n" .'Untuk kode error deteksi kanker lambung, lihat [Kode error umum](~~159693~~).'."\n" ."\n" .'## Pemberitahuan keamanan'."\n" .'- Pastikan gambar atau file yang diunggah mematuhi hukum dan peraturan yang berlaku.'."\n" .'- File sementara yang diunggah melalui konsol debug berlaku selama 1 jam dan akan dihapus secara otomatis oleh sistem setelah 24 jam.', 'responseParamsDescription' => '## Hasil kueri'."\n" .'Ini adalah operasi asinkron. Tanggapan saat ini tidak berisi hasil aktual. Panggil operasi GetAsyncJobResult dengan RequestId yang dikembalikan untuk mendapatkan hasil aktual. Untuk informasi lebih lanjut, lihat [GetAsyncJobResult](~~607824~~).'."\n" ."\n" .'## Referensi SDK'."\n" .'Kami menyarankan Anda menggunakan SDK untuk memanggil fitur deteksi kanker lambung dalam kategori analisis dan pemrosesan gambar Alibaba Cloud Visual AI. SDK tersedia dalam beberapa bahasa pemrograman. Saat memanggil fitur ini, pilih paket SDK dengan kategori AI yang disetel ke analisis dan pemrosesan gambar (imageprocess). SDK mendukung file lokal dan URL arbitrer untuk parameter file. Untuk informasi lebih lanjut, lihat [Ringkasan SDK](~~145033~~).'."\n" ."\n" .'## Kode contoh'."\n" .'Untuk kode contoh dalam bahasa pemrograman umum untuk mengkueri hasil Tugas asinkron, lihat [Kode contoh untuk mengkueri hasil Tugas asinkron](~~607974~~).', ], ], 'endpoints' => [ ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'brain-industrial.cn-hangzhou.aliyuncs.com', 'endpoint' => 'brain-industrial.cn-hangzhou.aliyuncs.com', 'vpc' => 'brain-industrial-vpc.cn-hangzhou.aliyuncs.com'], ], 'errorCodes' => [ ['code' => 'AUTH_RUNTIME_TEST_NO_AUTH_ERROR', 'message' => 'RAM authentication failed.', 'http_code' => 403, 'description' => 'RAM authentication failed.'], ['code' => 'DuplicatedRequest', 'message' => 'The request is duplicated.', 'http_code' => 500, 'description' => ''], ['code' => 'IdempotentParameterMismatch', 'message' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.', 'http_code' => 400, 'description' => ''], ['code' => 'IllegalAuth', 'message' => 'You are not authorized to perform this operation.', 'http_code' => 500, 'description' => ''], ['code' => 'InternalError', 'message' => 'Internal error.', 'http_code' => 500, 'description' => ''], ['code' => 'InvalidParameter', 'message' => 'The specified parameter is invalid. Please check the parameter.', 'http_code' => 500, 'description' => ''], ['code' => 'NoNormalResource', 'message' => 'There is no normal resource.', 'http_code' => 403, 'description' => 'No resources available'], ['code' => 'NotAuthorized', 'message' => 'You are not authorized to perform the operation. Please authorize in RAM first and try again.', 'http_code' => 200, 'description' => ''], ['code' => 'NO_NORMAL_RESOURCE', 'message' => 'There is no normal resource.', 'http_code' => 403, 'description' => 'No resources available'], ['code' => 'QueryDataFailed', 'message' => 'Failed to query data. Try again later.', 'http_code' => 500, 'description' => ''], ['code' => 'RamAuthenticationFailed', 'message' => 'RAM user authentication failed. Please try again later.', 'http_code' => 200, 'description' => ''], ['code' => 'RamAuthenticationFailed', 'message' => 'RAM authentication failed.', 'http_code' => 403, 'description' => 'RAM authentication failed.'], ['code' => 'StsAuthenticationFailed', 'message' => 'STS token authentication failed. Please try again later.', 'http_code' => 200, 'description' => ''], ['code' => 'SystemError', 'message' => 'System error. Try again later.', 'http_code' => 500, 'description' => ''], ['code' => 'SystemError', 'message' => '%s.', 'http_code' => 500, 'description' => 'Error message'], ], 'changeSet' => [ [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'GetLicense'], ], 'createdAt' => '2024-05-29T08:12:38.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed, Response parameters changed', 'api' => 'ActivateLicense'], ['description' => 'Error codes changed, Request parameters changed, Response parameters changed', 'api' => 'GetLicense'], ['description' => 'Error codes changed, Response parameters changed', 'api' => 'ListLicenses'], ], 'createdAt' => '2024-04-29T06:06:40.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'AddParameterToPidLoop'], ['description' => 'Error codes changed', 'api' => 'AddPidLoopToSchedule'], ['description' => 'Error codes changed', 'api' => 'CreatePidLoop'], ['description' => 'Error codes changed', 'api' => 'DeletePidLoop'], ['description' => 'Error codes changed', 'api' => 'DeletePidProject'], ['description' => 'Error codes changed', 'api' => 'DeletePoint'], ['description' => 'Error codes changed', 'api' => 'GetCustomIdentValues'], ['description' => 'Error codes changed', 'api' => 'GetDailyReportChart'], ['description' => 'Error codes changed', 'api' => 'GetDailyReportDataTrend'], ['description' => 'Error codes changed', 'api' => 'GetDailyReportInfo'], ], 'createdAt' => '2023-12-11T07:24:12.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CreatePidOrganization'], ['description' => 'Error codes changed', 'api' => 'CreatePidProject'], ['description' => 'Error codes changed', 'api' => 'DeletePidOrganization'], ['description' => 'Error codes changed', 'api' => 'GetIgateList'], ['description' => 'Error codes changed', 'api' => 'GetPidOrganizationParentIds'], ['description' => 'Error codes changed', 'api' => 'GetPidProjectReportOverview'], ['description' => 'Error codes changed', 'api' => 'GetPointList'], ['description' => 'Error codes changed', 'api' => 'GetSelectPointList'], ], 'createdAt' => '2023-10-12T08:01:31.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'ListUserResources'], ], 'createdAt' => '2021-03-29T09:05:52.000Z', 'description' => 'commodity code', ], ], 'ram' => [ 'productCode' => 'BrainIndustrial', 'productName' => 'brainindustrial', 'ramCodes' => ['brain-industrial'], 'ramLevel' => 'RESOURCE', 'ramConditions' => [], 'ramActions' => [ [ 'apiName' => 'ActivateLicense', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'brain-industrial:ActivateLicense', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], [ 'apiName' => 'GetAivppAlgoJob', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'brain-industrial:GetAivppAlgoJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateLoadForecastJob', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreateLoadForecastJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreatePowerForecastByFileUrlJob', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreatePowerForecastByFileUrlJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListLicenses', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'brain-industrial:ListLicenses', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], [ 'apiName' => 'GetLicense', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'brain-industrial:GetLicense', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], [ 'apiName' => 'AicsOpenApiInvoke', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:AicsOpenApiInvoke', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'UpdateLicenseDescription', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'brain-industrial:UpdateLicenseDescription', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], [ 'apiName' => 'CreateLoadForecastByFileUrlJob', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreateLoadForecastByFileUrlJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListAivppResources', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'brain-industrial:ListAivppResources', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateEssOptJob', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreateEssOptJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListUserResources', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'brain-industrial:ListUserResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'BrainIndustrial', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ], [ 'apiName' => 'CreatePowerForecastJob', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'brain-industrial:CreatePowerForecastJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'BrainIndustrial', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'resourceTypes' => [ ['validationType' => 'conditional', 'resourceType' => 'PidOrganization', 'arn' => 'acs:brain-industrial::{#accountId}:none/{#none}'], ], ], ];