# Skipo API > The Skipo public API — reference, guides, and code examples This file contains links to documentation sections following the llmstxt.org standard. ## Table of Contents - [Account](https://docs.skipo.com/en/api/account.md): Account — GET /v2/account. - [Assets](https://docs.skipo.com/en/api/assets.md): Assets — GET /v2/assets, GET /v2/assets/{assetSymbol}. - [Balances](https://docs.skipo.com/en/api/balances.md): Balances — GET /v2/balances, GET /v2/balances/{assetSymbol}/history. - [Contacts](https://docs.skipo.com/en/api/contacts.md): Contacts — GET /v2/contacts, GET /v2/contacts/{contactId}, PATCH /v2/contacts/{contactId}. - [Deposit addresses](https://docs.skipo.com/en/api/deposit-addresses.md): Deposit addresses — GET /v2/deposit-addresses. - [Deposit instructions](https://docs.skipo.com/en/api/deposit-instructions.md): Deposit instructions — GET /v2/deposit-instructions. - [Deposits](https://docs.skipo.com/en/api/deposits.md): Deposits — GET /v2/deposits, GET /v2/deposits/{id}. - [Endpoint reference](https://docs.skipo.com/en/api.md): Every Skipo v2 API endpoint, in text — method, path, scope, parameters and response. - [Ledger](https://docs.skipo.com/en/api/ledger.md): Ledger — GET /v2/ledger, GET /v2/ledger/{id}. - [Markets](https://docs.skipo.com/en/api/markets.md): Markets — GET /v2/markets, GET /v2/markets/{market}, GET /v2/markets/{market}/price. - [Orders](https://docs.skipo.com/en/api/orders.md): Orders — GET /v2/fills, GET /v2/orders, POST /v2/orders, GET /v2/orders/{id}, GET /v2/orders/{id}/fills, POST /v2/quotes. - [System](https://docs.skipo.com/en/api/system.md): System — GET /v2/health, GET /v2/time. - [Webhooks](https://docs.skipo.com/en/api/webhooks.md): Webhooks — GET /v2/.well-known/webhook-jwks.json. - [Withdrawals](https://docs.skipo.com/en/api/withdrawals.md): Withdrawals — GET /v2/withdrawals, POST /v2/withdrawals, GET /v2/withdrawals/{id}. - [Authentication](https://docs.skipo.com/en/concepts/authentication.md): Skipo API's two-tier authentication scheme — bearer keys and per-request signed JWT. - [Errors](https://docs.skipo.com/en/concepts/errors.md): RFC 9457 (problem+json) error format for the Skipo API. - [Funding your account](https://docs.skipo.com/en/concepts/funding-your-account.md): How to deposit into Skipo over the API — crypto deposit addresses, CLP bank transfer, and how to reconcile a deposit that has already arrived. - [Ids and correlation](https://docs.skipo.com/en/concepts/ids-and-correlation.md): How withdrawals, deposits, orders, fills and the ledger relate — the Skipo API id-correlation contract. - [Pagination](https://docs.skipo.com/en/concepts/pagination.md): How the Skipo API paginates its collections — offset by default, cursor on fills. - [Rate limits](https://docs.skipo.com/en/concepts/rate-limits.md): Per-account and per-key limits, tiers, RateLimit headers, and the 429 response for the Skipo API. - [Tokenized equities (xStocks)](https://docs.skipo.com/en/concepts/tokenized-equities.md): How the Skipo API expresses tokenized-equity amounts — assetFormat, the multiplier, and why it is point-in-time. - [Webhooks](https://docs.skipo.com/en/concepts/webhooks.md): Receive signed events from Skipo — the 7-event catalog, the stable envelope, always-rebased amounts with a base block, and JWS verification with Ed... - [Withdrawal fees](https://docs.skipo.com/en/concepts/withdrawal-fees.md): How Skipo charges the withdrawal fee — feeMode, sweeping a full balance, and why the fee depends on the contact's network. - [api_access_disabled](https://docs.skipo.com/en/errors/api_access_disabled.md): API access disabled (HTTP 403) — API access for this account has been disabled. - [clock_skew](https://docs.skipo.com/en/errors/clock_skew.md): Clock skew too large (HTTP 401) — The client clock is too far ahead of the server. - [conflict](https://docs.skipo.com/en/errors/conflict.md): Conflict (HTTP 409) — The request conflicts with the resource's current state. - [downstream_unavailable](https://docs.skipo.com/en/errors/downstream_unavailable.md): Downstream service unavailable (HTTP 502) — A service the operation depends on is unavailable. - [idempotency_conflict](https://docs.skipo.com/en/errors/idempotency_conflict.md): Idempotency conflict (HTTP 409) — An idempotency key was reused with a different body. - [Error catalog](https://docs.skipo.com/en/errors.md): Complete catalog of Skipo API error codes (RFC 9457). - [insufficient_scope](https://docs.skipo.com/en/errors/insufficient_scope.md): Insufficient scope (HTTP 403) — The key does not have the scope required for the operation. - [internal_error](https://docs.skipo.com/en/errors/internal_error.md): Internal server error (HTTP 500) — An unexpected error occurred on Skipo's side. - [invalid_signature](https://docs.skipo.com/en/errors/invalid_signature.md): Invalid signature (HTTP 401) — The signed JWT does not verify against the registered public key, or one of its claims does not match the request. - [ip_not_allowed](https://docs.skipo.com/en/errors/ip_not_allowed.md): IP address not allowed (HTTP 403) — The source IP is not in the key's list of allowed IPs. - [key_expired](https://docs.skipo.com/en/errors/key_expired.md): API key expired (HTTP 401) — The API key has reached its expiration date. - [key_limit_reached](https://docs.skipo.com/en/errors/key_limit_reached.md): API key limit reached (HTTP 409) — The account has reached its maximum number of API keys. - [key_revoked](https://docs.skipo.com/en/errors/key_revoked.md): API key revoked (HTTP 401) — The API key has been revoked. - [maintenance](https://docs.skipo.com/en/errors/maintenance.md): Service under maintenance (HTTP 503) — The API is under maintenance. - [nonce_reused](https://docs.skipo.com/en/errors/nonce_reused.md): Nonce already used (HTTP 401) — The JWT `nonce` has already been used (anti-replay protection). - [not_found](https://docs.skipo.com/en/errors/not_found.md): Resource not found (HTTP 404) — The requested resource does not exist or does not belong to your account. - [permission_denied](https://docs.skipo.com/en/errors/permission_denied.md): Permission denied (HTTP 403) — The account is not authorized for this operation. - [quotation_expired](https://docs.skipo.com/en/errors/quotation_expired.md): Quotation expired (HTTP 410) — The quote you are trying to confirm has already expired. - [rate_limited](https://docs.skipo.com/en/errors/rate_limited.md): Rate limit exceeded (HTTP 429) — You exceeded the rate limit or the key/account quota. - [service_degraded](https://docs.skipo.com/en/errors/service_degraded.md): Service degraded (HTTP 503) — The service is operating in a degraded mode and temporarily rejected the request. - [two_factor_required](https://docs.skipo.com/en/errors/two_factor_required.md): Two-factor required (HTTP 403) — The operation requires second-factor verification (2FA). - [unauthorized](https://docs.skipo.com/en/errors/unauthorized.md): Unauthorized (HTTP 401) — The credential is missing or invalid. - [unprocessable](https://docs.skipo.com/en/errors/unprocessable.md): Unprocessable request (HTTP 422) — The request is syntactically valid but cannot be processed due to a business rule. - [validation_error](https://docs.skipo.com/en/errors/validation_error.md): Validation error (HTTP 400) — The request does not match the expected schema (missing field, wrong type, or invalid value). - [Environments](https://docs.skipo.com/en/getting-started/environments.md): Skipo exposes a single environment; every key operates on real funds. - [Quickstart](https://docs.skipo.com/en/getting-started/quickstart.md): Make your first authenticated call to the Skipo API. - [Skipo API](https://docs.skipo.com/en/index.md): The Skipo public API — reference, guides, and code examples to move money, query markets, and receive webhooks. - [MCP Server](https://docs.skipo.com/en/mcp.md): Skipo's read-only MCP server — connect your account to Claude and other AI agents to query balances, transactions, and markets in natural language. - [Remote connector (OAuth)](https://docs.skipo.com/en/mcp/remote-connector.md): Connect Skipo as a remote MCP connector over OAuth 2.1 — no install, sign in with your account and approve read-only access. - [Migrating from v1](https://docs.skipo.com/en/migration-from-v1.md): Guide to migrating from Skipo's v1 API to v2.