文档首页/ 视频智能分析服务 VIAS/ API参考/ 算法API(仅存量用户使用)/ 云上服务API/ 创建云上视频车辆作业-CreateVehicleDetectionCloudTasks
更新时间:2025-12-18 GMT+08:00
分享

创建云上视频车辆作业-CreateVehicleDetectionCloudTasks

功能介绍

该接口用于创建云上视频车辆作业。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/{project_id}/services/c-vehicle-detection-cloud/tasks

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

用户项目ID。获取方法参见获取项目ID和名称

约束限制:

不涉及。

取值范围:

只能由英文字母和数字组成,且长度为[1-64]个字符。

默认取值:

不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token,获取方法参见认证鉴权

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

参数解释:

作业名称。

约束限制:

不涉及。

取值范围:

只能由中文、字母(a~z A~Z)、数字(0~9)、中划线(-)、下划线(_)组成。长度限制为[1,100]个字符。

默认取值:

不涉及。

description

String

参数解释:

作业描述信息。

约束限制:

不涉及。

取值范围:

长度限制为[0,500]个字符。

默认取值:

不涉及。

schedule

TaskSchedule object

参数解释:

定时任务参数,定时周期仅支持周模式。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

input

TaskInput object

参数解释:

作业的输入配置。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

output

TaskOutput object

参数解释:

作业的输出配置,至少需要配置一项输出方式。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

config

VehicleServiceConfig object

参数解释:

作业配置参数。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

service_version

String

参数解释:

服务版本号。

约束限制:

不涉及。

取值范围:

输入需要满足正则:^[a-z0-9.]{3,32}$。

默认取值:

不涉及。

is_saved_as_template

Boolean

参数解释:

是否把作业配置保存成模板。

约束限制:

不涉及。

取值范围:

  • true:把作业配置保存成模板。

  • false:不把作业配置保存成模板。

默认取值:

不涉及。

resource_order_id

String

参数解释:

资源订单id,与关联算法挂钩。非商用白名单的算法就不用填,商用算法就为必填项。

约束限制:

非商用白名单的算法就不用填,商用算法就为必填项。

取值范围:

输入需要满足正则:^[a-z0-9-_]{4,36}$。

默认取值:

不涉及。

表4 TaskSchedule

参数

是否必选

参数类型

描述

type

String

参数解释:

计划任务的类型。

约束限制:

使用计划任务时必填。

取值范围:

可选类型为weekly(每周执行),monthly(每月执行)。

默认取值:

不涉及。

timezone

String

参数解释:

用户所处的时区,精确到分钟。

约束限制:

使用计划任务时必填。

取值范围:

不涉及。

默认取值:

不涉及。

days_of_week

Array of integers

参数解释:

作业会在一周的哪几天执行,1~7分别指代星期一至星期日。

约束限制:

当且仅当计划任务类型为weekly时,该字段需填且必填。

取值范围:

最小值:1

最大值:7

数组长度:1 - 7

默认取值:

不涉及。

days_of_month

Array of integers

参数解释:

作业会在一个月的哪几天执行,1~31分别指代一个月中的1日至31日。

约束限制:

当且仅当计划任务类型为monthly时,该字段需填且必填。

取值范围:

最小值:1

最大值:31

默认取值:

不涉及。

periods

Array<Array<>>

参数解释:

时间段模式配置,指定周计划或者月计划中具体每天作业的执行时间段,至少需指定一个时间段。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表5 TaskInput

参数

是否必选

参数类型

描述

type

String

参数解释:

作业的输入类型,创建时必填,编辑时video_source 模式不支持切换为其他IVA模式的type。创建时可选类型有obs(对象存储服务存储的文件仅云上作业支持), url(指定的文件地址或取流地址 仅云上作业支持), edgecamera(绑定在IEF的边缘摄像头仅边缘作业支持),restful(从自定义的流媒体服务器通过Restful接口获取流地址。云上,边缘均作业支持), vcn(VCN设备仅边缘作业支持),video_source(视频源类型),建议使用video_source类型,其他类型为了兼容老业务,后续将废弃。

