Add Meeting Registrant through API always gives "registration not enabled for this meeting"

Description
We are using the ZOOM REST API to create a meeting, and then try to add registrants to it.

I’ve specified that registration should not be required (approval_type=2), but it still errors with registration is required. If I look into the Zoom User’s dashboard, and see the meeting, then edit its options, I can see that the “Registration Required” checkbox is NOT checked, so I believe registration should not be required…

Please see all the options I’m passing to create a meeting and add a registrant here:

 // Create a meeting:

       $options = array(
            "topic" => $post->post_title,
            "agenda" => $post->post_title,
            "settings" => array(
                "approval_type" => 2,
                "waiting_room" => true,
                "contant_name" => "Host's name",
                "registrants_email_notification" => true,
                "meeting_authentication" => false
            )
        );

       _handle_request('POST', "/users/$hostZoomUserId/meetings", $options);

    // Add a registrant:

            $options = array(
                "email" => $user->user_email,
                "first_name" => $firstName,
                "last_name" => $lastName
            );

            _handle_request('POST', "/meetings/$meetingId/registrants", $options);

Error

[code] => 404
[message] => Registration has not been enabled for this meeting: 99905455559.

Which App Type (OAuth / Chatbot / JWT / Webhook)?
JWT REST API

Which Endpoint/s?
POST /users/$hostId/meetings
POST /meetings/$meetingId/registrants

How To Reproduce (If applicable)
Run above code.

Screenshots (If applicable)
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

Hey @rw3iss

Thanks for posting on the Zoom Devforum! I am still learning, but I will try my best to help answer your question. :slightly_smiling_face:

Checkout these related threads that may have the answer you are looking for:

If these threads did not help, please let us know by replying back here and someone from the Developer Relations team will get back to you shortly.

Thanks,
DeveloperBot

Suggestions did not help. I’ve been told if trying to add individual registrants normally, registration must be enabled. I’m trying to add any arbitrary email to the meeting to get a join link, but it’s my understanding Zoom will only generate one join link per meeting? Is there no way to retrieve a unique link per user?

Hey @rw3iss,

Can you please share the request body JSON and response JSON of the Create Meeting API request so I can try to reproduce the issue?

Thanks,
Tommy

Hi Tommy,

Sure, thank you. Here you go:

Create meeting request:

URL: ‘POST’, “/users/$hostZoomUserId/meetings”

{
   "topic":"",
   "agenda":"",
   "settings":{
      "approval_type":2,
      "registration_type":1,
      "waiting_room":true,
      "contact_name":"Host's name",
      "registrants_email_notification":false,
      "meeting_authentication":false
   }
}

Create meeting response:

{
   "uuid":"k\\/4WRYYmTzSplh9WD1XY7g==",
   "id":***********,
   "host_id":"fatIG55BREi3TNQ6FgtCjQ",
   "topic":"Zoom Meeting",
   "type":2,
   "status":"waiting",
   "start_time":"2020-08-11T16:22:04Z",
   "duration":60,
   "timezone":"America\\/Los_Angeles",
   "created_at":"2020-08-11T16:22:04Z",
   "start_url":"https:\\/\\/esupporthealth.zoom.us\\/s\\/98257869661?zak=",
   "join_url":"https:\\/\\/esupporthealth.zoom.us\\/j\\/98257869661?pwd=aUZ6Z3BJRkppbEJmdUlmUHMxdWFHQT09",
   "password":"467671",
   "h323_password":"467671",
   "pstn_password":"467671",
   "encrypted_password":"aUZ6Z3BJRkppbEJmdUlmUHMxdWFHQT09",
   "settings":{
      "host_video":false,
      "participant_video":true,
      "cn_meeting":false,
      "in_meeting":false,
      "join_before_host":false,
      "mute_upon_entry":false,
      "watermark":false,
      "use_pmi":false,
      "approval_type":2,
      "audio":"both",
      "auto_recording":"none",
      "enforce_login":false,
      "enforce_login_domains":"",
      "alternative_hosts":"",
      "close_registration":false,
      "registrants_confirmation_email":true,
      "waiting_room":true,
      "request_permission_to_unmute_participants":false,
      "global_dial_in_countries":[
         "US"
      ],
      "global_dial_in_numbers":[
         {
            "country_name":"US",
            "number":"+1 6465588656",
            "type":"toll",
            "country":"US"
         },
         {
            "country_name":"US",
            "number":"+1 3017158592",
            "type":"toll",
            "country":"US"
         },
         {
            "country_name":"US",
            "number":"+1 3126266799",
            "type":"toll",
            "country":"US"
         },
         {
            "country_name":"US",
            "number":"+1 6699009128",
            "type":"toll",
            "country":"US"
         },
         {
            "country_name":"US",
            "number":"+1 2532158782",
            "type":"toll",
            "country":"US"
         },
         {
            "country_name":"US",
            "number":"+1 3462487799",
            "type":"toll",
            "country":"US"
         }
      ],
      "registrants_email_notification":false,
      "meeting_authentication":false
   }
}

Just trying to determine if it’s possible to add arbitrary emails to a meeting, get a unique join url for them… without having to create Zoom users.

*This post has been edited to remove any meeting / webinar IDs

Hey @rw3iss,

You are passing in 2 for the approval_type which means no registration is required. To create a meeting with registration required you need to set approval_type to 0 or 1. Use the following request body JSON:

{
   "topic":"Test Registration",
    "type": 2,
    "start_time": "2020-10-11T20:30:17Z",
    "duration": 30,
    "settings":{
      "approval_type":0,
      "registration_type":1,
      "waiting_room":true,
      "contact_name":"Host's name",
      "registrants_email_notification":false,
      "meeting_authentication":false
   }
}

Then you can add registrants to get a unique join_url.

Thanks,
Tommy

Hi Tommy,

Thanks… I think I knew that, but that requires an actual Zoom user (with an account) to be created, correct? We’re trying to add arbitrary emails (ie. non-registered users) to get a unique url, but I suppose that isn’t possible.

Hey @rw3iss,

No, it does not. require an actual Zoom user. You can add any email you’d like and the user can join the meeting with or without a Zoom account. You can read more about meeting registration here:

Thanks,
Tommy

Ahhh, don’t know why I didn’t try to enable registration to begin with. Thought that implied needing actual Zoom users. Seems to work though. Thank you, Tommy!

1 Like

Happy to help! :slight_smile:

Thanks,
Tommy

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.