Build it
What do you want Ontraport and Frihet to do together?
Describe it and your agent reads both APIs, builds the automation, tests every branch and ships it. The list below is what exists today, not the limit.
Ask the assistant
You'll sign in before anything runs. What you typed comes with you.
Or work from Claude Code
Install the APIANT plugin for Claude Code and build, edit, test and read run history from your terminal. Every plan gets this, including free, and it spends no assistant credits.
Connect Claude CodeEverything your agent can do with Ontraport and Frihet
Triggers and actions 6 triggers · 51 actions
Trigger
New ContactPolling trigger: fires for each newly created contact, newest first (sorted by creation date).
Trigger
New or Updated ContactPolling trigger: fires when a contact is created or modified, sorted by date last modified.
Trigger
New TaskPolling trigger: fires for each newly created task (objectID 1), newest first.
Trigger
New TransactionPolling trigger: fires for each newly created transaction (objectID 46), newest first.
Trigger
Two-way sync new or updated contactA trigger for two-way syncing new and updated contacts, with enhanced on-the-fly mapping. Polls Ontraport Contacts sorted by date-last-modified descending; fires for each new or updated contact.
Action
Create ObjectCreate a record of any Ontraport object type. Provide objectID and a JSON of fields. Note: Ontraport DROP (dropdown) custom fields fail OPEN — sending a value that is not one of the field's defined options returns HTTP 200 and silently discards it, leaving the field unset. Verify a dropdown value landed by reading the record back.
Action
Create or Update ContactCreate a new contact, or merge into an existing one matched by email (Ontraport saveorupdate). Note: Ontraport DROP (dropdown) custom fields fail OPEN — sending a value that is not one of the field's defined options returns HTTP 200 and silently discards it, leaving the prior value in place. Verify a dropdown value landed by reading the record back.
Action
Create TaskCreate a Task object (objectID 1) in Ontraport.
Action
Delete ContactDelete a contact by its Ontraport ID.
Action
Delete ObjectDelete a record of any object type by objectID and id.
Action
Find Contact by EmailFind a contact by exact email match. Returns the first matching record.
Action
Find contact by field (Go only has Find Contact by Email — covers email lookup only, not arbitrary field)Returns the details for a contact if the specified field matches the specified value. Throws an error if zero or multiple match.
Action
Get ContactRetrieve a single contact by its Ontraport ID.
Action
Get ObjectRetrieve a single record of any object type by objectID and id.
Action
List ContactsList contacts with optional search, range, and sort.
Action
List ObjectsList records of any object type with optional search and range.
Action
Remove Tag from ContactRemove a tag from one or more contacts.
Action
Tag ContactAdd a tag to one or more contacts.
Action
Update ObjectUpdate a record of any Ontraport object type by ID. Note: Ontraport DROP (dropdown) custom fields fail OPEN — sending a value that is not one of the field's defined options returns HTTP 200 and silently discards it, leaving the prior value in place. Verify a dropdown value landed by reading the record back.
Trigger
New ExpenseFires when a new expense is created. Backed by vendor webhook registration (POST /v1/webhooks, event=expense.created).
Action
Add ClientCreate a client. POST /v1/clients
Action
Add DepositCreate a deposit. POST /v1/deposits
Action
Add ExpenseCreate an expense. POST /v1/expenses
Action
Add InvoiceCreate an invoice. POST /v1/invoices
Action
Add ProductCreate a product. POST /v1/products
Action
Add QuoteCreate a quote. POST /v1/quotes
Action
Add VendorCreate a vendor. POST /v1/vendors
Action
Apply deposit to invoiceApply a deposit balance to an invoice. POST /v1/deposits/{depositId}/apply
Action
Delete ClientDelete a client. DELETE /v1/clients/{clientId}
Action
Delete ExpenseDelete an expense. DELETE /v1/expenses/{expenseId}
Action
Delete InvoiceDelete an invoice. DELETE /v1/invoices/{invoiceId}
Action
Delete ProductDelete a product. DELETE /v1/products/{productId}
Action
Delete QuoteDelete a quote. DELETE /v1/quotes/{quoteId}
Action
Delete VendorDelete a vendor. DELETE /v1/vendors/{vendorId}
Action
Get ClientRetrieve a client by id. GET /v1/clients/{clientId}
Action
Get DepositRetrieve a deposit by id. GET /v1/deposits/{depositId}
Action
Get ExpenseRetrieve an expense by id. GET /v1/expenses/{expenseId}
Action
Get InvoiceRetrieve an invoice by id. GET /v1/invoices/{invoiceId}
Action
Get ProductRetrieve a product by id. GET /v1/products/{productId}
Action
Get QuoteRetrieve a quote by id. GET /v1/quotes/{quoteId}
Action
Get VendorRetrieve a vendor by id. GET /v1/vendors/{vendorId}
Action
List ClientsList clients. GET /v1/clients
Action
List DepositsList deposits. GET /v1/deposits
Action
List ExpensesList expenses. GET /v1/expenses
Action
List InvoicesList invoices. GET /v1/invoices
Action
List ProductsList products. GET /v1/products
Action
List QuotesList quotes. GET /v1/quotes
Action
List VendorsList vendors. GET /v1/vendors
Action
Mark invoice as paidMark an invoice as paid. POST /v1/invoices/{invoiceId}/paid
Action
Send InvoiceSend invoice by email to the client. POST /v1/invoices/{invoiceId}/send
Action
Send QuoteSend quote by email to the client. POST /v1/quotes/{quoteId}/send
Action
Update ClientPartial update a client. PATCH /v1/clients/{clientId}
Action
Update ExpensePartial update an expense. PATCH /v1/expenses/{expenseId}
Action
Update InvoicePartial update an invoice. PATCH /v1/invoices/{invoiceId}
Action
Update ProductPartial update a product. PATCH /v1/products/{productId}
Action
Update QuotePartial update a quote. PATCH /v1/quotes/{quoteId}
Action
Update VendorPartial update a vendor. PATCH /v1/vendors/{vendorId}
No trigger or action matches that. Ask your agent to add it: it reads the API documentation and builds what you describe.