约束限制:

不涉及。

取值范围:

枚举值:

  • video_source

  • obs(不建议使用,后续废弃)

  • url(不建议使用,后续废弃)

  • edgecamera(不建议使用,后续废弃)

  • restful(不建议使用,后续废弃)

  • vcn(不建议使用,后续废弃)

默认取值:

不涉及。

data

Array of TaskInputData objects

参数解释:

作业的输入详情,必填。针对不同的输入类型有不同的配置。创建时允许填写多路输入,但更新时只允许填写一路输入。

约束限制:

  • 当输入类型为:obs,需要配置 bucket,path , index 。例如: "bucket": "aicam", "path": "3rdpartylicenses.txt", "index": 0

  • 当输入类型为:url,需要配置 url, index 。例如: "url": "https://xxx-xxx.com", "index": 0

  • 当输入类型为:restful,需要配置 certificate_check, rtsp_path_in_response, url, index, headers 。例如:"certificate_check": true, "url": "https://hsaij-dasahbi.com", "rtsp_path_in_response": "data/url", "index": 0, "headers": { "AAA": "AAA" }

  • 当输入类型为:vcn,需要配置 device_id, stream_type, index。例如:"device_id": "21356478954612546874#gdhjkiushdgdksjhslmhscjsckjhdbnk", "stream_type": 1, "index": 0

  • 当输入类型为:EdgeCamera,需要配置 id, index 例如:"id": "007cdafc-6000-47ce-b0e3-870b4a0db65e","index": 0

取值范围:

数组长度:[1, 50]。

默认取值:

不涉及。

vcn

TaskInputVcn object

参数解释:

VCN服务器信息。

约束限制:

仅输入类型为vcn时必填。

取值范围:

不涉及。

默认取值:

不涉及。

表6 TaskInputData

参数

是否必选

参数类型

描述

video_source_id

String

参数解释:

视频源id。

约束限制:

当输入类型为video_source时必填。

取值范围:

不涉及。

默认取值:

不涉及。

stream_name

String

参数解释:

视频流名称。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

bucket

String

参数解释:

OBS桶名。

约束限制:

当输入为obs类型时必填。

取值范围:

长度限制为[0, 63]个字符。

默认取值:

不涉及。

path

String

参数解释:

OBS的路径。

约束限制:

当输入为obs类型时必填。

取值范围:

长度限制为[0, 1023]个字符。

默认取值:

不涉及。

url

String

参数解释:

url输入源的地址或者获取视频流地址的restful请求地址。

约束限制:

当输入为url类型或者edgerestful类型时必填。

取值范围:

长度限制为[0, 1000]个字符。

默认取值:

不涉及。

headers

Object

参数解释:

获取视频流地址的restful请求携带的请求头。整体呈json格式,以键值对的形式表示请求头和取值。

约束限制:

当输入为edgerestful类型时可选。

取值范围:

组数取值范围为[0, 10]。

默认取值:

不涉及。

certificate_check

Boolean

参数解释:

是否需要对https请求进行证书校验。

约束限制:

当输入为edgerestful类型时必填。

取值范围:

  • true:对https请求进行证书校验。

  • false:不对https请求进行证书校验。

默认取值:

不涉及。

rtsp_path_in_response

String

参数解释:

restful请求返回的body中,视频流地址的路径。

约束限制:

当输入为edgerestful类型时必填。

取值范围:

长度限制为[0, 1024]个字符。

默认取值:

不涉及。

device_id

String

参数解释:

VCN设备ID。

约束限制:

当输入为vcn类型时必填。

取值范围:

不涉及。

默认取值:

不涉及。

stream_type

Integer

参数解释:

准备进行分析的码流。取值范围为1~3,其中1代表主码流,2代表子码流1,3代表子码流2。

约束限制:

当输入为vcn类型时选填。

取值范围:

[1, 3]。

默认取值:

不涉及。

id

String

参数解释:

IEF挂载的边缘设备的ID。

约束限制:

