All routes require an authenticated Medusa Admin user. Unauthenticated requests return
401.Status values
Approval status values:
pending, approved, rejected. When approval is not required, the approval object returns status: null.
Attempt status values: processing, succeeded, failed.
GET /admin/renewals
Returns the paginated renewal queue for Admin DataTable views.Query parameters
number
Number of results per page.
number
Zero-based result offset for pagination.
string
Free-text search across subscription reference, customer name, and product title.
string
Field to sort by. Database-backed:
scheduled_for, updated_at, created_at, status, approval_status, processed_at. In-memory: last_attempt_status, subscription_reference, customer_name, product_title, order_display_id.string
Sort direction. One of
asc or desc.string | string[]
Filter by cycle status.
string | string[]
Filter by approval status.
string
ISO datetime lower bound for
scheduled_for.string
ISO datetime upper bound for
scheduled_for.string | string[]
Filter by the status of the most recent attempt.
string
Filter to renewals for a specific subscription.
string
Filter by the ID of the order generated by a renewal.
Response
object[]
required
Array of renewal cycle list items.
number
required
Total matching records.
number
required
Page size used.
number
required
Result offset used.
Response example
Errors
GET /admin/renewals/:id
Returns the full detail payload for a single renewal cycle, including the full attempt history and operational metadata.Path parameters
string
required
Renewal cycle ID.
Response
Returns arenewal object with all list fields plus:
object
required
Response example
Errors
POST /admin/renewals/:id/force
Manually triggers execution for a renewal cycle, ignoring its scheduled date.Path parameters
string
required
Renewal cycle ID.
Body parameters
string
Optional reason for the manual trigger.
Request example
Errors
POST /admin/renewals/:id/approve-changes
Approves pending subscription changes for a renewal cycle that requires approval before execution.Path parameters
string
required
Renewal cycle ID.
Body parameters
string
Optional approval reason.
Request example
Errors
POST /admin/renewals/:id/reject-changes
Rejects pending subscription changes for a renewal cycle.reason is required for rejections.
Path parameters
string
required
Renewal cycle ID.
Body parameters
string
required
Reason for rejection. Required.
Request example