Resources
API Documentation
Documentation
API Documentation
Complete reference for integrating Karsilo data into your own applications. The API is available on Growth and Pro plans.
Authentication
All API requests require a Bearer token in the Authorization header. You can generate API keys from your Karsilo dashboard under Settings → API Keys. Keep your keys secure and never expose them in client-side code.
curl -H "Authorization: Bearer sk_live_your_api_key_here" \ https://api.karsilo.com/v1/customers
Rate Limits
The API enforces rate limits to ensure fair usage. You are allowed 60 requests per minute and 1,000 requests per hour. When rate limited, the API returns a 429 status code with a Retry-After header indicating how many seconds to wait.
HTTP/1.1 429 Too Many Requests Retry-After: 42 X-RateLimit-Limit: 60 X-RateLimit-Remaining: 0
Response Format
All endpoints return a consistent JSON envelope. Data is keyed by connection ID so you can easily identify which Stripe account each record belongs to. The hasMore object indicates whether additional pages are available for each connection.
{
"data": {
"conn_abc123": [ ...items ]
},
"hasMore": {
"conn_abc123": true
},
"meta": {
"connections": [
{ "id": "conn_abc123", "stripeAccountId": "acct_..." }
]
}
}Pagination
Use the starting_after query parameter to paginate through results. Pass the ID of the last item from the previous page. Each page returns up to 100 items. Continue fetching until hasMore is false for all connections.
GET /v1/customers?starting_after=cus_last_id_from_previous_page
Filtering
Use the accountId parameter to fetch data from a specific Stripe connection. Use from and to parameters (Unix timestamps in seconds) to filter by date range on supported endpoints like payments, revenue, and refunds.
GET /v1/payments?accountId=conn_abc123&from=1704067200&to=1706745600
Endpoints Reference
GET
/v1/accounts
List all connected Stripe accounts for your organisation.
GET
/v1/customers
Retrieve customers across all connected Stripe accounts.
accountId
starting_after
GET
/v1/payments
Fetch payment charges with optional date filtering.
accountId
starting_after
from
to
GET
/v1/products
List products and their associated prices.
accountId
starting_after
GET
/v1/subscriptions
Retrieve active and past subscriptions.
accountId
starting_after
GET
/v1/invoices
List invoices across your connected accounts.
accountId
starting_after
GET
/v1/revenue
Get balance and balance transaction data.
accountId
starting_after
from
to
GET
/v1/refunds
List refunds with optional date range filtering.
accountId
starting_after
from
to
GET
/v1/reports
Retrieve generated Stripe report runs.
accountId
starting_after