Every API 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 apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
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 API
curl "https://apis.io/api/v1/apis/paxos:paxos-accounts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.
openapi: 3.2.0
info:
title: Paxos Accounts API
version: '2.0'
description: Welcome to Paxos APIs.
x-logo:
url: /docs/paxos.svg
backgroundColor: '#FFFFFF'
altText: Paxos logo
servers:
- url: https://api.paxos.com/v2
description: Production
- url: https://api.sandbox.paxos.com/v2
description: Sandbox
tags:
- name: Accounts
description: 'Accounts connect Identities (persons or institutions) to Profiles (asset balances).
Key features include:
- **Balance Management**: Track and manage profile balances via Subledgering
- **Joint Account Support**: Link multiple Identities to a single Account for shared on platform balance
Accounts are required for all Identity API integrations.'
paths:
/identity/accounts:
get:
summary: List Accounts
description: 'List accounts with pagination. Every response will contain a `next_page` field,
as long as the end of the list has not been reached. Pass this value into the `page_cursor` field of the next request
to retrieve the next page of results.'
operationId: ListAccounts
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/ListAccountsResponse'
parameters:
- name: page_cursor
in: query
required: false
schema:
type: string
- name: order
description: Return items in ascending (ASC) or descending (DESC) order. Defaults to DESC.
in: query
required: false
schema:
type: string
enum:
- DESC
- ASC
- name: order_by
description: The specific method by which the returned results will be ordered.
in: query
required: false
schema:
type: string
enum:
- CREATED_AT
- name: limit
description: Number of results to return.
in: query
required: false
schema:
type: integer
format: int32
- name: created_at.lt
description: Include timestamps strictly less than lt. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: created_at.lte
description: Include timestamps less than or equal to lte. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: created_at.eq
description: Include timestamps exactly equal to eq. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: created_at.gte
description: Include timestamps greater than or equal to gte. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: created_at.gt
description: Include timestamps strictly greater than gt. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: identity_id
description: Optionally filter by primary identity identity.
in: query
required: false
schema:
type: string
- name: updated_at.lt
description: Include timestamps strictly less than lt. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: updated_at.lte
description: Include timestamps less than or equal to lte. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: updated_at.eq
description: Include timestamps exactly equal to eq. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: updated_at.gte
description: Include timestamps greater than or equal to gte. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
- name: updated_at.gt
description: Include timestamps strictly greater than gt. RFC3339 format, like `2006-01-02T15:04:05Z`.
in: query
required: false
schema:
type: string
format: date-time
tags:
- Accounts
security:
- OAuth2:
- identity:read_account
post:
summary: Create Account
description: 'Create an account for a given identity, via the `identity_id` field.
This identity is the primary owner of the account for all tax-related purposes.
To track user balances using Paxos Profiles, use `create_profile=true` when creating the account.
Once an account has been created, it is not possible to associate it with a Profile.
### Account Members
In addition to the primary owner, other identities may be associated with the account, by using `members`.
The identity on the account is treated as a BENEFICIAL_OWNER.
To add a financial advisor to an account, add a member with the FINANCIAL_ADVISOR role.
#### Example
This example request creates a joint account for John and Jane Doe. John has identity_id=82c338f4-3cb7-4d9b-be2a-4b077c82ee3a,
and Jane has identity_id=0f5d8475-33f3-4ebd-88a0-66dedc2581c1. John is the primary owner of the account for tax-purposes, but Jane
is a full beneficial owner.
Additionally, this account has an associated financial advisor with identity_id=0d26f878-298e-4d47-81be-cdf4e982a3d3.
```json
{
"account": {
"identity_id": "82c338f4-3cb7-4d9b-be2a-4b077c82ee3a",
"members": [{
"identity_id": "0f5d8475-33f3-4ebd-88a0-66dedc2581c1",
"roles": ["BENEFICIAL_OWNER"]
}, {
"identity_id": "0d26f878-298e-4d47-81be-cdf4e982a3d3",
"roles": ["FINANCIAL_ADVISOR"]
}]
}
}
```
### Fields
Any fields not listed are forbidden in this request.
Field | Notes
---|---
identity_id | Required
description | Optional
metadata | Optional
ref_id | Optional
members | Optional'
operationId: CreateAccount
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
example:
id: e69e4e31-6dca-4a46-bb85-af40b5fe2d59
identity_id: 82c338f4-3cb7-4d9b-be2a-4b077c82ee3a
ref_id: fec36070-4c23-48ac-9ee1-df338b8233fc
description: Individual account for John Doe
metadata:
custom_field: custom_value
admin_disabled: false
user_disabled: false
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAccountRequest'
required: true
tags:
- Accounts
security:
- OAuth2:
- identity:write_account
put:
summary: Update Account
description: 'This enables you to update an existing account with new information. Please refer to the following
table for fields that can be updated via this endpoint.
Field | Notes
---|---
account.id | Required
account.description | Optional
account.ref_id | Optional
account.metadata | Optional. This will overwrite any existing metadata added to the account.
account.members | Optional. The only roles that can be added/removed are `FINANCIAL_ADVISOR` or `AUTHORIZED_USER.` You must always specify the full members object as we do not currently support differential member updates.
set_user_disabled | Optional. Setting this to `true` will disable the account, limiting its ability to be used within the Paxos platform.
#### Example Requests
#### Disabling an account
```json
{
"set_user_disabled": true,
"account": {
"id": "82c338f4-3cb7-4d9b-be2a-4b077c82ee3a",
"description": "Account Description",
"ref_id": "82c338f4-3cb7"
}
}
```
### Adding an account member
To retain the existing account members and add a new account member, the `members` field must contain the existing
account members and the new member. The below example adds an `AUTHORIZED_USER` to the account.
In order to add account members while leaving existing account members unaffected, clients
should use the Add Account Members API.
```json
{
"account": {
"id": "82c338f4-3cb7-4d9b-be2a-4b077c82ee3a",
"members": [{
"identity_id": "0f5d8475-33f3-4ebd-88a0-66dedc2581c1",
"roles": ["BENEFICIAL_OWNER"]
}, {
"identity_id": "0d26f878-298e-4d47-81be-cdf4e982a3d3",
"roles": ["FINANCIAL_ADVISOR"]
}, {
"identity_id": "012k23eb-298e-4d47-81be-cdf4e982a3d3",
"roles": ["AUTHORIZED_USER"]
}]
}
}
```
### Removing an account member
To remove an existing account member and retain other needed members, the `members` field must contain
the existing account members without the account member you''d like to remove. The below example removes an `AUTHORIZED_USER` from the account.
Note, this API requires the `members` array to have at least one element. In order to delete all members
from an account, clients should use the Delete Account Member API.
```json
{
"account": {
"id": "82c338f4-3cb7-4d9b-be2a-4b077c82ee3a",
"members": [{
"identity_id": "0f5d8475-33f3-4ebd-88a0-66dedc2581c1",
"roles": ["BENEFICIAL_OWNER"]
}]
}
}
```
### Updating an account members'' roles
To update an account members'' roles, the `members` field must contain all the existing members with their roles along
with the additional role that you''d like to add or remove. The below example adds the `FINANCIAL_ADVISOR` role to an member that is already a `BENEFICIAL_OWNER`.
```json
{
"account": {
"id": "82c338f4-3cb7-4d9b-be2a-4b077c82ee3a",
"members": [{
"identity_id": "0f5d8475-33f3-4ebd-88a0-66dedc2581c1",
"roles": ["BENEFICIAL_OWNER", "FINANCIAL_ADVISOR"]
}]
}
}
```'
operationId: UpdateAccount
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
example:
created_at: '2014-02-20T04:22:22.222221Z'
id: 79c27a0e-46a2-4276-9769-e1ebc055fa72
identity_id: 0acd56b7-140b-4b29-83e4-7e717f03afd9
members:
- identity_id: 11a3122a-0c50-4950-9934-2ad48a782b78
roles:
- FINANCIAL_ADVISOR
- identity_id: 08ba6b70-bcc0-4e4a-a67f-1d28842dedfc
roles:
- AUTHORIZED_USER
- identity_id: 2dedfc70-a67f-4e4a-bcc0-1d288408ba6b
roles:
- BENEFICIAL_OWNER
summary_status: PENDING
updated_at: '2022-02-24T04:20:22.222222Z'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAccountRequest'
example:
account:
id: 79c27a0e-46a2-4276-9769-e1ebc055fa72
members:
- identity_id: 11a3122a-0c50-4950-9934-2ad48a782b78
roles:
- FINANCIAL_ADVISOR
- identity_id: 08ba6b70-bcc0-4e4a-a67f-1d28842dedfc
roles:
- AUTHORIZED_USER
- identity_id: 2dedfc70-a67f-4e4a-bcc0-1d288408ba6b
roles:
- BENEFICIAL_OWNER
required: true
tags:
- Accounts
security:
- OAuth2:
- identity:write_account
/identity/accounts/{id}:
get:
operationId: GetAccount
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
parameters:
- name: id
description: uuid id of account
in: path
required: true
schema:
type: string
tags:
- Accounts
security:
- OAuth2:
- identity:read_account
summary: Get account
x-summary-source: derived
components:
schemas:
UpdateAccountRequest:
type: object
properties:
account:
$ref: '#/components/schemas/Account'
set_user_disabled:
type: boolean
description: true if the account is required to be disabled by the API user.
required:
- account
AccountAccountType:
type: string
enum:
- BROKERAGE
- TRADITIONAL_IRA
- ROTH_IRA
- SEP_IRA
- FINANCIAL_ADVISOR
AccountMember:
type: object
properties:
identity_id:
type: string
type:
$ref: '#/components/schemas/AccountMemberAccountRoleType'
roles:
type: array
items:
$ref: '#/components/schemas/AccountMemberAccountRoleType'
id:
type: string
description: 'Account member ID. Note: This field is auto-generated. Specifying an ID when creating an account member is a client error.'
required:
- identity_id
CreateAccountRequest:
type: object
properties:
account:
$ref: '#/components/schemas/Account'
create_profile:
type: boolean
description: 'Create a new profile for this account.
Set to `true` to track user balances at the Profile level for this account.
See also [Profiles](#tag/Profiles).'
required:
- account
example:
account:
identity_id: 82c338f4-3cb7-4d9b-be2a-4b077c82ee3a
ref_id: fec36070-4c23-48ac-9ee1-df338b8233fc
description: Individual account for John Doe
metadata:
custom_field: custom_value
AccountMemberAccountRoleType:
type: string
enum:
- BENEFICIAL_OWNER
- AUTHORIZED_USER
- FINANCIAL_ADVISOR
ListAccountsResponse:
type: object
properties:
next_page_cursor:
type: string
description: Cursor token required for fetching the next page.
items:
type: array
items:
$ref: '#/components/schemas/Account'
description: The result list of accounts.
Account:
type: object
properties:
id:
type: string
description: The id used for all other interactions with this account. Required on update. Auto-generated on create; do not set.
identity_id:
type: string
description: The primary identity associated with the account. Required on create. Not writable on update.
description:
type: string
description: A free-text description of the account.
admin_disabled:
type: boolean
description: true if the account has been disabled by a Paxos admin.
user_disabled:
type: boolean
description: true if the account has been disabled by the API user.
metadata:
type: object
additionalProperties:
type: string
description: API User-facing metadata.
ref_id:
type: string
description: A user-facing ID to prevent duplicate account creation. Unique for all accounts created by the same API user.
members:
type: array
items:
$ref: '#/components/schemas/AccountMember'
description: Additional Identities with varying types of access to this account.
created_at:
type: string
format: date-time
description: The time this account was created.
summary_status:
$ref: '#/components/schemas/IdentityStatus'
updated_at:
type: string
format: date-time
description: The time this account was updated.
profile_id:
type: string
description: 'The ID of the profile created for the account when `create_profile=true`.
The [Profile](#tag/Profiles) type is `NORMAL`.
The field is omitted when the account has no associated [Profile](#tag/Profiles).'
type:
$ref: '#/components/schemas/AccountAccountType'
IdentityStatus:
type: string
enum:
- PENDING
- ERROR
- APPROVED
- DENIED
- DISABLED
title: ''
securitySchemes:
OAuth2:
type: oauth2
description: 'Paxos APIs use [OAuth 2](https://tools.ietf.org/html/rfc6749) with the [client credentials](https://tools.ietf.org/html/rfc6749#section-4.4) grant flow.
**Token URLs:**
- Production: https://oauth.paxos.com/oauth2/token
- Sandbox: https://oauth.sandbox.paxos.com/oauth2/token
Learn more in the [API credentials guide →](https://docs.paxos.com/developer/credentials)
'
flows:
clientCredentials:
tokenUrl: https://oauth.paxos.com/oauth2/token
scopes:
conversion:read_conversion_stablecoin: Retrieve stablecoin conversion details
conversion:write_conversion_stablecoin: Create or cancel a stablecoin conversion
exchange:historical_prices: Retrieve marketnaverage prices at a certain time increment
exchange:read_order: Retrieve order or order execution details
exchange:read_quote: Retrieve quote details for buying or selling an asset
exchange:read_quote_execution: Retrieve quote execution details
exchange:write_quote_execution: Create a quote execution for buying or selling an asset
exchange:write_order: Create or cancel an order for buying or selling an asset
fee:write_crypto_withdrawal_fee: Create a guaranteed fee for crypto withdrawal
funding:read_bank_balance: Retrieve Paxos dedicated bank account balance
funding:read_profile: Retrieve Profile details and deposit funds in Sandbox
funding:write_profile: Create a Profile
identity:read_account: Retrieve Account details
identity:read_identity: Retrieve Identity details or documents
identity:write_account: Create or update Account and Account Members
identity:write_identity: Create or update Identity details and set Sandbox Identify Status
settlement:read_transaction: Retrieve settlement transaction details
settlement:write_transaction: Create, affirm or cancel a settlement transaction
tax:read_tax_form: Retrieve tax details
tax:read_tax_lot: Retrieve tax lot details
tax:write_tax_lot: Update the given tax-lot ID
transfer:read_deposit_address: Retrieve deposit address details
transfer:read_fiat_account: Retrieve Fiat Account details
transfer:read_fiat_deposit_instructions: Retrieve fiat deposit instruction details
transfer:read_transfer: Retrieve transfer details
transfer:read_transfer_limit: Retrieve limits for the given transaction type
transfer:reject_crypto_deposit: Reject a crypto deposit (travel rule)
transfer:update_crypto_deposit: Provide required travel-rule details
transfer:write_crypto_withdrawal: Withdraw asset to a specified destination address
transfer:write_deposit_address: Create an deposit address on a blockchain network
transfer:write_fiat_account: Create, update or delete a Fiat Account
transfer:write_fiat_deposit_instructions: Create, update or delete fiat deposit instructions
transfer:write_internal_transfer: Transfer assets between two Profiles
transfer:write_sandbox_fiat_deposit: Initiate a test fiat deposit in the Sandbox environment
transfer:write_fiat_withdrawal: Withdraw fiat to the given destination
events:read_event: Retrieve events
x-tagGroups:
- name: Deposits and Withdrawals
tags:
- Transfers
- Fiat Transfers
- Deposit Addresses
- Crypto Deposits
- Crypto Withdrawals
- Fees
- Internal Transfers
- Paxos Transfers
- Limits
- name: Identity
tags:
- Identity
- Institution Members
- Accounts
- Account Members
- Identity Documents
- name: API Credentials
tags:
- API Credentials
- name: Profiles
tags:
- Profiles
- name: Sandbox
tags:
- Sandbox Deposits
- Sandbox Identity
- Sandbox Fiat Transfers
- name: Settlements
tags:
- Settlement
- name: Stablecoin Conversion
tags:
- Stablecoin Conversion
- name: Taxes
tags:
- Tax Forms
- name: Trading
tags:
- Market Data
- Orders
- Quotes
- Quote Executions
- Pricing
- Issuer Quotes
- name: Rewards
tags:
- Monitoring Addresses
- Statements
- Payments
- name: Rewards (Alpha)
tags:
- Reward Addresses
- Claims
- Payout Groups
- Rewards
- name: Events
tags:
- Events
- Event Types
- Event Objects