ZenLedger

ZenLedger is a Seattle-founded crypto tax and digital-asset accounting company whose platform ingests transactions from 400+ exchanges, 100+ DeFi protocols and 10+ NFT marketplaces to calculate cost basis, capital gains and income, and generate US tax forms. Beyond the consumer product it operates two documented B2B REST APIs on api.zenledger.io: the Compliance Suite API (v3), a digital-asset trade-monitoring surface built with COMPLY for financial institutions and enterprise compliance teams that registers companies and users, imports wallets and exchange accounts, returns normalized transactions and holdings, and screens blockchain addresses against sanctions lists; and the Aggregator Suite API (v1), a partner surface that builds an aggregated portfolio from a set of accounts and returns the resulting tax calculation. Both authenticate with OAuth 2.0 client_credentials JWTs and are documented as versioned Postman collections at docs.zenledger.io.

ZenLedger publishes 13 APIs on the APIs.io network, including Authentication API, Companies API, Holdings API, and 10 more. Tagged areas include Crypto Tax, Digital Assets, Tax Compliance, Blockchain Analytics, and RegTech.

The ZenLedger catalog on APIs.io includes 1 event-driven AsyncAPI specification.

ZenLedger’s developer surface includes documentation, API reference, support, pricing, authentication, and 25 more developer resources.

56.1/100 strong ▬ flat Agent 31/100 agent ready Front door AI 1/6 silent Full breakdown ↓
scored 2026-09-25 · rubric v0.23.0
2 APIs
Crypto TaxDigital AssetsTax ComplianceBlockchain AnalyticsRegTechAccountingSanctions ScreeningFinancial ServicesPortfolio AggregationCryptocurrency

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-09-25 · rubric v0.23.0
Regulatory Posture applies to this provider. Its tags matched the Horizontal (data, software, accessibility, platform) regime, so Regulatory Posture carries 15 points of the composite. If this regime is wrong for your business, say so on your provider repo — the applicability map is public and we will correct it.
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it carries 10 points of the composite. It is scored from the published contracts themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in front of it, and the first time that check is skipped a duplicate record is created. Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet, not penalised by it.
The six quality facets above are damped to 75 points between them, because the conditional facet above carries the other 25. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 75% of its nominal weight, not 100%. The full arithmetic is at apis.io/rating/.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. Every facet and dimension name above is a link: it opens that measurement's own page — what it means, the exact checks that feed it, how the whole catalog distributes on it, and the providers at the top of it. This rating is computed from github.com/api-evangelist/zenledger: open an issue to ask a question, or submit a pull request to add artifacts. Submit an artifact on GitHub — free → Manage your own listing — the Influence plan, $499/mo →

APIs 13

Individual APIs this provider publishes, each with its own machine-readable definition.

ZenLedger Authentication API

OAuth 2.0 client_credentials token issuance.

ZenLedger Companies API

Enterprise tenants registered under the Compliance Suite account.

ZenLedger Holdings API

Per-source balances and import state for a user or company.

ZenLedger Imports API

Wallet and exchange-account import (signed and encrypted).

ZenLedger Polymarkets API

Polymarket prediction-market positions.

ZenLedger Portfolios API

Create an aggregated portfolio from a set of accounts.

ZenLedger Supported Chains API

Supported blockchain reference data.

ZenLedger Supported Currencies API

Currency reference data.

ZenLedger Supported Exchanges and Wallets API

Supported exchange/wallet source reference data.

ZenLedger Taxes API

Retrieve the tax calculation for an aggregated portfolio.

ZenLedger Transactions API

Normalized crypto transactions for a user or across a company.

ZenLedger Users API

End users tracked under a company.

ZenLedger Wallet Screening API

Sanctions and risk screening for a blockchain address.

Scroll for all 13

Postman Collections 2

Ready-to-run Postman collections for exercising this provider's APIs.

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Zenledger Rate Limits

0 limits

RATE LIMITS

Event Specifications 1

AsyncAPI definitions for this provider's event-driven and streaming APIs.

Security Posture 4

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Zenledger Authentication

oauth2/http · 2 schemes

SECURITY

Zenledger Domain Security

TLSv1.3 · DMARC

SECURITY

Zenledger Vulnerability Disclosure

disclosure policy published

SECURITY

Zenledger Trust Center

SOC 2 Type II, SOC 2 Framework alignment (Information Security Program)

SECURITY

Resources

Get Started 1

Portal, sign-up, and the first successful call

Documentation 2

Reference material describing how the API behaves

Agent Surfaces 3

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 5

