Novu · Schema
IntegrationResponseDto
JSON Schema for Novu IntegrationResponseDto.
NotificationsMessagingIn AppEmailSMSPushChatWorkflowsOpen SourceSubscribersTopicsInboxWorkflow OrchestrationMulti ChannelDigestMCPFrameworkReact
Properties
| Name | Type | Description |
|---|---|---|
| _id | string | The unique identifier of the integration record in the database. This is automatically generated. |
| _environmentId | string | The unique identifier for the environment associated with this integration. This links to the Environment collection. |
| _organizationId | string | The unique identifier for the organization that owns this integration. This links to the Organization collection. |
| name | string | The name of the integration, which is used to identify it in the user interface. |
| identifier | string | A unique string identifier for the integration, often used for API calls or internal references. |
| providerId | string | The identifier for the provider of the integration (e.g., "mailgun", "twilio"). |
| channel | string | The channel type for the integration, which defines how it communicates (e.g., email, SMS). Not set for agent-kind integrations. |
| kind | string | Distinguishes delivery integrations from agent-runtime integrations. Defaults to "delivery". Agent integrations do not have a channel. |
| credentials | object | The decrypted credentials required for the integration to function (e.g. provider API keys, signing secrets). Only returned to dashboard/session-token callers; API-key authenticated callers receive th |
| configurations | object | The configurations required for enabling the additional configurations of the integration. |
| active | boolean | Indicates whether the integration is currently active. An active integration will process events and messages. |
| deleted | boolean | Indicates whether the integration has been marked as deleted (soft delete). |
| deletedAt | string | The timestamp indicating when the integration was deleted. This is set when the integration is soft deleted. |
| deletedBy | string | The identifier of the user who performed the deletion of this integration. Useful for audit trails. |
| primary | boolean | Indicates whether this integration is marked as primary. A primary integration is often the default choice for processing. |
| conditions | array | An array of conditions associated with the integration that may influence its behavior or processing logic. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/novu/main/json-schema/novu-integration-response-dto-schema.json",
"title": "IntegrationResponseDto",
"description": "JSON Schema for Novu IntegrationResponseDto.",
"type": "object",
"properties": {
"_id": {
"type": "string",
"description": "The unique identifier of the integration record in the database. This is automatically generated."
},
"_environmentId": {
"type": "string",
"description": "The unique identifier for the environment associated with this integration. This links to the Environment collection."
},
"_organizationId": {
"type": "string",
"description": "The unique identifier for the organization that owns this integration. This links to the Organization collection."
},
"name": {
"type": "string",
"description": "The name of the integration, which is used to identify it in the user interface."
},
"identifier": {
"type": "string",
"description": "A unique string identifier for the integration, often used for API calls or internal references."
},
"providerId": {
"type": "string",
"description": "The identifier for the provider of the integration (e.g., \"mailgun\", \"twilio\")."
},
"channel": {
"type": "string",
"description": "The channel type for the integration, which defines how it communicates (e.g., email, SMS). Not set for agent-kind integrations.",
"enum": [
"in_app",
"email",
"sms",
"chat",
"push"
]
},
"kind": {
"type": "string",
"description": "Distinguishes delivery integrations from agent-runtime integrations. Defaults to \"delivery\". Agent integrations do not have a channel.",
"enum": [
"delivery",
"agent"
]
},
"credentials": {
"description": "The decrypted credentials required for the integration to function (e.g. provider API keys, signing secrets). Only returned to dashboard/session-token callers; API-key authenticated callers receive the integration metadata without this field to avoid amplifying API-key leaks into provider-credential leaks.",
"allOf": [
{
"type": "object",
"properties": {
"apiKey": {
"type": "string"
},
"user": {
"type": "string"
},
"secretKey": {
"type": "string"
},
"domain": {
"type": "string"
},
"password": {
"type": "string"
},
"host": {
"type": "string"
},
"port": {
"type": "string"
},
"secure": {
"type": "boolean"
},
"region": {
"type": "string"
},
"accountSid": {
"type": "string"
},
"messageProfileId": {
"type": "string"
},
"token": {
"type": "string"
},
"from": {
"type": "string"
},
"senderName": {
"type": "string"
},
"projectName": {
"type": "string"
},
"applicationId": {
"type": "string"
},
"clientId": {
"type": "string"
},
"requireTls": {
"type": "boolean"
},
"ignoreTls": {
"type": "boolean"
},
"tlsOptions": {
"type": "object"
},
"baseUrl": {
"type": "string"
},
"webhookUrl": {
"type": "string"
},
"redirectUrl": {
"type": "string"
},
"hmac": {
"type": "boolean"
},
"serviceAccount": {
"type": "string"
},
"ipPoolName": {
"type": "string"
},
"apiKeyRequestHeader": {
"type": "string"
},
"secretKeyRequestHeader": {
"type": "string"
},
"idPath": {
"type": "string"
},
"datePath": {
"type": "string"
},
"apiToken": {
"type": "string"
},
"authenticateByToken": {
"type": "boolean"
},
"authenticationTokenKey": {
"type": "string"
},
"instanceId": {
"type": "string"
},
"alertUid": {
"type": "string"
},
"title": {
"type": "string"
},
"imageUrl": {
"type": "string"
},
"state": {
"type": "string"
},
"externalLink": {
"type": "string"
},
"channelId": {
"type": "string"
},
"phoneNumberIdentification": {
"type": "string"
},
"accessKey": {
"type": "string"
},
"appSid": {
"type": "string"
},
"senderId": {
"type": "string"
},
"tenantId": {
"type": "string"
},
"AppIOBaseUrl": {
"type": "string"
},
"signingSecret": {
"type": "string"
},
"outboundIntegrationId": {
"type": "string"
},
"useFromAddressOverride": {
"type": "boolean"
},
"fromAddressOverride": {
"type": "string"
},
"emailSlugPrefix": {
"type": "string",
"description": "Agent default shared inbox slug prefix used in `{emailSlugPrefix}-{agentId}@<shared-domain>`. Only meaningful on the NovuAgent email integration."
},
"externalEnvironmentId": {
"type": "string",
"description": "Claude Managed Agents: ID of the Anthropic environment tied to this integration. Hydrated by the API at integration provisioning time."
},
"externalWorkspaceId": {
"type": "string",
"description": "Claude Managed Agents: id of the Anthropic workspace used in console deep links. Defaults to `'default'` (the Default Workspace). Set this when the API key is scoped to a custom workspace (e.g. `wrkspc_\u2026`)."
}
}
}
]
},
"configurations": {
"description": "The configurations required for enabling the additional configurations of the integration.",
"allOf": [
{
"type": "object",
"properties": {
"inboundWebhookEnabled": {
"type": "boolean"
},
"inboundWebhookSigningKey": {
"type": "string"
}
}
}
]
},
"active": {
"type": "boolean",
"description": "Indicates whether the integration is currently active. An active integration will process events and messages."
},
"deleted": {
"type": "boolean",
"description": "Indicates whether the integration has been marked as deleted (soft delete)."
},
"deletedAt": {
"type": "string",
"description": "The timestamp indicating when the integration was deleted. This is set when the integration is soft deleted."
},
"deletedBy": {
"type": "string",
"description": "The identifier of the user who performed the deletion of this integration. Useful for audit trails."
},
"primary": {
"type": "boolean",
"description": "Indicates whether this integration is marked as primary. A primary integration is often the default choice for processing."
},
"conditions": {
"description": "An array of conditions associated with the integration that may influence its behavior or processing logic.",
"type": "array",
"items": {
"type": "object",
"properties": {
"isNegated": {
"type": "boolean"
},
"type": {
"type": "string",
"enum": [
"BOOLEAN",
"TEXT",
"DATE",
"NUMBER",
"STATEMENT",
"LIST",
"MULTI_LIST",
"GROUP"
]
},
"value": {
"type": "string",
"enum": [
"AND",
"OR"
]
},
"children": {
"type": "array",
"items": {
"type": "object",
"properties": {
"field": {
"type": "string"
},
"value": {
"type": "string"
},
"operator": {
"type": "string",
"enum": [
"LARGER",
"SMALLER",
"LARGER_EQUAL",
"SMALLER_EQUAL",
"EQUAL",
"NOT_EQUAL",
"ALL_IN",
"ANY_IN",
"NOT_IN",
"BETWEEN",
"NOT_BETWEEN",
"LIKE",
"NOT_LIKE",
"IN"
]
},
"on": {
"type": "string",
"enum": [
"subscriber",
"payload"
]
}
},
"required": [
"field",
"value",
"operator",
"on"
]
}
}
},
"required": [
"isNegated",
"type",
"value",
"children"
]
}
}
},
"required": [
"_environmentId",
"_organizationId",
"name",
"identifier",
"providerId",
"active",
"deleted",
"primary"
]
}