Status
The Status API provides comprehensive health and status information about your loyalty program.
Endpoints
Get Status Report
Get a comprehensive status report including counts and health metrics for your loyalty program.
Endpoint: GET /status/report
Example Request:
curl -X GET "https://api.monterosa.cloud/loyalty/v1/status/report" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "X-Monterosa-Org-ID: YOUR_ORG_UUID"Example Response:
{
"success": true,
"data": {
"orgId": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2025-10-05T17:46:12.683Z",
"status": "healthy",
"counts": {
"campaigns": {
"total": 5,
"active": 3
},
"rules": 12,
"segments": 4,
"transactions": 1523,
"settings": 8,
"customFields": 3
},
"health": {
"database": "operational",
"api": "operational"
}
}
}Response Fields
Status
The overall health status of your loyalty program:
healthy- All systems operationaldegraded- Some systems experiencing issuesdown- Critical systems unavailable
Counts
Summary counts for all major entities:
campaigns.total
Total number of campaigns
campaigns.active
Number of active campaigns
rules
Total number of rules across all campaigns
segments
Number of user segments
transactions
Total transaction count
settings
Number of configured settings
customFields
Number of custom field definitions
Health
Health status for individual system components:
database- Database connectivity and performanceapi- API gateway and Lambda function health
Possible values:
operational- Component functioning normallydegraded- Component experiencing issues but functionalunavailable- Component not accessible
Use Cases
Dashboard Monitoring
Display real-time status on your admin dashboard:
async function updateDashboard() {
const report = await fetch('/v1/status/report');
const { data } = await report.json();
document.getElementById('active-campaigns').textContent = data.counts.campaigns.active;
document.getElementById('total-transactions').textContent = data.counts.transactions;
document.getElementById('status').textContent = data.status;
}Health Checks
Integrate with monitoring systems:
#!/bin/bash
STATUS=$(curl -s "https://api.monterosa.cloud/loyalty/v1/status/report" \
-H "Authorization: Bearer $TOKEN" \
-H "X-Monterosa-Org-ID: $ORG_ID" | jq -r '.data.status')
if [ "$STATUS" != "healthy" ]; then
echo "ALERT: Loyalty API status is $STATUS"
# Send alert to monitoring system
fiCapacity Planning
Monitor growth trends:
import requests
import json
response = requests.get(
'https://api.monterosa.cloud/loyalty/v1/status/report',
headers={
'Authorization': f'Bearer {token}',
'X-Monterosa-Org-ID': org_id
}
)
report = response.json()['data']
print(f"Active campaigns: {report['counts']['campaigns']['active']}")
print(f"Total transactions: {report['counts']['transactions']}")
print(f"User segments: {report['counts']['segments']}")Error Responses
401 Unauthorized:
{
"success": false,
"error": {
"message": "Invalid token"
}
}500 Internal Server Error:
{
"success": false,
"error": {
"message": "Failed to generate status report"
}
}Best Practices
Monitoring: Poll this endpoint periodically (every 5-10 minutes) for monitoring
Caching: Consider caching the response for 1-2 minutes to reduce load
Alerts: Set up alerts when status changes from
healthyTrending: Track counts over time to identify growth patterns
Documentation: Use the report to understand your loyalty program's scale
Last updated

