Skip to main content
Coraltalk integrates with Moodle in two complementary ways: Use LTI for launch/SSO and REST for content and grades. Most schools enable both.

Integration benefits

Single sign-on

Teachers and students launch Coraltalk from Moodle without a second login

Grade push-back

Oral assessment scores can sync to an existing point-graded Moodle assignment

Knowledge library

Import supported Moodle course files into your Coraltalk class materials

Roster linking

Match Moodle enrollments to Coraltalk students by email, login ID, or username

Setup overview

Launch Coraltalk from Moodle
  • No separate Coraltalk password for students
  • Requires Moodle site admin to create an LTI Advantage External tool
  • Teacher registers the Moodle site + client ID in Coraltalk Integrations
See LTI 1.3 setup below.

Who should set this up?

Best for: School-wide or multi-course deploymentsAdmins create the LTI Advantage External tool and (optionally) a shared web service for REST. Teachers then register the tool in Coraltalk and connect courses.
Best for: Pilots and single-class useTeachers can connect REST with a token for their enrolled courses. LTI usually still needs a Moodle admin to create the External tool once.

Prerequisites

1

Coraltalk teacher account

Sign in at app.coraltalk.com and create (or open) the class students should land in.
2

Moodle access

Site admin access for LTI tool creation; teacher or service account for REST tokens.
3

Public Coraltalk URL

Your Coraltalk environment must be reachable from Moodle (production or staging). Localhost-only URLs will not work for school Moodle sites.

LTI 1.3 setup (Moodle admin)

Step A — Create the External tool in Moodle

1

Open Manage tools

Go to Site administration → Plugins → Activity modules → External tool → Manage tools
2

Configure a tool manually

Choose configure a tool manually (LTI 1.3 / LTI Advantage).
3

Enter Coraltalk URLs

Replace {BASE_URL} with your Coraltalk app URL (for example https://app.coraltalk.com):
4

Share name and email

Under privacy / share launcher options, enable name and email. Coraltalk needs email to create or link accounts.
5

Save and copy Client ID

Save the tool and copy the Client ID. You will paste it into Coraltalk next.
Issuer is your Moodle site URL exactly as Moodle sends it (for example https://moodle.school.edu or https://school.edu/moodle). Include any subdirectory.

Step B — Register Moodle in Coraltalk

1

Open the class

Sign in as a teacher and open the Coraltalk class students should use.
2

Open Integrations

Go to Integrations and find Moodle LTI 1.3 Launch.
3

Register the platform

  1. Copy the tool URLs if you still need them for Moodle
  2. Click Register Moodle platform
  3. Enter:
    • Moodle site URL (issuer) — must match Moodle’s iss
    • Client ID — from Moodle Step A
  4. Save
Which class do students see?
Students who launch this Moodle tool are enrolled into the Coraltalk class that was active when the teacher registered the Moodle LTI platform. Register from the correct class first. Re-register from another class if you need to change the mapping.

Step C — Add the tool to a Moodle course

1

Add an External tool activity

In a Moodle course: Add an activity or resource → External tool
2

Select Coraltalk

Choose the preconfigured Coraltalk tool and save.
3

Test launch

Open the activity as a teacher, then as a student. Each should land in Coraltalk signed in automatically.

Student experience (LTI)

1

Open Coraltalk in Moodle

Student clicks the External tool activity in their Moodle course.
2

SSO handoff

Moodle and Coraltalk complete an LTI 1.3 / OpenID Connect handoff. No Coraltalk password is required.
3

Land in the mapped class

The student is enrolled into the Coraltalk class linked to that Moodle LTI registration and sees that class home.
Launch opens Coraltalk in a full browser page (it breaks out of the Moodle iframe), same as Canvas LTI.

REST web services setup

Use REST for course files, roster matching, and grade push-back.

Moodle admin checklist

1

Enable web services

Site administration → Advanced features: enable Web services and REST protocol.
2

Create an external service

Site administration → Server → Web services → External services
  1. Add a custom service (for example Coraltalk)
  2. Optionally enable Authorized users only
  3. Add the required functions below
3

Required functions

Optional for faster bulk grade sync: mod_assign_save_grades
4

Create a dedicated Moodle user

Use a teacher or service account enrolled in the courses you want to sync, with permission to view content and grade assignments.
5

Generate a token

Site administration → Server → Web services → Manage tokensSelect the user and external service, generate the token, and copy it once (Moodle will not show it again).
Give the teacher:
  • Moodle base URL (include subdirectory if needed)
  • Token

Connect in Coraltalk (teachers)

1

Open Integrations or Knowledge Library

In your class: Integrations → Connect with Moodle, or Customize → Knowledge Library → Moodle.
2

Paste URL and token

Enter the Moodle site URL and web service token, then connect.
3

Link a course

Choose the Moodle course for this Coraltalk class.
4

Sync roster and materials

Match students and import supported files (PDF, DOCX, PPTX, TXT, DOC).
5

Link grades (optional)

Link an oral exam to an existing point-graded Moodle assignment, then push grades manually, in bulk, or automatically after evaluation.
Moodle REST integration does not create new Moodle assignments. Select an existing assignment that uses point grading.

Grade sync behavior (REST)

LTI Assignment and Grade Services (AGS) are not used for Moodle today — use REST for grades.

Troubleshooting

Check:
  1. Moodle External tool URLs match your Coraltalk {BASE_URL}
  2. Platform is registered under Integrations → Moodle LTI 1.3 Launch
  3. Issuer (Moodle site URL) matches exactly what Moodle sends
  4. Share launcher name and email are enabled on the Moodle tool
  5. Student is enrolled in the Moodle course
Solution: Launch as the teacher first. If that works, verify student enrollment and privacy settings.
Students land in the class that was active when Moodle LTI was registered.Solution: Open the correct Coraltalk class → Integrations → re-register / update the Moodle LTI platform so default mapping points at that class.
The Moodle external service is missing one of the required REST functions listed above.Solution: Edit the external service in Moodle and add every required function, then reconnect in Coraltalk.
Check:
  1. REST Moodle connection is active for the class
  2. Exam is linked to an existing point-graded Moodle assignment
  3. Student is linked to a Moodle user ID
  4. Token user can grade the assignment
Solution: Use manual grade sync from Coraltalk, then fix linking if some students fail.
Token was revoked, regenerated, or belongs to a different service/user.Solution: Generate a new token in Moodle and reconnect in Coraltalk.

Support

Need help with Moodle integration?

Contact support@coraltalk.com with:
  • Your Moodle site URL
  • School name
  • Whether you are setting up LTI, REST, or both
  • Error messages or screenshots

Canvas integration

Canvas LTI and REST setup

Troubleshooting

Common issues and fixes

For teachers

Teacher onboarding guide

Oral assignments

Create and manage oral assessments