Skip to main content
GET
/
v1
/
reports
/
expiration-schedule
Get expiration schedule
curl --request GET \
  --url https://api.scrip.dev/v1/reports/expiration-schedule \
  --header 'X-API-Key: <api-key>'
{
  "data": [
    {
      "asset_id": "550e8400-e29b-41d4-a716-446655440000",
      "asset_name": "Loyalty Points",
      "asset_symbol": "POINTS",
      "buckets": [
        {
          "amount": "850.00",
          "bucket_end": "2026-08-01T00:00:00Z",
          "bucket_start": "2026-07-01T00:00:00Z",
          "lot_count": 12
        }
      ],
      "expiring_after_window": "350.00",
      "expiring_before_window": "0.00",
      "never_expiring": "250.00",
      "scale": 2,
      "total_outstanding": "1450.00"
    }
  ],
  "pagination": {
    "has_more": true,
    "next_cursor": "YWJjMTIz"
  }
}
Returns when outstanding value expires, aggregated from lots into calendar-aligned buckets by asset and program. Use it for breakage estimation and liability forecasting. Buckets plus the never_expiring, expiring_before_window, and expiring_after_window figures sum exactly to each asset’s total_outstanding. Applies to LOT-mode assets only; requesting a SIMPLE-mode asset returns a 400.
For the lot lifecycle, see Lots & Expiration. For usage patterns, see the Reporting guide.

Authorizations

X-API-Key
string
header
required

API key passed in the X-API-Key header.

Query Parameters

from
string<date-time>
required

Window start (inclusive, RFC3339)

to
string<date-time>
required

Window end (inclusive, RFC3339)

granularity
enum<string>
default:month

Bucket granularity: day, week, or month (default month)

Available options:
day,
week,
month
program_id
string<uuid>

Attribute lots to this program via their source journal entry and restrict to program-linked assets

asset_id
string<uuid>

Restrict to a single LOT inventory-mode asset

Response

Expiration schedule

Expiration schedule results

data
object[]

Per-asset expiration schedules (LOT inventory-mode assets only)

pagination
object

Pagination metadata for list responses