Pagination, idempotency, versioning, errors, and events

Build 3

SDKs, sample code, and the tooling you integrate with

Access & Security 6

Authentication, authorization, and security posture

Operate 3

Status, limits, changes, and where to get help

Commercial 4

Pricing, plans, and the legal terms of use

Company 1

The organization behind the API

Other 2

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: zenledger
name: ZenLedger
description: 'ZenLedger is a Seattle-founded crypto tax and digital-asset accounting company whose platform ingests transactions
  from 400+ exchanges, 100+ DeFi protocols and 10+ NFT marketplaces to calculate cost basis, capital gains and income, and
  generate US tax forms. Beyond the consumer product it operates two documented B2B REST APIs on api.zenledger.io: the Compliance
  Suite API (v3), a digital-asset trade-monitoring surface built with COMPLY for financial institutions and enterprise compliance
  teams that registers companies and users, imports wallets and exchange accounts, returns normalized transactions and holdings,
  and screens blockchain addresses against sanctions lists; and the Aggregator Suite API (v1), a partner surface that builds
  an aggregated portfolio from a set of accounts and returns the resulting tax calculation. Both authenticate with OAuth 2.0
  client_credentials JWTs and are documented as versioned Postman collections at docs.zenledger.io.'
url: https://raw.githubusercontent.com/api-evangelist/zenledger/refs/heads/main/apis.yml
image: https://zenledger.io/wp-content/uploads/2023/07/ZenLedger-OpenGraph.png
x-type: company
x-source: harvest:secondary-market
position: Producing
specificationVersion: '0.23'
created: '2026-09-05'
modified: '2026-09-05'
tags:
- Crypto Tax
- Digital Assets
- Tax Compliance
- Blockchain Analytics
- RegTech
- Accounting
- Sanctions Screening
- Financial Services
- Portfolio Aggregation
- Cryptocurrency
tags_raw:
- crypto-tax
- digital-assets
- tax-compliance
- blockchain-analytics
- regtech
- accounting
- sanctions-screening
- financial-services
- portfolio-aggregation
- cryptocurrency
- Financial-Services
apis:
- aid: zenledger:zenledger-authentication-api
  name: ZenLedger Authentication API
  description: OAuth 2.0 client_credentials token issuance.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Authentication
  properties:
  - type: OpenAPI
    url: openapi/zenledger-authentication-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-companies-api
  name: ZenLedger Companies API
  description: Enterprise tenants registered under the Compliance Suite account.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Companies
  properties:
  - type: OpenAPI
    url: openapi/zenledger-companies-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-holdings-api
  name: ZenLedger Holdings API
  description: Per-source balances and import state for a user or company.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Holdings
  properties:
  - type: OpenAPI
    url: openapi/zenledger-holdings-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-imports-api
  name: ZenLedger Imports API
  description: Wallet and exchange-account import (signed and encrypted).
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Import
  tags_raw:
  - Imports
  properties:
  - type: OpenAPI
    url: openapi/zenledger-imports-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-polymarkets-api
  name: ZenLedger Polymarkets API
  description: Polymarket prediction-market positions.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Polymarkets
  properties:
  - type: OpenAPI
    url: openapi/zenledger-polymarkets-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-portfolios-api
  name: ZenLedger Portfolios API
  description: Create an aggregated portfolio from a set of accounts.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Portfolio
  tags_raw:
  - Portfolios
  properties:
  - type: OpenAPI
    url: openapi/zenledger-portfolios-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-supported-chains-api
  name: ZenLedger Supported Chains API
  description: Supported blockchain reference data.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Supported Chains
  properties:
  - type: OpenAPI
    url: openapi/zenledger-supported-chains-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-supported-currencies-api
  name: ZenLedger Supported Currencies API
  description: Currency reference data.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Supported Currencies
  properties:
  - type: OpenAPI
    url: openapi/zenledger-supported-currencies-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-supported-exchanges-and-wallets-api
  name: ZenLedger Supported Exchanges and Wallets API
  description: Supported exchange/wallet source reference data.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Supported Exchanges and Wallets
  properties:
  - type: OpenAPI
    url: openapi/zenledger-supported-exchanges-and-wallets-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-taxes-api
  name: ZenLedger Taxes API
  description: Retrieve the tax calculation for an aggregated portfolio.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Tax
  tags_raw:
  - Taxes
  properties:
  - type: OpenAPI
    url: openapi/zenledger-taxes-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-transactions-api
  name: ZenLedger Transactions API
  description: Normalized crypto transactions for a user or across a company.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Transaction
  tags_raw:
  - Transactions
  properties:
  - type: OpenAPI
    url: openapi/zenledger-transactions-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-users-api
  name: ZenLedger Users API
  description: End users tracked under a company.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - User
  tags_raw:
  - Users
  properties:
  - type: OpenAPI
    url: openapi/zenledger-users-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
