Retrieve an event

Retrieve an event by its unique key identifier **notificationId**. Here **notificationId** is of mongodbId type. This API returns the event details - execution logs, status, actual notification (message) generated by each workflow step.

Retrieve an event by its unique key identifier notificationId. Here notificationId is of mongodbId type. This API returns the event details - execution logs, status, actual notification (message) generated by each workflow step.

GET
/v1/notifications/{notificationId}

Authorization

Authorization<token>

API key authentication. Allowed headers-- "Authorization: ApiKey <novu_secret_key>".

In: header

Path Parameters

notificationIdRequiredstring

Header Parameters

idempotency-keystring

A header for idempotency purposes

Response Body

OK

_idstring

Unique identifier of the notification

_environmentIdRequiredstring

Environment ID of the notification

_organizationIdRequiredstring

Organization ID of the notification

_subscriberIdRequiredstring

Subscriber ID of the notification

transactionIdRequiredstring

Transaction ID of the notification

_templateIdstring

Template ID of the notification

_digestedNotificationIdstring

Digested Notification ID

createdAtstring

Creation time of the notification

updatedAtstring

Last updated time of the notification

channelsarray<string>
subscriberobject

Subscriber of the notification

templateobject

Template of the notification

jobsarray<object>

Jobs of the notification

payloadobject

Payload of the notification

tagsarray<string>

Tags associated with the notification

controlsobject

Controls associated with the notification

toobject

To field for subscriber definition

topicsarray<object>

Topics of the notification

severitystring

Severity of the workflow

Value in: "high" | "medium" | "low" | "none"
criticalboolean

Criticality of the notification

contextKeysarray<string>

Context (single or multi) in which the notification was sent

