API Reference
Subscribers
- GETGet subscribers
- POSTCreate subscriber
- POSTBulk create subscribers
- GETGet subscriber
- PUTUpdate subscriber
- DELDelete subscriber
- PUTUpdate provider credentials
- DELDelete provider credentials
- PATCHUpdate subscriber online status
- GETGet subscriber preferences
- GETGet subscriber global preferences
- PATCHUpdate subscriber preference
- PATCHUpdate subscriber global preferences
- GETRetrieve subscriber notifications
- GETRetrieve unseen notifications count
- POSTMark a subscriber feed message as seen
- POSTUpdate all notifications state
- POSTUpdate notification action status
- GETHandle providers oauth redirect
- GETHandle chat oauth
Topics
Notification
Workflows
Workflow Overrides
Workflow groups
Integrations
Layouts
Execution Details
Organizations
List all events
List all notification events (triggered events) for the current environment. This API supports filtering by channels, templates, emails, subscriberIds, transactionId, topicKey. Checkout all available filters in the query section. This API returns event triggers, to list each channel notifications, check messages APIs.
import co.novu.Novu
import co.novu.dto.request.NotificationRequest
import co.novu.extensions.notifications
fun main() {
val novu = Novu(apiKey = "<NOVU_API_KEY>")
val notificationRequest = NotificationRequest("<CHANNELS>", "<TEMPLATES>", "<EMAILS>", "<SEARCH>");
val notifications = novu.notifications(notificationRequest)
println(notifications)
}
{
"hasMore": true,
"data": [
{
"_id": "<string>",
"_environmentId": "<string>",
"_organizationId": "<string>",
"_subscriberId": "<string>",
"transactionId": "<string>",
"_templateId": "<string>",
"_digestedNotificationId": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>",
"channels": [
"in_app"
],
"subscriber": {
"firstName": "<string>",
"subscriberId": "<string>",
"_id": "<string>",
"lastName": "<string>",
"email": "<string>",
"phone": "<string>"
},
"template": {
"_id": "<string>",
"name": "<string>",
"origin": "novu-cloud",
"triggers": [
{
"type": "event",
"identifier": "<string>",
"variables": [
{
"name": "<string>"
}
],
"subscriberVariables": [
{
"name": "<string>"
}
]
}
]
},
"jobs": [
{
"_id": "<string>",
"type": "in_app",
"digest": {
"digestKey": "<string>",
"amount": 123,
"unit": "seconds",
"type": "regular",
"events": [
{}
],
"backoff": true,
"backoffAmount": 123,
"backoffUnit": "seconds",
"updateMode": true,
"timed": {
"atTime": "<string>",
"weekDays": [
"monday"
],
"monthDays": [
123
],
"ordinal": "1",
"ordinalValue": "day",
"monthlyType": "each",
"cronExpression": "<string>"
}
},
"executionDetails": [
{
"_id": "<string>",
"createdAt": "<string>",
"status": "Success",
"detail": "<string>",
"isRetry": true,
"isTest": true,
"providerId": "emailjs",
"raw": "<string>",
"source": "Credentials"
}
],
"step": {
"_id": "<string>",
"active": true,
"replyCallback": {},
"controlVariables": {},
"metadata": {},
"issues": {},
"filters": [
{
"isNegated": true,
"type": "BOOLEAN",
"value": "AND",
"children": [
{
"field": "<string>",
"value": "<string>",
"operator": "LARGER",
"on": "subscriber"
}
]
}
],
"template": {},
"variants": [
{}
],
"_templateId": "<string>",
"name": "<string>",
"_parentId": "<string>"
},
"overrides": {
"workflowId": "some_wf_id",
"stepId": "some_wf_id"
},
"payload": {},
"providerId": "emailjs",
"status": "<string>",
"updatedAt": "<string>"
}
],
"payload": {},
"tags": [
"<string>"
],
"controls": {},
"to": {},
"topics": [
{
"_topicId": "<string>",
"topicKey": "<string>"
}
]
}
],
"pageSize": 123,
"page": 123
}
Enter your API key in the Authorization
field like the example shown below:
E.g ApiKey 18d2e625f05d80e
import co.novu.Novu
import co.novu.dto.request.NotificationRequest
import co.novu.extensions.notifications
fun main() {
val novu = Novu(apiKey = "<NOVU_API_KEY>")
val notificationRequest = NotificationRequest("<CHANNELS>", "<TEMPLATES>", "<EMAILS>", "<SEARCH>");
val notifications = novu.notifications(notificationRequest)
println(notifications)
}
Authorizations
API key authentication. Allowed headers-- "Authorization: ApiKey <api_key>".
Query Parameters
Array of channel types
Array of template IDs or a single template ID
Array of email addresses or a single email address
Search term (deprecated)
Array of subscriber IDs or a single subscriber ID
Page number for pagination
x >= 0
Limit for pagination
1 <= x <= 50
Transaction ID for filtering
Topic Key for filtering notifications by topic
Date filter for records after this timestamp. Defaults to earliest date allowed by subscription plan
Date filter for records before this timestamp. Defaults to current time of request (now)
Response
The response is of type object
.
Was this page helpful?
import co.novu.Novu
import co.novu.dto.request.NotificationRequest
import co.novu.extensions.notifications
fun main() {
val novu = Novu(apiKey = "<NOVU_API_KEY>")
val notificationRequest = NotificationRequest("<CHANNELS>", "<TEMPLATES>", "<EMAILS>", "<SEARCH>");
val notifications = novu.notifications(notificationRequest)
println(notifications)
}
{
"hasMore": true,
"data": [
{
"_id": "<string>",
"_environmentId": "<string>",
"_organizationId": "<string>",
"_subscriberId": "<string>",
"transactionId": "<string>",
"_templateId": "<string>",
"_digestedNotificationId": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>",
"channels": [
"in_app"
],
"subscriber": {
"firstName": "<string>",
"subscriberId": "<string>",
"_id": "<string>",
"lastName": "<string>",
"email": "<string>",
"phone": "<string>"
},
"template": {
"_id": "<string>",
"name": "<string>",
"origin": "novu-cloud",
"triggers": [
{
"type": "event",
"identifier": "<string>",
"variables": [
{
"name": "<string>"
}
],
"subscriberVariables": [
{
"name": "<string>"
}
]
}
]
},
"jobs": [
{
"_id": "<string>",
"type": "in_app",
"digest": {
"digestKey": "<string>",
"amount": 123,
"unit": "seconds",
"type": "regular",
"events": [
{}
],
"backoff": true,
"backoffAmount": 123,
"backoffUnit": "seconds",
"updateMode": true,
"timed": {
"atTime": "<string>",
"weekDays": [
"monday"
],
"monthDays": [
123
],
"ordinal": "1",
"ordinalValue": "day",
"monthlyType": "each",
"cronExpression": "<string>"
}
},
"executionDetails": [
{
"_id": "<string>",
"createdAt": "<string>",
"status": "Success",
"detail": "<string>",
"isRetry": true,
"isTest": true,
"providerId": "emailjs",
"raw": "<string>",
"source": "Credentials"
}
],
"step": {
"_id": "<string>",
"active": true,
"replyCallback": {},
"controlVariables": {},
"metadata": {},
"issues": {},
"filters": [
{
"isNegated": true,
"type": "BOOLEAN",
"value": "AND",
"children": [
{
"field": "<string>",
"value": "<string>",
"operator": "LARGER",
"on": "subscriber"
}
]
}
],
"template": {},
"variants": [
{}
],
"_templateId": "<string>",
"name": "<string>",
"_parentId": "<string>"
},
"overrides": {
"workflowId": "some_wf_id",
"stepId": "some_wf_id"
},
"payload": {},
"providerId": "emailjs",
"status": "<string>",
"updatedAt": "<string>"
}
],
"payload": {},
"tags": [
"<string>"
],
"controls": {},
"to": {},
"topics": [
{
"_topicId": "<string>",
"topicKey": "<string>"
}
]
}
],
"pageSize": 123,
"page": 123
}