> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slickerhq.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Slicker API Overview

> Custom billing system API endpoints for sending data to Slicker

## API Basics

The Slicker API is a RESTful HTTP API that allows you to integrate your custom billing system with Slicker's retry optimization and revenue recovery platform.

* **Protocol**: HTTPS only (unencrypted HTTP is not supported)
* **Base URL**: `https://api.slickerhq.com`
* **Data Format**: All requests and responses use JSON format
* **Character Encoding**: UTF-8

## Authentication

The API uses Bearer token authentication. You'll receive an API key from Slicker which should be included in all API requests via the Authorization header:

```
Authorization: Bearer YOUR_API_KEY
```

Your API key grants access to sensitive data and should be kept secure. Do not share your API key in publicly accessible areas such as GitHub, client-side code, or in API requests to other services.

## API Endpoints

Slicker's custom billing API includes the following primary endpoints:

| Endpoint               | Description                           |
| ---------------------- | ------------------------------------- |
| `/v1/invoices`         | Send invoice data to Slicker          |
| `/v1/subscriptions`    | Send subscription data to Slicker     |
| `/v1/transactions`     | Send transaction data to Slicker      |
| `/v1/recovery_actions` | Retrieve recommended recovery actions |

Each endpoint accepts specific data formats as detailed in the [API Reference](/integrations/billing/custom/api/slicker/add_invoices).

## Request Limits

* **Maximum Batch Size**: Each API request can contain up to 200 items (invoices, subscriptions, or transactions)
* **Rate Limiting**: The API implements rate limiting to ensure stable performance for all users
* **Concurrency**: We recommend no more than 5 concurrent requests per second

If you exceed these limits, the API will return a `429 Too Many Requests` response. Implement appropriate backoff strategies in your integration.

## Best Practices

### Data Synchronization

* **Batching**: Group related data in batches for more efficient processing
* **Frequency**: Send data in real-time or near real-time for optimal recovery results
* **Completeness**: Include as many optional fields as possible for better recovery strategies

### Error Handling

* Implement retry logic with exponential backoff for failed requests
* Log all API interactions for troubleshooting purposes
* Monitor API responses for error patterns

### Testing

Before going live, thoroughly test your integration using:

1. Historical data synchronization with the Slicker API
2. Real-time event transmission
3. Query for recovery actions

## API Versioning

The API version is included in the URL path (e.g., `/v1/invoices`). When new versions are released, we'll provide appropriate migration guidance and timelines.

## Support

For API support or questions:

* Check the detailed [API Reference](/integrations/billing/custom/api/slicker/add_invoices)
* Contact your Slicker integration specialist
* Email [support@slickerhq.com](mailto:support@slickerhq.com)

## Next Steps

* Review the [API Reference](/integrations/billing/custom/api/slicker/add_invoices) for detailed endpoint specifications and data formats
* Learn about the [Webhook Implementation](/integrations/billing/custom/api/webhook) required for receiving retry instructions
