- Integrations
- Finance Specific
- Addepar
FinanceAutomate Addepar with Caddi AI Agents
Built for finance teams.
Yes, Caddi integrates with Addepar. It runs 31 supported actions in Addepar, including check job status, check transaction job status, and download file, and connects it to Salesforce, Laserfiche, and MoneyGuidePro. You show the workflow on a screenshare or describe it in chat, and change it in plain English as the work changes; Caddi builds it as verified code and runs it every time. No code, no IT ticket.
The differenceMost Addepar integrations sync records between two apps and leave the steps in between to your team. Caddi runs the whole job across Addepar and every tool it touches, including the screens with no API.
Supported actions31
- Check job statusReturns the current status, progress, and metadata of a portfolio job Poll until status is terminal before calling AddeparDownloadJobResults.
- Check transaction job statusReturns the current status, progress, and metadata of a transaction job Poll until status is terminal before calling AddeparDownloadTransactionJobResults.
- Download fileDownloads a file binary from Addepar by file ID and persists it to S3 Returns the S3 object key for use by subsequent activities.
- Download generated reportDownloads the zipped binary bundle for a completed generated report and persists it to S3 The S3 object key is returned for use by subsequent activities (e.g., email attachments, document parsers).
- Download job resultsDownloads the result file from a completed portfolio job and persists it to S3 Use after AddeparCheckJobStatus reports a terminal completed status.
- Download transaction job resultsDownloads the result file from a completed transaction job and persists it to S3 Use after AddeparCheckTransactionJobStatus reports a terminal completed status.
- Find argumentsLists all shared Addepar argument definitions, or returns a specific argument by key Use to discover valid argument keys to pass into AddeparListAttributeArguments or AddeparRunPortfolioQuery.
- Find attributesLists Addepar attributes filtered by name/category/usage/output_type (paged) or fetches a specific subset by attribute_keys Use before AddeparRunPortfolioQuery to discover valid column keys.
- Find entity by external IDResolves an (external_type_key, external_id) pair to its Addepar entity ID Critical for CRM/custodian integrations where the workflow starts from a non-Addepar identifier.
- Find generated reportsLists generated reports filtered by report_id, entity, group, or creation date (paged) or fetches one by generated_report_id Use to poll completion before AddeparDownloadGeneratedReport.
- Find groupsLists Addepar groups filtered by group_type/IDs/creation/modification dates (paged), or resolves group IDs from display_names/external_ids Use to identify groups for portfolio inputs to AddeparRunP…
- Get entityReturns the entity record including all standard attributes, custom attributes, and relationship references for a given entity ID.
- Get group membersLists all entity records that belong to a given group ID Use to expand a group into its constituent entities before per-entity operations.
- Get snapshotRetrieves a position snapshot record by ID, returning the owner/owned references and attributes captured at the snapshot's effective date.
- Get transactionReturns the full record for one Addepar transaction by ID.
- List attribute argumentsLists all argument definitions for a specific attribute Required when calling AddeparRunPortfolioQuery with attributes that take arguments (e.g., time periods, benchmarks).
- List contacts for entityLists contact records linked to a given entity (e.g., trustees, advisors, beneficiaries) Returns emails and contact metadata for downstream Client Portal publishing or notifications.
- List portfolio viewsReturns all portfolio analysis views the user has access to, with id and metadata for each view Used to discover which pre-built views can be run via AddeparRunPortfolioView.
- List positions for entityLists position records held by a given entity Returns holdings detail (security id, units, market value) suitable for portfolio composition reporting.
- List reportsReturns a list of saved report templates, optionally filtered by associated entity/group and creation/modification dates Used to discover which reports can be generated via AddeparGenerateReport.
- List transactions for entityLists raw transaction records for a specific entity over a date range, optionally filtered by transaction type Use when you need transaction-level detail rather than aggregated analytics.
- Search entitiesReturns a list of Addepar entities filtered by name, model type, or other attributes Used to resolve a human name or partial identifier to an Addepar entity ID before running portfolio queries.
- Generate reportInitiates asynchronous generation of a saved report for one or more portfolios, returning a job ID.
- Publish files to portalPublishes one or more previously uploaded Addepar files to the Client Portal, optionally scoped to a portfolio and notifying associated contacts.
- Run portfolio queryRuns a dynamic portfolio query with caller-supplied columns, groupings, date range, and portfolio reference Pair with AddeparFindAttributes for safe attribute/argument discovery.
- Run portfolio viewRuns a pre-configured portfolio view by ID for a given portfolio (entity, group, or firm-level) over a specified date range, returning hierarchical analysis results.
- Run transactions queryRuns a dynamic transactions query with caller-supplied columns, groupings, date range, and portfolio reference.
- Run transactions viewRuns a pre-configured transactions view by ID for a given portfolio over a date range, returning hierarchical transaction analysis results.
- Submit portfolio jobSubmits a portfolio analytics job for asynchronous server-side processing, returning a job ID.
- Submit transaction jobSubmits a transactions job for asynchronous server-side processing, returning a job ID.
- Upload fileUploads a file (previously written to S3 by another activity) into Addepar and optionally associates it with the supplied entity and group IDs.
Need something that isn't listed? Teach Caddi the step the way you'd teach a new hire and it gets built.
How to automate Addepar

