Altruist Scheduled Transfers API
Recurring ACH transfer scheduling for brokerage accounts
Recurring ACH transfer scheduling for brokerage accounts
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/altruist:altruist-scheduled-transfers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: Enterprise Realtime Scheduled Transfers 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: Scheduled Transfers
description: Recurring ACH transfer scheduling for brokerage accounts
paths:
/api/v1/orgs/{orgId}/households/{householdId}/accounts/{accountId}/scheduledTransfers:
get:
tags:
- Scheduled Transfers
summary: List scheduled transfers
description: Returns all scheduled transfers for a brokerage account
operationId: listScheduledTransfers
parameters:
- name: orgId
in: path
required: true
schema:
type: string
format: uuid
- name: householdId
in: path
required: true
schema:
type: string
format: uuid
- name: accountId
in: path
required: true
schema:
type: string
format: uuid
- 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
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/PageResponseScheduledTransferV1'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'401':
description: Unauthorized
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'403':
description: Forbidden
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'
post:
tags:
- Scheduled Transfers
summary: Create scheduled transfer
description: Creates a recurring ACH deposit or withdrawal for a brokerage account
operationId: createScheduledTransfer
parameters:
- name: orgId
in: path
required: true
schema:
type: string
format: uuid
- name: householdId
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/CreateScheduledTransferRequestV1'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduledTransferIdV1'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'401':
description: Unauthorized
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'403':
description: Forbidden
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}/households/{householdId}/accounts/{accountId}/scheduledTransfers/{scheduledTransferId}:
patch:
tags:
- Scheduled Transfers
summary: Cancel scheduled transfer
description: Cancels an active scheduled transfer
operationId: cancelScheduledTransfer
parameters:
- name: orgId
in: path
required: true
schema:
type: string
format: uuid
- name: householdId
in: path
required: true
schema:
type: string
format: uuid
- name: accountId
in: path
required: true
schema:
type: string
format: uuid
- name: scheduledTransferId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduledTransferV1'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'401':
description: Unauthorized
content:
'*/*':
schema:
$ref: '#/components/schemas/ErrorV1'
'403':
description: Forbidden
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'
components:
schemas:
ScheduledTransferV1:
type: object
description: A scheduled transfer associated with a brokerage account
properties:
id:
type: string
format: uuid
description: The unique UUID identifier for the scheduled transfer
accountId:
type: string
format: uuid
fundingAccountId:
type: string
format: uuid
description: The financial account UUID for the account that funds will be deposited into or withdrawn from, depending on the direction field value
status:
type: string
description: 'The status of the scheduled transfer. Active: the transfer is scheduled and will occur on the next transfer date. Inactive: the transfer is paused and will not occur until reactivated. Canceled: the transfer has been canceled and will not occur. Complete: the transfer has finished all scheduled occurrences.'
enum:
- Active
- Inactive
- Canceled
- Complete
direction:
type: string
description: Indicates whether the scheduled transfer is a deposit or withdrawal
enum:
- Deposit
- Withdrawal
amount:
type: number
description: The amount for the transfer in USD
startDate:
type: string
format: date
description: The first date on which the scheduled transfer should occur
endDate:
type: string
format: date
description: The last potential date a scheduled transfer will occur, depending on the interval. This should not be set for one-time scheduled transfers.
nextTransferDate:
type: string
format: date
description: The next date on which the scheduled transfer will occur
isAutomatedRmd:
type: boolean
description: Indicates that this schedule has opted the account into an automatic required minimum distribution payment. The amount will be calculated per internal rules and this schedule cannot be modified.
frequency:
type: string
description: 'The interval for the scheduled transfer to occur between the start and end dates. Once: a one-time transfer. Daily: every day. Weekly: every week. EveryTwoWeeks: every two weeks. Monthly: every month. EveryTwoMonths: every two months. Quarterly: every three months. SemiAnnually: every six months. Annually: every twelve months.'
enum:
- Once
- Weekly
- EveryTwoWeeks
- Monthly
- EveryTwoMonths
- Quarterly
- SemiAnnually
- Annually
initiatedById:
type: string
description: The userId who created the scheduled transfer
iraContribution:
$ref: '#/components/schemas/IraContributionV1'
description: IRA contribution details. Present only for deposit transfers.
iraDistribution:
$ref: '#/components/schemas/IraDistributionV1'
description: IRA distribution details. Present only for withdrawal transfers.
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
PageResponseScheduledTransferV1:
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/ScheduledTransferV1'
ScheduledTransferIdV1:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier of the scheduled transfer
status:
type: string
enum:
- Active
- Inactive
- Canceled
- Complete
required:
- id
TaxWithholdingV1:
type: object
properties:
type:
type: string
enum:
- Percentage
- Fixed
value:
type: number
IraContributionV1:
type: object
properties:
reason:
type: string
enum:
- Regular
- Employee
- Employer
- Rollover60Day
- Unknown
applyToPriorYear:
type: boolean
required:
- applyToPriorYear
- reason
IraDistributionV1:
type: object
properties:
reason:
type: string
enum:
- Normal
- Disability
- Premature
- Death
- ExcessContributionRemovalBeforeTaxDeadline
- ExcessContributionRemovalAfterTaxDeadline
- ExcessContributionRemovalBeforePriorYear
- Unknown
federalWithholding:
$ref: '#/components/schemas/TaxWithholdingV1'
stateWithholding:
$ref: '#/components/schemas/TaxWithholdingV1'
required:
- reason
CreateScheduledTransferRequestV1:
type: object
description: Request to create a scheduled transfer for a brokerage account
properties:
fundingAccountId:
type: string
format: uuid
description: The financial account UUID for the account that funds will be deposited into or withdrawn from, depending on the direction field value
direction:
type: string
description: Indicates whether the scheduled transfer is a deposit or withdrawal
enum:
- Deposit
- Withdrawal
frequency:
type: string
description: 'The interval for the scheduled transfer to occur between the start and end dates. Once: a one-time transfer. Daily: every day. Weekly: every week. EveryTwoWeeks: every two weeks. Monthly: every month. EveryTwoMonths: every two months. Quarterly: every three months. SemiAnnually: every six months. Annually: every twelve months.'
enum:
- Once
- Weekly
- EveryTwoWeeks
- Monthly
- EveryTwoMonths
- Quarterly
- SemiAnnually
- Annually
amount:
type: number
description: The amount for the transfer in USD
startDate:
type: string
format: date
description: The first date on which the scheduled transfer should occur
endDate:
type: string
format: date
description: The last potential date a scheduled transfer will occur, depending on the interval. This should not be set for one-time scheduled transfers.
isAutomatedRmd:
type: boolean
description: Indicates that this schedule has opted the account into an automatic required minimum distribution payment. The amount will be calculated per internal rules and this schedule cannot be modified.
iraContribution:
$ref: '#/components/schemas/IraContributionV1'
description: IRA contribution details. Present only for deposit transfers.
iraDistribution:
$ref: '#/components/schemas/IraDistributionV1'
description: IRA distribution details. Present only for withdrawal transfers.
required:
- direction
- frequency
- fundingAccountId
- startDate
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