Skip to content

Send a silent push notification

POST
/notifications/mobile/send/silent
curl --request POST \
--url https://work.optidata.cloud/api/notifications/mobile/send/silent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "title": "Sync", "body": "New documents are available", "uuids": [ "9c1f0e2a-4d31-4d8a-8c1a-1f0b6b1f9a10" ], "notification_key": "drive.share.permission_created" }'

Queues a push notification that wakes the app without alerting the user — used to trigger a background refresh. Recipients who have switched the notification’s mobile channel off are filtered out, provided notification_key is supplied; without it every recipient is kept.

Media typeapplication/json
object
title
required
string
body
required
string
uuids
required

UUIDs of the recipients.

Array<string>
subtitle
string | null
data

Arbitrary payload delivered to the app.

object | null
notification_key

Notification whose mobile preference gates delivery. Omit and no recipient is filtered.

string | null
Examples
Examplerefresh
{
"title": "Sync",
"body": "New documents are available",
"uuids": [
"9c1f0e2a-4d31-4d8a-8c1a-1f0b6b1f9a10"
],
"notification_key": "drive.share.permission_created"
}

The notification was queued.

Media typeapplication/json

Minimal acknowledgement returned by several write operations.

object
success
required
boolean
Example
{
"success": true
}

Missing, malformed or expired authentication key.

Media typeapplication/json

Authentication failures use an error key rather than message.

object
error
required
string
Examples
Examplemissing

No bearer token sent

{
"error": "JWT passport exception: Missing bearer token in request"
}

The request body or query string failed validation.

Media typeapplication/json
object
message
required

The first validation message.

string
errors
required

Validation messages keyed by field name.

object
key
additional properties
Array<string>
Examples
Exampleinvalid
{
"message": "The name field is required.",
"errors": {
"name": [
"The name field is required."
]
}
}

Rate limit exceeded. Retry after the window resets.

Media typeapplication/json

Generic error envelope used by policy, binding and framework failures.

object
message
required

Human-readable description of the failure.

string
Examples
Examplethrottled
{
"message": "Too Many Attempts."
}