Connect Addepar to Caddi
Allow1Sign in to Addepar
One click with your own Addepar login. No API keys.
Automate client review packet generation in Addepar.
ScreenshareType it2Show or tell it
Screenshare the job, or type it in chat. Change it any time.
- Running


14 done1 for review
3Watch it run
Caddi does the work and flags anything unsure for review.
What Caddi does with Addepar
Why teams automate Addepar
Addepar gives finance teams a complete picture of every client's portfolio — but the work of getting data in, out, and in front of clients still falls on operations. Caddi AI Agents automate the loops that surround Addepar so analysts stop copy-pasting positions and reports.
Most Addepar pain isn't in Addepar itself — it's in the dozens of weekly motions around it: pulling positions for a client meeting, refreshing custodian data, mailing performance reports, and reconciling against the CRM. Caddi handles those motions end-to-end.
Loops Caddi runs against Addepar
Client review packet generation
Recommended patternCaddi pulls each household's positions and performance from Addepar, generates the review packet, files it in the document system with the right metadata, and notifies the advisor.
Custodian reconciliation
Recommended pattern
Addepar
Salesforce
Microsoft Excel
Caddi compares custodian feeds against Addepar positions, flags discrepancies, and writes the reconciled record back to the household in your CRM.
Quarterly billing prep
Recommended patternCaddi pulls billable AUM from Addepar, builds the invoice spreadsheet, runs validation against custodian and CRM data, and hands the file to operations for review.
Where finance teams use it
Client onboarding & account opening
Extract household, beneficiary, and account data from intake PDFs or forms and create the matching records in Addepar with no rekeying.
Meeting prep & follow-up
Pull the right Addepar data ahead of every client meeting, generate the prep packet, and log notes, tasks, and follow-ups when the meeting ends.
Reporting & archiving
Generate household, performance, or compliance PDFs, file them with the right Addepar metadata, and notify the advisor when the packet is ready.
Books, records & reconciliation
Reconcile cash receipts, payments, and custodian feeds against Addepar, and write the audit-ready record back to the right account.
Questions about automating Addepar
Does Caddi have a real Addepar integration?
Yes. Caddi runs verified code against Addepar's official APIs (and uses a secure, audited browser session when an API isn't available). Every automation Caddi builds for Addepar is reviewed before it runs in production.
Do I need engineering help to automate Addepar with Caddi?
No. You demonstrate the workflow, clicking through Addepar the way you normally would, and Caddi turns it into a verified, repeatable automation. No code, no IT ticket, no Zapier-style wiring.
Is my Addepar data safe?
Caddi is SOC 2 attested. Our AI watches and builds the automation; once generated, it executes as deterministic code against Addepar, the same steps on every run, and any model step inside a run is scoped, logged, and reviewable.
Can Caddi connect Addepar to the rest of my stack?
That's the point. Most Caddi automations span 3-6 tools. For example: pulling data out of an email, updating Addepar, filing a document in cloud storage, and posting a confirmation in Slack or Teams. Every tool on the integrations page is fair game.
How do I find what to automate in Addepar?
Caddi Discover reads the activity in the tools you connect, read only, and ranks the repeated work worth automating with the evidence behind each finding. Unlike process mining, it does not stop at the insight: the person who does the work builds the automation in Caddi Automate, and Govern keeps every run and decision on the record.
Ready to automate Addepar?
Drop your work email and we'll show you Caddi running end-to-end against Addepar and the rest of your stack.



