GET/v1/analytics/intents
Get intent tap analytics
Org-wide chip/postback tap counts per intent value over the range (default last 30 days), most-tapped first. Values are normalized (trimmed, lowercased) to line up with the Intents dictionary.
GET https://api.simplyrcs.com/v1/analytics/intents · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsIntentsResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/intents \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/sessions
Get session analytics
GET https://api.simplyrcs.com/v1/analytics/sessions · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
groupBy | "source" | No | When set to source, timeline contains the per-source breakdown instead of the daily series. |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsSessionsResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/sessions \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/overview
Get analytics overview
GET https://api.simplyrcs.com/v1/analytics/overview · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
granularity | "hour" | "day" | "week" | "month" | No | Trend bucket size; defaults to day. Hourly is limited to 7-day ranges, daily to 365-day ranges. |
brandId | string | No | Optional: narrow the overview to a single Brand within the caller org. Contacts and bot counts remain org-wide (no brand attribution). |
campaignId | string | No | Optional: narrow the overview to a single Campaign within the caller org. Contacts and bot counts remain org-wide (no campaign attribution). |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsOverviewResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/overview \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/sender-ids
List sender ID analytics
GET https://api.simplyrcs.com/v1/analytics/sender-ids · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
brandId | string | No | Optional: narrow sender ID summaries to a single Brand within the caller org. |
campaignId | string | No | Optional: narrow sender ID summaries to a single Campaign within the caller org. |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsSenderListResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/sender-ids \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/sender-ids/{id}
Get sender ID analytics
GET https://api.simplyrcs.com/v1/analytics/sender-ids/{id} · requires an API key
Path parameters
| Name | Type | Description |
|---|
id required | string | |
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
granularity | "hour" | "day" | "week" | "month" | No | |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsSenderDetailResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/sender-ids/{id} \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/protocols
Get protocol analytics
GET https://api.simplyrcs.com/v1/analytics/protocols · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
brandId | string | No | Optional: narrow protocol comparison to a single Brand within the caller org. |
campaignId | string | No | Optional: narrow protocol comparison to a single Campaign within the caller org. |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsProtocolsResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/protocols \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/bots/{id}/funnel
Get bot funnel analytics
GET https://api.simplyrcs.com/v1/analytics/bots/{id}/funnel · requires an API key
Path parameters
| Name | Type | Description |
|---|
id required | string | |
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsBotFunnelResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/bots/{id}/funnel \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/bots/{id}
Get bot analytics
GET https://api.simplyrcs.com/v1/analytics/bots/{id} · requires an API key
Path parameters
| Name | Type | Description |
|---|
id required | string | |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsBotSummaryResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/bots/{id} \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/blasts/{id}
Get blast analytics
GET https://api.simplyrcs.com/v1/analytics/blasts/{id} · requires an API key
Path parameters
| Name | Type | Description |
|---|
id required | string | |
Query parameters
| Name | Type | Required | Description |
|---|
granularity | "minute" | "hour" | No | Timeline bucket size; defaults to hour. |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsBlastResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/blasts/{id} \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/usage
Get usage analytics
GET https://api.simplyrcs.com/v1/analytics/usage · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
startDate | string | No | ISO date; defaults to 30 days before endDate. |
endDate | string | No | ISO date; defaults to today (UTC). |
granularity | "day" | "month" | No | Time-series bucket size; defaults to day. |
brandId | string | No | Optional: narrow usage to a single Brand within the caller org. |
campaignId | string | No | Optional: narrow usage to a single Campaign within the caller org. |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsUsageResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/usage \
-H 'Authorization: Bearer YOUR_API_KEY'
POST/v1/analytics/export
Create analytics export
Starts an async CSV export (maximum 3 concurrent exports per organization; 429 when exceeded). Poll the returned downloadUrl: it responds 409 EXPORT_PENDING while the file is still being written.
POST https://api.simplyrcs.com/v1/analytics/export · requires an API key
Request body
AnalyticsExportRequest · optional
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsExportResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X POST https://api.simplyrcs.com/v1/analytics/export \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ "name": "Example request" }'
GET/v1/analytics/export/{id}/download
Download analytics export
Downloads the generated export as a CSV attachment. Responds 409 EXPORT_PENDING while the export is still processing and 404 once it expires.
GET https://api.simplyrcs.com/v1/analytics/export/{id}/download · requires an API key
Path parameters
| Name | Type | Description |
|---|
id required | string | |
Responses
| Status | Returns | Description |
|---|
200 | | CSV file stream |
401 | ErrorResponse | Authentication failed |
404 | ErrorResponse | Export not found or expired |
409 | ErrorResponse | Export is still processing |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/export/{id}/download \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/reports
List analytics reports
GET https://api.simplyrcs.com/v1/analytics/reports · requires an API key
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsReportListResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/reports \
-H 'Authorization: Bearer YOUR_API_KEY'
POST/v1/analytics/reports
Create analytics report
Creates a scheduled email report (maximum 5 per organization). Weekly reports require dayOfWeek (0-6); monthly reports require dayOfMonth (1-28).
POST https://api.simplyrcs.com/v1/analytics/reports · requires an API key
Request body
AnalyticsReportCreateRequest · optional
Responses
| Status | Returns | Description |
|---|
201 | AnalyticsReportResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X POST https://api.simplyrcs.com/v1/analytics/reports \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ "name": "Example request" }'
PATCH/v1/analytics/reports/{id}
Update analytics report
PATCH https://api.simplyrcs.com/v1/analytics/reports/{id} · requires an API key
Path parameters
| Name | Type | Description |
|---|
id required | string | |
Request body
AnalyticsReportUpdateRequest · optional
Responses
| Status | Returns | Description |
|---|
200 | object | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X PATCH https://api.simplyrcs.com/v1/analytics/reports/{id} \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ "name": "Example request" }'
DELETE/v1/analytics/reports/{id}
Delete analytics report
DELETE https://api.simplyrcs.com/v1/analytics/reports/{id} · requires an API key
Path parameters
| Name | Type | Description |
|---|
id required | string | |
Responses
| Status | Returns | Description |
|---|
204 | | Report deleted |
401 | ErrorResponse | Authentication failed |
404 | ErrorResponse | Report not found |
Example request
curl -X DELETE https://api.simplyrcs.com/v1/analytics/reports/{id} \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/trends
Get dashboard trend analytics
GET https://api.simplyrcs.com/v1/analytics/trends · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
period | "7d" | "30d" | "90d" | No | Defaults to 30d. |
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsTrendsResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/trends \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/analytics/top
Get dashboard top performers
GET https://api.simplyrcs.com/v1/analytics/top · requires an API key
Responses
| Status | Returns | Description |
|---|
200 | AnalyticsTopResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/analytics/top \
-H 'Authorization: Bearer YOUR_API_KEY'
GET/v1/reports/messages
Export customer-scoped MO messages and MDR delivery receipts
Returns customer-safe message report rows scoped to the API key organization. Use `format=csv` to download the same fields as a CSV. Backend provider names, DCA names, provider message IDs, and internal routing identifiers are not exposed.
GET https://api.simplyrcs.com/v1/reports/messages · requires an API key
Query parameters
| Name | Type | Required | Description |
|---|
kind | "all" | "mo" | "mdr" | No | Report slice. Use mdr for delivery receipts and mo for inbound mobile-originated messages. |
start | string | No | |
end | string | No | |
channel | "RCS" | "SMS" | "MMS" | "WA" | No | |
actualChannel | "RCS" | "SMS" | "MMS" | "WA" | No | |
status | string | No | |
senderId | string | No | |
carrier | string | No | |
brand | string | No | |
programId | string | No | Internal Campaign.id exposed as the customer-facing program identifier. |
campaign | string | No | |
fallback | "primary" | "fallback" | No | |
sort | "createdAt" | "receiptAt" | "direction" | "channel" | "actualChannel" | "fallbackReason" | No | |
dir | "asc" | "desc" | No | |
limit | integer | No | |
format | "json" | "csv" | No | |
Responses
| Status | Returns | Description |
|---|
200 | MessageReportResponse | Successful response |
400 | ErrorResponse | Validation error |
401 | ErrorResponse | Authentication failed |
Example request
curl -X GET https://api.simplyrcs.com/v1/reports/messages \
-H 'Authorization: Bearer YOUR_API_KEY'