Zoom Events Pre-register ticket eMail OTP API

API Endpoint(s)

POST https://api.zoom.us/v2/zoom_events/events/{{eventId}}/tickets


Description

When I add a registration via API to a ticket type that uses Email + OTP authentication only, the displayed authentication method is:
“Sign in with a Zoom account”
instead of
“Authenticate via email verification code”.

Manually added users, however, are correctly set to “Authenticate via email verification code”.


Error?

No technical error occurs, but the behavior is unexpected: the authentication method does not match the ticket configuration.


How To Reproduce

  1. Request URL:
    POST https://api.zoom.us/v2/zoom_events/events/{{eventId}}/tickets

  2. Headers:

    • Authorization: Bearer <token>

    • Content-Type: application/json

  3. Body (simplified example):

    {
        "tickets": [
            {
                "first_name": "Mario",
                "last_name": "Rossi",
                "email": "{{eMail}}",
                "ticket_type_id": "{{ticketTypeId}}"
            }
        ]
    }
    
  4. Authentication method / App type:

    • OAuth app with Zoom Events scopes

    • Ticket configured for Email + OTP

  5. Observed behavior:

    • User added via API → “Sign in with a Zoom account”

    • User added manually → “Authenticate via email verification code”


Question: How can I ensure that registrants added via API use the correct authentication method (Email + OTP), just like manually added users?

Hi @br1
Thanks for reaching out to us and welcome to the Zoom Developer forum!
I am happy to help here!
Can you please clarify how are you creating the ticket and if you are doing this via API, can you please share the request body you are using so I can troubleshoot this on my end

Hello @elisa.zoom

yes, i use the API to create the ticket, and this is the request body:

{
"tickets": [
{
"first_name": "Mario",
"last_name": "Rossi",
"email": "{{eMail}}",
"ticket_type_id": "{{ticketTypeId}}"
}
]
}

this is the request url:

POST /v2/zoom_events/events/{{eventId}}/tickets

Thanks

I’ve had exactly the same error, resulting in having to re-add a very large number of registrants again manually to be able to select Email OTP.

Hey @br1
Sorry for the late reply here!
I did not get a notification and did not see your response in the thread.
When you created the ticket type, did you do this manually or via API? I am trying to reproduce this on my end so I would like to learn how did you create the ticket and how did you setup the ticket for email + OTP

Hello, on our end, the ticket type was created manually, but the ticket issued with API.

The ticket type was created manually; pre-registration via API, thanks.