Academy enrollments (Sheets → Zapier/n8n → LearnWorlds)
LearnWorlds API is not available on the current plan, so enrollment actions are triggered by writing rows into a Google Sheet that Zapier/n8n watches.
Sheet
- •Configure defaults in
~/.config/skills/config.jsonunderacademy_enrollments:- •
account: Google account for Sheets access - •
sheet_id: Spreadsheet ID
- •
Example:
json
{
"academy_enrollments": {
"account": "you@example.com",
"sheet_id": "spreadsheet_id_here"
}
}
Tabs (actual names in the sheet):
- •
Dar acceso(append rows to grant access) - •
Quitar acceso - •
Añadir tag - •
Eliminar tag
Dar acceso columns (A:E):
- •
email,nombre,apellidos,producto,precio
Helpers
- •
Natural-language helper (best effort parser):
- •
scripts/enroll-nl "Enroll Nombre Apellidos (email@dom.com) in AI Expert precio 997"
- •
- •
Low-level helper (explicit args):
- •
scripts/enroll-grant-access.sh --email ... --nombre ... --apellidos ... --formacion "AI Expert" --precio 997 - •If not configured, pass
--accountand--sheet-idexplicitly.
- •
- •
List known product IDs seen in the sheet:
- •
scripts/enroll-list-products.sh - •If not configured, pass
--accountand--sheet-idexplicitly.
- •
Agent behavior
When the user asks in natural language to enroll someone:
- •Parse
email, full name, course name (e.g. "AI Expert"), optional price. - •Confirm parsed fields before appending the row (ask for explicit OK if any field is ambiguous).
- •Append a row to
Dar accesovia the helper. - •Reply with a short confirmation.
Avoid posting any sensitive data beyond the minimum necessary (email + course). Do not paste full sheet contents in chat.