web钩子 Webhooks

Directus 中 Webhooks 集合上的 REST 和 GraphQL API 文档。Webhook 在应用程序中配置(无需代码),并在触发特定事件时将 HTTP 请求发送到外部服务。

The Webhook Object

id integer
webhook 的主键。

name string
Webhook 的名称。 显示在管理应用程序中。

method string
要使用的 HTTP 方法。 GETPOST 之一。

url string
在哪里发送请求。

status string
Webhook 的状态。 activeinactive 之一。

data boolean
是否将事件数据发送到外部端点。

actions csv
何时触发 webhook。 可以包含createupdatedelete

collections csv
触发此 webhook 的集合。

json
{
  "data": {
    "id": 1,
    "name": "Build Website",
    "method": "POST",
    "url": "https://example.com/",
    "status": "active",
    "data": true,
    "actions": ["create", "update"],
    "collections": ["articles"]
  }
}

列出 Webhook

列出 Directus 中存在的所有 webhook。

查询参数

支持所有全局查询参数

返回

最多包含 limit webhook 对象 的数组。 如果没有可用的物品, data 将是一个空数组。

REST API

GET /webhooks
SEARCH /webhooks

Learn more about SEARCH ->

GraphQL

POST /graphql/system
graphql
type Query {
 webhooks: [directus_webhooks]
}
示例
graphql
query {
 webhooks {
  url
  method
 }
}

检索 Webhook

按主键列出现有的 webhook。

查询参数

支持所有全局查询参数

返回

返回请求的 webhook 对象

REST API

GET /webhooks/:id

GraphQL

POST /graphql/system
graphql
type Query {
 webhooks_by_id(id: ID!): directus_webhooks
}
示例s
graphql
query {
 webhooks_by_id(id: 15) {
  url
  actions
  method
 }
}

创建一个 Webhook

创建一个新的网络钩子。

查询参数

支持所有全局查询参数

请求正文

部分 webhook 对象

nameactionscollectionsurl 是必需的。

返回

返回创建的 webhook 的 webhook 对象

REST API

POST /webhooks
示例
json
// POST /webhooks

{
  "name": "Example",
  "actions": ["create", "update"],
  "collections": ["articles"],
  "url": "https://example.com"
}

GraphQL

POST /graphql/system
graphql
type Mutation {
 create_webhooks_item(data: create_directus_webhooks_input!): directus_webhooks
}
示例
graphql
mutation {
 create_webhooks_item(
  data: { name: "Example", actions: ["create", "update"], collections: ["articles"], url: "https://example.com" }
 ) {
  id
  name
 }
}

创建多个 Webhook

创建多个新的 webhook。

查询参数

支持所有全局查询参数

请求正文

部分 webhook 对象 的数组。

nameactionscollectionsurl 是必需的。

返回

返回创建的 webhook 的 webhook objects

REST API

POST /webhooks
示例
json
// POST /webhooks

[
  {
    "name": "Example",
    "actions": ["create", "update"],
    "collections": ["articles"],
    "url": "https://example.com"
  },
  {
    "name": "Second Example",
    "actions": ["delete"],
    "collections": ["articles"],
    "url": "https://example.com/on-delete"
  }
]

GraphQL

POST /graphql/system
graphql
type Mutation {
 create_webhooks_items(data: [create_directus_webhooks_input!]!): [directus_webhooks]
}
示例
graphql
mutation {
 create_webhooks_items(
  data: [
   { name: "Example", actions: ["create", "update"], collections: ["articles"], url: "https://example.com" }
   { name: "Second Example", actions: ["delete"], collections: ["articles"], url: "https://example.com/on-delete" }
  ]
 ) {
  id
  name
 }
}

更新 Webhook

更新现有的 webhook。

查询参数

支持所有全局查询参数

请求正文

部分 webhook 对象

返回

返回更新后的 webhook 的 webhook 对象

REST API

PATCH /webhooks/:id
示例
json
// PATCH /webhooks/15

{
  "name": "Build Website"
}

GraphQL

POST /graphql/system
graphql
type Mutation {
 update_webhooks_item(id: ID!, data: update_directus_webhooks_input!): directus_webhooks
}
示例
graphql
mutation {
 update_webhooks_item(id: 15, data: { name: "Build Website" }) {
  name
 }
}

更新多个 Webhook

更新多个现有的 webhook。

查询参数

支持所有全局查询参数

请求正文

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

data Required
webhook 对象 的任何属性。

返回

返回更新后的 webhook 的 webhook 对象

REST API

PATCH /webhooks
示例
json
// PATCH /webhooks

{
  "keys": [15, 41],
  "data": {
    "name": "Build Website"
  }
}

GraphQL

POST /graphql/system
graphql
type Mutation {
 update_webhooks_items(ids: [ID!]!, data: update_directus_webhooks_input!): [directus_webhooks]
}
示例
graphql
mutation {
 update_webhooks_items(ids: [15, 41], data: { name: "Build Website" }) {
  name
 }
}

删除 Webhook

删除现有的 webhook。

Returns

Empty body.

REST API

DELETE /webhooks/:id
示例
DELETE /webhooks/15

GraphQL

POST /graphql/system
graphql
type Mutation {
 delete_webhooks_item(id: ID!): delete_one
}
示例
graphql
mutation {
 delete_webhooks_item(id: 15) {
  id
 }
}

删除多个 Webhook

删除多个现有的 webhook。

请求正文

一组 webhook 主键

Returns

Empty body.

REST API

DELETE /webhooks
示例
json
// DELETE /webhooks

[2, 15, 41]

GraphQL

POST /graphql/system
graphql
type Mutation {
 delete_webhooks_items(ids: [ID!]!): delete_many
}
示例
graphql
mutation {
 delete_webhooks_items(ids: [2, 15, 41]) {
  ids
 }
}