---
title: "Connect LearnWorlds and Ontraport - APIANT.ai"
description: "When \"Assessment Completed\" fires in LearnWorlds, your agent runs \"Create or Update Contact\" in Ontraport."
canonical: "https://apiant.ai/connect/learnworlds-to-ontraport"
---

# Connect LearnWorlds and Ontraport

When **Assessment Completed** fires in [LearnWorlds](https://apiant.ai/connections/learnworlds), your agent runs **Create or Update Contact** in [Ontraport](https://apiant.ai/connections/ontraport), or **New Contact** in Ontraport to **Add Tags to User** in LearnWorlds. Describe the whole flow and it is built, tested on every scenario and kept running.

LearnWorlds **15** triggers LearnWorlds **15** actions Ontraport **5** triggers Ontraport **14** actions

What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.

## What do you want LearnWorlds and Ontraport to do together?

Give your AI client this address.

`https://mcp.apiant.ai`

One connection does both: ask your client to act in an app once, or have it build an automation that keeps running. Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.

### Set it up in your client

### Claude Code

Run this in the directory you want to work in.

`claude mcp add --transport http -s project apiant-ai https://mcp.apiant.ai`

Start Claude Code there, approve the server, and sign in in the browser page it opens.

[Claude Code guide (opens in a new tab)](https://apiant.ai/docs/mcp/claude-code)

### Claude, web and desktop

Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Cursor

Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Zed

Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Codex and the ChatGPT desktop app

Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Any other MCP client

Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

Example flows

## What LearnWorlds and Ontraport can do together

### From LearnWorlds to Ontraport

- When **Assessment Completed** in LearnWorlds then **Create or Update Contact** in Ontraport
- When **Course Completed** in LearnWorlds then **Create Task** in Ontraport

### From Ontraport to LearnWorlds

- When **New Contact** in Ontraport then **Add Tags to User** in LearnWorlds
- When **New or Updated Contact** in Ontraport then **Create and Enroll User (Legacy)** in LearnWorlds

Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.

Everything your agent can do with LearnWorlds and Ontraport

## Triggers and actions 20 triggers · 29 actions

- Trigger

**Assessment Completed**

Triggers when a learner submits a completed assessment, returning their grade, pass/fail result and answers.

- Trigger

**Course Completed**

Triggers when a user completes a course in your LearnWorlds school.

- Trigger

**New Certificate**

Triggers when a certificate is issued to a learner for a course (or for a specific user).

- Trigger

**New Certificate (Legacy)**

Triggers when a new certificate is issued for a course or a user in your LearnWorlds school.

- Trigger

**New Enrollment Purchase (Legacy)**

Triggers when a new enrollment purchase (payment for a course, bundle or subscription) is recorded in your LearnWorlds school.

- Trigger

**New Form Submission**

Triggers when a learner submits a response to the chosen LearnWorlds form.

- Trigger

**New Lead**

Triggers when a new lead submits their email in one of your school's lead capture forms.

- Trigger

**New Lead (Legacy)**

Triggers when a new lead submits their email in one of your school's lead capture forms.

- Trigger

**New User**

Triggers when a new user registers in your LearnWorlds school.

- Trigger

**New User (Legacy)**

Triggers when a new user signs up or is created in your LearnWorlds school.

- Trigger

**Payment Created**

Triggers when a new payment is made in your LearnWorlds school.

- Trigger

**Payment Failed**

Triggers when a payment fails in your LearnWorlds school, returning the failed-payment event with the user and its details.

- Trigger

**Subscription or Payment Plan Canceled**

Triggers when a user's subscription or payment plan becomes inactive (canceled or expired), newest users first.

- Trigger

**Subscription Updated**

Triggers when a user subscription is created or changes, such as a new status, plan or expiry date.

- Trigger

**User Updated**

Triggers when a user in your LearnWorlds school is changed (profile fields, tags, role, suspension and so on). Checks the 200 most recently registered users.

- Action

**Add Tags to User**

Adds one or more tags to a LearnWorlds user and returns the updated user.

- Action

**Create and Enroll User (Legacy)**

Creates a new LearnWorlds user and enrolls them in a course, bundle or subscription in one step.

- Action

**Create User**

Creates a new user in your LearnWorlds school and returns the created user.

- Action

**Create User (Legacy)**

Creates a new user in your LearnWorlds school with optional sign-up fields, tags and UTM values.

- Action

**Enroll User in Product**

Enrolls a user in a course, learning program (bundle) or subscription.

- Action

**Enroll User in Product (Legacy)**

Enrolls an existing user in a course, bundle or subscription.

- Action

**Find a User**

Finds a user in your LearnWorlds school by email address and returns their full record, including sign-up and custom fields.

- Action

**Get course**

Returns a course's details, including its title, description, prices, access type and author.

- Action

**Get user**

Returns a LearnWorlds user by ID or email, including sign-up fields, tags, UTMs and role.

- Action

**List bundles**

Returns all bundles in your LearnWorlds school, most recently created first.

- Action

**List payments**

Returns the school's payments, most recent first, optionally filtered by user, product, product type, affiliate or creation date.

- Action

**List users**

Returns the users of your LearnWorlds school, newest first, optionally filtered by status, role, tags or registration date.

- Action

**Remove Tags From User**

Removes one or more tags from a LearnWorlds user and returns the updated user.

- Action

**Unenroll User From Product**

Removes a user's enrollment from a course, bundle or subscription in your LearnWorlds school.

- Action

**Update user**

Updates a LearnWorlds user's email, username, marketing consent, admin status, profile fields, tags and UTM values, and returns the updated user.

- Trigger

**New Contact**

Polling trigger: fires for each newly created contact, newest first (sorted by creation date).

- Trigger

**New or Updated Contact**

Polling trigger: fires when a contact is created or modified, sorted by date last modified.

- Trigger

**New Task**

Polling trigger: fires for each newly created task (objectID 1), newest first.

- Trigger

**New Transaction**

Polling trigger: fires for each newly created transaction (objectID 46), newest first.

- Trigger

**Two-way sync new or updated contact**

A 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 Object**

Create 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 Contact**

Create 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 Task**

Create a Task object (objectID 1) in Ontraport.

- Action

**Delete Contact**

Delete a contact by its Ontraport ID.

- Action

**Delete Object**

Delete a record of any object type by objectID and id.

- Action

**Find Contact by Email**

Find 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 Contact**

Retrieve a single contact by its Ontraport ID.

- Action

**Get Object**

Retrieve a single record of any object type by objectID and id.

- Action

**List Contacts**

List contacts with optional search, range, and sort.

- Action

**List Objects**

List records of any object type with optional search and range.

- Action

**Remove Tag from Contact**

Remove a tag from one or more contacts.

- Action

**Tag Contact**

Add a tag to one or more contacts.

- Action

**Update Object**

Update 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.

## Each app on its own

- [ **LearnWorlds** LearnWorlds is a premium learning platform via which you sell online courses under your own website.](https://apiant.ai/connections/learnworlds)
- [ **Ontraport** Ontraport is an all-in-one CRM, marketing automation, and e-commerce platform.](https://apiant.ai/connections/ontraport)

Reviews

## What our customers say

## More from LearnWorlds

- [ **LearnWorlds to Salesforce** Salesforce is a leading enterprise customer relationship management (CRM) platform.](https://apiant.ai/connect/learnworlds-to-salesforce)
- [ **LearnWorlds to Slack** Slack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...](https://apiant.ai/connect/learnworlds-to-slack)
- [ **LearnWorlds to Mailchimp** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/learnworlds-to-mailchimp)
- [ **LearnWorlds to Stripe** Stripe is a payment processing platform for online businesses.](https://apiant.ai/connect/learnworlds-to-stripe)
- [ **LearnWorlds to Shopify** Shopify is a commerce platform for online stores and retail point-of-sale.](https://apiant.ai/connect/learnworlds-to-shopify)
- [ **LearnWorlds to QuickBooks Online** QuickBooks Online accounting — manage customers, invoices, bills, payments, vendors, expenses, and more via...](https://apiant.ai/connect/learnworlds-to-quickbooks-online)

## More into Ontraport

- [ **HubSpot to Ontraport** HubSpot is your all-in-one stop for all of your marketing software needs.](https://apiant.ai/connect/hubspot-to-ontraport)
- [ **Gmail to Ontraport** Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...](https://apiant.ai/connect/gmail-to-ontraport)
- [ **Mailchimp to Ontraport** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/mailchimp-to-ontraport)
- [ **ActiveCampaign to Ontraport** ActiveCampaign is a marketing automation, email marketing, and CRM platform.](https://apiant.ai/connect/activecampaign-to-ontraport)
- [ **Asana to Ontraport** Asana is a collaborative information manager for workspace.](https://apiant.ai/connect/asana-to-ontraport)
- [ **JIRA to Ontraport** Atlassian JIRA Cloud — issue tracking and project management.](https://apiant.ai/connect/jira-to-ontraport)

Questions

## LearnWorlds and Ontraport, answered

###

### What can start an automation from LearnWorlds?

Any of LearnWorlds's 15 triggers in the catalog, including Assessment Completed, Course Completed, New Certificate and New Certificate (Legacy). Describe the moment in plain language and your agent picks the right one.

###

### What can your agent do in Ontraport when something happens in LearnWorlds?

Any of Ontraport's 14 actions, including Create Object, Create or Update Contact, Create Task and Update Object. Your agent maps the data both ways and tests every scenario before it ships.

###

### Can it also run from Ontraport to LearnWorlds?

Yes. When something happens in Ontraport, your agent can act in LearnWorlds too. This page covers both directions: Ontraport's triggers and LearnWorlds's actions are listed here as well.

###

### Do I have to build a connector for LearnWorlds or Ontraport?

No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.

###

### Can my AI client use LearnWorlds and Ontraport without building an automation?

Yes. With your AI client connected to APIANT, ask it to do something in either app once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running. One connection covers both.

###

### What happens when something fails?

Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.

###

### Is there a free plan?

Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.
