POST
/
v1
/
integrations
curl --location 'https://api.novu.co/v1/integrations' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: ApiKey <NOVU_SECRET_KEY>' \
--data '{
    "name": "SES",
    "identifier": "ses-NkIQ5Koy3-123",
    "credentials": {
        "apiKey": "ACCESS_KEY_ID",
        "secretKey": "SECRET_ACCESS_KEY",
        "region": "us-east-2",
        "from": "FROM_EMAIL_ADDRESS",
        "senderName": "SENDER_NAME",
        // ... other credentials as per provider
    },
    "conditions": [],
    "active": true,
    "check": false,
    "providerId": "ses",
    "channel": "email"
}'
{
  "data": {
    "_id": "string",
    "_environmentId": "string",
    "_organizationId": "string",
    "name": "string",
    "identifier": "string",
    "providerId": "string",
    "channel": "in_app",
    "credentials": {
      "apiKey": "string",
      "user": "string",
      "secretKey": "string",
      "domain": "string",
      "password": "string",
      "host": "string",
      "port": "string",
      "secure": true,
      "region": "string",
      "accountSid": "string",
      "messageProfileId": "string",
      "token": "string",
      "from": "string",
      "senderName": "string",
      "projectName": "string",
      "applicationId": "string",
      "clientId": "string",
      "requireTls": true,
      "ignoreTls": true,
      "tlsOptions": {},
      "baseUrl": "string",
      "webhookUrl": "string",
      "redirectUrl": "string",
      "hmac": true,
      "serviceAccount": "string",
      "ipPoolName": "string"
    },
    "active": true,
    "deleted": true,
    "deletedAt": "string",
    "deletedBy": "string",
    "primary": true
  }
}

Enter your API key in the Authorization field like the example shown below:

E.g ApiKey 18d2e625f05d80e

curl --location 'https://api.novu.co/v1/integrations' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: ApiKey <NOVU_SECRET_KEY>' \
--data '{
    "name": "SES",
    "identifier": "ses-NkIQ5Koy3-123",
    "credentials": {
        "apiKey": "ACCESS_KEY_ID",
        "secretKey": "SECRET_ACCESS_KEY",
        "region": "us-east-2",
        "from": "FROM_EMAIL_ADDRESS",
        "senderName": "SENDER_NAME",
        // ... other credentials as per provider
    },
    "conditions": [],
    "active": true,
    "check": false,
    "providerId": "ses",
    "channel": "email"
}'
{
  "data": {
    "_id": "string",
    "_environmentId": "string",
    "_organizationId": "string",
    "name": "string",
    "identifier": "string",
    "providerId": "string",
    "channel": "in_app",
    "credentials": {
      "apiKey": "string",
      "user": "string",
      "secretKey": "string",
      "domain": "string",
      "password": "string",
      "host": "string",
      "port": "string",
      "secure": true,
      "region": "string",
      "accountSid": "string",
      "messageProfileId": "string",
      "token": "string",
      "from": "string",
      "senderName": "string",
      "projectName": "string",
      "applicationId": "string",
      "clientId": "string",
      "requireTls": true,
      "ignoreTls": true,
      "tlsOptions": {},
      "baseUrl": "string",
      "webhookUrl": "string",
      "redirectUrl": "string",
      "hmac": true,
      "serviceAccount": "string",
      "ipPoolName": "string"
    },
    "active": true,
    "deleted": true,
    "deletedAt": "string",
    "deletedBy": "string",
    "primary": true
  }
}

Authorizations

Authorization
string
header
required

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

Body

application/json
providerId
string
required

The provider ID for the integration

channel
enum<string>
required

The channel type for the integration

Available options:
in_app,
email,
sms,
chat,
push
name
string

The name of the integration

identifier
string

The unique identifier for the integration

_environmentId
string

The ID of the associated environment

credentials
object

The credentials for the integration

active
boolean

If the integration is active, the validation on the credentials field will run

check
boolean

Flag to check the integration status

conditions
object[]

Conditions for the integration

Response

201
application/json
Created
data
object