export interface Response {
  /**
   * Unique identifier of the notification
   */
  _id?: string;
  /**
   * Environment ID of the notification
   */
  _environmentId: string;
  /**
   * Organization ID of the notification
   */
  _organizationId: string;
  /**
   * Subscriber ID of the notification
   */
  _subscriberId: string;
  /**
   * Transaction ID of the notification
   */
  transactionId: string;
  /**
   * Template ID of the notification
   */
  _templateId?: string;
  /**
   * Digested Notification ID
   */
  _digestedNotificationId?: string;
  /**
   * Creation time of the notification
   */
  createdAt?: string;
  /**
   * Last updated time of the notification
   */
  updatedAt?: string;
  channels?: ("in_app" | "email" | "sms" | "chat" | "push" | "digest" | "trigger" | "delay" | "throttle" | "custom")[];
  /**
   * Subscriber of the notification
   */
  subscriber?: ActivityNotificationSubscriberResponseDto;
  /**
   * Template of the notification
   */
  template?: ActivityNotificationTemplateResponseDto;
  /**
   * Jobs of the notification
   */
  jobs?: ActivityNotificationJobResponseDto[];
  /**
   * Payload of the notification
   */
  payload?: {
    [k: string]: unknown;
  };
  /**
   * Tags associated with the notification
   */
  tags?: string[];
  /**
   * Controls associated with the notification
   */
  controls?: {
    [k: string]: unknown;
  };
  /**
   * To field for subscriber definition
   */
  to?: {
    [k: string]: unknown;
  };
  /**
   * Topics of the notification
   */
  topics?: ActivityTopicDto[];
  /**
   * Severity of the workflow
   */
  severity?: "high" | "medium" | "low" | "none";
  /**
   * Criticality of the notification
   */
  critical?: boolean;
  /**
   * Context (single or multi) in which the notification was sent
   */
  contextKeys?: string[];
}
export interface ActivityNotificationSubscriberResponseDto {
  /**
   * First name of the subscriber
   */
  firstName?: string;
  /**
   * External unique identifier of the subscriber
   */
  subscriberId: string;
  /**
   * Internal to Novu unique identifier of the subscriber
   */
  _id: string;
  /**
   * Last name of the subscriber
   */
  lastName?: string;
  /**
   * Email address of the subscriber
   */
  email?: string;
  /**
   * Phone number of the subscriber
   */
  phone?: string;
}
export interface ActivityNotificationTemplateResponseDto {
  /**
   * Unique identifier of the template
   */
  _id?: string;
  /**
   * Name of the template
   */
  name: string;
  /**
   * Origin of the layout
   */
  origin?: "novu-cloud" | "novu-cloud-v1" | "external";
  /**
   * Triggers of the template
   */
  triggers: NotificationTriggerDto[];
}
export interface NotificationTriggerDto {
  /**
   * Type of the trigger
   */
  type: "event";
  /**
   * Identifier of the trigger
   */
  identifier: string;
  /**
   * Variables of the trigger
   */
  variables: NotificationTriggerVariable[];
  /**
   * Subscriber variables of the trigger
   */
  subscriberVariables?: NotificationTriggerVariable1[];
}
export interface NotificationTriggerVariable {
  /**
   * Name of the variable
   */
  name: string;
}
export interface NotificationTriggerVariable1 {
  /**
   * Name of the variable
   */
  name: string;
}
export interface ActivityNotificationJobResponseDto {
  /**
   * Unique identifier of the job
   */
  _id: string;
  /**
   * Type of the job
   */
  type: "in_app" | "email" | "sms" | "chat" | "push" | "digest" | "trigger" | "delay" | "throttle" | "custom";
  /**
   * Optional digest for the job, including metadata and events
   */
  digest?: DigestMetadataDto;
  /**
   * Execution details of the job
   */
  executionDetails: ActivityNotificationExecutionDetailResponseDto[];
  /**
   * Step details of the job
   */
  step: ActivityNotificationStepResponseDto;
  /**
   * Optional context object for additional error details.
   */
  overrides?: {
    [k: string]: unknown;
  };
  /**
   * Optional payload for the job
   */
  payload?: {};
  /**
   * Provider ID of the job
   */
  providerId:
    | "emailjs"
    | "mailgun"
    | "mailjet"
    | "mandrill"
    | "nodemailer"
    | "postmark"
    | "sendgrid"
    | "sendinblue"
    | "ses"
    | "netcore"
    | "infobip-email"
    | "resend"
    | "plunk"
    | "mailersend"
    | "mailtrap"
    | "clickatell"
    | "outlook365"
    | "novu-email"
    | "sparkpost"
    | "email-webhook"
    | "braze"
    | "nexmo"
    | "plivo"
    | "sms77"
    | "sms-central"
    | "sns"
    | "telnyx"
    | "twilio"
    | "gupshup"
    | "firetext"
    | "infobip-sms"
    | "burst-sms"
    | "bulk-sms"
    | "isend-sms"
    | "forty-six-elks"
    | "kannel"
    | "maqsam"
    | "termii"
    | "africas-talking"
    | "novu-sms"
    | "sendchamp"
    | "generic-sms"
    | "clicksend"
    | "bandwidth"
    | "messagebird"
    | "simpletexting"
    | "azure-sms"
    | "ring-central"
    | "brevo-sms"
    | "eazy-sms"
    | "mobishastra"
    | "afro-message"
    | "unifonic"
    | "smsmode"
    | "imedia"
    | "sinch"
    | "isendpro-sms"
    | "fcm"
    | "apns"
    | "expo"
    | "one-signal"
    | "pushpad"
    | "push-webhook"
    | "pusher-beams"
    | "appio"
    | "novu"
    | "slack"
    | "discord"
    | "msteams"
    | "mattermost"
    | "ryver"
    | "zulip"
    | "grafana-on-call"
    | "getstream"
    | "rocket-chat"
    | "whatsapp-business"
    | "chat-webhook"
    | "novu-slack";
  /**
   * Status of the job
   */
  status: string;
  /**
   * Updated time of the notification
   */
  updatedAt?: string;
  /**
   * The number of times the digest/delay job has been extended to align with the subscribers schedule
   */
  scheduleExtensionsCount?: number;
}
export interface DigestMetadataDto {
  /**
   * Optional key for the digest
   */
  digestKey?: string;
  /**
   * Amount for the digest
   */
  amount?: number;
  /**
   * Unit of the digest
   */
  unit?: "seconds" | "minutes" | "hours" | "days" | "weeks" | "months";
  /**
   * The Digest Type
   */
  type: "regular" | "backoff" | "timed";
  /**
   * Optional array of events associated with the digest, represented as key-value pairs
   */
  events?: {
    [k: string]: unknown;
  }[];
  /**
   * Regular digest: Indicates if backoff is enabled for the regular digest
   */
  backoff?: boolean;
  /**
   * Regular digest: Amount for backoff
   */
  backoffAmount?: number;
  /**
   * Regular digest: Unit for backoff
   */
  backoffUnit?: "seconds" | "minutes" | "hours" | "days" | "weeks" | "months";
  /**
   * Regular digest: Indicates if the digest should update
   */
  updateMode?: boolean;
  /**
   * Configuration for timed digest
   */
  timed?: DigestTimedConfigDto;
}
export interface DigestTimedConfigDto {
  /**
   * Time at which the digest is triggered
   */
  atTime?: string;
  /**
   * Days of the week for the digest
   */
  weekDays?: ("monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday")[];
  /**
   * Specific days of the month for the digest
   */
  monthDays?: number[];
  /**
   * Ordinal position for the digest
   */
  ordinal?: "1" | "2" | "3" | "4" | "5" | "last";
  /**
   * Value of the ordinal
   */
  ordinalValue?:
    | "day"
    | "weekday"
    | "weekend"
    | "sunday"
    | "monday"
    | "tuesday"
    | "wednesday"
    | "thursday"
    | "friday"
    | "saturday";
  /**
   * Type of monthly schedule
   */
  monthlyType?: "each" | "on";
  /**
   * Cron expression for scheduling
   */
  cronExpression?: string;
  /**
   * Until date for scheduling
   */
  untilDate?: string;
}
export interface ActivityNotificationExecutionDetailResponseDto {
  /**
   * Unique identifier of the execution detail
   */
  _id: string;
  /**
   * Creation time of the execution detail
   */
  createdAt?: string;
  /**
   * Status of the execution detail
   */
  status: "Success" | "Warning" | "Failed" | "Pending" | "Queued" | "ReadConfirmation";
  /**
   * Detailed information about the execution
   */
  detail: string;
  /**
   * Whether the execution is a retry or not
   */
  isRetry: boolean;
  /**
   * Whether the execution is a test or not
   */
  isTest: boolean;
  /**
   * Provider ID of the job
   */
  providerId?:
    | "emailjs"
    | "mailgun"
    | "mailjet"
    | "mandrill"
    | "nodemailer"
    | "postmark"
    | "sendgrid"
    | "sendinblue"
    | "ses"
    | "netcore"
    | "infobip-email"
    | "resend"
    | "plunk"
    | "mailersend"
    | "mailtrap"
    | "clickatell"
    | "outlook365"
    | "novu-email"
    | "sparkpost"
    | "email-webhook"
    | "braze"
    | "nexmo"
    | "plivo"
    | "sms77"
    | "sms-central"
    | "sns"
    | "telnyx"
    | "twilio"
    | "gupshup"
    | "firetext"
    | "infobip-sms"
    | "burst-sms"
    | "bulk-sms"
    | "isend-sms"
    | "forty-six-elks"
    | "kannel"
    | "maqsam"
    | "termii"
    | "africas-talking"
    | "novu-sms"
    | "sendchamp"
    | "generic-sms"
    | "clicksend"
    | "bandwidth"
    | "messagebird"
    | "simpletexting"
    | "azure-sms"
    | "ring-central"
    | "brevo-sms"
    | "eazy-sms"
    | "mobishastra"
    | "afro-message"
    | "unifonic"
    | "smsmode"
    | "imedia"
    | "sinch"
    | "isendpro-sms"
    | "fcm"
    | "apns"
    | "expo"
    | "one-signal"
    | "pushpad"
    | "push-webhook"
    | "pusher-beams"
    | "appio"
    | "novu"
    | "slack"
    | "discord"
    | "msteams"
    | "mattermost"
    | "ryver"
    | "zulip"
    | "grafana-on-call"
    | "getstream"
    | "rocket-chat"
    | "whatsapp-business"
    | "chat-webhook"
    | "novu-slack";
  /**
   * Raw data of the execution
   */
  raw?: string | null;
  /**
   * Source of the execution detail
   */
  source: "Credentials" | "Internal" | "Payload" | "Webhook";
}
export interface ActivityNotificationStepResponseDto {
  /**
   * Unique identifier of the step
   */
  _id: string;
  /**
   * Whether the step is active or not
   */
  active: boolean;
  /**
   * Reply callback settings
   */
  replyCallback?: {};
  /**
   * Control variables
   */
  controlVariables?: {};
  /**
   * Metadata for the workflow step
   */
  metadata?: {};
  /**
   * Step issues
   */
  issues?: {};
  /**
   * Filter criteria for the step
   */
  filters: StepFilterDto[];
  /**
   * Optional template for the step
   */
  template?: MessageTemplateDto;
  /**
   * Variants of the step
   */
  variants?: ActivityNotificationStepResponseDto1[];
  /**
   * The identifier for the template associated with this step
   */
  _templateId: string;
  /**
   * The name of the step
   */
  name?: string;
  /**
   * The unique identifier for the parent step
   */
  _parentId?: string | null;
}
export interface StepFilterDto {
  isNegated: boolean;
  type: "BOOLEAN" | "TEXT" | "DATE" | "NUMBER" | "STATEMENT" | "LIST" | "MULTI_LIST" | "GROUP";
  value: "AND" | "OR";
  children: FieldFilterPartDto[];
}
export interface FieldFilterPartDto {
  field: string;
  value: string;
  operator:
    | "LARGER"
    | "SMALLER"
    | "LARGER_EQUAL"
    | "SMALLER_EQUAL"
    | "EQUAL"
    | "NOT_EQUAL"
    | "ALL_IN"
    | "ANY_IN"
    | "NOT_IN"
    | "BETWEEN"
    | "NOT_BETWEEN"
    | "LIKE"
    | "NOT_LIKE"
    | "IN";
  on: "subscriber" | "payload";
}
export interface MessageTemplateDto {}
export interface ActivityNotificationStepResponseDto1 {
  /**
   * Unique identifier of the step
   */
  _id: string;
  /**
   * Whether the step is active or not
   */
  active: boolean;
  /**
   * Reply callback settings
   */
  replyCallback?: {};
  /**
   * Control variables
   */
  controlVariables?: {};
  /**
   * Metadata for the workflow step
   */
  metadata?: {};
  /**
   * Step issues
   */
  issues?: {};
  /**
   * Filter criteria for the step
   */
  filters: StepFilterDto[];
  /**
   * Optional template for the step
   */
  template?: MessageTemplateDto;
  /**
   * Variants of the step
   */
  variants?: ActivityNotificationStepResponseDto1[];
  /**
   * The identifier for the template associated with this step
   */
  _templateId: string;
  /**
   * The name of the step
   */
  name?: string;
  /**
   * The unique identifier for the parent step
   */
  _parentId?: string | null;
}
export interface ActivityTopicDto {
  /**
   * Internal Topic ID of the notification
   */
  _topicId: string;
  /**
   * Topic Key of the notification
   */
  topicKey: string;
}
 
