Work with this as data
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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/altruist:altruist-account-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
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.
OpenAPI Specification
openapi: 3.2.0
info:
title: Enterprise Realtime Account API
description: The Enterprise Realtime API service acts as the public API layer for advisor infrastructure, enabling partner-developers to programmatically perform advisor actions.
version: v1
servers:
- url: https://integrations.altruist.com
description: API Server
tags:
- name: Account
description: Account management
paths:
/api/v1/orgs/{orgId}/accounts:
get:
tags:
- Account
summary: List financial accounts in the organization
description: Returns a paginated list of financial accounts the caller has access to in the organization. Supports filtering by household and archive status. Non-archived accounts are returned by default; pass archived=true to return archived accounts. Pass assigned=false to return only accounts not assigned to any household.
operationId: listAccounts
parameters:
- name: orgId
in: path
required: true
schema:
type: string
format: uuid
- name: householdId
in: query
required: false
schema:
type: string
format: uuid
- name: archived
in: query
required: false
schema:
type: boolean
- name: page
in: query
required: false
schema:
type: integer
format: int32
default: 1
- name: size
in: query
required: false
schema:
type: integer
format: int32
default: 50
- name: assigned
in: query
required: false
schema:
type: boolean
responses:
'200':
description: Paginated list of accounts (may be empty)
content:
'*/*':
schema:
$ref: '#/components/schemas/PageResponseAccountSummaryV1'
'400':
description: Invalid input — page, size, or boolean param is malformed
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'401':
description: Unauthorized — missing or invalid token
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'403':
description: Access denied — caller is not an advisor in the organization
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'404':
description: Not Found
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'409':
description: Conflict
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'422':
description: Unprocessable Entity
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'501':
description: Not Implemented
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'502':
description: Bad Gateway
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
/api/v1/orgs/{orgId}/accounts/{accountId}:
get:
tags:
- Account
summary: Get a financial account by id
description: Returns the detail for a single financial account in the organization. The caller must be an advisor in the organization. Returns 404 if the account does not exist or belongs to a different organization.
operationId: getAccount
parameters:
- name: orgId
in: path
required: true
schema:
type: string
format: uuid
- name: accountId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Account detail
content:
application/json:
schema:
$ref: '#/components/schemas/AccountDetailV1'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'401':
description: Unauthorized — missing or invalid token
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'403':
description: Access denied — caller is not an advisor in the organization
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'404':
description: Account not found in the organization, or caller has no access
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'409':
description: Conflict
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'422':
description: Unprocessable Entity
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'501':
description: Not Implemented
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'502':
description: Bad Gateway
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
patch:
tags:
- Account
summary: Archive or unarchive an account
description: 'Updates patchable properties on a financial account. In v1 only the status field is patchable: set to ARCHIVED to archive or ACTIVE to unarchive. Both transitions are idempotent. Archiving an account that is currently assigned to a household is rejected (422); callers must unassign the account from the household before archiving. The caller must be an advisor in the organization.'
operationId: updateAccount
parameters:
- name: orgId
in: path
required: true
schema:
type: string
format: uuid
- name: accountId
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AccountUpdateRequestV1'
required: true
responses:
'200':
description: Account updated
content:
application/json:
schema:
$ref: '#/components/schemas/AccountSummaryV1'
'400':
description: 'Invalid input: empty body, missing status, or unsupported status value (only ARCHIVED and ACTIVE are accepted)'
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'401':
description: 'Unauthorized: missing or invalid token'
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'403':
description: 'Access denied: caller is not an advisor in the organization'
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'404':
description: Account not found in the organization, or caller has no access
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'409':
description: Conflict
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'422':
description: Cannot archive an account that is currently assigned to a household; unassign it first
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'501':
description: Not Implemented
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'502':
description: Bad Gateway
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
components:
schemas:
PageResponseAccountSummaryV1:
type: object
properties:
page:
type: integer
format: int32
size:
type: integer
format: int32
total:
type: integer
format: int64
items:
type: array
items:
$ref: '#/components/schemas/AccountSummaryV1'
ErrorV1:
type: object
properties:
code:
type: integer
format: int32
description: '### Error Codes
| Code | Description |
|--------|-------------------------------------|
| **0xx** | **Unknown or Unexpected** |
| 0 | Unknown error |
| 40 | Unknown authentication error |
| **1xx** | **General** |
| 101 | Invalid input |
| 104 | Not found |
| 140 | Access Denied |
| 141 | Unauthorized |
| 150 | Not implemented |
| **10xx** | **Household** |
| 1000 | Household not found |
| 1001 | Duplicate contact |
| 1002 | Household contact not found |
| 1003 | Household contact already exists |
| **11xx** | **Account** |
| 1100 | Account not found |
| 1110 | Invalid account group |
| **12xx** | **User** |
| 1200 | User not found |
| 1201 | User profile not found |
| **13xx** | **Transfer** |
| 1300 | Transfer not found |
| 1301 | Transfer not supported |
| 1302 | Duplicate transfer |
| 1303 | Funding account not found |
| 1304 | Duplicate funding account |
| **14xx** | **Client Agreement** |
| 1400 | Client Agreement not found |
| 1401 | Invalid Client Agreement file |
| 1402 | Client Agreement could not be updated |
| **15xx** | **Trusted Contact** |
| 1500 | Trusted Contact not found |
| **17xx** | **Cash Set Aside** |
| 1700 | Cash set aside not found |
| 1701 | Cash set aside invalid amount |
| 1702 | Cash set aside invalid date |
| 1703 | Cash set aside upstream error |
| 1704 | Cash set aside cannot be cancelled |
| 1705 | Cash set aside invalid account |
| **18xx** | **Cash Settings** |
| 1800 | Cash settings not found |
'
message:
type: string
requestId:
type: string
AccountSummaryV1:
type: object
properties:
id:
type: string
format: uuid
accountNumber:
type: string
registrationType:
type: string
sourceType:
type: string
enum:
- Altruist
- Custodian
- Plaid
financialInstitutionName:
type: string
status:
type: string
enum:
- Active
- Pending
- Closed
- Suspended
- PendingClosure
- Restricted
- Archived
householdId:
type: string
format: uuid
repCode:
type: string
name:
type: string
AccountUpdateRequestV1:
type: object
properties:
status:
type: string
enum:
- Active
- Pending
- Closed
- Suspended
- PendingClosure
- Restricted
- Archived
- Unknown
AccountDetailV1:
type: object
properties:
id:
type: string
format: uuid
accountNumber:
type: string
registrationType:
type: string
sourceType:
type: string
enum:
- Altruist
- Custodian
- Plaid
- Unknown
financialInstitutionName:
type: string
status:
type: string
enum:
- Active
- Pending
- Closed
- Suspended
- PendingClosure
- Restricted
- Archived
- Unknown
householdId:
type: string
format: uuid
repCode:
type: string
name:
type: string
taxable:
type: boolean
inceptionDate:
type: string
format: date
closedDate:
type: string
format: date
x-provenance:
method: searched
source: https://developer.altruist.com/reference
harvested: '2026-10-13'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://developer.altruist.com/reference/assignaccountportfolio-1.md
- https://developer.altruist.com/reference/assignaccounttohousehold.md
- https://developer.altruist.com/reference/associatedrafttobundle.md
- https://developer.altruist.com/reference/batchdeletebeneficiaries.md
- https://developer.altruist.com/reference/cancelacattransfer.md
- https://developer.altruist.com/reference/cancelcashsetaside.md
- https://developer.altruist.com/reference/cancelcashtransfer-1.md
- https://developer.altruist.com/reference/cancelscheduledtransfer-1.md
- https://developer.altruist.com/reference/checkdrafteligibility.md
- https://developer.altruist.com/reference/createaccountgroup.md
- https://developer.altruist.com/reference/createbanklink.md
- https://developer.altruist.com/reference/createbeneficiary.md
- https://developer.altruist.com/reference/createbundle.md
- https://developer.altruist.com/reference/createcashsetaside.md
- https://developer.altruist.com/reference/createcashtransfer-1.md
- https://developer.altruist.com/reference/createdraftinbundle.md
- https://developer.altruist.com/reference/createfundingaccount-1.md
- https://developer.altruist.com/reference/createhousehold.md
- https://developer.altruist.com/reference/createhouseholdcontact.md
- https://developer.altruist.com/reference/createinvite.md
- https://developer.altruist.com/reference/createlinktoken.md
- https://developer.altruist.com/reference/createplaidfundingaccount.md
- https://developer.altruist.com/reference/createscheduledtransfer-1.md
- https://developer.altruist.com/reference/createtransfer-1.md
- https://developer.altruist.com/reference/createuser.md
- https://developer.altruist.com/reference/deleteaccountportfolio-1.md
- https://developer.altruist.com/reference/deletebanklink.md
- https://developer.altruist.com/reference/deletebeneficiary.md
- https://developer.altruist.com/reference/deletebundle.md
- https://developer.altruist.com/reference/deleteclientagreement-1.md
- https://developer.altruist.com/reference/deletehousehold.md
- https://developer.altruist.com/reference/deletetransfer-1.md
- https://developer.altruist.com/reference/deletetrustedcontact-1.md
- https://developer.altruist.com/reference/downloadclientagreementfile-1.md
- https://developer.altruist.com/reference/getacattransfer.md
- https://developer.altruist.com/reference/getaccount.md
- https://developer.altruist.com/reference/getaccountcashsettings.md
- https://developer.altruist.com/reference/getaccountgroup.md
- https://developer.altruist.com/reference/getaccountgroups.md
- https://developer.altruist.com/reference/getaccountportfolio-1.md
- https://developer.altruist.com/reference/getaggregatedtransactions-1.md
- https://developer.altruist.com/reference/getaggregatedtransactions_1.md
- https://developer.altruist.com/reference/getallfundingaccounts-1.md
- https://developer.altruist.com/reference/getallhouseholdsbyorgid.md
- https://developer.altruist.com/reference/getalltransfers-1.md
- https://developer.altruist.com/reference/getbanklink.md
- https://developer.altruist.com/reference/getbeneficiary.md
- https://developer.altruist.com/reference/getbundle.md
- https://developer.altruist.com/reference/getcashsetaside.md
- https://developer.altruist.com/reference/getcashsummary-1.md
- https://developer.altruist.com/reference/getclientagreementdetails-1.md
- https://developer.altruist.com/reference/getcontributionlimitforyear-1.md
- https://developer.altruist.com/reference/getcontributionlimits-1.md
- https://developer.altruist.com/reference/getfundingaccount-1.md
- https://developer.altruist.com/reference/gethouseholdbyid.md
- https://developer.altruist.com/reference/gethouseholdcontact.md
- https://developer.altruist.com/reference/gethouseholdcontacts.md
- https://developer.altruist.com/reference/getinvite.md
- https://developer.altruist.com/reference/getinvitestatus.md
- https://developer.altruist.com/reference/getmmasettings.md
- https://developer.altruist.com/reference/getmodel-1.md
- https://developer.altruist.com/reference/getpointsofcontact.md
- https://developer.altruist.com/reference/getportfolio-1.md
- https://developer.altruist.com/reference/getportfolios-1.md
- https://developer.altruist.com/reference/getportfolios_1-1.md
- https://developer.altruist.com/reference/getsecurities-1.md
- https://developer.altruist.com/reference/gettimeweightedreturnsforresourcegroup-1.md
- https://developer.altruist.com/reference/gettransferbyid-1.md
- https://developer.altruist.com/reference/gettrustedcontact-1.md
- https://developer.altruist.com/reference/getuserprofilebyuserid.md
- https://developer.altruist.com/reference/getweightedmodelsforportfolio-1.md
- https://developer.altruist.com/reference/initiateacattransfer.md
- https://developer.altruist.com/reference/listacattransfers.md
- https://developer.altruist.com/reference/listaccounts.md
- https://developer.altruist.com/reference/listbanklinks.md
- https://developer.altruist.com/reference/listbanklinksbyfundingaccount.md
- https://developer.altruist.com/reference/listbeneficiaries.md
- https://developer.altruist.com/reference/listbundles.md
- https://developer.altruist.com/reference/listcashsetasides.md
- https://developer.altruist.com/reference/listcashtransfers-1.md
- https://developer.altruist.com/reference/listdraftsinbundle.md
- https://developer.altruist.com/reference/listfundingeligibleaccounts.md
- https://developer.altruist.com/reference/listhouseholdaccounts.md
- https://developer.altruist.com/reference/listscheduledtransfers-1.md
- https://developer.altruist.com/reference/removedraftfrombundle.md
- https://developer.altruist.com/reference/resendacatconfirmation.md
- https://developer.altruist.com/reference/setallocations.md
- https://developer.altruist.com/reference/unassignaccount.md
- https://developer.altruist.com/reference/updateaccount.md
- https://developer.altruist.com/reference/updatebeneficiary.md
- https://developer.altruist.com/reference/updateclientagreement-1.md
- https://developer.altruist.com/reference/updatedraftinbundle.md
- https://developer.altruist.com/reference/updatefundingaccount-1.md
- https://developer.altruist.com/reference/updatehousehold.md
- https://developer.altruist.com/reference/updatetransfer-1.md
- https://developer.altruist.com/reference/updatetrustedcontact-1.md
- https://developer.altruist.com/reference/updateuserprofile.md
- https://developer.altruist.com/reference/validatecashsetaside.md
merge:
pages: 98
deduped: 228
conflicts_kept_first: 0