Appearance
Notifications
Notifications allow you to send/receive messages to/from other users of the platform.
The Notification Object
id
integer
Primary key of the revision.
timestamp
string
Timestamp in ISO8601 when the notification was created.
status
string
Current status of the notification. One of "inbox", "archived".
recipient
many-to-one
User that received the notification.
sender
many-to-one
User that sent the notification, if any.
subject
string
Subject line of the message.
message
string
Notification's message content. Will be sent in the email.
collection
string
Collection this notification references.
item
string
Primary key of the item this notification references.
json
{
"id": 2,
"timestamp": "2021-11-24T13:57:35Z",
"status": "inbox",
"recipient": "3EE34828-B43C-4FB2-A721-5151579B08EA",
"sender": "497a495e-5529-4e46-8feb-2f35e9b85601",
"subject": "You were mentioned in articles",
"message": "\nHello admin@example.com,\n\rijk@directus.io has mentioned you in a comment:\n\n> Hello <em>admin@example.com</em>!\n\n<a href=\"http://localhost:8080/admin/content/articles/1\">Click here to view.</a>\n",
"collection": "articles",
"item": "1"
}
List Notifications
List all notifications that exist in Directus.
Query Parameters
Supports all global query parameters.
Returns
An array of up to limit notification objects. If no items are available, data will be an empty array.
REST API
GET /notifications
SEARCH /notifications
GraphQL
POST /graphql/system
graphql
type Query {
notifications: [directus_notifications]
}
Example
graphql
query {
notifications {
id
recipient
subject
}
}
Retrieve a notification
List an existing notification by primary key.
Query Parameters
Supports all global query parameters.
Returns
Returns the requested notification object.
REST API
GET /notifications/:id
Example
GET /notifications/42
GraphQL
POST /graphql/system
graphql
type Query {
notifications_by_id(id: ID!): directus_notifications
}
Example
graphql
query {
notifications_by_id(id: 42) {
id
sender
recipient
message
subject
}
}
Create a Notification
Create a new notification.
Query Parameters
Supports all global query parameters.
Request Body
A partial notification object.
Returns
Returns the notification object for the created notification.
REST API
POST /notifications
Example
json
// POST /notifications
{
"recipient": "410b5772-e63f-4ae6-9ea2-39c3a31bd6ca",
"subject": "Hi there!"
}
GraphQL
POST /graphql/system
graphql
type Mutation {
create_notifications_item(data: create_directus_notifications_input!): directus_notifications
}
Example
graphql
mutation {
create_notifications_item(data: { recipient: "410b5772-e63f-4ae6-9ea2-39c3a31bd6ca", subject: "Hi there!" }) {
id
recipient
}
}
Create Multiple Notifications
Create multiple new notifications.
Query Parameters
Supports all global query parameters.
Request Body
An array of partial notification objects.
Returns
Returns the notification object for the created notification.
REST API
POST /notifications
Example
json
// POST /notifications
[
{
"collection": "directus_files",
"recipient": "410b5772-e63f-4ae6-9ea2-39c3a31bd6ca",
"message": "Hi there! You should check out these files"
},
{
"collection": "articles",
"recipient": "410b5772-e63f-4ae6-9ea2-39c3a31bd6ca",
"message": "Hi there! You should check out these articles"
}
]
GraphQL
POST /graphql/system
graphql
type Mutation {
create_notifications_items(data: [create_directus_notifications_input!]!): [directus_notifications]
}
Example
graphql
mutation {
create_notifications_items(
data: [
{
collection: "directus_files"
recipient: "410b5772-e63f-4ae6-9ea2-39c3a31bd6ca"
message: "Hi there! You should check out these files"
}
{
collection: "articles"
recipient: "410b5772-e63f-4ae6-9ea2-39c3a31bd6ca"
message: "Hi there! You should check out these articles"
}
]
) {
id
recipient
}
}
Update a Notification
Update an existing notification.
Email Notifications
Emails are only sent when the notification is created. Updated to an existing notification won't trigger a new notification email to be sent.
Query Parameters
Supports all global query parameters.
Request Body
A partial notification object.
Returns
Returns the notification object for the updated notification.
REST API
PATCH /notifications/:id
Example
json
// PATCH /notifications/34
{
"message": "This is my updated notification"
}
GraphQL
POST /graphql/system
graphql
type Mutation {
update_notifications_item(id: ID!, data: update_directus_notifications_input): directus_notifications
}
Example
graphql
mutation {
update_notifications_item(id: 32, data: { message: "This is my updated notification" }) {
id
message
}
}
Update Multiple Notifications
Update multiple existing notifications.
Query Parameters
Supports all global query parameters.
Request Body
keys
Required
Array of primary keys of the notifications you'd like to update.
data
Required
Any of the notification object's properties.
Returns
Returns the notification objects for the updated notifications.
REST API
PATCH /notifications
Example
json
// PATCH /notifications
{
"keys": [15, 64],
"data": {
"message": "Updated message!"
}
}
GraphQL
POST /graphql/system
graphql
type Mutation {
update_notifications_items(ids: [ID!]!, data: update_directus_notifications_input): [directus_notifications]
}
Example
graphql
mutation {
update_notifications_items(ids: [15, 64], data: { message: "Updated message!" }) {
id
recipient
}
}
Delete a Notification
Delete an existing notification.
Returns
Empty body.
REST API
DELETE /notifications/:id
Example
DELETE /notifications/34
GraphQL
POST /graphql/system
graphql
type Mutation {
delete_notifications_item(id: ID!): delete_one
}
Example
graphql
mutation {
delete_notifications_item(id: 32) {
id
}
}
Delete Multiple Notifications
Delete multiple existing notifications.
Request Body
An array of notification primary keys
Returns
Empty body.
REST API
DELETE /notifications
Example
json
// DELETE /notifications
[15, 251, 810]
GraphQL
POST /graphql/system
graphql
type Mutation {
delete_notifications_items(ids: [ID!]!): delete_many
}
Example
graphql
mutation {
delete_notifications_items(ids: [15, 251, 810]) {
ids
}
}