创建场景文件-CreateSceneFile
创建场景文件
功能介绍
本接口用于创建仿真场景文件。平台会根据文件sha256值判断场景文件是否已存在,如果场景文件不存在,则返回预签链接用于上传场景文件。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,需具备如下身份策略权限。
授权项
访问级别
资源类型(*为必须)
条件键
别名
依赖的授权项
octopus:simScenario:create
Write
-
-
-
-
URI
POST https://{hostURL}/v2/{project_id}/sim/sm/scenarios/{parent_lookup_id}/files
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| parent_lookup_id | 是 | String | 参数解释: 场景ID。 约束限制: 场景需已创建,如未创建则可以通过场景创建接口进行创建。 取值范围: 不涉及 默认取值: 不涉及 |
| project_id | 是 | String | 参数解释: 项目ID,获取方法请参见获取项目ID。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| sha256 | 是 | String | 参数解释: 文件SHA256值。 约束限制: 必须是有效的SHA256字符串,可以使用本地哈希工具计算文件的SHA256值。 取值范围: 不涉及。 默认取值: 不涉及 |
| filename | 是 | String | 参数解释: 场景文件名。 约束限制: 场景文件为OpenSCENARIO格式。 取值范围: 长度范围[0-255]。 默认取值: 不涉及 |
响应参数
状态码:201
| 参数 | 参数类型 | 描述 |
|---|---|---|
| url | String | 参数解释: 文件资源地址。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及 |
| sha256 | String | 参数解释: 文件SHA256值。 约束限制: 必须是有效的SHA256字符串,可以使用本地哈希工具计算文件的SHA256值。 取值范围: 不涉及。 默认取值: 不涉及 |
| created_at | Double | 参数解释: 创建时间。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| updated_at | Double | 参数解释: 更新时间。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| post | post object | 参数解释: POST预签链接信息,用于上传文件。 约束限制: 不涉及 |
| put_url | String | 参数解释: PUT预签链接地址,用于上传文件。优先使用POST方法上传。 约束限制: 不涉及 取值范围: 不涉及。 默认取值: 不涉及 |
| get_url | String | 参数解释: GET地址,用于下载文件。 约束限制: 不涉及 取值范围: 不涉及。 默认取值: 不涉及 |
| expire | Integer | 参数解释: 预签链接失效时长。 约束限制: 不涉及。 取值范围: 大于0 默认取值: 600 |
| ready | Boolean | 参数解释: 文件上传状态。 约束限制: 当前未使用该参数。 取值范围: · true:上传完成 · false:上传未完成 默认取值: 不涉及 |
| filename | String | 参数解释: 场景文件名。 约束限制: 场景文件为OpenSCENARIO格式。 取值范围: 长度范围[0-255]。 默认取值: 不涉及 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| url | String | 参数解释: 下一页结果集资源地址。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及 |
| fields | PostResponseField object | 参数解释: POST上传签名信息,需要在请求时携带。 约束限制: 不涉及 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| key | String | 参数解释: Post预签链接Key字段,在创建请求时需要添加到请求头。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
| x-amz-algorithm | String | 参数解释: Post预签链接x-amz-algorithm字段,在创建请求时需要添加到请求头。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
| x-amz-credential | String | 参数解释: Post预签链接x-amz-credential字段,在创建请求时需要添加到请求头。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
| x-amz-date | String | 参数解释: Post预签链接x-amz-date字段,在创建请求时需要添加到请求头。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
| policy | String | 参数解释: Post预签链接policy字段,在创建请求时需要添加到请求头。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
| x-amz-signature | String | 参数解释: Post预签链接x-amz-signature字段,在创建请求时需要添加到请求头。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
请求示例
创建场景文件
POST https://{endpoint}/v2/{project_id}/sim/sm/scenarios/{id}/files/
{
"sha256" : "0fb50a138fb132be3c794eb423375cca3263fe35a33063c06a4821819ab7fc85",
"filename" : "ALKS_Scenario_4.1_1_FreeDriving_TEMPLATE.xosc"
} 响应示例
状态码:201
请求成功
{
"url" : "/v2/my_project_id/sim/sm/scenarios/361/files/0fb50a138fb132be3c794eb423375cca3263fe35a33063c06a4821819ab7fc85/",
"sha256" : "0fb50a138fb132be3c794eb423375cca3263fe35a33063c06a4821819ab7fc85",
"created_at" : 1.699954029767271E9,
"updated_at" : 1.699954029767295E9,
"post" : {
"url" : "my-post-url",
"fields" : {
"key" : "sim/ifiles/file/0fb50a138fb132be3c794eb423375cca3263fe35a33063c06a4821819ab7fc85.xosc",
"x-amz-algorithm" : "AWS4-HMAC-SHA256",
"x-amz-credential" : "my-amz-credential",
"x-amz-date" : "20231114T092710Z",
"policy" : "my-policy",
"x-amz-signature" : "my-x-amz-signature"
}
},
"put_url" : "my-put-url",
"get_url" : null,
"expire" : 600,
"ready" : false,
"filename" : "ALKS_Scenario_4.1_1_FreeDriving_TEMPLATE.xosc"
} 状态码
| 状态码 | 描述 |
|---|---|
| 201 | 请求成功 |
错误码
请参见错误码。