Tiny Rebrand DocsHome

Subscription Endpoints

Complete reference for managing billing and subscription information

The Subscription API allows you to manage billing and subscription information. All endpoints require authentication and appropriate scopes.

Available Endpoints

Complete list of subscription management endpoints and their purposes:
EndpointMethodPurposeRequired Scope
/user/subscription/currentGETGet current subscription infosubscription:read
/user/subscription/checkoutPOSTCreate checkout sessionsubscription:read
/user/subscription/verifyPOSTVerify checkout sessionsubscription:read

GET /user/subscription/current

GET /user/subscription/current
Get current subscription information.

Required Scope: subscription:read

Request:

curl -X GET https://api.tinyrebrand.com/api/user/subscription/current \
  -H "Authorization: Bearer at_1234567890abcdef"

Response:

{
  "status": 200,
  "code": "OK",
  "message": "Current subscription fetched successfully",
  "data": {
    "id": "sub_123456789",
    "userId": "507f1f77bcf86cd799439011",
    "planId": "pro_monthly",
    "planName": "Pro Monthly",
    "price": 990,
    "currency": "USD",
    "status": "active",
    "isActive": true,
    "billingCycle": "monthly",
    "maxDomains": 10,
    "maxTags": 100,
    "maxLinks": 10000
  }
}

POST /user/subscription/checkout

POST /user/subscription/checkout
Create a checkout session for subscription.

Required Scope: subscription:read

Request:

curl -X POST https://api.tinyrebrand.com/api/user/subscription/checkout \
  -H "Authorization: Bearer at_1234567890abcdef" \
  -H "Content-Type: application/json" \
  -d '{
    "planId": "pro_monthly",
    "successUrl": "https://myapp.com/success",
    "cancelUrl": "https://myapp.com/cancel"
  }'

Parameters:

ParameterTypeRequiredDescription
planIdstringSubscription plan ID
successUrlstringSuccess redirect URL
cancelUrlstringCancel redirect URL

Response:

{
  "status": 200,
  "code": "OK",
  "message": "Checkout session created successfully",
  "data": {
    "sessionId": "cs_stripe_checkout_123",
    "url": "https://checkout.stripe.com/pay/cs_stripe_checkout_123",
    "expiresAt": "2024-07-02T16:00:00.000Z"
  }
}

POST /user/subscription/verify

POST /user/subscription/verify
Verify a completed checkout session.

Required Scope: subscription:read

Request:

curl -X POST https://api.tinyrebrand.com/api/user/subscription/verify \
  -H "Authorization: Bearer at_1234567890abcdef" \
  -H "Content-Type: application/json" \
  -d '{
    "sessionId": "cs_stripe_checkout_123"
  }'

Parameters:

ParameterTypeRequiredDescription
sessionIdstringStripe checkout session ID

Response:

{
  "status": 200,
  "code": "OK",
  "message": "Subscription verified successfully",
  "data": {
    "id": "sub_123456789",
    "status": "active",
    "planId": "pro_monthly",
    "startDate": "2024-07-02T15:00:00.000Z"
  }
}