Credit ledger
Every credit added and spent.
Newest first, cursor paginated. A master or standalone workspace sees every line its account was debited for, its white-label children's included (workspaceId is the child); a child sees only its own lines. Optional filters: from, to (inclusive instants), action, campaignId and category (comma-separated, any matches: infrastructure, ai, data, sending, calling, added_expired; a refund or write-off goes with its charge). Each line carries its category. Needs the billing feature.
Parameters
Name
In
Type
Required
Description
Limit
In: query
integer (int32)
optional
Page size, 1-200 (default 50).
Cursor
In: query
string
optional
From
In: query
string (date-time)
optional
Lines created at or after this instant (UTC).
To
In: query
string (date-time)
optional
Lines created at or before this instant (UTC).
Action
In: query
string
optional
One credit action, e.g.
email_found.CampaignId
In: query
integer (int64)
optional
Category
In: query
string
optional
Comma-separated spend categories, any of them matches:
infrastructure, ai, data, sending, added_expired. A refund or write-off goes with its charge's category.Ken-Version
In: header
string, one of: 2026-11-02, 1.1
required
The API version: a dated version (YYYY-MM-DD), or 1.1, another name for the first dated version. Without it the request uses your API key's pinned version; an unpinned key reaches the legacy shape of the same path. 1.0 selects the legacy shape explicitly.
X-Ken-Workspace-Id
In: header
integer (int64)
optional
Workspace to act in. Required when your credential can reach more than one workspace (otherwise
400 workspace_required).Response 200
data is a list of CreditLedgerEntryModel. Each item has these fields. The response also carries pagination.
Field
Type
Description
id
integer (int64)
createdAt
string (date-time)
action
string
Credit action, e.g.
email_found, campaign_build, grant, refund.units
integer (int32)
Units the line is for (contacts, sends, inboxes). Omitted for token-priced and bookkeeping lines.
millicredits
integer (int64)
Signed millicredits.
reason
string
charge, release, settle, add_on, rebaseline, write_off, expire, launch_offer (a charge the launch offer waived, recorded at no cost), email_pool_hit (emails Kenso's shared pool gave for free, recorded at no cost; units counts the emails).campaignId
integer (int64)
workspaceId
integer (int64)
The workspace that caused the line (a white-label child on its master's ledger).
description
string
shadow
boolean
True when the workspace is exempt: the cost was recorded but not debited.
category
string
infrastructure, ai, data, sending, calling or added_expired (grants, expiries and manual adjustments). A refund or write-off is in its charge's category. Clients tolerate unknown values.Request
curl -X GET "https://api.ken.so/v1/credits/ledger" \ -H "Authorization: Bearer $KEN_API_KEY" \ -H "Ken-Version: 2026-11-02" \ -H "X-Ken-Workspace-Id: $KEN_WORKSPACE_ID"
Response 200
{
"success": true,
"data": [
{
"id": 812,
"createdAt": "2026-09-23T15:02:11Z",
"action": "string",
"units": 1,
"millicredits": 1,
"reason": "string",
"campaignId": 812,
"workspaceId": 812,
"description": "string",
"shadow": true,
"category": "string"
}
],
"pagination": {
"nextCursor": "eyJpZCI6ODE1fQ",
"hasMore": true,
"total": 1,
"isTotalCapped": true
}
}