---
title: "Connect Harpoon and LearnWorlds - APIANT.ai"
description: "When \"New Client\" fires in Harpoon, your agent runs \"Add Tags to User\" in LearnWorlds, or \"Assessment Completed\" in LearnWorlds to \"Add Invoice\" in Harpoon."
canonical: "https://apiant.ai/connect/harpoon-to-learnworlds"
---

# Connect Harpoon and LearnWorlds

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

Harpoon **9** triggers Harpoon **46** actions LearnWorlds **15** triggers LearnWorlds **15** actions

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

## What do you want Harpoon and LearnWorlds 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 Harpoon and LearnWorlds can do together

### From Harpoon to LearnWorlds

- When **New Client** in Harpoon then **Add Tags to User** in LearnWorlds
- When **New Contact** in Harpoon then **Create and Enroll User (Legacy)** in LearnWorlds

### From LearnWorlds to Harpoon

- When **Assessment Completed** in LearnWorlds then **Add Invoice** in Harpoon
- When **Course Completed** in LearnWorlds then **Add Lead Source** in Harpoon

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 Harpoon and LearnWorlds

## Triggers and actions 24 triggers · 61 actions

- Trigger

**New Client**

Triggered when a new client is created in Harpoon.

- Trigger

**New Contact**

Triggered when a new contact is created in Harpoon.

- Trigger

**New Expense**

Triggered when a new expense is created in your Harpoon account.

- Trigger

**New Expense Category**

Triggered when a new expense category is created in Harpoon.

- Trigger

**New Invoice**

Triggered when a new invoice is created in Harpoon.

- Trigger

**New Payment**

Triggered when a new payment is recorded in your Harpoon account.

- Trigger

**New Project**

Triggered when a new project is created in Harpoon.

- Trigger

**New Task Category**

Triggered when a new task category is added in your Harpoon account.

- Trigger

**New Time Entry**

Triggered when a new time entry is logged in Harpoon.

- Action

**Add Credit Entry**

Creates a new credit entry on a client's account in Harpoon, recording an amount, a date and an optional note or originating invoice. Returns the credit entry that was created.

- Action

**Add Invoice**

Creates a new invoice in Harpoon for a client or project, with an invoice number, issue date, and optional line items. Returns the invoice that was created.

- Action

**Add Lead Source**

Creates a new lead source in Harpoon, so new clients can be tagged with where they came from. Returns the lead source that was created.

- Action

**Add Note**

Adds a note to a client, project or invoice in Harpoon. Returns the note that was created.

- Action

**Add Team**

Creates a new team in your Harpoon account. Harpoon populates the new team from your account details; the API accepts no team attributes on creation.

- Action

**Clone Time Entry**

Creates a copy of an existing time entry in Harpoon. The copy keeps the original's project, task and description, and starts with today's date and zero hours logged.

- Action

**Create Contact**

Creates a contact person under a Harpoon client, with their name, email address, and phone number. Returns the contact that was created.

- Action

**Create Expense**

Records a one-off expense in Harpoon with its date, amount, and vendor, optionally attributed to a client, project, or expense category. Returns the expense that was created.

- Action

**Create Expense Category**

Creates a new expense category in your Harpoon account so expenses can be grouped under it.

- Action

**Create Project**

Creates a project in Harpoon for a client, with its budget, rate, and start and end dates. Returns the project that was created.

- Action

**Create Time Entry**

Logs hours worked in Harpoon for a team member on a given date, optionally against a client or project. Returns the time entry that was created.

- Action

**Delete Client**

Deletes a client from your Harpoon account.

- Action

**Delete Expense**

Permanently deletes an expense from your Harpoon account.

- Action

**Delete Invoice**

Permanently removes an invoice from Harpoon. Returns Harpoon's confirmation that the invoice was deleted.

- Action

**Delete Note**

Deletes a note from your Harpoon account.

- Action

**Delete Recurring Expense**

Deletes a recurring expense template from Harpoon by its id, so it stops generating new expenses.

- Action

**Delete Recurring Invoice**

Stops and removes a recurring invoice schedule in Harpoon so it no longer generates invoices. Returns Harpoon's confirmation that it was deleted.

- Action

**Delete Time Entry**

Deletes a time entry from your Harpoon account.

- Action

**Get Client**

Returns a single client from your Harpoon account, including its name, contact details and other stored attributes.

- Action

**Get Client Credits**

Returns a client's credit entries in Harpoon, along with the credit still available on the account.

- Action

**Get Contact**

Returns a single Harpoon contact, including their name, email address, phone number, and the client they belong to.

- Action

**Get Estimate**

Returns a single estimate from your Harpoon account, including its client, line items, totals and status.

- Action

**Get Expense**

Returns a single expense from your Harpoon account, including its amount, date, vendor, category and the client or project it is attached to.

- Action

**Get Expense Category**

Returns a single Harpoon expense category with every detail it carries, including its name and budget settings.

- Action

**Get Invoice**

Fetches one invoice from Harpoon by its id, with its client, line items and payment totals. An error occurs if the invoice is not found.

- Action

**Get Lead Source**

Returns a single lead source from your Harpoon account.

- Action

**Get Project**

Returns a single project from your Harpoon account, including its client, budget and status.

- Action

**Get Recurring Expense**

