curl --request POST \
--url https://api.velt.dev/v2/notifications/add \
--header 'Content-Type: application/json' \
--header 'x-velt-api-key: <x-velt-api-key>' \
--header 'x-velt-auth-token: <x-velt-auth-token>' \
--data '
{
"data": {
"organizationId": "<string>",
"createOrganization": true,
"documentId": "<string>",
"createDocument": true,
"actionUser": {},
"verifyUserPermissions": true,
"notificationId": "<string>",
"isNotificationResolverUsed": true,
"displayHeadlineMessageTemplate": "<string>",
"displayHeadlineMessageTemplateData": {
"actionUser": {},
"recipientUser": "<string>",
"yourCustomField": "<string>"
},
"displayBodyMessage": "<string>",
"notifyUsers": [
{}
],
"notifyAll": true,
"notificationSource": "<string>",
"notificationSourceData": {},
"context": {
"access": {}
}
}
}
'{
"result": {
"status": "success",
"message": "Notification added successfully.",
"data": {
"success": true,
"message": "Notification added successfully."
}
}
}
curl --request POST \
--url https://api.velt.dev/v2/notifications/add \
--header 'Content-Type: application/json' \
--header 'x-velt-api-key: <x-velt-api-key>' \
--header 'x-velt-auth-token: <x-velt-auth-token>' \
--data '
{
"data": {
"organizationId": "<string>",
"createOrganization": true,
"documentId": "<string>",
"createDocument": true,
"actionUser": {},
"verifyUserPermissions": true,
"notificationId": "<string>",
"isNotificationResolverUsed": true,
"displayHeadlineMessageTemplate": "<string>",
"displayHeadlineMessageTemplateData": {
"actionUser": {},
"recipientUser": "<string>",
"yourCustomField": "<string>"
},
"displayBodyMessage": "<string>",
"notifyUsers": [
{}
],
"notifyAll": true,
"notificationSource": "<string>",
"notificationSourceData": {},
"context": {
"access": {}
}
}
}
'{
"result": {
"status": "success",
"message": "Notification added successfully.",
"data": {
"success": true,
"message": "Notification added successfully."
}
}
}
POST https://api.velt.dev/v2/notifications/add
Show properties
false_, - are allowed.true to enable Notification Resolver mode.
When enabled, displayHeadlineMessageTemplate and displayBodyMessage are not required — notification content is resolved from your own infrastructure at read time.isNotificationResolverUsed is true.isNotificationResolverUsed is true.notifyUsers array.'custom' for notifications that should be routed through the Notification Resolver. Other values include 'comment', 'huddle', and 'crdt'.Show properties
Show example
{
"entityId": "numberOfVisitors",
"dashboardId": "myDashboard"
}
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"actionUser": {
"userId": "yourUserId",
"name": "User Name",
"email": "user@example.com"
},
"displayHeadlineMessageTemplate": "This is main template, you can pass variables using curly brackets like this: {actionUser}, {recipientUser}, {yourCustomVariableWithStringValue}",
"displayHeadlineMessageTemplateData": {
"actionUser": {
"userId": "yourUserId",
"name": "User Name",
"email": "user@example.com"
},
"recipientUser": {
"userId": "recipientUserId",
"name": "Recipient Name",
"email": "recipient@example.com"
},
"yourCustomField": "Variable will be replaced with this text"
},
"displayBodyMessage": "This is body message (Secondary message)",
"notifyUsers": [
{
"email": "test@example.com",
"userId": "testingUserId"
},
{
"userId": "yourUserId",
"name": "User Name",
"email": "user@example.com"
}
]
}
}
{
"data": {
"organizationId": "org1",
"documentId": "document3",
"actionUser": {
"userId": "1.1"
},
"verifyUserPermissions": true,
"displayHeadlineMessageTemplate": "This is main template, you can pass variables using curly brackets like this: {actionUser}, {recipientUser}",
"displayHeadlineMessageTemplateData": {
"actionUser": {
"userId": "1.1"
},
"recipientUser": {
"userId": "2.2"
}
},
"displayBodyMessage": "This is body message (Secondary message)",
"notifyUsers": [
{
"userId": "2.2"
}
],
"notifyAll": false
}
}
verifyUserPermissions is enabled, the API checks document access for each user before creating notifications. Only users with access to the document will receive notifications.{
"data": {
"organizationId": "org1",
"documentId": "document3",
"actionUser": {
"userId": "1.1",
"name": "User One",
"email": "user1@example.com"
},
"context": {
"access": {
"entityId": "numberOfVisitors",
"dashboardId": "myDashboard"
}
},
"displayHeadlineMessageTemplate": "New comment on {entityName}",
"displayHeadlineMessageTemplateData": {
"entityName": "Visitor Analytics"
},
"displayBodyMessage": "A new comment has been added to the visitor analytics dashboard",
"notifyUsers": [
{
"userId": "2.2"
}
],
"notifyAll": false
}
}
displayHeadlineMessageTemplate and displayBodyMessage and set notificationSource to 'custom'.
{
"data": {
"organizationId": "yourOrganizationId",
"documentId": "yourDocumentId",
"actionUser": {
"userId": "yourUserId",
"name": "User Name",
"email": "user@example.com"
},
"notificationId": "custom-notif-001",
"isNotificationResolverUsed": true,
"notificationSource": "custom",
"notifyUsers": [
{
"userId": "recipientUserId",
"email": "recipient@example.com"
}
],
"notifyAll": false
}
}
isNotificationResolverUsed is true, displayHeadlineMessageTemplate and displayBodyMessage are not required. Notification content is fetched from your configured data provider at read time.{
"result": {
"status": "success",
"message": "Notification added successfully.",
"data": {
"success": true,
"message": "Notification added successfully."
}
}
}
{
"error": {
"message": "ERROR_MESSAGE",
"status": "INVALID_ARGUMENT"
}
}
{
"result": {
"status": "success",
"message": "Notification added successfully.",
"data": {
"success": true,
"message": "Notification added successfully."
}
}
}
Was this page helpful?