Three service credentials for the hosted setup.
For the public hosted relay, ClassSync only needs a Fireflies API key, a Gemini API key and a Notion integration token. The app discovers the relay registration mode automatically; the hosted relay is open for account creation, so there is no separate ClassSync setup token to obtain.
0. Install ClassSync
Use a published GitHub release
Download the Windows installer or Android APK from the public ClassSync releases page. Published releases also include SHA-256 checksums.
1. Fireflies API key
Open Developer settings
In Fireflies, open Settings → Personal → Developer settings and copy your API key.
2. Gemini API key
Create a key in Google AI Studio
Create or copy a Gemini API key for the project you want ClassSync to use, then keep it ready for the Gemini step.
3. Notion template + integration token
Duplicate the ClassSync template
Duplicate the ClassSync Notion template into your own workspace. It contains the subject and summary databases expected by the app.
Create an internal Notion integration
Create an internal Notion integration, copy its token, then share the copied ClassSync template page/databases with that integration. ClassSync can only discover databases the integration is allowed to access.
4. Finish the nine-screen wizard
- Welcome: review what you need, or choose Use recovery code if this is an additional device for an existing account.
- Relay: keep the hosted relay selected for the normal setup. ClassSync detects whether a relay uses
open,inviteortokenregistration. Only custom relays may ask for a code. - Account: enter the owner's display name, create the private ClassSync account and save the recovery code.
- Fireflies: paste and test the API key. ClassSync also shows the account-specific Webhooks V2 URL and signing secret.
- Gemini: paste and test the API key and choose the summary model.
- Notion: paste the token, discover the shared databases and select
Lista de CadeirasplusHistórico de Resumos. - Academic: leave ISEP Portal and Moodle off unless you use them. The lecture summary pipeline, local tasks, and manual evaluations remain available.
- Automation: choose notification and platform background-processing preferences.
- Ready: review the verified connections before the first sync.
5. Configure the Fireflies webhook
Use the exact account-specific URL and signing secret shown by ClassSync in Fireflies Webhooks V2. Subscribe only to meeting.transcribed. Each ClassSync account gets its own webhook values.
Optional academic connections
ISEP Portal and Moodle are off by default for new accounts. Turn them on in the Academic step, or later under Settings → Connections → Use ISEP Portal and Moodle. Turning them off hides imported sections and data and stops refreshes; local tasks and manual evaluations stay available. Existing accounts keep their enabled setting after upgrading. Portal data stays in the local offline cache and does not pass through the ClassSync relay. Moodle stores the exchanged app token rather than the submitted password.
Notion database requirements
- Lista de Cadeiras:
Nome(orName),Ano,Semestre,Status. - Histórico de Resumos:
Nome,Data,Cadeira. - Only subjects whose
StatusisIn progressare classification candidates.
Fireflies ID rich-text property. It makes reconciliation safer across devices and interrupted publishes.Class identification and retries
Under Settings → AI & summaries, choose whether Gemini should identify classes automatically. Turning it off makes new lectures wait for your manual choice. You can change an identified class later; ClassSync updates its owned content on the same Notion page instead of creating a duplicate.
Moving to another device
Choose Use recovery code on Welcome. Recovery restores the encrypted shared configuration for that account, including configured Fireflies sources, Gemini/Notion keys and academic credentials when present in the synced snapshot. It does not require an invite or registration token.
For an account on a self-hosted relay, expand Custom relay and enter the existing relay URL before recovering. Full transcripts and generated summaries are not copied between devices; bounded status and Notion-link metadata are.
App updates
The current source includes public GitHub-release update checks. On releases that contain this feature, ClassSync checks when the app opens and exposes Settings → App updates & widget. Public release checks normally require no GitHub token. If GitHub rate-limits a device, you can optionally provide a fine-grained token with only Contents: read; it stays in OS secure storage on that device.
When you accept an available update, ClassSync downloads the matching installer or APK, verifies the published SHA-256 checksum and starts the platform installer. Android still requires normal system approval for sideloaded APK updates.