curl -X GET "https://api.novu.co/v1/notifications/string" \
  -H "idempotency-key: string" \
  -H "Authorization: <token>"
{
  "_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": 0,
        "unit": "seconds",
        "type": "regular",
        "events": [
          {}
        ],
        "backoff": true,
        "backoffAmount": 0,
        "backoffUnit": "seconds",
        "updateMode": true,
        "timed": {
          "atTime": "string",
          "weekDays": [
            "monday"
          ],
          "monthDays": [
            0
          ],
          "ordinal": "1",
          "ordinalValue": "day",
          "monthlyType": "each",
          "cronExpression": "string",
          "untilDate": "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": [
          {
            "_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"
          }
        ],
        "_templateId": "string",
        "name": "string",
        "_parentId": "string"
      },
      "overrides": {
        "workflowId": "some_wf_id",
        "stepId": "some_wf_id"
      },
      "payload": {},
      "providerId": "emailjs",
      "status": "string",
      "updatedAt": "string",
      "scheduleExtensionsCount": 0
    }
  ],
  "payload": {},
  "tags": [
    "string"
  ],
  "controls": {},
  "to": {},
  "topics": [
    {
      "_topicId": "string",
      "topicKey": "string"
    }
  ],
  "severity": "high",
  "critical": true,
  "contextKeys": [
    "string"
  ]
}

On this page

No Headings
Edit this page on GitHub