remove webhooks from docs

This commit is contained in:
Azri Kahar
2022-05-17 18:37:01 +08:00
parent f7015ec8a2
commit fae1103d61
5 changed files with 5 additions and 648 deletions

View File

@@ -265,11 +265,6 @@ module.exports = {
path: '/configuration/presets-bookmarks',
title: 'Presets & Bookmarks',
},
{
type: 'page',
path: '/configuration/webhooks',
title: 'Webhooks',
},
{
type: 'page',
path: '/configuration/activity-log',
@@ -439,11 +434,6 @@ module.exports = {
path: '/reference/system/utilities',
title: 'Utilities',
},
{
type: 'page',
path: '/reference/system/webhooks',
title: 'Webhooks',
},
],
},
{

View File

@@ -13,7 +13,7 @@ Only Administrators have access to the Settings Module.
:::
Settings are split into five distinct sections, each described below.
Settings are split into four distinct sections, each described below.
- [Project Settings](/configuration/project-settings) — Setup branding and other global style options.
- [Data Model](/configuration/data-model) — Create and modify [Collections](/getting-started/glossary/#collections),
@@ -21,7 +21,6 @@ Settings are split into five distinct sections, each described below.
[Fields](/getting-started/glossary/#fields).
- [Roles & Permissions](/configuration/users-roles-permissions) — Create and manage access via Roles and Permissions.
- [Presets & Bookmarks](/configuration/presets-bookmarks) — Set default views of data and configure bookmarks.
- [Webhooks](/configuration/webhooks) — Use platform events to trigger external services.
Aside from the above pages, there are three shorthand links:

View File

@@ -1,38 +0,0 @@
# Webhooks
> Webhooks are configured within the App (no code required) and send HTTP requests when a specific event is triggered.
> [Learn more about Webhooks](https://en.wikipedia.org/wiki/Webhook).
## Creating Webhooks
1. Navigate to **Settings <span mi icon dark>chevron_right</span> Webhooks**
2. Click <span mi btn>add</span> in the header
3. Complete the **other webhook form fields** outlined below
- **Name** — A name to help remember this webhooks purpose
- **Method** — Send as either a HTTP `GET` or `POST` request
- **URL** — The URL to send the request to
- **Status** — Whether the webhook is active (enabled) or inactive (disabled)
- **Data** — Whether the event's data should be sent along with the request
- **Request Headers** — Custom headers that will be added to the webhook request
- **Trigger Actions** — The specific actions that will trigger the event
- **Trigger Collections** — The specific collections for which the above actions will trigger events
## Disabling Webhooks
1. Navigate to **Settings <span mi icon dark>chevron_right</span> Webhooks <span mi icon dark>chevron_right</span>
[Webhook]**
2. Set the **status field to inactive**
## Deleting Webhooks
1. Navigate to **Settings <span mi icon dark>chevron_right</span> Webhooks <span mi icon dark>chevron_right</span>
[Webhook]**
2. Click <span mi btn dngr>delete</span> in the header
3. Confirm this decision by clicking **Delete** in the dialog
::: danger Irreversible Change
This action is permanent and can not be undone. Please proceed with caution.
:::

View File

@@ -158,8 +158,8 @@ export default ({ schedule }) => {
::: tip System Collections
`<system-collection>` should be replaced with one of the system collection names `activity`, `collections`, `fields`,
`files` (except create/update), `folders`, `permissions`, `presets`, `relations`, `revisions`, `roles`, `settings`,
`users` or `webhooks`.
`files` (except create/update), `folders`, `permissions`, `presets`, `relations`, `revisions`, `roles`, `settings` or
`users`.
:::
@@ -184,8 +184,8 @@ export default ({ schedule }) => {
::: tip System Collections
`<system-collection>` should be replaced with one of the system collection names `activity`, `collections`, `fields`,
`files` (except create/update), `folders`, `permissions`, `presets`, `relations`, `revisions`, `roles`, `settings`,
`users` or `webhooks`.
`files` (except create/update), `folders`, `permissions`, `presets`, `relations`, `revisions`, `roles`, `settings` or
`users`.
:::

View File

@@ -1,594 +0,0 @@
---
pageClass: page-reference
---
# Webhooks
<div class="two-up">
<div class="left">
> Webhooks are configured within the App (no code required) and send HTTP requests to an external service when a
> specific event is triggered.
</div>
<div class="right">
[[toc]]
</div>
</div>
---
## The Webhook Object
<div class="two-up">
<div class="left">
<div class="definitions">
`id` **integer**\
Primary key of the webhook.
`name` **string**\
Name for the webhook. Shown in the Admin App.
`method` **string**\
HTTP method to use. One of `GET`, `POST`.
`url` **string**\
Where to send the request too.
`status` **string**\
Status of the webhook. One of `active`, `inactive`.
`data` **boolean**\
Whether or not to send the event data to the external endpoint.
`actions` **csv**\
When to fire the webhook. Can contain `create`, `update`, `delete`.
`collections` **csv**\
What collections to fire this webhook on.
</div>
</div>
<div class="right">
```json
{
"data": {
"id": 1,
"name": "Build Website",
"method": "POST",
"url": "https://example.com/",
"status": "active",
"data": true,
"actions": ["create", "update"],
"collections": ["articles"]
}
}
```
</div>
</div>
---
## List Webhooks
List all webhooks that exist in Directus.
<div class="two-up">
<div class="left">
### Query Parameters
Supports all [global query parameters](/reference/query/).
### Returns
An array of up to [limit](/reference/query/#limit) [webhook objects](#the-webhook-object). If no items are available,
data will be an empty array.
</div>
<div class="right">
### REST API
```
GET /webhooks
SEARCH /webhooks
```
[Learn more about SEARCH ->](/reference/introduction/#search-http-method)
### GraphQL
```
POST /graphql/system
```
```graphql
type Query {
webhooks: [directus_webhooks]
}
```
##### Example
```graphql
query {
webhooks {
url
method
}
}
```
</div>
</div>
---
## Retrieve a Webhook
List an existing webhook by primary key.
<div class="two-up">
<div class="left">
### Query Parameters
Supports all [global query parameters](/reference/query).
### Returns
Returns the requested [webhook object](#the-webhook-object).
</div>
<div class="right">
### REST API
```
GET /webhooks/:id
```
### GraphQL
```
POST /graphql/system
```
```graphql
type Query {
webhooks_by_id(id: ID!): directus_webhooks
}
```
##### Examples
```graphql
query {
webhooks_by_id(id: 15) {
url
actions
method
}
}
```
</div>
</div>
---
## Create a Webhook
Create a new webhook.
<div class="two-up">
<div class="left">
### Query Parameters
Supports all [global query parameters](/reference/query).
### Request Body
A partial [webhook object](#the-webhook-object).
`name`, `actions`, `collections`, and `url` are required.
### Returns
Returns the [webhook object](#the-webhook-object) for the created webhook.
</div>
<div class="right">
### REST API
```
POST /webhooks
```
##### Example
```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
}
```
##### Example
```graphql
mutation {
create_webhooks_item(
data: { name: "Example", actions: ["create", "update"], collections: ["articles"], url: "https://example.com" }
) {
id
name
}
}
```
</div>
</div>
---
## Create Multiple Webhook
Create multiple new webhooks.
<div class="two-up">
<div class="left">
### Query Parameters
Supports all [global query parameters](/reference/query).
### Request Body
An array of partial [webhook object](#the-webhook-object).
`name`, `actions`, `collections`, and `url` are required.
### Returns
Returns the [webhook objects](#the-webhook-object) for the created webhooks.
</div>
<div class="right">
### REST API
```
POST /webhooks
```
##### Example
```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]
}
```
##### Example
```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
}
}
```
</div>
</div>
---
## Update a Webhook
Update an existing webhook.
<div class="two-up">
<div class="left">
### Query Parameters
Supports all [global query parameters](/reference/query).
### Request Body
A partial [webhook object](#the-webhook-object).
### Returns
Returns the [webhook object](#the-webhook-object) for the updated webhook.
</div>
<div class="right">
### REST API
```
PATCH /webhooks/:id
```
##### Example
```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
}
```
##### Example
```graphql
mutation {
update_webhooks_item(id: 15, data: { name: "Build Website" }) {
name
}
}
```
</div>
</div>
---
## Update Multiple Webhooks
Update multiple existing webhooks.
<div class="two-up">
<div class="left">
### Query Parameters
Supports all [global query parameters](/reference/query).
### Request Body
<div class="definitions">
`keys` **Required**\
Array of primary keys of the webhooks you'd like to update.
`data` **Required**\
Any of [the webhook object](#the-webhook-object)'s properties.
</div>
### Returns
Returns the [webhook objects](#the-webhook-object) for the updated webhooks.
</div>
<div class="right">
### REST API
```
PATCH /webhooks
```
##### Example
```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]
}
```
##### Example
```graphql
mutation {
update_webhooks_items(ids: [15, 41], data: { name: "Build Website" }) {
name
}
}
```
</div>
</div>
---
## Delete a Webhook
Delete an existing webhook.
<div class="two-up">
<div class="left">
### Returns
Empty body.
</div>
<div class="right">
### REST API
```
DELETE /webhooks/:id
```
##### Example
```
DELETE /webhooks/15
```
### GraphQL
```
POST /graphql/system
```
```graphql
type Mutation {
delete_webhooks_item(id: ID!): delete_one
}
```
##### Example
```graphql
mutation {
delete_webhooks_item(id: 15) {
id
}
}
```
</div>
</div>
---
## Delete Multiple Webhooks
Delete multiple existing webhooks.
<div class="two-up">
<div class="left">
### Request Body
An array of webhook primary keys
### Returns
Empty body.
</div>
<div class="right">
### REST API
```
DELETE /webhooks
```
##### Example
```json
// DELETE /webhooks
[2, 15, 41]
```
### GraphQL
```
POST /graphql/system
```
```graphql
type Mutation {
delete_webhooks_items(ids: [ID!]!): delete_many
}
```
##### Example
```graphql
mutation {
delete_webhooks_items(ids: [2, 15, 41]) {
ids
}
}
```
</div>
</div>
---