- Integrations
- Finance Specific
- Addepar

Automate Addepar with Caddi
Built for finance teams.
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 automates the loops that surround Addepar so analysts stop copy-pasting positions and reports.
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.
Automate Addepar by teaching Caddi like a new hire.
Walk Caddi through the Addepar work the way you'd train someone on their first day. It learns the job, builds a verified automation, and runs it for you every time. No code, no IT ticket, no brittle wiring.
- 1
Teach it the job
Walk Caddi through the Addepar task the way you'd onboard a new hire.
- 2
Caddi builds it
It writes verified code, tests it, and connects the rest of your stack.
- 3
It runs for you
The automation runs on demand, every time, with no model in the loop.
What Caddi does with Addepar
Why teams automate Addepar
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, but it never touches client data at runtime — once the automation is generated, it executes deterministically against Addepar with no model in the loop.
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.
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.




