S
SiloCDP

API Reference

Complete REST API documentation for the SiloCDP platform. All endpoints use JSON and return consistent response envelopes.

Base URL

https://api.silocdp.com/api/v1

Authentication

All API requests require authentication via one of the following methods:

API Key

X-Api-Key: your_api_key

Best for server-to-server integrations. Generate keys in Settings > API Keys.

Bearer Token (JWT)

Authorization: Bearer <token>

Returned from /auth/login. Use for user-context requests from your application.

Response Format

All responses are wrapped in a consistent envelope:

// Success
{
  "data": { ... },
  "success": true
}

// Error
{
  "errors": ["Error message here"],
  "success": false
}

// Paginated
{
  "data": {
    "items": [ ... ],
    "totalCount": 150,
    "page": 1,
    "pageSize": 20,
    "hasNextPage": true
  },
  "success": true
}

Endpoints

Authentication

User registration, login, token management, and password reset.

POST/auth/registerCreate a new account and tenant
POST/auth/loginAuthenticate and receive JWT + refresh token
POST/auth/refreshExchange a refresh token for a new JWT
POST/auth/revokeRevoke a refresh token
GET/auth/meGet current authenticated user
PUT/auth/profileUpdate user profile
PUT/auth/change-passwordChange password
POST/auth/forgot-passwordRequest password reset email
POST/auth/reset-passwordReset password with token

Subscribers

Manage subscriber profiles, attributes, events, and opt-in status.

GET/subscribersList subscribers (paginated, filterable)
GET/subscribers/:idGet subscriber details with attributes and events
POST/subscribersCreate or update a subscriber
PUT/subscribers/:idUpdate subscriber profile
DELETE/subscribers/:idDelete a subscriber

Notifications

Create, schedule, and send notifications across all channels.

GET/notificationsList notifications (paginated)
GET/notifications/:idGet notification details
POST/notificationsCreate a notification
PUT/notifications/:idUpdate a draft notification
POST/notifications/:id/sendSend or schedule a notification
DELETE/notifications/:idDelete a notification

Segments

Create and manage audience segments with rule-based targeting.

GET/segmentsList all segments
GET/segments/:idGet segment with rules and subscriber count
POST/segmentsCreate a segment with rules
PUT/segments/:idUpdate segment rules
DELETE/segments/:idDelete a segment

Campaigns

Multi-channel campaign creation, scheduling, and orchestration.

GET/campaignsList campaigns
GET/campaigns/:idGet campaign details
POST/campaignsCreate a campaign
PUT/campaigns/:idUpdate a campaign
DELETE/campaigns/:idDelete a campaign

Journeys

Visual journey builder with triggers, conditions, delays, and branching.

GET/journeysList journeys
GET/journeys/:idGet journey with steps and connections
POST/journeysCreate a journey
PUT/journeys/:idUpdate journey steps and connections
DELETE/journeys/:idDelete a journey

A/B Tests

Create experiments to test notification variants and optimize performance.

GET/abtestsList A/B tests
GET/abtests/:idGet test details with variant results
POST/abtestsCreate an A/B test
PUT/abtests/:idUpdate test configuration
DELETE/abtests/:idDelete a test

Analytics

Real-time metrics, delivery stats, and performance insights.

GET/analytics/dashboardDashboard stats (subscribers, messages, click rate)
GET/analytics/notifications/:idPer-notification delivery metrics
GET/analytics/trendsTime-series engagement data

Events

Track subscriber events and behaviors for segmentation and journey triggers.

POST/events/trackTrack a subscriber event
POST/events/identifyIdentify or update a subscriber

Domains

Manage website domains for web push notification delivery.

GET/domainsList domains
POST/domainsAdd a domain
PUT/domains/:idUpdate domain settings
DELETE/domains/:idRemove a domain

Integrations

Configure third-party service integrations and channel providers.

GET/integrationsList configured integrations
POST/integrationsCreate an integration
PUT/integrations/:idUpdate integration config
DELETE/integrations/:idRemove an integration

Billing

Subscription plans, checkout, payment history, and webhooks.

GET/billing/plansList available subscription plans
GET/billing/subscriptionGet current subscription
POST/billing/checkoutCreate a Stripe or PayPal checkout session
POST/billing/cancelCancel current subscription
GET/billing/historyGet payment history
POST/billing/webhooks/:providerHandle payment provider webhooks

SMS

Send SMS messages to subscribers via Telnyx.

POST/sms/sendSend an SMS message

Rate Limiting

API requests are rate limited to ensure fair usage. Limits vary by plan:

PlanRequests / MinuteBurst Limit
Free6010
Starter30050
Professional1,000100
Enterprise5,000500

Rate limit headers are included in every response: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.

Ready to grow your audience?

Join thousands of businesses using SiloCDP to deliver the right message at the right time. Start free today.