Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Novu Topics API

Topics are a way to group subscribers together so that they can be notified of events at once. A topic is identified by a custom key. This can be helpful for things like sending out marketing emails or notifying users of new features. Topics can also be used to send notifications to the subscribers who have been grouped together based on their interests, location, activities and much more.

Novu Topics API is one of 19 APIs that Novu publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 26 JSON Schema definitions.

Tagged areas include Topics. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, authentication docs, rate-limit docs, a getting-started guide, and 26 JSON Schemas.

This API exposes 11 operations across 5 paths, and defines 32 schemas. It is described by OpenAPI 3.1.0, at version 3.15.0.

Requests are made against 2 base URLs: https://api.novu.co, https://eu.api.novu.co.

11 operations 5 paths 32 schemas 2 DELETE5 GET2 PATCH2 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
3.15.0
Base URL
https://api.novu.co
Authentication
API Key
License
Terms of Service
Resource Areas
1

Authentication & Security 1

Novu Topics API declares 1 security scheme for authenticating requests. An API key is passed in the header as Authorization (secretKey). By default, every request must be authenticated.

  • secretKey — API key authentication. Allowed headers-- "Authorization: ApiKey ".

Paths & Operations 11

Across 5 paths, the API surfaces 11 operations — 2 DELETE, 5 GET, 2 PATCH, 2 POST. Each is listed below with its method, path, parameters, and response codes.

Topics 11

Topics are a way to group subscribers together so that they can be notified of events at once. A topic is identified by a custom key. This can be helpful for things like sending o…

GET
/v1/topics/{topicKey}/subscribers/{externalSubscriberId}
Novu Check Topic Subscriber
TopicsV1Controller_getTopicSubscriber 2 params → 200400401403404405409413
GET
/v2/topics
Novu List All Topics
TopicsController_listTopics 8 params → 200400401403404405409413
POST
/v2/topics
Novu Create a Topic
TopicsController_upsertTopic 1 param body → 200201400401403404405409
GET
/v2/topics/{topicKey}
Novu Retrieve a Topic
TopicsController_getTopic 1 param → 200400401403404405409413
PATCH
/v2/topics/{topicKey}
Novu Update a Topic
TopicsController_updateTopic 1 param body → 200400401403404405409413
DELETE
/v2/topics/{topicKey}
Novu Delete a Topic
TopicsController_deleteTopic 1 param → 200400401403404405409413
GET
/v2/topics/{topicKey}/subscriptions
Novu List Topic Subscriptions
TopicsController_listTopicSubscriptions 9 params → 200400401403404405409413
POST
/v2/topics/{topicKey}/subscriptions
Novu Create Topic Subscriptions
TopicsController_createTopicSubscriptions 1 param body → 201400401403404405409413
DELETE
/v2/topics/{topicKey}/subscriptions
Novu Delete Topic Subscriptions
TopicsController_deleteTopicSubscriptions 1 param body → 200400401403404405409413
GET
/v2/topics/{topicKey}/subscriptions/{identifier}
Novu Retrieve a Topic Subscription
TopicsController_getTopicSubscription 2 params → 200400401403404405409413
PATCH
/v2/topics/{topicKey}/subscriptions/{identifier}
Novu Update a Topic Subscription
TopicsController_updateTopicSubscription 2 params body → 200400401403404405409413

Schemas 32

The contract defines 32 schemas that model the data the API accepts and returns. The most detailed are SubscriptionResponseDto (9 properties), SubscriptionDto (7 properties), WorkflowDto (7 properties), ValidationErrorDto (7 properties). Each schema is shown below with its type and property counts.

ListTopicSubscriptionsResponseDto
object
5 properties 5 required
TopicSubscriberIdentifierDto
object
3 properties 2 required
SubscriptionDto
object
7 properties 5 required
UpdateTopicRequestDto
object
1 property 1 required
UpdateTopicSubscriptionRequestDto
object
2 properties
CreateTopicSubscriptionsRequestDto
object
5 properties
WorkflowDto
object
7 properties 5 required
SeverityLevelEnum
string
Severity of the workflow
DeleteTopicSubscriptionsResponseDto
object
3 properties 2 required
DeleteTopicSubscriptionsRequestDto
object
2 properties
SubscriptionsDeleteErrorDto
object
3 properties 3 required
ConstraintValidation
object
2 properties 1 required
TopicSubscriberDto
object
6 properties 6 required
MetaDto
object
3 properties 3 required
DeleteTopicSubscriberIdentifierDto
object
2 properties
TopicDto
object
3 properties 2 required
TopicSubscriptionResponseDto
object
6 properties 5 required
GroupPreferenceFilterDetailsDto
object
2 properties
SubscriberDto
object
6 properties 2 required
CreateUpdateTopicRequestDto
object
2 properties 1 required
ValidationErrorDto
object
7 properties 4 required
ErrorDto
object
6 properties 3 required
SubscriptionErrorDto
object
3 properties 3 required
ListTopicsResponseDto
object
5 properties 5 required
SubscriptionPreferenceDto
object
4 properties 2 required
TopicResponseDto
object
5 properties 2 required
CreateSubscriptionsResponseDto
object
3 properties 2 required
WorkflowPreferenceRequestDto
object
3 properties 1 required
DeleteTopicResponseDto
object
1 property 1 required
SubscriptionDetailsResponseDto
object
5 properties 1 required
GroupPreferenceFilterDto
object
3 properties 1 required
SubscriptionResponseDto
object
9 properties 5 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

novu-topics-api-openapi.yml Raw ↑

Other APIs Novu publishes across the network.

Novu Inbox / In-App API
Novu Framework (Code-First Workflows)
Novu MCP Server
Novu Activity API
Novu Channel Connections API
Novu Channel Endpoints API
Novu Contexts API
Novu Domains API
Novu Environment Variables API
Novu Environments API
Novu Events API
Novu Integrations API