当输入为edgecamera类型时必填。

取值范围:

长度范围为[0, 63]。

默认取值:

不涉及。

表7 TaskInputVcn

参数

是否必选

参数类型

描述

ip

String

参数解释:

VCN服务器的IP地址。

约束限制:

仅输入类型为vcn时必填。

取值范围:

不涉及。

默认取值:

不涉及。

port

Integer

参数解释:

VCN服务器的端口号。

约束限制:

仅输入类型为vcn时必填。

取值范围:

[0, 65535]。

默认取值:

不涉及。

username

String

参数解释:

VCN服务器的账号名。

约束限制:

仅输入类型为vcn时需填且必填。

取值范围:

需要满足正则表达式^.{1,100}$。

默认取值:

不涉及。

password

String

参数解释:

VCN服务器的与账号对应的密码。

约束限制:

仅输入类型为vcn时必填。

取值范围:

需要满足正则表达式^.{1,1000}$。

默认取值:

不涉及。

表8 TaskOutput

参数

是否必选

参数类型

描述

obs

TaskOutputObs object

参数解释:

输出为obs类型时的配置信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

dis

TaskOutputDis object

参数解释:

输出为dis类型时的配置信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及

webhook

TaskOutputWebhook object

参数解释:

输出为webhook类型时的配置信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

event_center

Boolean

参数解释:

是否把告警发送至事件中心,云上作业该字段有效。

约束限制:

不涉及。

取值范围:

  • true:把告警发送至事件中心。

  • false:不把告警发送至事件中心。

默认取值:

false

表9 TaskOutputObs

参数

是否必选

参数类型

描述

bucket

String

参数解释:

OBS桶名。

约束限制:

选用obs类型输出时必填。

取值范围:

校验规则:^[a-z0-9](?!.[-.][-.].)([a-z0-9-.]{1,61})[a-z0-9]$

长度限制为[0, 63]个字符。

默认取值:

不涉及。

path

String

参数解释:

OBS的路径。

约束限制:

选用obs类型输出时必填。

取值范围:

