User Settings API
Manage your Repo Cat account preferences including webhook configuration and email notification settings.
Overview
The Settings API allows you to retrieve and update your account settings. Settings are persisted and apply to all API requests made with your account.
Settings can also be managed through the dashboard settings page.
Get Settings
Retrieve the current settings for the authenticated user.
GET
https://repocat.cloud/api/v1/settingsHeaders
| Header | Required | Description |
|---|---|---|
| X-API-Key | Yes | Your API key |
Response
{
"success": true,
"settings": {
"webhook_url": "https://your-app.com/webhook",
"webhook_enabled": true,
"webhook_on_scan_started": false,
"webhook_on_scan_completed": true,
"webhook_on_scan_failed": false,
"webhook_on_scan_cancelled": false,
"email_notifications_enabled": true,
"email_on_scan_started": false,
"email_on_scan_completed": true,
"email_on_scan_failed": false,
"email_on_scan_cancelled": false,
"email_on_subscription_created": true,
"email_on_subscription_updated": true,
"email_on_subscription_cancelled": true,
"email_on_payment_succeeded": true,
"email_on_payment_failed": true
}
}Update Settings
Update one or more settings fields. Only provided fields will be updated.
PUT
https://repocat.cloud/api/v1/settingsRequest Body
Send a JSON object with the fields you want to update. All fields are optional.
{
"webhook_url": "https://your-app.com/webhook",
"webhook_enabled": true,
"webhook_on_scan_completed": true,
"webhook_on_scan_failed": true
}Response
Returns the complete updated settings object.
{
"success": true,
"settings": {
"webhook_url": "https://your-app.com/webhook",
"webhook_enabled": true,
"webhook_on_scan_started": false,
"webhook_on_scan_completed": true,
"webhook_on_scan_failed": false,
"webhook_on_scan_cancelled": false,
"email_notifications_enabled": true,
"email_on_scan_started": false,
"email_on_scan_completed": true,
"email_on_scan_failed": false,
"email_on_scan_cancelled": false,
"email_on_subscription_created": true,
"email_on_subscription_updated": true,
"email_on_subscription_cancelled": true,
"email_on_payment_succeeded": true,
"email_on_payment_failed": true
}
}Settings Fields Reference
| Field | Type | Description |
|---|---|---|
| webhook_url | string | Your webhook endpoint URL |
| webhook_enabled | boolean | Enable/disable all webhooks |
| webhook_on_scan_started | boolean | Send webhook when scan starts |
| webhook_on_scan_completed | boolean | Send webhook when scan completes |
| webhook_on_scan_failed | boolean | Send webhook when scan fails |
| webhook_on_scan_cancelled | boolean | Send webhook when scan is cancelled |
| email_notifications_enabled | boolean | Enable/disable email notifications |
| email_on_scan_started | boolean | Receive email when scan starts |
| email_on_scan_completed | boolean | Receive email when scan completes |
| email_on_scan_failed | boolean | Receive email when scan fails |
| email_on_scan_cancelled | boolean | Receive email when scan is cancelled |
| email_on_subscription_created | boolean | Receive email when subscription is created |
| email_on_subscription_updated | boolean | Receive email when subscription is updated |
| email_on_subscription_cancelled | boolean | Receive email when subscription is cancelled |
| email_on_payment_succeeded | boolean | Receive email when payment succeeds |
| email_on_payment_failed | boolean | Receive email when payment fails |
For more details on configuring webhooks, see the Webhooks documentation.
cURL Example
# Get current settings
curl -X GET "https://repocat.cloud/api/v1/settings" \
-H "X-API-Key: your-api-key-here"
# Update settings
curl -X PUT "https://repocat.cloud/api/v1/settings" \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{"webhook_enabled": true, "webhook_url": "https://example.com/webhook"}'