Force custom questions on all registrations across a business

Description
We’re looking to introduce a mandatory verification question on all Zoom meeting registrations. This custom question will force users to enter a “Worker ID” so we can track who they are beyond their first name. At the moment we need to manually enter this custom question upon creating the meeting. People forget, human error, etc, which leads to us not understanding who is in the call. Is there a way of forcing this custom question everytime we enable registration? Potentially through an API?

Thanks,

Adam.

Hey @adam.racovalis, thanks for posting and using Zoom!

Unfortunately there is no setting to enable registration required + custom question for all meetings across your Zoom account.

However with the Zoom API, you can use the Meeting Created Webhook, to notify your server everytime a meeting is created, and then call the Update Registration Questions endpoint to set the custom questions automatically if they aren’t already set.

Does that make sense?

Thanks,
Tommy

Thanks for replying so quickly Tommy!

Yes I will give your solution a go. Cheers!

Hey Tommy,
I’ve been advised by our dev team that our architecture isn’t event based, so we don’t have a trigger. Do you know if there is another way we can track participants? Everytime we create an event we have to add a custom “ID” question but it would be awesome if that was just default.

Thanks

Hey @adam.racovalis,

Your architecture does not have to be event based as Zoom handles this and is the trigger. Here is how to accomplish what you want with a very simple Node.js / Express server:

require('dotenv').config()
const express = require('express')
const bodyParser = require('body-parser')

const app = express()
const port = process.env.PORT || 4000

app.use(bodyParser.json())

app.get('/', (req, res) => {
  res.send(`Webhook listening on port ${port}!`)
})

app.post('/webhook', (req, res) => {
  console.log(req.body)

  if (req.headers.authorization === process.env.verification_token) {
    res.status(200)
    res.send()

   // use the meetingId from "req" to make an http request to 
   // PATCHhttps://api.zoom.us/v2/meetings/{meetingId}/registrants/questions setting the custom questions

  } else {
    res.send('Unauthorized request to Webhook.')
  }
})

app.listen(port, () => console.log(`Webhook listening on port ${port}!`))

Thanks,
Tommy

Hi Tommy,

We have successfully patched custom questions to our meetings. Do you know if there is an API we can call to list the answers to the custom questions? Much like how we can call a participant report, but for each answer to the custom question.

Thanks.

Hey @adam.racovalis,

Happy to hear you are patching the custom questions to your meetings :slight_smile:

You can use the List Meeting Registrants endpoint to receive the answers to your custom questions per meeting.

Thanks,
Tommy