更新时间:2024-04-22 GMT+08:00

获取作业列表

功能介绍

获取作业列表

URI

GET /v2/{project_id}/tasks

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

表2 Query参数

参数

是否必选

参数类型

描述

source_data_type

String

任务类型,用作查询过滤。仅支持async_task与sync_task两种类型。

title

String

算法中文名,需要满足正则表达式^[a-zA-Z0-9\u4e00-\u9fa5-_,]{2,64}$

camera_name

String

摄像头名称

最大长度:255

task_state

String

作业状态,状态可选PENDING|RECOVERING|STARTING|UPGRADING|CREATE_FAILED|START_FAILED|RUNNING|STOPPING|STOPPED|ABNORMAL|SUCCEEDED|FAILED|DELETING|FREEZING|FROZEN|SCHEDULING|LACK_OF_RESOURCES

task_name

String

作业名称

最大长度:1024

page_size

Integer

每页显示的条目数量

最小值:5

最大值:1000

缺省值:10

page

Integer

偏移量

缺省值:1

sort_dir

String

展示服务作业时的排序规则

缺省值:desc

batch_id

String

批量配置ID,需要满足正则表达式^[a-z0-9-_]{4,36}$

video_group_id

String

视频分组ID(多个ID英文逗号分隔拼接),长度要求[4,2048]

company

String

厂商(多选时逗号分隔拼接)

alg_id

String

算法ID,需要满足正则表达式^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

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

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

count

Integer

当前页面的条目数

tasks

Array of TaskInfoDto objects

查询到的作业列表信息

page

Integer

Integer当前页号

page_size

Integer

分页尺寸

表5 TaskInfoDto

参数

参数类型

描述

id

String

作业ID。

name

String

作业的名称。

creator

String

作业创建者的用户名。

project_id

String

作业创建者的项目ID。

description

String

作业的描述。

最小长度:0

最大长度:500

release_id

String

作业对应服务的ID。

service_id

String

作业对应服务的ID。

created_at

String

作业创建的时间。

updated_at

String

作业最近一次状态更新的时间。

state

String

作业当前的状态,分别为PENDING(等待中),RECOVERING(恢复中),STARTING(启动中),UPGRADING(升级中),CREATE_FAILED(创建失败),START_FAILED(启动失败),RUNNING(运行中),STOPPING(停止中),STOPPED(已停止),ABNORMAL(异常),SUCCEEDED(运行成功),FAILED(运行失败),DELETING(删除中),FREEZING(冻结中),FROZEN(已冻结)。

status

String

作业状态的详情信息,仅部分状态会有详情信息。

最小长度:0

最大长度:4096

error

error object

错误信息。

schedule_status

String

计划任务的状态,分别为ACTIVATED(激活),INACTIVATED(未激活)。

schedule

TaskSchedule object

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

input

TaskInput object

作业的输入配置。

output

TaskOutputForDisplay object

作业的输出配置展示

config

TaskServiceConfig object

作业运行时指定的自定义参数,由服务发布者定义。

video_source_name

String

视频源名称。

title

String

算法中文名称。

group_name

String

分组名称,多个以逗号分隔。

company

String

厂商。

task_config

String

作业算法配置。

type

String

cloud或edge。

resource_order_id

String

资源订单id。

package_id

String

算法包id。

device_id

String

设备id。

access_address

String

接入地址。

algorithm_publish_id

String

算法id。

表6 error

参数

参数类型

描述

code

String

错误码。

最小长度:8

最大长度:36

message

String

错误描述。

最小长度:2

最大长度:512

表7 TaskSchedule

参数

参数类型

描述

type

String

计划任务的类型,使用计划任务时必填。可选类型分别为weekly(每周执行),monthly(每月执行)。

timezone

String

用户所处的时区,使用计划任务时必填。精确到分钟。

days_of_week

Array of integers

作业会在一周的哪几天执行,当且仅当计划任务类型为weekly时,该字段需填且必填。1~7分别指代星期一至星期日。

最小值:1

最大值:7

数组长度:1 - 7

days_of_month

Array of integers

作业会在一个月的哪几天执行,当且仅当计划任务类型为monthly时,该字段需填且必填。1~31分别指代一个月中的1日至31日。

最小值:1

最大值:31

periods

Array<Array<>>

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

表8 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时必填。

表9 TaskInputData

参数

参数类型

描述

video_source_id

String

视频源id,当输入类型为video_source时必填。

stream_name

String

视频流名称。

bucket

String

OBS桶名,当输入为obs类型时必填。

最大长度:63

path

String

OBS的路径,当输入为obs类型时必填。

最大长度:1023

url

String

url输入源的地址或者获取视频流地址的restful请求地址,当输入为url类型或者edgerestful类型时必填。长度不超过1000。

