Settings

Manage your SubTrackr preferences and data

Export Data

Download your subscription data in various formats

Data Management

Backup Data

Create a backup of all your subscription data

Create Backup

Clear All Data

Permanently delete all subscription data

Email Notifications

SMTP Configuration

This is where notification emails will be sent

Renewal Reminders

Get notified before subscriptions renew

High Cost Alerts

Alert when adding expensive subscriptions

Days Before Renewal

How many days before renewal to send reminder

Appearance

Dark Mode

Switch between light and dark appearance

Currency

Choose your preferred currency for displaying subscription costs

Categories

Manage your subscription categories

Add New Category

API Keys

Create API keys to access SubTrackr from external applications

Loading API keys...

Create New API Key

API Documentation: Include the API key in the X-API-Key header for all requests. View full API documentation

About SubTrackr

Version v0.4.5
Build Go + HTMX
Database SQLite

API Documentation

Authentication

All API requests require authentication using an API key. Include your API key in the request headers:

# Authorization header (recommended)
Authorization: Bearer sk_your_api_key_here
# X-API-Key header (alternative)
X-API-Key: sk_your_api_key_here

API Endpoints

Subscriptions

Method Endpoint Description
GET /api/v1/subscriptions List all subscriptions
POST /api/v1/subscriptions Create a new subscription
GET /api/v1/subscriptions/:id Get subscription details
PUT /api/v1/subscriptions/:id Update subscription
DELETE /api/v1/subscriptions/:id Delete subscription

Statistics & Export

Method Endpoint Description
GET /api/v1/stats Get subscription statistics
GET /api/v1/export/csv Export subscriptions as CSV
GET /api/v1/export/json Export subscriptions as JSON

Example Requests

List Subscriptions

curl -H "Authorization: Bearer sk_your_api_key_here" \
http://localhost:8080/api/v1/subscriptions

Create Subscription

curl -X POST \
-H "Authorization: Bearer sk_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"name": "Netflix",
"cost": 15.99,
"schedule": "Monthly",
"status": "Active",
"category_id": 1
}' \
http://localhost:8080/api/v1/subscriptions

Get Statistics

curl -H "Authorization: Bearer sk_your_api_key_here" \
http://localhost:8080/api/v1/stats
Response:
{
  "total_count": 15,
  "active_count": 12,
  "total_cost": 245.67,
  "categories": {
    "Entertainment": 45.99,
    "Productivity": 89.00,
    "Storage": 29.99
  }
}

Additional Resources

For more detailed API documentation and examples, check the README file in the project repository.

The test script test-api.sh provides interactive examples of API usage.