- aid: zenledger:zenledger-wallet-screening-api
  name: ZenLedger Wallet Screening API
  description: Sanctions and risk screening for a blockchain address.
  humanURL: https://docs.zenledger.io/compliance/v3/
  baseURL: https://api.zenledger.io
  tags:
  - Wallet Screening
  properties:
  - type: OpenAPI
    url: openapi/zenledger-wallet-screening-api-openapi.yml
  - type: Postman
    url: postman/zenledger-compliance-v3.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/compliance/v3/
  - type: APIReference
    url: https://docs.zenledger.io/compliance/v3/README.md
  - type: Webhooks
    url: asyncapi/zenledger-compliance-webhooks.yml
  - type: Postman
    url: postman/zenledger-aggregators-v1.postman_collection.json
  - type: Documentation
    url: https://docs.zenledger.io/aggregators/rest-api/v1/
  - type: APIReference
    url: https://docs.zenledger.io/aggregators/rest-api/v1/README.md
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com
- FN: APIs.json
  email: info@apis.io
common:
- type: Overlay
  url: overlays/zenledger-compliance-api-overlay.yaml
- type: Overlay
  url: overlays/zenledger-aggregator-api-overlay.yaml
- type: Website
  url: https://zenledger.io/
- type: DeveloperPortal
  url: https://docs.zenledger.io/
- type: Documentation
  url: https://docs.zenledger.io/
- type: APIReference
  url: https://docs.zenledger.io/compliance/v3/README.md
- type: Postman
  url: postman/zenledger-compliance-v3.postman_collection.json
- type: GitHubOrganization
  url: https://github.com/zenledger-io
- type: Support
  url: https://support.zenledger.io/en/
- type: Pricing
  url: https://zenledger.io/pricing/
- type: TermsOfService
  url: https://zenledger.io/terms-of-use/
- type: PrivacyPolicy
  url: https://zenledger.io/privacy-policy/
- type: StatusPage
  url: https://status.zenledger.io/
- type: Authentication
  url: authentication/zenledger-authentication.yml
- type: Conventions
  url: conventions/zenledger-conventions.yml
- type: ErrorCatalog
  url: errors/zenledger-error-codes.yml
- type: Lifecycle
  url: lifecycle/zenledger-lifecycle.yml
- type: DataModel
  url: data-model/zenledger-data-model.yml
- type: Conformance
  url: conformance/zenledger-conformance.yml
- type: Compliance
  url: conformance/zenledger-conformance.yml
- type: Security
  url: security/zenledger-vulnerability-disclosure.yml
- type: VulnerabilityDisclosure
  url: security/zenledger-vulnerability-disclosure.yml
- type: TrustCenter
  url: security/zenledger-trust-center.yml
- type: DomainSecurity
  url: security/zenledger-domain-security.yml
- type: Packages
  url: packages/zenledger-packages.yml
- type: Plans
  url: plans/zenledger-plans-pricing.yml
- type: RateLimits
  url: rate-limits/zenledger-rate-limits.yml
- type: X-MCPServerCandidate
  url: mcp/zenledger-mcp.yml
- type: AgentSkill
  url: skills/_index.yml
- type: LLMsTxt
  url: llms/zenledger-llms.txt
x-enrichment:
  date: '2026-09-05'
  status: enriched
  artifacts_added: 27
  pass: local-v3

Work with this as data

Every provider here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for providers

9 MCP tools reach this
  • find_providersBrowse and filter every provider in the catalog.
  • get_provider_artifactsEvery artifact this provider publishes, grouped by type.
  • get_provider_operationsEvery operation across all of their OpenAPIs — one call instead of parsing every spec.
  • get_provider_toolsEvery MCP tool they ship, with the operation each wraps.
  • get_provider_evidenceHow each part of their score was established. Free — the basis for a claim should not sit behind it.
  • get_provider_ratingPRO — composite, band, trend and facet scores.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This provider
curl "https://apis.io/api/v1/providers/zenledger"
All providers
curl "https://apis.io/api/v1/providers?limit=25"
Every operation they expose
curl "https://apis.io/api/v1/providers/zenledger/operations?limit=25"
How their score was established
curl "https://apis.io/api/v1/providers/zenledger/evidence"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.