curl --request GET \
--url https://api.entendre.finance/v1/ledger-accounts \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.entendre.finance/v1/ledger-accounts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.entendre.finance/v1/ledger-accounts"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "lac_507f1f77bcf86cd799439011",
"name": "Cash",
"type": "Asset",
"normal_balance": "debit",
"sequence_number": 1000,
"parent_account_id": null,
"is_postable": true,
"is_clearing_account": false,
"is_archived": false,
"archived_at": null,
"asset_type": null,
"created_at": "2026-08-31T12:00:00Z"
}
],
"has_more": false,
"next_cursor": null
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid path, query or request body.",
"request_id": "req_example"
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "Authentication is required.",
"request_id": "req_example"
}
}{
"error": {
"code": "FORBIDDEN",
"message": "Insufficient access to organization",
"request_id": "req_example"
}
}{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Resource not found",
"request_id": "req_example"
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 30s.",
"request_id": "req_example"
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Internal server error",
"request_id": "req_example"
}
}{
"error": {
"code": "SERVICE_UNAVAILABLE",
"message": "Service unavailable.",
"request_id": "req_example"
}
}List ledger accounts
Lists ledger accounts with their posting settings.
curl --request GET \
--url https://api.entendre.finance/v1/ledger-accounts \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.entendre.finance/v1/ledger-accounts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.entendre.finance/v1/ledger-accounts"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "lac_507f1f77bcf86cd799439011",
"name": "Cash",
"type": "Asset",
"normal_balance": "debit",
"sequence_number": 1000,
"parent_account_id": null,
"is_postable": true,
"is_clearing_account": false,
"is_archived": false,
"archived_at": null,
"asset_type": null,
"created_at": "2026-08-31T12:00:00Z"
}
],
"has_more": false,
"next_cursor": null
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid path, query or request body.",
"request_id": "req_example"
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "Authentication is required.",
"request_id": "req_example"
}
}{
"error": {
"code": "FORBIDDEN",
"message": "Insufficient access to organization",
"request_id": "req_example"
}
}{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Resource not found",
"request_id": "req_example"
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 30s.",
"request_id": "req_example"
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Internal server error",
"request_id": "req_example"
}
}{
"error": {
"code": "SERVICE_UNAVAILABLE",
"message": "Service unavailable.",
"request_id": "req_example"
}
}include_archived=true. This also applies when you filter by ID.Authorizations
Your organization API key. Some operations also need a key that is associated with a user; their pages say so.
Query Parameters
Comma-separated account types. Allowed: Asset, Liability, Equity, Income, Expense.
true for postable child accounts only, false for parent grouping accounts only.
Include archived ledger accounts. Defaults to false.
Filter to clearing accounts (true) or non-clearing accounts (false).
Field to sort by. Defaults to sequence (chart-of-accounts order).
sequence, name Sort direction.
asc, desc Include the total number of matching records. If the count cannot be calculated, the request fails.
Filter to specific lac_-prefixed ledger account IDs. Up to 100 IDs.
Filter to children of the given lac_-prefixed parent account IDs. Up to 100 IDs.
Maximum number of records to return.
1 <= x <= 100The next_cursor value from the previous page. Keep the other filters unchanged.
Case-insensitive search in labels and descriptions.
Response
The matching records.
The records.
Show child attributes
Show child attributes
Whether another page is available.
Cursor for the next page, or null on the last page.
Total matching records across all pages. Present when include_count=true.
x >= 0