校验规则:^(?![/.\s])(?!.//.)([^:*?"<>|]{0,1023})(?<![.\s])$

长度限制为[0, 1023]个字符。

默认取值:

不涉及。

data_category

Array of strings

参数解释:

作业输出数据类别的列表,仅部分服务需要。当输出类型下有这个列表时,表示希望这个输出类型下存放dataCategory列表内的数据。

约束限制:

不涉及。

取值范围:

数组长度限制为[0, 10]。

默认取值:

不涉及。

表10 TaskOutputDis

参数

是否必选

参数类型

描述

stream_name

String

参数解释:

DIS流名称。

约束限制:

选用dis类型输出时必填。

取值范围:

长度限制为[0, 64]个字符。

默认取值:

不涉及。

data_category

Array of strings

参数解释:

作业输出数据类别的列表,仅部分服务需要。当输出类型下有这个列表时,表示希望这个输出类型下存放dataCategory列表内的数据。

约束限制:

不涉及。

取值范围:

数组长度限制为[0, 10]。

默认取值:

不涉及。

表11 TaskOutputWebhook

参数

是否必选

参数类型

描述

url

String

参数解释:

结果回调地址。

约束限制:

选用webhook类型输出时必填。

取值范围:

长度限制为[0, 1000]个字符。

默认取值:

不涉及。

headers

Object

参数解释:

结果回调时需要携带的请求头,整体呈json格式,以键值对的形式表示请求头和取值。

约束限制:

选用webhook类型输出时必填。

取值范围:

组数限制为[1, 10]。

默认取值:

不涉及。

data_category

Array of strings

参数解释:

作业输出数据类别的列表,仅部分服务需要。当输出类型下有这个列表时,表示希望这个输出类型下存放dataCategory列表内的数据。

约束限制:

不涉及。

取值范围:

数组长度限制为[0, 10]。

默认取值:

不涉及。

表12 VehicleServiceConfig

参数

是否必选

参数类型

描述

common

VehicleCommon object

参数解释:

作业运行时指定的具体的自定义配置项,由服务发布者定义。整体呈json格式,具体配置项参见相应算法服务的说明。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表13 VehicleCommon

参数

是否必选

参数类型

描述

license_plate

LicensePlate object

参数解释:

车牌信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

output_vehicle_type

String

参数解释:

输出车型信息,多类车型间以空格隔开。该字段不存在时默认输出所有车型。例如“0 1 2”表示仅输出0、1、2类车型信息,其余车型不输出。

约束限制:

不涉及。

取值范围:

当前支持的车型输出:

  • 0 : 小汽车

  • 1 : 渣土车

  • 2 : 拖挂车

  • 3 : 水泥搅拌车

  • 4 : 环卫车

  • 5 : 吊车

  • 6 : 小货车

  • 7 : 巴士

  • 8 : 油罐车

  • 9 : 其它

默认取值:

不涉及。

output_image_sw

Integer

参数解释:

是否输出结果图片,1表示输出,0表示不输出。

约束限制:

不涉及。

取值范围:

[0, 1]。

默认取值:

1

render_result_sw

Integer

参数解释:

对应控制台的界面参数“目标框渲染开关”。输出图像是否绘制告警目标边框,取值范围:

  • 0:表示不绘制。

  • 1:表示用红色绘制告警目标边框。

约束限制:

不涉及。

取值范围:

[0, 1]。

默认取值:

1

image_compression_ratio

Integer

参数解释:

对应控制台的界面参数“图片压缩比”。如果输入80,则输出图像清晰度是原图的80%。取值越低,则图片越模糊,客户需要接收的图片数据量越小。

约束限制:

不涉及。

取值范围:

[20, 100]。

默认取值:

100

target_roi

String

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

  • 默认进入线在离开线下方。当车辆从上往下行驶,触碰车辆进入线时,发送检测结果;当车辆从下往上行驶,触碰车辆离开线时,发送检测结果。

  • 车辆进入线默认水平,画在距roi区域顶部高度占roi区域高度70%的位置。假设图像宽度为w,roi区域高度为h,roi区域顶部Y坐标为y,则该线默认位置是[[0,y+h0.7-1],[w-1,y+h0.7-1]]。

  • 车辆离开线默认水平,画在距画面顶部高度占图像高度50%的位置假设图像宽度为w,roi区域高度为h,roi区域顶部Y坐标为y,则该线默认位置是[[0,y+h0.5-1],[w-1,y+h0.5-1]]。

表14 LicensePlate

参数

是否必选

参数类型

描述

local_city

String

参数解释:

默认城市简称。

约束限制:

不涉及。

取值范围:

满足正则表达式^[A-Z]

默认取值:

A

local_province

String

参数解释:

默认省份简称。

约束限制:

不涉及。

取值范围:

范围集合:("京","津","冀","蒙","晋.","沪","皖","苏","浙","鲁","闽","赣","粤","桂","琼","豫","鄂","湘","黑","吉","辽","陕","甘","宁","青","新","渝","川","云","贵","藏","港","澳","台")。

默认取值:

不涉及。

响应参数

状态码: 200

表15 响应Body参数

参数

参数类型

描述

tasks

Array of TaskResponse objects

参数解释:

VIAS平台创建作业的作业id列表。

取值范围:

不涉及。

表16 TaskResponse

参数

参数类型

描述

id

String

参数解释:

VIAS平台创建的作业id。

取值范围:

不涉及。

状态码: 400

表17 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码。

取值范围:

不涉及。

error_msg

String

参数解释:

错误信息描述。

取值范围:

不涉及。

detail

String

参数解释:

错误详情。

取值范围:

不涉及。

params

Array of strings

参数解释:

错误参数列举。

取值范围:

数组长度[0, 1]。

reason

String

参数解释:

错误原因。

取值范围:

不涉及。

advice

String

参数解释:

建议。

取值范围:

不涉及。

状态码: 500

表18 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码。

取值范围:

不涉及。

error_msg

String

参数解释:

错误信息描述。

取值范围:

不涉及。

detail

String

参数解释:

错误详情。

取值范围:

不涉及。

params

Array of strings

参数解释:

错误参数列举。

取值范围:

数组长度[0, 1]。

reason

String

参数解释:

错误原因。

取值范围:

不涉及。

advice

String

参数解释:

建议。

取值范围:

不涉及。

请求示例

  • 云上视频车辆作业创建,使用输入源为video_source,输出为dis。

    POST /v2/{project_id}/services/c-vehicle-detection-cloud/tasks
    
    {
      "name" : "vehicle-task",
      "description" : "vehicle detection task test",
      "input" : {
        "type" : "video_source",
        "data" : [ {
          "video_source_id" : "xxxxxxx-xxxxxxx-xxxxxxx-xxxxx-xxxxxx"
        } ]
      },
      "output" : {
        "dis" : {
          "stream_name" : "dis-test"
        }
      },
      "service_version" : "3.0",
      "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e",
      "config" : {
        "common" : {
          "target_roi" : "{\"lines\":[{\"data\":[[50,756],[100,616]],\"properties\":{\"type\":0}},{\"data\":[[50,256],[100,116]],\"properties\":{\"type\":1}}],\"polygons\":[{\"data\":[[487,465],[1850,450],[1905,1013],[515,1050]]}]}",
          "license_plate" : {
            "local_city" : "B",
            "local_province" : "津"
          },
          "output_image_sw" : 1,
          "image_compression_ratio" : 100
        }
      }
    }
  • 云上视频车辆作业创建,使用输入源为url,输出为dis。

    POST /v2/{project_id}/services/c-vehicle-detection-cloud/tasks
    
    {
      "name" : "vehicle-task",
      "description" : "vehicle detection task test",
      "input" : {
        "type" : "url",
        "data" : [ {
          "url" : "https://obs_test/test.mp4",
          "index" : 0
        } ]
      },
      "output" : {
        "dis" : {
          "stream_name" : "dis-test"
        }
      },
      "service_version" : "3.0",
      "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e",
      "config" : {
        "common" : {
          "target_roi" : "{\"lines\":[{\"data\":[[50,756],[100,616]],\"properties\":{\"type\":0}},{\"data\":[[50,256],[100,116]],\"properties\":{\"type\":1}}],\"polygons\":[{\"data\":[[487,465],[1850,450],[1905,1013],[515,1050]]}]}",
          "license_plate" : {
            "local_city" : "B",
            "local_province" : "津"
          },
          "output_image_sw" : 1,
          "image_compression_ratio" : 100
        }
      }
    }
  • 云上视频车辆作业创建,使用输入源为obs,输出为dis。

    POST /v2/{project_id}/services/c-vehicle-detection-cloud/tasks
    
    {
      "name" : "vehicle-task",
      "description" : "vehicle detection task test",
      "input" : {
        "type" : "obs",
        "data" : [ {
          "bucket" : "obs_test_video",
          "path" : "test.mp4",
          "index" : 0
        } ]
      },
      "output" : {
        "dis" : {
          "stream_name" : "dis-test"
        }
      },
      "service_version" : "3.0",
      "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e",
      "config" : {
        "common" : {
          "target_roi" : "{\"lines\":[{\"data\":[[50,756],[100,616]],\"properties\":{\"type\":0}},{\"data\":[[50,256],[100,116]],\"properties\":{\"type\":1}}],\"polygons\":[{\"data\":[[487,465],[1850,450],[1905,1013],[515,1050]]}]}",
          "license_plate" : {
            "local_city" : "B",
            "local_province" : "津"
          },
          "output_image_sw" : 1,
          "image_compression_ratio" : 100
        }
      }
    }

响应示例

状态码: 200

创建服务作业成功。

{
  "tasks" : [ {
    "id" : "20690c67d71549c39085a3b28c18f24f"
  } ]
}

状态码

状态码

描述

200

创建服务作业成功。

400

请求错误。

500

内部错误。

错误码

请参见错误码

相关文档