Recur Docs

Subscriber API

REST endpoints for subscriber operations.

Subscriber API

All subscriber endpoints require a valid JWT with role: "subscriber" in the Authorization: Bearer <token> header.

Subscriptions

Register a subscription

After creating the on-chain subscription PDA, register it in the database so the Keeper can track it:

POST /subscriber/subscriptions
Authorization: Bearer <token>
 
{
  "appId": "cmapp0k7nj001fcemltjf3uhca",
  "planId": "cmoe0k7nj001fcemltjf3uhca",
  "subscriptionPda": "AZUE5JSPGXgPC3ecXFT9AUxrDa8ZagkmhySEr9HaiEcK"
}

List my subscriptions

GET /subscriber/subscriptions
Authorization: Bearer <token>

Get subscription details

GET /subscriber/subscriptions/:subscriptionId
Authorization: Bearer <token>

List subscription transactions

GET /subscriber/subscriptions/:subscriptionId/transactions
Authorization: Bearer <token>

Response format

All API responses follow a consistent envelope:

{
  "success": true,
  "data": { ... }
}

Error responses:

{
  "success": false,
  "data": null,
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Invalid or expired token"
  }
}

Error codes

CodeHTTP StatusDescription
UNAUTHORIZED401Missing or invalid authentication
FORBIDDEN403Insufficient permissions for this endpoint
NOT_FOUND404Resource does not exist
VALIDATION_ERROR400Request body failed validation
CONFLICT409Resource already exists
INTERNAL_ERROR500Server error

On this page