You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Zoom API获取recurring webinar参会者/注册者遇错,求指导

解决循环Webinar调用Zoom API获取参会者数据的问题

问题根源

普通Webinar可直接用Webinar ID调用接口,但循环Webinar的每个场次都有独立的场次标识符(occurrence_id),必须同时传入原Webinar ID和occurrence_id才能正确获取对应场次的参会者/注册者数据,仅用原Webinar ID会触发「Webinar ID不存在」的错误。

获取occurrence_id的步骤

  1. 调用Zoom API的「列出循环Webinar场次」接口,接口路径:

    GET /webinars/{webinarId}/occurrences
    

    其中{webinarId}为你原本使用的循环Webinar的ID。

  2. 接口响应中,每个场次对象(occurrence)的id字段就是该场次的occurrence_id,同时响应还会包含场次的开始/结束时间等信息,方便匹配目标场次。

调用参会者/注册者接口的正确方式

拿到occurrence_id后,在调用获取参会者或注册者的接口时,需将occurrence_id作为查询参数传入:

获取参会者示例

接口路径:

GET /webinars/{webinarId}/participants?occurrence_id={occurrenceId}

获取注册者示例

接口路径:

GET /webinars/{webinarId}/registrants?occurrence_id={occurrenceId}

代码示例(Python)

import requests

# 配置参数
ZOOM_API_TOKEN = "your_api_token_here"
WEBINAR_ID = "your_recurring_webinar_id"

# 1. 获取循环场次的occurrence_id
occurrences_url = f"https://api.zoom.us/v2/webinars/{WEBINAR_ID}/occurrences"
headers = {"Authorization": f"Bearer {ZOOM_API_TOKEN}"}

response = requests.get(occurrences_url, headers=headers)
occurrences = response.json().get("occurrences", [])

# 筛选已结束的目标场次occurrence_id
target_occurrence_id = None
for occ in occurrences:
    if occ.get("status") == "completed":
        target_occurrence_id = occ.get("id")
        break

if not target_occurrence_id:
    print("未找到已结束的循环场次")
    exit()

# 2. 获取该场次的参会者数据
participants_url = f"https://api.zoom.us/v2/webinars/{WEBINAR_ID}/participants?occurrence_id={target_occurrence_id}"
participants_response = requests.get(participants_url, headers=headers)
participants_data = participants_response.json()

print(participants_data)

注意事项

  • 仅已结束的场次能获取完整参会者数据,未开始或进行中的场次无法返回有效记录。
  • 确保API Token拥有对应权限:webinar:read(访问自己的Webinar)或webinar:read:admin(访问账户下所有Webinar)。

内容的提问来源于stack exchange,提问作者YoWei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 13:53:18