Thought Industries logo Thought Industries automation · runs weekly

Enroll new hires in Thought Industries courses

Every start date brings a spreadsheet of new hires, and an admin turns it into a CSV, uploads it and picks the onboarding content by hand.

Cotlet does it in your own Thought Industries account with list_courses, import_learners and list_content_actions, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Can Thought Industries do this on its own?

Thought Industries has a bulk import in the admin and a REST call, POST /incoming/v2/users/bulkImport, that takes the URL of a CSV file, an invite message and course IDs (checked 23 Oct 2026). Its help center says a bulk upload through the API needs developer support. Nothing lets an agent in Claude or n8n run the import from a prompt, and the announced MCP server cannot be connected today.

How you do it in Thought Industries today

  1. An admin goes to Users > Learners, clicks the blue gear icon, chooses Bulk Import Learners and clicks Download CSV Template.
  2. Each learner gets one row. firstName, lastName and email are required; optional columns include ref1 to ref10 and sendInvite (yes or no).
  3. Back in the platform, the admin clicks I've Downloaded and Filled in the Template, chooses the file, picks the content every learner in the batch should get and can write an invite message.
  4. After Next Step the admin reviews the errors, can upload the good rows only, and clicks That Looks Good.
  5. The import is queued, not instant. The admin checks the queue on the same Bulk Import page, and a file over 1,000 rows has to be split first.

How to enroll new hires in Thought Industries courses

Prompt

Import this week's new hires from the list below into Thought Industries, enroll them in the Onboarding 101 course and send the invite with this message.
  1. 01

    Find the onboarding content

    list_courses looks up the course by the title in your prompt and returns its content_id. If two titles match, the agent asks which one you mean before anything is sent.

  2. 02

    Clean the list

    Rows without a first name, last name or email are dropped and listed for you, because those three fields identify the learner. A list over 1,000 rows is cut into batches of 1,000.

  3. 03

    Import and invite

    import_learners sends each batch with the content_id and, if you ask for it, send_invite and your invite message. Content access can only be removed one learner at a time, so the call waits for your OK by default and shows the content it will assign.

  4. 04

    Check who got in

    The app queues the import, so the agent waits a few minutes and calls list_content_actions for type enrollment since the start of the run. Emails missing from that list are reported as still queued or failed.

  5. 05

    Leave existing learners alone

    Learners who already exist are imported without an invite, and the agent lists them, so nobody gets a second welcome email.

What you get back

Example data

Rows in your list: 14
Dropped: 2 (no email)
Imported: 12, invites sent to 12
Content: Onboarding 101
Enrolled after 5 minutes: 12 of 12
Already in the platform: 0

Other ways to ask

  • Every Monday, import the new hires from this spreadsheet and enroll them in Onboarding 101.
  • Import the list but send no invites, I will announce the academy myself.
  • Show me which rows would fail and import none.
  • Import this partner list and enroll everyone in the Product Basics webinar.

What Thought Industries allows, and what to know first

  • Thought Industries limits one bulk import CSV to 1,000 rows.
  • Learner invitations do not expire. To revoke one, disable the user and the invitation stops working.
  • If an imported learner already exists, no invitation is sent, whatever the sendInvite value says.
  • Bulk import can add courses, webinars, articles and single SCO content to existing learners. Learning paths, subscriptions and Panorama access can only be set for new learners.
  • When a Panorama is chosen in the import, the other content options disappear and the invitation uses the Panorama branding.

import_learners asks for your OK by default. To run it weekly without you, switch confirmation off for that tool in your dashboard.

Sources: Thought Industries Help: Importing New Learners in Bulk · Thought Industries Help: Updating Existing Learners in Bulk · Thought Industries Help: Managing Learners in Panorama · Thought Industries developer docs: Bulk Import

Call import_learners from a script

curl

curl -X POST https://cotlet.dev/api/v1/thought-industries/learners \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"learners":[{"first_name":"Priya","last_name":"Nair","email":"priya.nair@example.com"},{"first_name":"Tom","last_name":"Becker","email":"tom.becker@example.com"}],"content_ids":["8f2a1c34-5b6d-4e7f-9a01-2b3c4d5e6f70"],"send_invite":true,"invite_message":"Welcome to Northwind Academy. Start with Onboarding 101."}'

Example response

{
  "status": "queued",
  "learners": 2,
  "content": [
    "Onboarding 101"
  ],
  "invites": "sent"
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is thought_industries_write → import_learners. Example data.

Schedule it in n8n, Make, Zapier or cron

Thought Industries tools this automation uses

Cotlet Thought Industries tools used to enroll new hires in Thought Industries courses
Tool Parameters
list_courses query, cursor
import_learners learners, content_ids, send_invite, invite_message
list_content_actions since, until, type, source, content, learner, panorama, cursor
All 11 Thought Industries tools with descriptions

Frequently asked questions

Is it safe to connect Thought Industries to Cotlet?

Yes. You sign in to Thought Industries yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Thought Industries once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

Give your agent access to Thought Industries.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Thought Industries.