Fetches one recurring expense template from Harpoon by its id, with its vendor, amount, frequency and schedule. An error occurs if it is not found.

- Action

**Get Recurring Invoice**

Returns a single recurring invoice schedule from Harpoon, including its client, frequency, dates, and line items.

- Action

**Get Task**

Returns a single task category from your Harpoon account, including its name and hourly rate.

- Action

**Get Team**

Returns a single team from your Harpoon account, including its name, email address, phone, address, owner and whether it is active.

- Action

**Get Time Entry**

Returns a single tracked time entry from your Harpoon account, including its date, hours, client, project and notes.

- Action

**List Contacts**

Returns the contacts in your Harpoon account, including each contact's name, email address and phone number.

- Action

**List Estimates**

Returns the estimates in a Harpoon account, optionally narrowed to a year, client, project, status, or search text.

- Action

**List Expense Categories**

Returns the expense categories set up in Harpoon, each with its budget settings.

- Action

**List Expenses**

Returns the expenses in your Harpoon account, optionally narrowed by date range, client, project, category, billing status or search text.

- Action

**List Invoices**

Returns the invoices in your Harpoon account, optionally narrowed by year, client, project, status or a search term.

- Action

**List Projects**

Returns the projects in a Harpoon account, with their client, budget, rate, and dates.

- Action

**List Teams**

Returns the teams in your Harpoon account, along with the total number of teams found.

- Action

**List Time Entries**

Returns time entries from your Harpoon account — either the timers running now or logged history for a date range — optionally narrowed by client, project, task, team member or billing status.

- Action

**Update Expense**

Updates an existing expense in your Harpoon account. Only the values you supply are changed.

- Action

**Update Invoice**

Updates an existing invoice in your Harpoon account. Only the values you supply are changed.

- Action

**Update Project**

Updates an existing project in Harpoon — its name, client, billing type, status, dates, budget and task rates. Returns the updated project.

- Action

**Update Recurring Expense**

Updates a recurring expense in Harpoon — its vendor, amount, frequency, category, dates, and status. Anything left blank keeps its current value. Returns the updated recurring expense.

- Action

**Update Recurring Invoice**

Updates an existing recurring invoice template in your Harpoon account. Only the values you supply are changed.

- Action

**Update Time Entry**

Updates an existing time entry in Harpoon — its date, hours, description, project, task or billing state.

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

## Each app on its own

- [ **Harpoon** Harpoon is a financial planning, scheduling, time-tracking, invoicing, and budgeting platform for...](https://apiant.ai/connections/harpoon)
- [ **LearnWorlds** LearnWorlds is a premium learning platform via which you sell online courses under your own website.](https://apiant.ai/connections/learnworlds)

Reviews

## What our customers say

## More from Harpoon

- [ **Harpoon to Bugcrowd** Bugcrowd API for interacting and tracking the reported issues programmatically](https://apiant.ai/connect/harpoon-to-bugcrowd)
- [ **Harpoon to HubSpot** HubSpot is your all-in-one stop for all of your marketing software needs.](https://apiant.ai/connect/harpoon-to-hubspot)
- [ **Harpoon to Salesforce** Salesforce is a leading enterprise customer relationship management (CRM) platform.](https://apiant.ai/connect/harpoon-to-salesforce)
- [ **Harpoon to Slack** Slack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...](https://apiant.ai/connect/harpoon-to-slack)
- [ **Harpoon to Google Sheets** Google Sheets is Google's online spreadsheet app for creating, editing and sharing spreadsheets.](https://apiant.ai/connect/harpoon-to-google-sheets)
- [ **Harpoon to Gmail** Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...](https://apiant.ai/connect/harpoon-to-gmail)

## More into LearnWorlds

- [ **HubSpot to LearnWorlds** HubSpot is your all-in-one stop for all of your marketing software needs.](https://apiant.ai/connect/hubspot-to-learnworlds)
- [ **Google Sheets to LearnWorlds** Google Sheets is Google's online spreadsheet app for creating, editing and sharing spreadsheets.](https://apiant.ai/connect/google-sheets-to-learnworlds)
- [ **Gmail to LearnWorlds** Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...](https://apiant.ai/connect/gmail-to-learnworlds)
- [ **Google Calendar to LearnWorlds** Google Calendar is a time management tool providing scheduling features, event reminders, and integration...](https://apiant.ai/connect/google-calendar-to-learnworlds)
- [ **Google Drive to LearnWorlds** Google Drive is a cloud storage solution for uploading, sharing, and collaborating on files across devices...](https://apiant.ai/connect/google-drive-to-learnworlds)
- [ **ActiveCampaign to LearnWorlds** ActiveCampaign is a marketing automation, email marketing, and CRM platform.](https://apiant.ai/connect/activecampaign-to-learnworlds)

Questions

## Harpoon and LearnWorlds, answered

###

### What can start an automation from Harpoon?

Any of Harpoon's 9 triggers in the catalog, including New Client, New Contact, New Expense and New Expense Category. Describe the moment in plain language and your agent picks the right one.

###

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

Any of LearnWorlds's 15 actions, including Create and Enroll User (Legacy), Create User, Create User (Legacy) and Update user. Your agent maps the data both ways and tests every scenario before it ships.

###

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

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

###

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

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 Harpoon and LearnWorlds 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.