最大长度:1000

headers

Object

获取视频流地址的restful请求携带的请求头,当输入为edgerestful类型时可选。整体呈json格式,以键值对的形式表示请求头和取值,最多允许10组。

certificate_check

Boolean

是否需要对https请求进行证书校验,当输入为edgerestful类型时必填。取值为true或者false。

rtsp_path_in_response

String

restful请求返回的body中,视频流地址的路径,当输入为edgerestful类型时必填。长度不超过1024。

最大长度:1024

device_id

String

VCN设备ID,当输入为vcn类型时必填。

stream_type

Integer

准备进行分析的码流,当输入为vcn类型时选填。取值范围为1~3,其中1代表主码流,2代表子码流1,3代表子码流2。

最小值:1

最大值:3

id

String

IEF挂载的边缘设备的ID,当输入为edgecamera类型时必填。

最大长度:63

表10 TaskInputVcn

参数

参数类型

描述

ip

String

VCN服务器的IP地址,仅输入类型为vcn时必填。

port

Integer

VCN服务器的端口号,仅输入类型为vcn时必填。

最小值:0

最大值:65535

username

String

VCN服务器的账号名,仅输入类型为vcn时需填且必填,需要满足正则表达式^.{1,100}$。

password

String

VCN服务器的与账号对应的密码,仅输入类型为vcn时必填,需要满足正则表达式^.{1,1000}$。

表11 TaskOutputForDisplay

参数

参数类型

描述

obs

TaskOutputObs object

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

dis

TaskOutputDis object

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

webhook

TaskOutputWebhook object

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

event_center

Boolean

缺省值:false

表12 TaskOutputObs

参数

参数类型

描述

bucket

String

OBS桶名,选用obs类型输出时必填,校验规则:(pattern:“^[a-z0-9](?!.[-.][-.].)([a-z0-9-.]{1,61})[a-z0-9]$”)。

最大长度:63

path

String

OBS的路径,选用obs类型输出时必填,校验规则:^(?![/.\s])(?!.//.)([^:*?"<>|]{0,1023})(?<![.\s])$。

最大长度:1023

data_category

Array of strings

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

数组长度:0 - 10

表13 TaskOutputDis

参数

参数类型

描述

stream_name

String

DIS流名称,选用dis类型输出时必填。

最大长度:64

data_category

Array of strings

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

数组长度:0 - 10

表14 TaskOutputWebhook

参数

参数类型

描述

url

String

结果回调地址,选用webhook类型输出时必填。

最大长度:1000

headers

Object

结果回调时需要携带的请求头,选用webhook类型输出时必填。整体呈json格式,以键值对的形式表示请求头和取值,至少1组,至多10组。

data_category

Array of strings

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

数组长度:0 - 10

表15 TaskServiceConfig

参数

参数类型

描述

common

Object

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

状态码: 400

表16 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误信息描述。

detail

String

错误详情。

params

Array of strings

错误参数列举。

数组长度:0 - 1

reason

String

错误原因。

advice

String

建议。

状态码: 500

表17 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误信息描述。

detail

String

错误详情。

params

Array of strings

错误参数列举。

数组长度:0 - 1

reason

String

错误原因。

advice

String

建议。

请求示例

获取作业列表,展示出状态为“运行中”,“运行成功”,“已停止”,“等待中”,“运行失败”或者“异常”的作业。

/v2/{project_id}/tasks

https://{endpoint}/v2/{project_id}/tasks?page=1&page_size=10

响应示例

状态码: 200

查询作业列表响应体

{
  "count" : 2,
  "tasks" : [ {
    "id" : "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "name" : "qqqq_task",
    "service_id" : "xxxxxxx-xxxxxxx-xxxxxxx-xxxxx-xxxxxx",
    "created_at" : "1686034773024",
    "state" : "PENDING",
    "video_source_name" : "url_test",
    "title" : "testwjh",
    "type" : "0",
    "algorithm_publish_id" : "xxxxxxx-xxxxxxx-xxxxxxx-xxxxx-xxxxxx"
  }, {
    "id" : "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "name" : "task_test1",
    "service_id" : "xxxxxxx-xxxxxxx-xxxxxxx-xxxxx-xxxxxx",
    "created_at" : "1686027880205",
    "state" : "STOPPED",
    "video_source_name" : "test_g11",
    "title" : "alg_test",
    "type" : "0",
    "algorithm_publish_id" : "xxxxxxx-xxxxxxx-xxxxxxx-xxxxx-xxxxxx"
  } ],
  "page" : 1,
  "page_size" : 10
}

状态码

状态码

描述

200

查询作业列表响应体

400

请求错误

500

内部错误

错误码

请参见错误码