Get renewal forecast, workload and risk analytics

gethttps://api.expiryedge.com/v1/getForecastData
any role60/minAny method
Request
curl 'https://api.expiryedge.com/v1/getForecastData?months=12' \
  -H "Authorization: Bearer $EXPIRYEDGE_API_KEY"
Response
{
  "success": true,
  "summary": {
    "totalActive": 118,
    "totalOverdue": 4,
    "expiringThisMonth": 6,
    "expiringNextMonth": 9,
    "highPriorityAtRisk": 2,
    "avgProcessingDays": 12,
    "medianProcessingDays": 9,
    "completionRate": 38,
    "busiest_month": "2026-10"
  },
  "renewalForecast": [
    {
      "month": "2026-10",
      "count": 9,
      "highPriority": 2,
      "items": [
        {
          "id": "exp_4Tq9sLm2",
          "name": "Business License",
          "expiry_date": "2026-10-15",
          "type": "License",
          "priority": "High",
          "assigned_to": "u_71bXq"
        }
      ]
    }
  ],
  "workload": [
    {
      "userId": "u_71bXq",
      "name": "Priya Shah",
      "total": 14,
      "thisMonth": 3,
      "nextMonth": 5,
      "overdue": 1,
      "items": []
    }
  ],
  "overdueAging": {
    "1-7 days": 2,
    "8-30 days": 1,
    "31-90 days": 1,
    "90+ days": 0,
    "total": 4,
    "items": [
      {
        "id": "exp_7Yh3kP",
        "name": "Autoclave Inspection",
        "expiry_date": "2026-09-20",
        "days_overdue": 7,
        "priority": "Medium",
        "assigned_to": "u_71bXq",
        "type": "Inspection"
      }
    ]
  },
  "typeAnalysis": [
    {
      "type": "License",
      "total": 22,
      "active": 8,
      "expired": 1,
      "upcoming": 12,
      "avgDurationDays": 365
    }
  ],
  "riskItems": [
    {
      "id": "exp_4Tq9sLm2",
      "name": "Business License",
      "expiry_date": "2026-10-15",
      "days_left": 18,
      "priority": "High",
      "type": "License",
      "assigned_to": "u_71bXq",
      "assignee_name": "Priya Shah"
    }
  ]
}

Computed over all non-archived expiries of the organization. months (default 12) sets the forecast horizon. Workload keys and assigned_to are user ids or Unassigned.

Query parameters

  • monthsinteger
    Default 12min: 1

Returns

200
Forecast analytics.
  • successboolean
  • summaryobject
  • renewalForecastarray of objects
    One entry per month in the horizon.
  • workloadarray of objects
  • overdueAgingobject
  • typeAnalysisarray of objects
  • riskItemsarray of objects
    High or Medium priority expiries due in the next 30 days.

Errors

400
The request is missing required fields or contains invalid values.
401
Missing, expired or invalid bearer token.
429
Too many requests for this endpoint from your IP. Wait Retry-After seconds.
500
Unexpected server error. Retry later; quote requestId to support.