- Automations
- Addepar + PDF
AI-native automation
Connect Addepar and PDF with AI
Pick any two tools and Caddi runs the loop between them end-to-end — no complicated workflow builder, no IT ticket.
- Doesn't break. Caddi reads intent, so when fields move or UIs change, your loop keeps running.
- Screenshare to set up, chat to improve. Show Caddi once on a screenshare. Tweak it later by chat — no workflow builder to re-architect.
SOC 2 attested · Human-in-the-loop · Full audit trail · 70+ tools across legal, finance, and operations

Practical ways to use Addepar and PDF together
- 01
Document extract in PDF when check job status in Addepar.
Caddi watches Addepar for check job status and document extract in PDF — no copy-paste, no missed records.
- 02
Generate report in Addepar when classify in PDF.
Caddi watches PDF for classify and generate report in Addepar so the two systems stay in lockstep.
- 03
Extract in PDF from Addepar events.
When check transaction job status happens in Addepar, Caddi extract in PDF with the right context attached.
One continuous loop.
- 01Measure
Caddi watches how the work gets done today.
- 02Create
You screenshare it once. The loop ships.
- 03Improve
Caddi flags upgrades to existing loops and new automations to deploy.
Actions Caddi can take across Addepar and PDF
AddeparCheck job status
Returns the current status, progress, and metadata of a portfolio job Poll until status is terminal before calling AddeparDownloadJobResults.
AddeparCheck transaction job status
Returns the current status, progress, and metadata of a transaction job Poll until status is terminal before calling AddeparDownloadTransactionJobResults.
AddeparDownload file
Downloads a file binary from Addepar by file ID and persists it to S3 Returns the S3 object key for use by subsequent activities.
AddeparDownload generated report
Downloads 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).
AddeparDownload job results
Downloads the result file from a completed portfolio job and persists it to S3 Use after AddeparCheckJobStatus reports a terminal completed status.
AddeparDownload transaction job results
Downloads the result file from a completed transaction job and persists it to S3 Use after AddeparCheckTransactionJobStatus reports a terminal completed status.
AddeparFind arguments
Lists all shared Addepar argument definitions, or returns a specific argument by key Use to discover valid argument keys to pass into AddeparListAttributeArguments or AddeparRunPortfolioQuery.
AddeparFind attributes
Lists 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.
AddeparFind entity by external ID
Resolves 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.
AddeparFind generated reports
Lists 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.
AddeparFind groups
Lists 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…
AddeparGet entity
Returns the entity record including all standard attributes, custom attributes, and relationship references for a given entity ID.
AddeparGet group members
Lists all entity records that belong to a given group ID Use to expand a group into its constituent entities before per-entity operations.
AddeparGet snapshot
Retrieves a position snapshot record by ID, returning the owner/owned references and attributes captured at the snapshot's effective date.
AddeparGet transaction
Returns the full record for one Addepar transaction by ID.
AddeparList attribute arguments
Lists all argument definitions for a specific attribute Required when calling AddeparRunPortfolioQuery with attributes that take arguments (e.g., time periods, benchmarks).
AddeparList contacts for entity
Lists contact records linked to a given entity (e.g., trustees, advisors, beneficiaries) Returns emails and contact metadata for downstream Client Portal publishing or notifications.
AddeparList portfolio views
Returns 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.
AddeparList positions for entity
Lists position records held by a given entity Returns holdings detail (security id, units, market value) suitable for portfolio composition reporting.
AddeparList reports
Returns 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.
AddeparList transactions for entity
Lists 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.
AddeparSearch entities
Returns 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.
AddeparGenerate report
Initiates asynchronous generation of a saved report for one or more portfolios, returning a job ID.
AddeparPublish files to portal
Publishes one or more previously uploaded Addepar files to the Client Portal, optionally scoped to a portfolio and notifying associated contacts.
AddeparRun portfolio query
Runs a dynamic portfolio query with caller-supplied columns, groupings, date range, and portfolio reference Pair with AddeparFindAttributes for safe attribute/argument discovery.
AddeparRun portfolio view
Runs 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.
AddeparRun transactions query
Runs a dynamic transactions query with caller-supplied columns, groupings, date range, and portfolio reference.
AddeparRun transactions view
Runs a pre-configured transactions view by ID for a given portfolio over a date range, returning hierarchical transaction analysis results.
AddeparSubmit portfolio job
Submits a portfolio analytics job for asynchronous server-side processing, returning a job ID.
AddeparSubmit transaction job
Submits a transactions job for asynchronous server-side processing, returning a job ID.
AddeparUpload file
Uploads a file (previously written to S3 by another activity) into Addepar and optionally associates it with the supplied entity and group IDs.
- PDF
Classify
Classifies text content using AI with customizable classification types (language, tone, sentiment, topic, category), accepting content directly or automatically downloading from S3.
- PDF
Summarize
Summarizes text using AI with customizable style and length parameters, accepting content directly or from S3.
- PDF
Get form fields
Discovers all form fields in a PDF including field types, options, and validation rules.
- PDF
Document extract
Extracts text or structured fields from PDF documents and images stored in S3 Use mode "full_text" to extract all document text, or mode "schema" with a JSON Schema to extract specific named values…
- PDF
Extract
Extracts specified information from text using AI, accepting content directly or automatically downloading from S3.
- PDF
Extract data from PDF
Extracts specific field values from PDF documents using AWS Textract for OCR and LLM for intelligent field mapping, with automatic batching strategy for large schemas.
- PDF
Extract fields with OCR
Extracts specified field values from images (JPEG, PNG) and PDFs using AI-powered OCR with confidence scoring and validation, automatically downloading content from S3 (supports both full S3 keys a…
- PDF
Extract multiple fields
Extracts values for specified fields from text using AI, accepting content directly or from S3.
- PDF
Write
Generates written content using AI with customizable style, format, tone, length, language, purpose, and audience parameters, accepting content directly or automatically downloading from S3.
- PDF
Extract pages
Extracts one or more pages from a PDF stored in S3 and saves the result as a new PDF file in S3 Specify start_page and end_page (1-indexed, inclusive) to select the page range.
- PDF
Extract text
Extracts all text from PDFs with support for page ranges and maintains text structure.
- PDF
Fill form
Fills PDF form fields and automatically saves the completed PDF to S3 with optional flattening.
- PDF
Image to PDF
Downloads images from S3, converts them to a multi-page PDF with configurable page sizing, and uploads the result to S3.
- PDF
Merge documents
Downloads multiple PDFs from S3, merges them with optional page range selection, and uploads the merged PDF to S3 Set flatten_form_fields to true when merging PDFs with filled forms or signatures t…
- PDF
Text to PDF
Creates a PDF from text content with configurable formatting options (page size, margins, font size, bold text), and uploads the result to S3.
Common questions
How does Caddi connect Addepar and PDF?
Addepar and PDF just run together. All it takes is showing us how you use them — one screenshare, no workflow builder to wire up. Caddi turns the demo into a verified loop and runs it against Addepar and PDF end-to-end.
Do I need engineering help?
No. Whoever does the work today shows it once on a call. Caddi builds the loop. No code, no IT ticket.
Is my data safe?
Yes. Caddi is SOC 2 attested. The AI watches and builds the automation, but once the loop ships it runs deterministically — no model in the loop at runtime.
Can Caddi connect Addepar and PDF to other tools too?
Yes. Most Caddi loops span 3–6 tools. Once the first Addepar + PDF loop is live, Caddi suggests other tools and other workflows to fold in.
How fast can it go live?
Typical first loops ship within a week of the screenshare. The Caddi team reviews every loop before it runs in production.
Ready to automate Addepar and PDF?
Drop your work email and we'll show you Caddi running end-to-end against Addepar, PDF, and the rest of your stack.




