API Reference

Integrate Repetix into your applications with our comprehensive REST API

Base URL: https://api.repetix.com/v1

Getting Started

Authentication

All API requests require authentication using an API key. Include your API key in the Authorization header of each request.

Authorization: Bearer YOUR_API_KEY

Getting Your API Key

1. Sign in to your Repetix account
2. Go to Settings → API
3. Click "Generate New API Key"
4. Copy and securely store your key

API Endpoints

GET/api/v1/subscriptions

List all subscriptions for the authenticated user

Parameters

page
integer
Page number for pagination
limit
integer
Number of items per page (max 100)
category
string
Filter by subscription category
POST/api/v1/subscriptions

Create a new subscription

Parameters

name*
string
Subscription service name
cost*
number
Monthly or annual cost
billing_cycle*
string
monthly, annual, quarterly, etc.
next_renewal*
string
ISO 8601 date string
category
string
Subscription category
GET/api/v1/subscriptions/{id}

Get details of a specific subscription

Parameters

id*
string
Subscription ID
PUT/api/v1/subscriptions/{id}

Update a subscription

Parameters

id*
string
Subscription ID
name
string
Subscription service name
cost
number
Monthly or annual cost
billing_cycle
string
Billing frequency
DELETE/api/v1/subscriptions/{id}

Delete a subscription

Parameters

id*
string
Subscription ID
GET/api/v1/analytics/summary

Get spending summary and metrics

Parameters

period
string
month, quarter, year

Code Examples

Authentication

curl -H "Authorization: Bearer YOUR_API_KEY" \
     -H "Content-Type: application/json" \
     https://api.repetix.com/v1/subscriptions

Create Subscription

const response = await fetch('https://api.repetix.com/v1/subscriptions', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    name: 'Spotify Premium',
    cost: 9.99,
    billing_cycle: 'monthly',
    next_renewal: '2025-02-13T00:00:00Z',
    category: 'entertainment'
  })
});

const subscription = await response.json();

Get Analytics

import requests

headers = {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
}

response = requests.get(
    'https://api.repetix.com/v1/analytics/summary',
    headers=headers
)

analytics = response.json()

Rate Limits

Rate limits are applied per API key and are based on your subscription plan:

Free Plan

100/hour

Basic API access for personal use

Standard Plan

1,000/hour

Increased limits for growing businesses

Premium Plan

10,000/hour

High-volume access for enterprises

Rate Limit Headers: Each response includes headers showing your current usage: X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset.

Response Format

All API responses follow a consistent JSON format:

{
  "success": true,
  "data": {
    // Response data here
  },
  "message": "Request successful",
  "pagination": {
    "page": 1,
    "limit": 10,
    "total": 25,
    "pages": 3
  }
}

Error Responses

{
  "success": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Invalid request parameters",
    "details": {
      "field": "cost",
      "issue": "Must be a positive number"
    }
  }
}

Need Help?

Our developer support team is here to help you integrate the Repetix API successfully.

📖 View Documentation💬 Contact Support
Back to Home