Pre-1.0 · one maintainer · Stripe and cards only · no SDKs (client libraries) yet · no production users yet. Docs describe v0.9.1 (29 Oct 2026) · What’s new →
Get MRR movement over time
GET
/v1/analytics/mrr-movement
const url = 'http://localhost:8080/v1/analytics/mrr-movement?period=7d';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'http://localhost:8080/v1/analytics/mrr-movement?period=7d' \ --header 'Authorization: Bearer <token>'Returns how MRR (monthly recurring revenue from plan base fees)
changed, per day, or per month for 12m, with totals.
new: subscriptions activated in the bucket.churned: subscriptions canceled in the bucket.expansionandcontraction: item adds, removals, and plan or quantity changes on subscriptions that were active for the whole window.
Only plans in the tenant’s default currency are counted; the
currency is the currency of GET /v1/analytics/overview.
Buckets with no movement are left out. Data from test clocks is
left out.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”period
string
The window. Any other value is treated as 30d. 12m is 365 days.
Responses
Section titled “Responses”MRR movement series and totals.
Media typeapplication/json
object
period
required
string
data
required
Array<object>
object
date
required
Bucket start, YYYY-MM-DD (or YYYY-MM for 12m), in UTC.
string
new
required
integer format: int64
expansion
required
integer format: int64
contraction
required
integer format: int64
churned
required
integer format: int64
net
required
integer format: int64
totals
required
MRR change in cents. churned and contraction are positive
amounts. net = new + expansion - contraction - churned.
object
new
required
integer format: int64
expansion
required
integer format: int64
contraction
required
integer format: int64
churned
required
integer format: int64
net
required
integer format: int64
Example
{ "period": "7d"}