Settings

Manage your SubTrackr preferences and data

Appearance

Personalize your SubTrackr experience with beautiful themes

Default
Clean and professional
Dark
Easy on the eyes
Dark Classic
Original dark mode
Christmas 🎄
Festive and jolly!
Midnight
Deep and mysterious
Ocean
Cool and refreshing

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

High Cost Threshold

Monthly cost threshold for high cost alerts (in €)

€

Days Before Renewal

How many days before renewal to send reminder

Security

Protect your SubTrackr instance with login authentication

Require Login

Enable authentication to protect your data

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.5.3
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.