Skip to content

Activity and fields

Read the activity log of changes to your subscriptions, and the allowed values for intervals, statuses and other fields, with the Subrise API.

Subrise records every change to a subscription, who made it and when. These endpoints read that activity log and list the values that subscription and plan fields accept. They need a key with Read permission. See Developer API for the base URL and authentication.

List activity

text
GET /event-logs

Returns activity for your store, newest first.

Query parameterTypeDescription
subscriptionIdstringOptional. Only this subscription's activity, by its numeric ID.
pageintegerOptional. Page number, starting at 1. Send it with limit.
limitintegerOptional. Events per page. Send it with page.

Warning

Without both page and limit, the endpoint returns every event for your store. Always send them, or filter by subscriptionId.

bash
curl "https://backend-production.subrise.app/api/event-logs?subscriptionId=12704383255&page=1&limit=20" \
  -H "x-api-key: $SUBRISE_API_KEY"
json
{
  "logs": [
    {
      "_id": "6712c4f1a9d3b2e0c4a1f001",
      "subscriptionId": "12704383255",
      "message": "Skipped Next Billing Date",
      "eventType": "Update",
      "userId": "ADMIN",
      "details": {},
      "timestamp": "2026-10-18T15:02:11.482Z",
      "shop": "your-store.myshopify.com"
    },
    {
      "_id": "6712c4f1a9d3b2e0c4a1f000",
      "subscriptionId": "12704383255",
      "message": "Updated Next Billing Date",
      "eventType": "Update",
      "userId": "CUSTOMER",
      "details": { "newBillingDate": "2026-11-05T14:00:00Z" },
      "timestamp": "2026-10-12T09:41:27.115Z",
      "shop": "your-store.myshopify.com"
    }
  ],
  "total": 37
}
FieldDescription
messageWhat happened, in words.
eventTypeCreate, Update, Delete or Email.
userIdWho did it: ADMIN, CUSTOMER, SYSTEM or FLOW. Changes made with the API show as ADMIN. Actions taken from Gorgias or Sidekick also show as ADMIN, with details.via saying where they came from.
detailsExtra data for the event. Its contents depend on the event.
totalThe number of events that match, across all pages.

The message text is written for people and can change. Don't build logic on it. To react to events as they happen, use webhooks.

Get field values

text
GET /fields

Returns the values Subrise accepts for interval, anchor, pricing and status fields. Use it to fill dropdowns or validate input.

bash
curl https://backend-production.subrise.app/api/fields \
  -H "x-api-key: $SUBRISE_API_KEY"
json
{
  "billingInterval": ["DAY", "MONTH", "WEEK", "YEAR"],
  "billingAnchorType": ["WEEKDAY", "MONTHDAY", "YEARDAY"],
  "deliveryInterval": ["DAY", "MONTH", "WEEK", "YEAR"],
  "intent": ["FULFILLMENT_BEGIN"],
  "preAnchorBehavior": ["ASAP", "NEXT"],
  "deliveryAnchorType": ["WEEKDAY", "MONTHDAY", "YEARDAY"],
  "pricingPolicyType": ["fixed", "recurring"],
  "adjustmentType": ["FIXED_AMOUNT", "PERCENTAGE", "PRICE"],
  "currencyCode": [["AED", "United Arab Emirates Dirham (AED)"], ["AFN", "Afghan Afghani (AFN)"]],
  "status": ["ACTIVE", "CANCELLED", "EXPIRED", "FAILED", "PAUSED"]
}

currencyCode is a list of [code, label] pairs. The example shows two of them.