API reference
DEVELOPER PLATFORM · v1

An API you can build with

CRM, campaigns, analytics and integrations. Exact contracts, practical examples and signed webhooks.

Download OpenAPI

Private preview: use a project API key. Public SLA and support windows have not been established yet.

GET

Get Developer Campaign Delivery Statistics

/api/v1/developer/analytics/campaigns/{campaignId}/delivery

Use the access scope below. The generated schemas specify the exact request and responses.

Access scopeanalytics.campaigns.read

Authorization: Bearer YOUR_PROJECT_TOKEN

Parameters

campaignIdrequired · path

stringminLength: 1 · maxLength: 160

JSON Schema
{
  "type": "string",
  "minLength": 1,
  "maxLength": 160
}

Request examples

curl --request GET   'https://YOUR_NOVA_HOST/api/v1/developer/analytics/campaigns/CAMPAIGN_ID/delivery'   --header 'Authorization: Bearer YOUR_PROJECT_TOKEN'

Responses

200 Aggregate Campaign Delivery statistics
application/json

object

campaignIdrequired
stringminLength: 1 · maxLength: 160
projectedThroughrequired
string | nullformat: "date-time"
observedRecipientsrequired
integerminimum: 0
attemptsrequired
integerminimum: 0
sentrequired
integerminimum: 0
failedrequired
integerminimum: 0
retryPendingrequired
integerminimum: 0
terminalRecipientsrequired
integerminimum: 0
deliverySuccessRaterequired
number | nullminimum: 0 · maximum: 1
JSON Schema
{
  "type": "object",
  "properties": {
    "campaignId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "projectedThrough": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "observedRecipients": {
      "type": "integer",
      "minimum": 0
    },
    "attempts": {
      "type": "integer",
      "minimum": 0
    },
    "sent": {
      "type": "integer",
      "minimum": 0
    },
    "failed": {
      "type": "integer",
      "minimum": 0
    },
    "retryPending": {
      "type": "integer",
      "minimum": 0
    },
    "terminalRecipients": {
      "type": "integer",
      "minimum": 0
    },
    "deliverySuccessRate": {
      "type": [
        "number",
        "null"
      ],
      "minimum": 0,
      "maximum": 1
    }
  },
  "required": [
    "campaignId",
    "projectedThrough",
    "observedRecipients",
    "attempts",
    "sent",
    "failed",
    "retryPending",
    "terminalRecipients",
    "deliverySuccessRate"
  ],
  "additionalProperties": false,
  "$ref": "#/components/schemas/DeveloperCampaignDeliveryStatisticsResponse"
}
400 Invalid Campaign identifier
application/problem+json

object

type
stringformat: "uri" · default: "about:blank"
titlerequired
string
statusrequired
integerminimum: 100 · maximum: 599
detail
string
instance
string
errors
object
JSON Schema
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "format": "uri",
      "default": "about:blank"
    },
    "title": {
      "type": "string"
    },
    "status": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "detail": {
      "type": "string"
    },
    "instance": {
      "type": "string"
    },
    "errors": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "title",
    "status"
  ]
}
401 Invalid developer credential
application/problem+json

object

type
stringformat: "uri" · default: "about:blank"
titlerequired
string
statusrequired
integerminimum: 100 · maximum: 599
detail
string
instance
string
errors
object
JSON Schema
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "format": "uri",
      "default": "about:blank"
    },
    "title": {
      "type": "string"
    },
    "status": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "detail": {
      "type": "string"
    },
    "instance": {
      "type": "string"
    },
    "errors": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "title",
    "status"
  ]
}
403 Campaign analytics unavailable
application/problem+json

object

type
stringformat: "uri" · default: "about:blank"
titlerequired
string
statusrequired
integerminimum: 100 · maximum: 599
detail
string
instance
string
errors
object
JSON Schema
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "format": "uri",
      "default": "about:blank"
    },
    "title": {
      "type": "string"
    },
    "status": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "detail": {
      "type": "string"
    },
    "instance": {
      "type": "string"
    },
    "errors": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "title",
    "status"
  ]
}
429 Developer API rate limit exceeded
application/problem+json

object

type
stringformat: "uri" · default: "about:blank"
titlerequired
string
statusrequired
integerminimum: 100 · maximum: 599
detail
string
instance
string
errors
object
JSON Schema
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "format": "uri",
      "default": "about:blank"
    },
    "title": {
      "type": "string"
    },
    "status": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "detail": {
      "type": "string"
    },
    "instance": {
      "type": "string"
    },
    "errors": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "title",
    "status"
  ]
}
503 Developer API rate limiter unavailable
application/problem+json

object

type
stringformat: "uri" · default: "about:blank"
titlerequired
string
statusrequired
integerminimum: 100 · maximum: 599
detail
string
instance
string
errors
object
JSON Schema
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "format": "uri",
      "default": "about:blank"
    },
    "title": {
      "type": "string"
    },
    "status": {
      "type": "integer",
      "minimum": 100,
      "maximum": 599
    },
    "detail": {
      "type": "string"
    },
    "instance": {
      "type": "string"
    },
    "errors": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "title",
    "status"
  ]
}