npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-qa3at

v1.1.2

Published

Open live classrooms on Qa3at, mint one-use entry tickets, and read recordings, transcripts and usage from an n8n workflow

Readme

n8n-nodes-qa3at

This is an n8n community node. It lets you use Qa3at in your n8n workflows.

Qa3at is a live classroom you open from your own software: video, audio, a shared whiteboard, a recording and a transcript. This package opens rooms, mints one-use entry tickets, reads what a class left behind, and starts a workflow the moment something happens inside a room.

Installation · Credentials · Operations · Trigger · Resources

Installation

Follow the installation guide in the n8n community nodes documentation.

On self-hosted n8n: Settings → Community nodes → Install, then enter n8n-nodes-qa3at.

Credentials

Create an API key in the developer panel at qa3at.online/en/developers and paste it into the Qa3at API credential. That is the only field.

A live key starts with q3_sk_live_ and a test key starts with q3_sk_test_. A test key opens real, working rooms and is never charged, so build your workflow with one first.

The credential is tested against GET /api/v1/account, so a wrong key is refused the moment you save it rather than in the middle of a run.

Operations

Room

  • Open — open a room and get back its entry links
  • Close — close a room and charge the class
  • Get — read one room by ID
  • Get Many — list rooms, with paging when Return All is on
  • Get Attendance — who was in the room, and for how long
  • Get Recording — the recording link, once it is ready
  • Get Transcript — the written transcript, once it is ready
  • Erase Personal Data — erase the names and your own user IDs of everyone who sat in a closed room, and kill its open link. Attendance minutes stay, because they were already billed.

Ticket

  • Create — mint a one-use entry ticket for a single person

Who enters as the teacher

Set Teacher Emails when you open a room, one line per teacher and up to 20. From then on the Email on the ticket settles the role in that room: a listed address enters as the host, everybody else enters as a student, whatever role the ticket asked for. A ticket with no email into such a room is refused with email_required, so nobody is quietly seated in the wrong chair, and the role the node hands back is the one that was granted rather than the one that was asked for. Leave the field empty and the room follows the ticket's own role, as before.

Account

  • Get — the account, its balance and its prices
  • Get Usage — usage over the last 30 days

Event

  • Get Many — read the event ledger, with paging when Return All is on

Trigger

The Qa3at Trigger node starts a workflow on any of eight events:

| Event | When it fires | | --- | --- | | room.opened | a room was opened | | room.closed | a room was closed and the class was charged | | room.recording | the recording is ready to download | | room.transcript | the transcript is written | | participant.joined | someone walked into a room | | participant.left | someone left a room | | balance.low | the balance dropped under the mark set on the account | | balance.empty | the balance ran out and no new room can be opened |

Activating the workflow registers the webhook on your Qa3at account, and deactivating it removes it again. You do not create anything by hand.

Two things worth knowing:

  • Every delivery is verified. Qa3at signs each one with HMAC-SHA256(secret, "<timestamp>.<body>") in a q3-signature header. The trigger checks that signature and refuses anything that fails it, or anything older than five minutes. A guessed webhook address cannot wake your workflow with news that never happened.
  • participant.left is late by nature. A browser never says goodbye when a tab is closed, so leaving is read from three minutes of silence — and the minutes are counted to the participant's last heartbeat, not to the moment we noticed.

Compatibility

Requires n8n 1.x or later and Node.js 20.15 or later. Tested against n8n-workflow 1.x and 2.x.

Resources

License

MIT