工作流 Flows

Directus 中有关 Flows 集合的 REST 和 GraphQL API 文档。Flows 支持 Directus 中的自定义、事件驱动的数据处理和任务自动化。

The Flow Object

id uuid
流的主键。

name string
流的名称。

icon string
流的管理应用程序中显示的图标。

color string
流的管理应用程序中显示的图标的颜色。

note text
管理应用程序中显示的简短说明。

status string
流的当前状态。 activeinactive 之一。 未指定时默认为“活动”。

trigger string
流的触发器类型。 hookwebhookoperationschedulemanual 之一。

options json
流的选定触发器的选项。

accountability string
流期间使用的权限。 $public$trigger$full 或角色的 UUID 之一。

date_created timestamp
创建流时 ISO8601 中的时间戳。

user_created many-to-one
创建流的用户。 多对一到 用户

operation string
流中连接到触发器的操作的 UUID。

json
{
  "id": "2fab3b9d-0543-4b87-8a30-3c5ee66fedf1",
  "name": "My Flow",
  "icon": "bolt",
  "color": "#112233",
  "note": "Note for my flow",
  "status": "active",
  "trigger": "manual",
  "accountability": "$trigger",
  "date_created": "2022-05-11T13:14:52Z",
  "user_created": "12e62fd0-29c7-4fd3-b3d3-c7a39933e8af",
  "operation": "92e82998-e421-412f-a513-13701e83e4ce"
}

列出流

列出 Directus 中存在的所有流。

查询参数

支持全部 全局查询参数.

返回

最多包含 limit The Data Chain 的数组。 如果没有可用的项目,数据将是一个空数组。

REST API

GET /flows
SEARCH /flows

Learn more about SEARCH ->

GraphQL

POST /graphql/system
graphql
type Query {
 flows: [directus_flows]
}
示例
graphql
query {
 flows {
  id
  name
  status
 }
}

检索流

按主键列出现有流。

查询参数

支持全部全局查询参数.

返回

返回请求的The Data Chain.

REST API

GET /flows/:id
示例
GET /flows/2fc325fb-299b-4d20-a9e7-a34349dee8b2

GraphQL

POST /graphql/system
graphql
type Query {
 flows_by_id(id: ID!): directus_flows
}
示例
graphql
query {
 flows_by_id(id: "2fc325fb-299b-4d20-a9e7-a34349dee8b2") {
  id
  name
  status
 }
}

创建流

创建一个新流。

查询参数

支持全部全局查询参数.

请求体

一部分The Data Chain.

返回

返回创建的流的 The Data Chain

REST API

POST /flows
示例
json
// POST /flows

{
  "name": "My Flow",
  "status": "active",
  "trigger": "manual"
}

GraphQL

POST /graphql/system
graphql
type Mutation {
 create_flows_item(data: create_directus_flows_input!): directus_flows
}
示例
graphql
mutation {
 create_flows_item(data: { name: "My Flow", status: "active", trigger: "manual" }) {
  id
  name
  status
 }
}

创建多个流

创建多个新流。

查询参数

支持全部全局查询参数.

请求正文

部分 The Data Chain 的数组。

返回

返回创建的流的 The Data Chain

REST API

POST /flows
示例
json
// POST /flows

[
  {
    "name": "My Flow",
    "status": "active",
    "trigger": "manual"
  },
  {
    "name": "Another Flow",
    "status": "active",
    "trigger": "webhook"
  }
]

GraphQL

POST /graphql/system
graphql
type Mutation {
 create_flows_items(data: [create_directus_flows_input!]!): [directus_flows]
}
示例
graphql
mutation {
 create_flows_items(
  data: [
   {
    "name": "My Flow",
    "status": "active",
    "trigger": "manual"
   },
   {
    "name": "Another Flow",
    "status": "active",
    "trigger": "webhook"
   }
  ]
 ) {
  id
  name
  status
 }
}

更新流

更新现有流。

查询参数

支持全部全局查询参数.

请求正文

部分The Data Chain.

返回

返回更新流的 The Data Chain

REST API

PATCH /flows/:id
示例
json
// PATCH /flows/2fc325fb-299b-4d20-a9e7-a34349dee8b2

{
  "name": "My Updated Flow"
}

GraphQL

POST /graphql/system
graphql
type Mutation {
 update_flows_item(id: ID!, data: update_directus_flows_input): directus_flows
}
示例
graphql
mutation {
 update_flows_item(id: "2fc325fb-299b-4d20-a9e7-a34349dee8b2", data: { name: "My Updated Flow" }) {
  id
  name
 }
}

更新多个流

更新多个现有流程。

查询参数

支持全部全局查询参数.

请求正文

keys Required
您要更新的流程的主键数组。

data Required
The Data Chain 的任何属性。

返回

返回更新流的 The Data Chain

REST API

PATCH /flows
示例
json
// PATCH /flows

{
  "keys": ["3f2facab-7f05-4ee8-a7a3-d8b9c634a1fc", "7259bfa8-3786-45c6-8c08-cc688e7ba229"],
  "data": {
    "status": "inactive"
  }
}

GraphQL

POST /graphql/system
graphql
type Mutation {
 update_flows_items(ids: [ID!]!, data: update_directus_flows_input): [directus_flows]
}
示例
graphql
mutation {
 update_flows_items(
  ids: ["3f2facab-7f05-4ee8-a7a3-d8b9c634a1fc", "7259bfa8-3786-45c6-8c08-cc688e7ba229"]
  data: { status: "inactive" }
 ) {
  id
  name
  status
 }
}

删除流

删除现有流。

返回

空正文

REST API

DELETE /flows/:id
示例
DELETE /flows/12204ee2-2c82-4d9a-b044-2f4842a11dba

GraphQL

POST /graphql/system
graphql
type Mutation {
 delete_flows_item(id: ID!): delete_one
}
示例
graphql
mutation {
 delete_flows_item(id: "12204ee2-2c82-4d9a-b044-2f4842a11dba") {
  id
 }
}

删除多个流

删除多个现有流。

请求正文

流主键数组

返回

空正文

REST API

DELETE /flows
示例
json
// DELETE /flows
["25821236-8c2a-4f89-8fdc-c7d01f35877d", "02b9486e-4273-4fd5-b94b-e18fd923d1ed", "7d62f1e9-a83f-407b-84f8-1c184f014501"]

GraphQL

POST /graphql/system
graphql
type Mutation {
 delete_flows_items(ids: [ID!]!): delete_many
}
示例
graphql
mutation {
 delete_flows_items(
  ids: [
   "25821236-8c2a-4f89-8fdc-c7d01f35877d"
   "02b9486e-4273-4fd5-b94b-e18fd923d1ed"
   "7d62f1e9-a83f-407b-84f8-1c184f014501"
  ]
 ) {
  ids
 }
}

带有 GET webhook 触发器的流

使用 GET webhook 触发器启动流程。

返回

流的结果(如果有)。

REST API

GET /flows/trigger/:flow_uuid
示例
json
// GET /flows/trigger/202a940b-a00b-47df-b832-369c53f13122
// Payload here

带有 POST webhook 触发器的流程

使用 POST webhook 触发器启动流程。

请求正文

POST 请求的有效负载。

返回

流的结果(如果有)。

REST API

POST /flows/trigger/:flow_uuid
示例
json
// POST /flows/trigger/202a940b-a00b-47df-b832-369c53f13122
// Payload here