Introduction
All the REST API calls should be POST HTTP requests server-side. This request cannot be initiated on the web client using AJAX approaches.
Endpoint
https://api.zoom.us/v1/
Common Parameters
The following are common parameters that should be included in each REST API request
Arguments | |
---|---|
api_key required | API Key |
api_secret required | API Secret |
data_type optional | The type of data that you’re expecting back from the server JSON or XML Default: JSON |
Error Handle
Example Error Response
{
"error": {
"code": 102,
"message": "You app key and secret doesn't match."
}
}
When getting a response from the server, you should first check the response body for the “error” section. The “error” section indicates this is a failed request, and then you can get the failed code and message from this section.
API Libraries
Zoom has created a library for Node.js with more coming soon
Node.js Quick Start
Install via npm
npm install zoomus
View the source on Github
Rate Limits
To preserve the integrity and reliability of the platform our APIs have the following rate limits.
All API Endpoints
You can run a max of ten requests per second (10 requests/second) unless otherwise noted below.
You can run a max of one request per second (1 request/second)
Includes:
- /v1/*/list
- /v1/*/billing/*
- /v1/*/plan/*
- /v1/chat/*
- /v1/metrics/*
- /v1/questions/
- /v1/report/*
- /v1/webinar/poll
You can run a max of one request per minute (1 request/minute)
Includes:
- /v1/metrics/meetings
- /v1/metrics/webinars
In addition, You can run a max of two thousand request per day (2000 requests/day)
Includes:
- /v1/chat/list
- /v1/metrics/meetings
- /v1/metrics/webinars
- /v1/report/*
In addition, You can run a max of one request per day (1 request/day)
Includes:
- /v1/report/getuserreport
Webhooks
Webhooks can be used as notifications to keep your systems in sync with actions inside Zoom. Notifications themselves should not be used as actionable items
Zoom can send notifications to any publicly accessible server. When an event in Zoom triggers a notification (e.g. a meeting is started, or closed), Zoom will attempt to send this notification to the endpoint you specify.
Zoom sends notifications for meeting start, meeting end and recording ready events.
Zoom only considers a notification delivered if it receives a timely response with a successful status code. In other words:
- Your endpoint must be reachable at ports 80 (HTTP) or 443 (HTTPS) (Zoom does not support other ports).
- Your endpoint must respond within 30 seconds.
- Your endpoint must respond with a 2XX status code (200, 204). Zoom does not follow redirects or consider them successful responses)
- Zoom will try max to 3 times for one event. If all 3 times notification fail, this event will be discard.
Parameters
Zoom will pass following parameters to your subscribe URL via POST HTTP request
Key | Value | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
id | Meeting id. | ||||||||||
uuid | Meeting uuid. | ||||||||||
status | Meeting status.
|
||||||||||
host_id | Meeting host id. |
Generate authorization in header
Most programming languages encode the authorization header automatically. With HTTP Basic Authentication, the Authorization header is a string containing a Base-64 encoded username and password. Zoom Webhooks also supports HTTP Basic Authentication, you can specify the username and password when enabling push notification subscription.
"Authorization": "Basic " + base64_encode(username + ":" + password)
To Enable Push Notifications
Go to Credential page and click Enable Push Notifications.
Account
The following API calls go over the management of Sub Accounts through Zooms REST API calls.
Create a sub account
Create a sub account of the master account on Zoom, return the created sub account id and owner id.
Definition
POST https://api.zoom.us/v1/ma/account/create
Zoom.account.create();
Example Request
$ curl https://api.zoom.us/v1/ma/account/create \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=user@company.com \
-d first_name=Zoomie \
-d last_name=Userton \
-d password=P@55w0rd
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id",
first_name: "Zoomie",
last_name: "Userton",
password: "P@55w0rd",
}
Zoom.account.create(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"owner_id": "unique_id",
"owner_email": "user@company.com",
"created_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
email required | A valid email address. It must be unique in Zoom service. If an email address is existed, a “user existing” error message will be return. |
first_name required | User’s first name. |
last_name required | User’s last name. |
password required | User’s password. |
enable_share_rc optional | Enable Share Virtual Room Connector. Default: false |
share_rc optional | Virtual Room Connector, multiple value separated by comma. |
enable_share_mc optional | Enable Share Meeting Connector. Default: false |
share_mc optional | Meeting Connector, multiple value separated by comma. |
pay_mode optional | Who will pay for this account? 0 means Sub Account Holders Pays, 1 means Master Account Holder Pays. Default: 1 |
collection_method optional | Collection Method? 0 means Automatic (billing online), 1 means Manual (send invoice). Default: 1 |
enable_pstn optional | The value should be true or false, by default is true. Default: true |
enable_enforce_login optional | Only signed-in users can join this meeting. Default: false |
enable_enforce_login_sd optional | Only signed-in users with specified domains can join meetings. Default: false |
enforce_login_domains optional | Domains of signed-in users. |
meeting_capacity optional | Account’ meeting capacity, max of 100. |
disable_cmr_reminder optional | Disable cloud recording reminder. Default: false |
enable_only_host_download_cmr optional | Enable Only the host can download cloud recordings. Default: false |
enable_same_account_access_cmr optional | Enable Only users on my account can access cloud recordings. Default: false |
List sub account
List all the sub account under the master account.
Definition
POST https://api.zoom.us/v1/ma/account/list
Zoom.account.list();
Example Request
$ curl https://api.zoom.us/v1/ma/account/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.account.list(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 3,
"subAccounts": [
{
"id": "unique_id",
"owner_email": "user@company.com",
"account_name": "test api",
"account_type": "Pro",
"seats": 9,
"subscription_start_time": "2017-10-19T00:00:00Z",
"subscription_end_time": "2017-11-19T00:00:00Z",
"created_at": "2017-10-19T00:00:00Z"
}
]
}
Arguments |
---|
Get a sub account
Get a sub account of the master account on Zoom, return the created sub account id and owner id.
Definition
POST https://api.zoom.us/v1/ma/account/get
Zoom.account.get();
Example Request
$ curl https://api.zoom.us/v1/ma/account/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id"
}
Zoom.account.get(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"owner_id": "unique_id",
"owner_email": "user@company.com",
"created_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
account_id required | The sub account ID. |
Update a sub account
Update a sub account of the master account on Zoom, return the updated sub account id.
Definition
POST https://api.zoom.us/v1/ma/account/update
Zoom.account.update();
Example Request
$ curl https://api.zoom.us/v1/ma/account/update \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id"
}
Zoom.account.update(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"updated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
account_id required | The sub account ID. |
enable_share_rc optional | Enable Share Virtual Room Connector. |
share_rc optional | Virtual Room Connector, multiple value separated by comma. |
enable_share_mc optional | Enable Share Meeting Connector. |
share_mc optional | Meeting Connector, multiple value separated by comma. |
pay_mode optional | Who will pay for this account? 0 means Sub Account Holders Pays, 1 means Master Account Holder Pays. |
collection_method optional | Collection Method? 0 means Automatic (billing online), 1 means Manual (send invoice). |
enable_pstn optional | The value should be true or false, by default is true. Default: true |
enable_call_out optional | The value should be true or false. If it is true, the user under this account will follow MA call out type. Default: false |
enable_enforce_login optional | Only signed-in users can join this meeting. Default: false |
enable_enforce_login_sd optional | Only signed-in users with specified domains can join meetings. Default: false |
enforce_login_domains optional | Domains of signed-in users. |
meeting_capacity optional | Account’ meeting capacity, max of 100. |
disable_cmr_reminder optional | Disable cloud recording reminder. Default: false |
enable_only_host_download_cmr optional | Enable Only the host can download cloud recordings. Default: false |
enable_same_account_access_cmr optional | Enable Only users on my account can access cloud recordings. Default: false |
Delete a sub account
Delete the sub account.
Definition
POST https://api.zoom.us/v1/ma/account/delete
Zoom.account.delete();
Example Request
$ curl https://api.zoom.us/v1/ma/account/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id"
}
Zoom.account.delete(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deleted_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
account_id required | The sub account ID. |
Subscribe plans for a sub account
Subscribe plans for a sub account of the master account on Zoom.
Definition
POST https://api.zoom.us/v1/ma/account/plan/subscribe
Zoom.account.planSubscribe();
Example Request
$ curl https://api.zoom.us/v1/ma/account/plan/subscribe \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id \
-d first_name=Zoomie \
-d last_name=Userton \
-d phone_number="4085555555" \
-d addres="1234 Some Street" \
-d city="Zoomville" \
-d country="US" \
-d state="CA" \
-d zip="95037" \
-d plan_base='{"type":"monthly","hosts":20}'
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id",
first_name: "Zoomie",
last_name: "Userton",
phone_number: "5555555555",
addres: "1234 Some Street",
city: "Zoomville",
country: "US",
state: "CA",
zip: "95037",
plan_base: {
"type":"monthly",
"hosts":20
}
}
Zoom.account.planSubscribe(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"email": "user@company.com",
"first_name": "Zoomie",
"last_name": "Userton",
"phone_number": "123456789",
"address": "address",
"apt": "apt",
"city": "city",
"state": "state",
"zip": "12345",
"country": "country",
"plan_base": {
"type": "monthly",
"hosts": 9
},
"plan_zoom_rooms": {
"type": "zroom_monthly",
"hosts": 9
},
"plan_room_connector": {
"type": "roomconnector_yearly",
"hosts": 9
},
"plan_large_meeting": [
{
"type": "large200_monthly",
"hosts": 9
},
{
"type": "large300_yearly",
"hosts": 9
},
{
"type": "large500_yearly",
"hosts": 9
}
],
"plan_webinar": [
{
"type": "webinar100_monthly",
"hosts": 9
},
{
"type": "webinar500_yearly",
"hosts": 9
},
{
"type": "webinar1000_yearly",
"hosts": 9
},
{
"type": "webinar3000_monthly",
"hosts": 9
},
{
"type": "webinar5000_monthly",
"hosts": 9
},
{
"type": "webinar10000_monthly",
"hosts": 9
}
],
"plan_recording": "cmr_monthly_commitment_500",
"plan_audio": {
"type": "tollfree_monthly_commitment_100",
"tollfree_country": "AT",
"premium_country": "TW",
"callout": 1,
"ddi_numbers": 66
}
}
Arguments | |
---|---|
account_id required | The sub account ID. |
first_name required | Sold To Contact’s first name. |
last_name required | Sold To Contact’s last name. |
phone_number required | Sold To Contact’s phone number. |
address required | Sold To Contact’s address. |
apt optional | Sold To Contact’s Apt/Suite. |
city required | Sold To Contact’s city. |
country required | Sold To Contact’s country. For this parameter value please refer to the id value in country list |
state required | Sold To Contact’s state. If country value is “US” or “CA”, for this parameter value please refer to the id value in state list |
zip required | Sold To Contact’s zip/postal. |
plan_base required | Base Plan. See Plans for more details |
plan_zoom_rooms optional | Additional Zoom Rooms Plan. See Plans for more details |
plan_room_connector optional | Additional H.323/SIP Room Connector Plan. See Plans for more details |
plan_large_meeting optional | Additional Large Meeting Plan. See Plans for more details |
plan_webinar optional | Additional Webinar Plan. See Plans for more details |
plan_recording optional | Additional Cloud Recording Plan. See Plans for more details |
plan_audio optional | Additional Audio Conferencing Plan. See Plans for more details |
Add a plan for a sub account
Add a plan for a sub account of the master account on Zoom.
Definition
POST https://api.zoom.us/v1/ma/account/plan/add
Zoom.account.planAdd();
Example Request
$ curl https://api.zoom.us/v1/ma/account/plan/add \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id \
-d plan="yearly"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id",
plan: "webinar100_monthly"
}
Zoom.account.planAdd(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"updated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
account_id required | The sub account ID. |
plan required | Additional Plan. See Plans for more details |
Get plans information for a sub account
Get plans information for a sub account of the master account on Zoom.
Definition
POST https://api.zoom.us/v1/ma/account/plan/get
Zoom.account.planGet();
Example Request
$ curl https://api.zoom.us/v1/ma/account/plan/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id"
}
Zoom.account.planGet(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"email": "user@company.com",
"first_name": "Zoomie",
"last_name": "Userton",
"phone_number": "123456789",
"address": "address",
"apt": "apt",
"city": "city",
"state": "state",
"zip": "12345",
"country": "country",
"plan_base": {
"type": "monthly",
"hosts": 9
},
"plan_zoom_rooms": {
"type": "zroom_monthly",
"hosts": 9
},
"plan_room_connector": {
"type": "roomconnector_yearly",
"hosts": 9
},
"plan_large_meeting": [
{
"type": "large100_monthly",
"hosts": 9
},
{
"type": "large200_monthly",
"hosts": 9
},
{
"type": "large300_yearly",
"hosts": 9
},
{
"type": "large500_yearly",
"hosts": 9
}
],
"plan_webinar": [
{
"type": "webinar100_monthly",
"hosts": 9
},
{
"type": "webinar500_yearly",
"hosts": 9
},
{
"type": "webinar1000_yearly",
"hosts": 9
},
{
"type": "webinar3000_monthly",
"hosts": 9
},
{
"type": "webinar5000_monthly",
"hosts": 9
},
{
"type": "webinar10000_monthly",
"hosts": 9
}
],
"plan_recording": "cmr_monthly_commitment_500",
"plan_audio": {
"type": "tollfree_monthly_commitment_100",
"tollfree_country": "AT",
"premium_country": "TW",
"callout": 1,
"ddi_numbers": 66
}
}
Arguments | |
---|---|
account_id required | The sub account ID. |
Update a plan for a sub account
Update a plan for a sub account of the master account on Zoom.
Definition
POST https://api.zoom.us/v1/ma/account/plan/update
Zoom.account.planUpdate();
Example Request
$ curl https://api.zoom.us/v1/ma/account/plan/update \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id \
-d type=1 \
-d plan="yearly"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id",
type: 1,
plan: "monthly"
}
Zoom.account.planUpdate(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "w40hUJRpRmmkx4uPXczdHg",
"updated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
account_id required | The sub account ID. |
type required | Plan Type. 1 means Base Plan, 2 means Additional Plan. Default: 1 |
plan required | A Base Plan or an Additional Plan. See Plans for more details |
Update Billing Information for a sub account
Update Billing Information for a sub account of the master account on Zoom.
Definition
POST https://api.zoom.us/v1/ma/account/billing/update
Zoom.account.updateBilling();
Example Request
$ curl https://api.zoom.us/v1/ma/account/billing/update \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d account_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var account = {
account_id: "unique_id"
plan: "monthly"
}
Zoom.account.updateBilling(account, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id ",
"updated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
account_id required | The sub account ID. |
first_name optional | Sold To Contact’s first name. |
last_name optional | Sold To Contact’s last name. |
phone_number optional | Sold To Contact’s phone number. |
address optional | Sold To Contact’s address. |
apt optional | Sold To Contact’s Apt/Suite. |
city optional | Sold To Contact’s city. |
country optional | Sold To Contact’s country. For this parameter value please refer to the id value in country list |
state optional | Sold To Contact’s state. If country value is “US” or “CA”, for this parameter value please refer to the id value in state list |
zip optional | Sold To Contact’s zip/postal. |
User
The following API calls go over the creation, management, and deleting of Users through Zooms REST API calls.
Create User
Create a user on Zoom, returns the created user ID.
Definition
POST https://api.zoom.us/v1/user/create
Zoom.user.create();
Example Request
$ curl https://api.zoom.us/v1/user/create \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d email="user@company.com" \
-d type=1
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
email: "user@company.com",
type: 1
}
Zoom.user.create(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"email": "user@company.com",
"first_name": "Zoom",
"last_name": "User",
"type": 1,
"enable_large": false,
"large_capacity": 0,
"enable_webinar": false,
"webinar_capacity": 0,
"verified": 1,
"created_at": "2012-11-25T12:00:00Z",
"status" : 0
}
Arguments | |
---|---|
email required | A valid email address. It must be unique in Zoom service. If an email address is existed, a “user existing” error message will be return |
type required | User’s type. 1 for basic user, 2 for pro user, 3 for corp user. Basic user can host up to 40 minutes meeting |
first_name optional | User’s first name. Cannot contain more than 5 Chinese words. |
last_name optional | User’s last name. Cannot contain more than 5 Chinese words. |
disable_chat optional | Disable in-meeting chat Deafult: false |
enable_e2e_encryption optional | Enable end-to-end encryption Deafult: false |
enable_silent_mode optional | Enable attendee on-hold Deafult: false |
disable_group_hd optional | Disable Group HD Deafult: false |
disable_recording optional | Disable recording Deafult: false |
enable_cmr optional | Enable cloud meeting record Deafult: false |
enable_auto_recording optional | Enable automatic recording. By default, if “enable_cloud_auto_recording” is true, it will become true Deafult: false |
enable_cloud_auto_recording optional | Enable cloud automatic recording Deafult: false |
track_id optional | Referral partner track ID |
meeting_capacity optional | User’s meeting capacity, passing 0 will inherit account’s meeting capacity Deafult: 0 |
enable_webinar optional | Enable webinar feature |
webinar_capacity optional | Enable webinar capacity, can be 100, 500, 1000, 3000, 5000 or 10000, depends on if having related webinar capacity plan subscription or not Deafult: 0 |
enable_large optional | Enable large meting feature |
large_capacity optional | Enable large meeting capacity, can be 100, 200, 300 or 500, depends on if having related webinar capacity plan subscription or not Deafult: 0 |
disable_feedback optional | Disable feedback Deafult: false |
disable_jbh_reminder optional | Disable jbh email reminder Deafult: false |
enable_breakout_room optional | Enable breakout room Deafult: false |
enable_polling optional | Enable polling for meeting Deafult: false |
enable_annotation optional | Enable Annotation Deafult: true |
enable_share_dual_camera optional | Enable Share dual camera Deafult: false |
enable_far_end_camera_control optional | Enable Far end camera control Deafult: false |
disable_private_chat optional | Disable Private chat Deafult: false |
enable_enter_exit_chime optional | Enable Enter/exit chime Deafult: false |
option_enter_exit_chime_type optional | Enter/exit chime type. 0 means Heard by all including host and attendees, 1 means Heard by host only Deafult: 0 |
disable_cancel_meeting_notification optional | Disable email notification when a meeting is cancelled Deafult: false |
enable_remote_support optional | Enable Remote support Deafult: false |
enable_file_transfer optional | Enable File transfer Deafult: false |
enable_virtual_background optional | Enable Virtual background Deafult: false |
enable_attention_tracking optional | Enable Attention tracking Deafult: false |
enable_waiting_room optional | Enable Waiting room Deafult: false |
enable_closed_caption optional | Enable Closed caption Deafult: false |
enable_co_host optional | Enable Co-host Deafult: false |
enable_auto_saving_chats optional | Enable Auto saving chats Deafult: false |
enable_phone_participants_password optional | Enable Generate and require password for participants joining by phone Deafult: false |
enable_auto_delete_cmr optional | Enable Auto delete cloud recordings Deafult: false |
auto_delete_cmr_days optional | Auto delete cloud recordings after days |
dept optional | Department for user profile, use for repor |
group_id optional | User Group ID. If set default user group, the parameter’s default value is the default user group |
imgroup_id optional | IM Group ID. If set default im group, the parameter’s default value is the default im group |
Auto Create User
Create a user on Zoom, returns the created user ID.
Definition
POST https://api.zoom.us/v1/user/autocreate
Zoom.user.autoCreate();
Example Request
$ curl https://api.zoom.us/v1/user/autocreate \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d email="user@company.com" \
-d type=1 \
-d password=P@55w0rd
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
email: "user@company.com",
type: 1,
password: "P@55w0rd"
}
Zoom.user.autoCreate(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"email": "user@company.com",
"id": "unique_id",
"created_at": "2012-11-25T12:00:00Z",
"first_name": "Zoomie",
"last_name": "Userton",
"pic_url": "",
"type": 1,
"disable_chat": false,
"enable_e2e_encryption": false,
"enable_silent_mode": true,
"disable_group_hd": false,
"disable_recording": false,
"enable_cmr": false,
"enable_auto_recording": false,
"enable_cloud_auto_recording": false,
"verified": 1,
"pmi": 2035134243,
"meeting_capacity": 0,
"enable_webinar": false,
"webinar_capacity": 0,
"enable_large": false,
"large_capacity": 0,
"disable_feedback": false,
"disable_jbh_reminder": true,
"enable_breakout_room": true,
"enable_polling": false,
"enable_annotation": false,
"enable_share_dual_camera": false,
"enable_far_end_camera_control": false,
"disable_private_chat": false,
"enable_enter_exit_chime": false,
"disable_cancel_meeting_notification": false,
"enable_remote_support": false,
"enable_file_transfer": false,
"enable_virtual_background": false,
"enable_attention_tracking": false,
"enable_waiting_room": false,
"enable_closed_caption": false,
"enable_co_host": false,
"enable_auto_saving_chats": false,
"enable_phone_participants_password": false,
"enable_auto_delete_cmr": true,
"auto_delete_cmr_days": 30,
"dept": "Engineer",
"lastClientVersion": "",
"lastLoginTime": "",
"token": "",
"zpk": "",
"zak": ""
}
Arguments | |
---|---|
email required | A valid email address. It must be unique in Zoom service. If an email address is existed, a “user existing” error message will be return |
type required | User’s type. 1 for basic user, 2 for pro user, 3 for corp user. Basic user can host up to 40 minutes meeting |
password required | User’s password |
first_name optional | User’s first name. Cannot contain more than 5 Chinese words. |
last_name optional | User’s last name. Cannot contain more than 5 Chinese words. |
disable_chat optional | Disable in-meeting chat Deafult: false |
enable_e2e_encryption optional | Enable end-to-end encryption Deafult: false |
enable_silent_mode optional | Enable attendee on-hold Deafult: false |
disable_group_hd optional | Disable Group HD Deafult: false |
disable_recording optional | Disable recording Deafult: false |
enable_cmr optional | Enable cloud meeting record Deafult: false |
enable_auto_recording optional | Enable automatic recording. By default, if “enable_cloud_auto_recording” is true, it will become true Deafult: false |
enable_cloud_auto_recording optional | Enable cloud automatic recording Deafult: false |
track_id optional | Referral partner track ID |
meeting_capacity optional | User’s meeting capacity, 0 means following account’s meeting capacity Deafult: 0 |
enable_webinar optional | Enable webinar feature |
webinar_capacity optional | Enable webinar capacity, can be 100, 500, 1000, 3000, 5000 or 10000, depends on if having related webinar capacity plan subscription or not Deafult: 0 |
enable_large optional | Enable large meting feature |
large_capacity optional | Enable large meeting capacity, can be 100, 200, 300 or 500, depends on if having related webinar capacity plan subscription or not Deafult: 0 |
disable_feedback optional | Disable feedback Deafult: false |
disable_jbh_reminder optional | Disable jbh email reminder Deafult: false |
enable_breakout_room optional | Enable breakout room Deafult: false |
enable_polling optional | Enable polling for meeting Deafult: false |
enable_annotation optional | Enable Annotation Deafult: true |
enable_share_dual_camera optional | Enable Share dual camera Deafult: false |
enable_far_end_camera_control optional | Enable Far end camera control Deafult: false |
disable_private_chat optional | Disable Private chat Deafult: false |
enable_enter_exit_chime optional | Enable Enter/exit chime Deafult: false |
option_enter_exit_chime_type optional | Enter/exit chime type. 0 means Heard by all including host and attendees, 1 means Heard by host only Deafult: 0 |
disable_cancel_meeting_notification optional | Disable email notification when a meeting is cancelled Deafult: false |
enable_remote_support optional | Enable Remote support Deafult: false |
enable_file_transfer optional | Enable File transfer Deafult: false |
enable_virtual_background optional | Enable Virtual background Deafult: false |
enable_attention_tracking optional | Enable Attention tracking Deafult: false |
enable_waiting_room optional | Enable Waiting room Deafult: false |
enable_closed_caption optional | Enable Closed caption Deafult: false |
enable_co_host optional | Enable Co-host Deafult: false |
enable_auto_saving_chats optional | Enable Auto saving chats Deafult: false |
enable_phone_participants_password optional | Enable Generate and require password for participants joining by phone Deafult: false |
enable_auto_delete_cmr optional | Enable Auto delete cloud recordings Deafult: false |
auto_delete_cmr_days optional | Auto delete cloud recordings after days |
dept optional | Department for user profile, use for repor |
group_id optional | User Group ID. If set default user group, the parameter’s default value is the default user group |
imgroup_id optional | IM Group ID. If set default im group, the parameter’s default value is the default im group |
Cust Create User
Create a user on Zoom, returns the created user ID.
Definition
POST https://api.zoom.us/v1/user/custcreate
Zoom.user.custCreate();
Example Request
$ curl https://api.zoom.us/v1/user/custcreate \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d email="user@company.com" \
-d type=1 \
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
email: "user@company.com",
type: 1
}
Zoom.user.custCreate(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"email": "user@company.com",
"id": "unique_id",
"created_at": "2012-11-25T12:00:00Z",
"first_name": "Zoomie",
"last_name": "Userton",
"pic_url": "",
"type": 1,
"disable_chat": false,
"enable_e2e_encryption": false,
"enable_silent_mode": true,
"disable_group_hd": false,
"disable_recording": false,
"enable_cmr": false,
"enable_auto_recording": false,
"enable_cloud_auto_recording": false,
"verified": 1,
"pmi": 2035134243,
"meeting_capacity": 0,
"enable_webinar": false,
"webinar_capacity": 0,
"enable_large": false,
"large_capacity": 0,
"disable_feedback": false,
"disable_jbh_reminder": true,
"enable_breakout_room": true,
"enable_polling": false,
"enable_annotation": false,
"enable_share_dual_camera": false,
"enable_far_end_camera_control": false,
"disable_private_chat": false,
"enable_enter_exit_chime": false,
"disable_cancel_meeting_notification": false,
"enable_remote_support": false,
"enable_file_transfer": false,
"enable_virtual_background": false,
"enable_attention_tracking": false,
"enable_waiting_room": false,
"enable_closed_caption": false,
"enable_co_host": false,
"enable_auto_saving_chats": false,
"enable_phone_participants_password": false,
"enable_auto_delete_cmr": true,
"auto_delete_cmr_days": 30,
"dept": "Engineer",
"lastClientVersion": "",
"lastLoginTime": "",
"token": "",
"zpk": "",
"zak": ""
}
Arguments | |
---|---|
email required | A valid email address. It must be unique in Zoom service. If an email address is existed, a “user existing” error message will be return |
type required | User’s type. 1 for basic user, 2 for pro user, 3 for corp user. Basic user can host up to 40 minutes meeting |
first_name optional | User’s first name. Cannot contain more than 5 Chinese words. |
last_name optional | User’s last name. Cannot contain more than 5 Chinese words. |
disable_chat optional | Disable in-meeting chat Deafult: false |
enable_e2e_encryption optional | Enable end-to-end encryption Deafult: false |
enable_silent_mode optional | Enable attendee on-hold Deafult: false |
disable_group_hd optional | Disable Group HD Deafult: false |
disable_recording optional | Disable recording Deafult: false |
enable_cmr optional | Enable cloud meeting record Deafult: false |
enable_auto_recording optional | Enable automatic recording. By default, if “enable_cloud_auto_recording” is true, it will become true Deafult: false |
enable_cloud_auto_recording optional | Enable cloud automatic recording Deafult: false |
track_id optional | Referral partner track ID |
meeting_capacity optional | User’s meeting capacity, 0 means following account’s meeting capacity Deafult: 0 |
enable_webinar optional | Enable webinar feature |
webinar_capacity optional | Enable webinar capacity, can be 100, 500, 1000, 3000, 5000 or 10000, depends on if having related webinar capacity plan subscription or not Deafult: 0 |
enable_large optional | Enable large meting feature |
large_capacity optional | Enable large meeting capacity, can be 100, 200, 300 or 500, depends on if having related webinar capacity plan subscription or not Deafult: 0 |
disable_feedback optional | Disable feedback Deafult: false |
disable_jbh_reminder optional | Disable jbh email reminder Deafult: false |
enable_breakout_room optional | Enable breakout room Deafult: false |
enable_polling optional | Enable polling for meeting Deafult: false |
enable_annotation optional | Enable Annotation Deafult: true |
enable_share_dual_camera optional | Enable Share dual camera Deafult: false |
enable_far_end_camera_control optional | Enable Far end camera control Deafult: false |
disable_private_chat optional | Disable Private chat Deafult: false |
enable_enter_exit_chime optional | Enable Enter/exit chime Deafult: false |
option_enter_exit_chime_type optional | Enter/exit chime type. 0 means Heard by all including host and attendees, 1 means Heard by host only Deafult: 0 |
disable_cancel_meeting_notification optional | Disable email notification when a meeting is cancelled Deafult: false |
enable_remote_support optional | Enable Remote support Deafult: false |
enable_file_transfer optional | Enable File transfer Deafult: false |
enable_virtual_background optional | Enable Virtual background Deafult: false |
enable_attention_tracking optional | Enable Attention tracking Deafult: false |
enable_waiting_room optional | Enable Waiting room Deafult: false |
enable_closed_caption optional | Enable Closed caption Deafult: false |
enable_co_host optional | Enable Co-host Deafult: false |
enable_auto_saving_chats optional | Enable Auto saving chats Deafult: false |
enable_phone_participants_password optional | Enable Generate and require password for participants joining by phone Deafult: false |
enable_auto_delete_cmr optional | Enable Auto delete cloud recordings Deafult: false |
auto_delete_cmr_days optional | Auto delete cloud recordings after days |
dept optional | Department for user profile, use for repor |
group_id optional | User Group ID. If set default user group, the parameter’s default value is the default user group |
imgroup_id optional | IM Group ID. If set default im group, the parameter’s default value is the default im group |
List Users
List all the users on Zoom
Definition
POST https://api.zoom.us/v1/user/list
Zoom.user.list();
Example Request
$ curl https://api.zoom.us/v1/user/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.list(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 5,
"total_records": 235,
"page_number": 1,
"page_size": 50,
"users": [
{
"email": "user@company.com",
"id": "unique_id",
"created_at": "2012-11-25T12:00:00Z",
"first_name": "Zoomie",
"last_name": "Userton",
"type": 1,
"pic_url": "https://www.zoom.us/p/bNsPi",
"disable_chat": false,
"enable_e2e_encryption": false,
"enable_silent_mode": true,
"disable_group_hd": false,
"disable_recording": false,
"enable_cmr": false,
"enable_auto_recording": false,
"enable_cloud_auto_recording": false,
"verified": 0,
"pmi": 2035134243,
"meeting_capacity": 0,
"enable_webinar": true,
"webinar_capacity": 100,
"enable_large": false,
"large_capacity": 0,
"disable_feedback": false,
"disable_jbh_reminder": true,
"enable_breakout_room": false,
"dept": "Engineer",
"timezone": "America/Los_Angeles",
"lastClientVersion": "3.5.44664.0321(mac)",
"lastLoginTime": "2016-03-23T09:54:41Z",
"status": 0,
"token": "",
"zpk": "",
"zak": ""
}
]
}
Arguments | |
---|---|
page_size optional | The amount of records returns within a single API call. Max of 300 users. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
List Pending Users
List all the pending users on Zoom
Definition
POST https://api.zoom.us/v1/user/pending
Zoom.user.listPending();
Example Request
$ curl https://api.zoom.us/v1/user/pending \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.listPending(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 5,
"total_records": 235,
"page_number": 1,
"page_size": 50,
"users": [
{
"id": "unique_id",
"email": "user@company.com",
"first_name": "Zoom",
"last_name": "User",
"type": 1,
"enable_large": false,
"large_capacity": 0,
"enable_webinar": false,
"webinar_capacity": 0,
"verified": 1,
"created_at": "2012-11-25T12:00:00Z",
"status" : 0
}
]
}
Arguments | |
---|---|
page_size optional | The amount of records returns within a single API call. Max of 300 users. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get User
Get a user info on Zoom via user ID
Definition
POST https://api.zoom.us/v1/user/get
Zoom.user.get();
Example Request
$ curl https://api.zoom.us/v1/user/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.get({id: 'unique_id'}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"email": "user@company.com",
"id": "unique_id",
"account_id": "8af3444232345",
"created_at": "2012-11-25T12:00:00Z",
"first_name": "Zoomie",
"last_name": "Userton",
"type": 1,
"token": "adlfjadslfkjasdkljfkjalkadfskjdsafkjdfsajkllajsdfaljsdf",
"pic_url": "https://www.zoom.us/p/bNsPi",
"disable_chat": false,
"enable_e2e_encryption": false,
"enable_silent_mode": true,
"disable_group_hd": false,
"disable_recording": false,
"enable_cmr": false,
"enable_record_speaker_view": false,
"enable_record_gallery_view": false,
"enable_record_audio_file": false,
"enable_auto_recording": false,
"enable_cloud_auto_recording": false,
"verified": 1,
"pmi": 2035134243,
"vanity_url": "https://zoom.us/my/test",
"meeting_capacity": 0,
"enable_webinar": true,
"webinar_capacity": 100,
"enable_large": false,
"large_capacity": 0,
"disable_feedback": false,
"disable_jbh_reminder": true,
"enable_breakout_room": true,
"enable_polling": false,
"enable_annotation": false,
"dept": "Engineer",
"timezone": "America/Los_Angeles",
"lastClientVersion": "3.5.44664.0321(mac)",
"lastLoginTime": "2016-03-23T09:54:41Z",
"status": 0,
"zpk": "ABzyF_DKLzVcPd-5Wu6zCwlZ3978jn7ZcTHONHrP7Vs.BwYAAAFTY-4XnwAAHCAkMTRlMzRjYzUtMjJmZC00MTQ1LTg2MzUtZmVmYjk3ZDI0NGMyFlYydzlQTzgxUl8yS1pmREtvTWVybVEWVjJ3OVBPODFSXzJLWmZES29NZXJtUQxzb3BoaWUgc3VuNjZkALM0VUVtMTFHTmh3cGFTWlJNMGkxYjhXSXNIZEIzbXZ0VlZwOGg0Q1Jhb1B3LkJnSWdUMjlLVG1KR1YySjNTVnBDZDFwUlpXb3Zhamh1TUUwd2VVVkVaU3QyTDNCQVpUSTNabVJtWkRNNFpqSmhZall5TXpRMk9XVTVOMkUwT1RNeVlUa3lPV1UyTlRnMk5qTm1OV0prT0RVek5URmhNR1l5WTJObVpUTTVNV0V6TTJabU1RQQAAFi1YZ0gzWVg2VDNTZmRqVEI5dEJLMXcAAgE",
"zak": "eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJjbGllbnQiLCJ1aWQiOiJXWGpRbkRNRVFzdWNVNXYxWXlIV0lBIiwiaXNzIjoid2ViIiwic3R5IjoxMDAsImNsdCI6MCwic3RrIjoiUGpuNXItSEJVb0tXd2lBQVFOR1FndnFKNWVLY19zV1l3VHBHNjdJQm00SS5CZ1FnVDI5S1RtSkdWMkozU1ZwQ2QxcFJaV292YWpodU1FMHdlVVZFWlN0MkwzQkFaVEkzWm1SbVpETTRaakpoWWpZeU16UTJPV1U1TjJFME9UTXlZVGt5T1dVMk5UZzJOak5tTldKa09EVXpOVEZoTUdZeVkyTm1aVE01TVdFek0yWm1NUUFnZFVvemNIQndjRnA1WTBaSFYybEZjbTFoYlZwSEt6VTRkMFprY2pWS1VXOEEiLCJleHAiOjE1MjYyNzQ1NzUsImlhdCI6MTUyNjI2NzM3NSwiYWlkIjoiWG1XeGlnZFVSZWVnTW9ibHY3d3FUQSIsImNpZCI6IiJ9.oMMmw50xEfD2IVaSfxap1OlSbczto-KAM"
}
Arguments | |
---|---|
id required | User ID |
Get User by Email Address and Login Type
Get a user on Zoom via user email address and login type, return the user info.
Definition
POST https://api.zoom.us/v1/user/getbyemail
Zoom.user.getByEmail();
Example Request
$ curl https://api.zoom.us/v1/user/getbyemail \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d email=user@company.com \
-d login_type=100
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.getByEmail({email: 'user@company.com', type: 100}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"email": "user@company.com",
"id": "unique_id",
"created_at": "2012-11-25T12:00:00Z",
"first_name": "Zoomie",
"last_name": "Userton",
"type": 1,
"token": "adlfjadslfkjasdkljfkjalkadfskjdsafkjdfsajkllajsdfaljsdf",
"pic_url": "https://www.zoom.us/p/bNsPi",
"disable_chat": false,
"enable_e2e_encryption": false,
"enable_silent_mode": true,
"disable_group_hd": false,
"disable_recording": false,
"enable_cmr": false,
"enable_record_speaker_view": false,
"enable_record_gallery_view": false,
"enable_record_audio_file": false,
"enable_auto_recording": false,
"enable_cloud_auto_recording": false,
"verified": 1,
"pmi": 2035134243,
"vanity_url": "https://zoom.us/my/test",
"meeting_capacity": 0,
"enable_webinar": true,
"webinar_capacity": 100,
"enable_large": false,
"large_capacity": 0,
"disable_feedback": false,
"disable_jbh_reminder": true,
"enable_breakout_room": true,
"enable_polling": false,
"enable_annotation": false,
"dept": "Engineer",
"lastClientVersion": "3.5.44664.0321(mac)",
"lastLoginTime": "2016-03-23T09:54:41Z",
"status": 0,
"zpk": "ABzyF_DKLzVcPd-5Wu6zCwlZ3978jn7ZcTHONHrP7Vs.BwYAAAFTY-4XnwAAHCAkMTRlMzRjYzUtMjJmZC00MTQ1LTg2MzUtZmVmYjk3ZDI0NGMyFlYydzlQTzgxUl8yS1pmREtvTWVybVEWVjJ3OVBPODFSXzJLWmZES29NZXJtUQxzb3BoaWUgc3VuNjZkALM0VUVtMTFHTmh3cGFTWlJNMGkxYjhXSXNIZEIzbXZ0VlZwOGg0Q1Jhb1B3LkJnSWdUMjlLVG1KR1YySjNTVnBDZDFwUlpXb3Zhamh1TUUwd2VVVkVaU3QyTDNCQVpUSTNabVJtWkRNNFpqSmhZall5TXpRMk9XVTVOMkUwT1RNeVlUa3lPV1UyTlRnMk5qTm1OV0prT0RVek5URmhNR1l5WTJObVpUTTVNV0V6TTJabU1RQQAAFi1YZ0gzWVg2VDNTZmRqVEI5dEJLMXcAAgE",
"zak": "eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJjbGllbnQiLCJ1aWQiOiJXWGpRbkRNRVFzdWNVNXYxWXlIV0lBIiwiaXNzIjoid2ViIiwic3R5IjoxMDAsImNsdCI6MCwic3RrIjoiUGpuNXItSEJVb0tXd2lBQVFOR1FndnFKNWVLY19zV1l3VHBHNjdJQm00SS5CZ1FnVDI5S1RtSkdWMkozU1ZwQ2QxcFJaV292YWpodU1FMHdlVVZFWlN0MkwzQkFaVEkzWm1SbVpETTRaakpoWWpZeU16UTJPV1U1TjJFME9UTXlZVGt5T1dVMk5UZzJOak5tTldKa09EVXpOVEZoTUdZeVkyTm1aVE01TVdFek0yWm1NUUFnZFVvemNIQndjRnA1WTBaSFYybEZjbTFoYlZwSEt6VTRkMFprY2pWS1VXOEEiLCJleHAiOjE1MjYyNzQ1NzUsImlhdCI6MTUyNjI2NzM3NSwiYWlkIjoiWG1XeGlnZFVSZWVnTW9ibHY3d3FUQSIsImNpZCI6IiJ9.oMMmw50xEfD2IVaSfxap1OlSbczto-KAM"
}
Arguments | |
---|---|
email required | Email, String |
login_type optional | Login type of the email, int SNS_FACEBOOK = 0; SNS_GOOGLE = 1; SNS_API = 99; SNS_ZOOM = 100; SNS_SSO = 101; |
Update User Info
Update user info on Zoom via user ID.
Definition
POST https://api.zoom.us/v1/user/update
Zoom.user.update();
Example Request
$ curl https://api.zoom.us/v1/user/update \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
id : "unique_id",
first_name: "Zoomie",
lasst_name: "Userton"
}
Zoom.user.update(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"updated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | User id. |
type optional | User’s type. 1 means it is a basic user. 2 means a pro user, 3 means a corp user. Basic user can host up to 40 minutes meeting. |
first_name optional | User’s first name. Cannot contain more than 5 Chinese words. |
last_name optional | User’s last name. Cannot contain more than 5 Chinese words. |
disable_chat optional | Disable in-meeting chat. Default: false |
enable_e2e_encryption optional | Enable end-to-end encryption. Default: false |
enable_silent_mode optional | Enable attendee on-hold. Default: false |
disable_group_hd optional | Disable Group HD. Default: false |
disable_recording optional | Disable recording. Default: false |
enable_cmr optional | Enable cloud meeting record. Default: false |
enable_record_speaker_view optional | Enable record the active speaker view. |
enable_record_gallery_view optional | Enable record the gallery view. |
enable_record_audio_file optional | Enable record an audio only file. |
enable_auto_recording optional | Enable automatic recording. By default, if “enable_cloud_auto_recording” is true, it will become true. Default: false |
enable_cloud_auto_recording optional | Enable cloud automatic recording. Default: false |
track_id optional | Referral partner track ID. |
meeting_capacity optional | User’s meeting capacity, passing 0 will inherit account’s meeting capacity Deafult: 0 |
enable_webinar optional | Enable webinar feature true or false. |
webinar_capacity optional | Enable webinar capacity, can be 100, 500, 1000, 3000, 5000 or 10000, depends on if having related webinar capacity plan subscription or not. Default: 0 |
enable_large optional | Enable large meting feature true or false. |
large_capacity optional | Enable large meeting capacity, can be 100, 200, 300 or 500, depends on if having related webinar capacity plan subscription or not. Default: 0 |
disable_feedback optional | Disable feedback. Default: false |
disable_jbh_reminder optional | Disable jbh email reminder. Default: false |
enable_breakout_room optional | Enable breakout room. Default: false |
enable_polling optional | Enable polling for meeting. Default: false |
enable_annotation optional | Enable Annotation. Default: true |
enable_share_dual_camera optional | Enable Share dual camera. Default: false |
enable_far_end_camera_control optional | Enable Far end camera control. Default: false |
disable_private_chat optional | Disable Private chat. Default: false |
enable_enter_exit_chime optional | Enable Enter/exit chime. Default: false |
option_enter_exit_chime_type optional | Enter/exit chime type. 0 means Heard by all including host and attendees, 1 means Heard by host only. Default: 0 |
disable_cancel_meeting_notification optional | Disable email notification when a meeting is cancelled. Default: false |
enable_remote_support optional | Enable Remote support. Default: false |
enable_file_transfer optional | Enable File transfer. Default: false |
enable_virtual_background optional | Enable Virtual background. Default: false |
enable_attention_tracking optional | Enable Attention tracking. Default: false |
enable_waiting_room optional | Enable Waiting room. Default: false |
enable_use_pmi optional | Enable Use Personal Meeting ID for instant meetings. Default: false |
enable_closed_caption optional | Enable Closed caption. Default: false |
enable_co_host optional | Enable Co-host. Default: false |
enable_auto_saving_chats optional | Enable Auto saving chats. Default: false |
enable_phone_participants_password optional | Enable Generate and require password for participants joining by phone. Default: false |
enable_auto_delete_cmr optional | Enable Auto delete cloud recordings. Default: false |
auto_delete_cmr_days optional | Auto delete cloud recordings after days. |
pmi optional | Personal Meeting ID, long, length must be 10. |
dept optional | Department for user profile, use for report. |
timezone optional | The time zone id for user profile. |
vanity_name optional | Personal meeting room name. |
host_key optional | Host Key should be 6-digit number. |
group_id optional | User Group ID. If set default user group, the parameter’s default value is the default user group. |
imgroup_id optional | IM Group ID. If set default im group, the parameter’s default value is the default im group. |
cms_user_id optional | User ID on external CMS |
Update User Password
Update user’s password on Zoom via user ID.
Definition
POST https://api.zoom.us/v1/user/updatepassword
Zoom.user.updatePassword();
Example Request
$ curl https://api.zoom.us/v1/user/updatepassword \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id \
-d password=P@55w0rd
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
id : "unique_id",
password: "P@55w0rd"
}
Zoom.user.updatePassword(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"updated_at": "2013-09-02T12:00:00Z"
}
Arguments | |
---|---|
id required | User id. |
password required | User’s password. |
Upload User Picture
Upload and update user’s profile picture on Zoom via user ID.
Definition
POST https://api.zoom.us/v1/user/uploadpicture
Example Request
$ curl https://api.zoom.us/v1/user/uploadpicture \
-F api_key=your_api_key \
-F api_secret=your_api_secret \
-F id=unique_id \
-F pic_file="@/path/to/pic.jpg"
Example Response
{
"id": "unique_id",
"updated_at": "2013-09-02T12:00:00Z"
}
Arguments | |
---|---|
id required | User id. |
pic_file required | User picture file, must be a jpg/jpeg file. |
Activate a User
Activate a user on Zoom, return the user ID.
Definition
POST https://api.zoom.us/v1/user/activate
Example Request
$ curl https://api.zoom.us/v1/user/activate \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
Example Response
{
"id": "unique_id",
"activated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | User id. |
Deactivate a User
Deactivate a user on Zoom, return the user ID.
Definition
POST https://api.zoom.us/v1/user/deactivate
Zoom.user.deactivate();
Example Request
$ curl https://api.zoom.us/v1/user/deactivate \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.deactivate({id: 'unique_id'}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deactivated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | User id. |
Delete a User
Delete a user on Zoom, return the deleted user ID.
Definition
POST https://api.zoom.us/v1/user/delete
Zoom.user.delete();
Example Request
$ curl https://api.zoom.us/v1/user/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.delete({id: 'unique_id'}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"account_id": " unique_id",
"deleted_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | User id. |
type optional | 0 means existing user, 1 means pending user. Default: 0 |
Delete User Permanently
Delete a user from Zoom system permanently.
Definition
POST https://api.zoom.us/v1/user/permanentdelete
Zoom.user.permanentDelete();
Example Request
$ curl https://api.zoom.us/v1/user/permanentdelete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.permanentDelete({id: 'unique_id'}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"email": "user@company.com",
"deleted_at": "2013-09-02T12:00:00Z"
}
Arguments | |
---|---|
id optional | The user’s user id. |
email optional | The user’s email address. Must have id or email, if given id, the email is ignored. |
Pre Provisioning SSO User
Create a SSO user on Zoom, return the created user ID.
Definition
POST https://api.zoom.us/v1/user/ssocreate
Zoom.user.ssoCreate();
Example Request
$ curl https://api.zoom.us/v1/user/ssocreate \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d email=user@company.com \
-d type=1
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
email: "user@company.com",
type: 1
}
Zoom.user.ssoCreate(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"email": "user@company.com",
"first_name": "Zoomie",
"last_name": "Userton",
"pic_url": "",
"type": 2,
"disable_chat": true,
"disable_private_chat": false,
"enable_e2e_encryption": false,
"enable_silent_mode": true,
"disable_group_hd": false,
"disable_recording": true,
"enable_cmr": false,
"enable_record_speaker_view": false,
"enable_record_gallery_view": false,
"enable_record_audio_file": false,
"enable_auto_recording": false,
"enable_cloud_auto_recording": false,
"verified": 0,
"pmi": 0,
"vanity_url": "https://abc.zoom.us/my/test126",
"meeting_capacity": 0,
"enable_webinar": true,
"webinar_capacity": 100,
"enable_large": false,
"large_capacity": 0,
"disable_feedback": false,
"disable_jbh_reminder": false,
"enable_breakout_room": true,
"enable_polling": false,
"enable_annotation": false,
"dept": "Engineer",
"timezone": "",
"created_at": "2015-03-12T05:45:45Z",
"lastClientVersion": "",
"lastLoginTime": "",
"token": "",
"zpk": "",
"zak": ""
}
Arguments | |
---|---|
email required | A valid email address. It must be unique in Zoom service. |
type required | User’s type. 1 means it is a basic user. 2 means a pro user, 3 means a corp user. Basic user can host up to 40 minutes meeting. |
first_name optional | User’s first name. Cannot contain more than 5 Chinese words. |
last_name optional | User’s last name. Cannot contain more than 5 Chinese words. |
meeting_capacity optional | User’s meeting capacity, 0 means following account’s meeting capacity. Default: 0 |
enable_webinar optional | Enable webinar feature true or false. |
webinar_capacity optional | Enable webinar capacity, can be 100, 500, 1000, 3000, 5000 or 10000, depends on if having related webinar capacity plan subscription or not. Default: 0 |
enable_large optional | Enable large meting feature true or false. |
large_capacity optional | Enable large meeting capacity, can be 100, 200, 300 or 500, depends on if having related webinar capacity plan subscription or not. Default: 0 |
pmi optional | Personal Meeting ID, long, length must be 10. |
group_id optional | User Group ID. If set default user group, the parameter’s default value is the default user group. |
imgroup_id optional | IM Group ID. If set default im group, the parameter’s default value is the default im group. |
Revoke SSO Token
Revoke a user’s SSO token.
Definition
POST https://api.zoom.us/v1/user/revoketoken
Zoom.user.revokeToken();
Example Request
$ curl https://api.zoom.us/v1/user/revoketoken \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.revokeToken({id: 'unique_id'}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"email": "user@company.com",
"updated_at": "2013-09-02T12:00:00Z"
}
Arguments | |
---|---|
id optional | The SSO user’s user id. |
email optional | The SSO user’s email address. |
Set User Assistant
Set a user’s assistant which can schedule meeting for him.
Definition
POST https://api.zoom.us/v1/user/assistant/set
Zoom.user.setAssistant();
Example Request
$ curl https://api.zoom.us/v1/user/assistant/set \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id \
-d assistant_email=user@company.com
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
host_email: "user@company.com",
assistant_email: "assistant_user@company.com"
}
Zoom.user.setAssistant(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"host_email": "user@company.com",
"updated_at": "2013-09-02T12:00:00Z"
}
Arguments | |
---|---|
id optional | The host’s user id. |
host_email optional | The host’s email address. |
assistant_email required | The assistant’s email address. |
Delete User Assistant
Delete a user’s assistant.
Definition
POST https://api.zoom.us/v1/user/assistant/delete
Zoom.user.deleteAssistant();
Example Request
$ curl https://api.zoom.us/v1/user/assistant/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
host_email: "user@company.com"
}
Zoom.user.deleteAssistant(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"host_email": "user@company.com",
"updated_at": "2013-09-02T12:00:00Z"
}
Arguments | |
---|---|
id optional | The host’s user id. |
host_email optional | The host’s email address. |
List Assigned Schedulers
List assigned schedule privilege for host users.
Definition
POST https://api.zoom.us/v1/user/scheduleforhost/list
Zoom.user.schedulers();
Example Request
$ curl https://api.zoom.us/v1/user/scheduleforhost/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var user = {
host_email: "user@company.com"
}
Zoom.user.schedulers(user, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"total_records": 1,
"users": [
{
"id": "unique_id",
"email": "user@company.com",
"first_name": "Zoomie",
"last_name": "Userton"
}
]
}
Arguments | |
---|---|
id optional | The host’s user id. |
host_email optional | The host’s email address. |
Check User Email
Check if the user email exists.
Definition
POST https://api.zoom.us/v1/user/checkemail
Zoom.user.checkEmail();
Example Request
$ curl https://api.zoom.us/v1/user/checkemail \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d email=user@company.com
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.checkEmail({email: "user@company.com"}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"existed_email": true
}
Arguments | |
---|---|
email required | User email. |
Check User ZPK
Check if the zpk is expired. The zpk is used to authenticate a user.
Definition
POST https://api.zoom.us/v1/user/checkzpk
Zoom.user.checkZPK();
Example Request
$ curl https://api.zoom.us/v1/user/checkzpk \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d zpk=<USER_ZPK>
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.user.checkZPK({zpk: "unique_zpk"}, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"expire_in": 7187
}
Arguments | |
---|---|
zpk required | User zpk. |
Meeting
The following API calls go over the creation, management, and deleting of Meetings through Zooms REST API calls.
Create A Meeting
Create a meeting on Zoom, return the created meeting URL
Definition
POST https://api.zoom.us/v1/meeting/create
Zoom.meeting.create();
Example Request
$ curl https://api.zoom.us/v1/meeting/create \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d host_id=unique_id \
-d type=1 \
-d topic="Meeting Topic"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var meeting = {
host_id: "unique_id",
type: 1,
topic: "Meeting Topic"
}
Zoom.meeting.create(meeting, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"uuid": "unique_id",
"id": "123456789",
"real_id": "123456789",
"start_url": "https://zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://zoom.us/j/123456789",
"created_at": "2012-11-25T12:00:00Z",
"host_id": "unique_id",
"topic": "Topic for this meeting",
"type": 2,
"option_jbh": false,
"option_start_type": "video",
"start_time": "2012-11-25T12:00:00Z",
"duration": 30,
"timezone": "America/Los_Angeles",
"password": "123",
"h323_password": "123456",
"option_host_video": false,
"option_participants_video": false,
"option_audio": "both",
"option_enforce_login": false,
"option_enforce_login_domains ": "",
"option_alternative_hosts": "",
"status": 0
}
Arguments | |
---|---|
host_id required | Meeting host user ID. Can be any user under this account. Cannot be updated after creation. |
type required | Meeting type: 1 means instant meeting (Only used for host to start it as soon as created). 2 means normal scheduled meeting. 3 means a recurring meeting with no fixed time. 8 means a recurring meeting with fixed time. Default: 2 |
topic required | Meeting topic. Max of 300 characters. |
start_time optional | Meeting start time in ISO datetime format. For scheduled meeting and recurring meeting with fixed time. Should be UTC time, such as 2012-11-25T12:00:00Z. |
duration optional | Meeting duration (minutes). For scheduled meeting only. |
timezone optional | Timezone to format start_time, like “America/Los_Angeles”. For scheduled meeting only. For this parameter value please refer to the id value in timezone list. |
password optional | Meeting password. Password may only contain the following characters: [a-z A-Z 0-9 @ - _ *]. Max of 10 characters. |
recurrence optional | Recurrence Meeting Settings. For recurring meeting with fixed time only. See Recurrence Object for more details. |
option_registration optional | Registration required. Default: false |
registration_type optional | Registration type. 1 means Attendees register once and can attend any of the occurrences, 2 means Attendees need to register for each occurrence to attend, 3 means Attendees register once and can choose one or more occurrences to attend. For recurring meeting with fixed time only. Default: 1 |
option_jbh optional | Join meeting before host start the meeting. Only for scheduled or recurring meetings. Default: false |
option_start_type optional | Meeting start type. Can be “video” or “screen_share”. (deprecated) Default: video |
option_host_video optional | Start video when host join meeting. Default: true |
option_participants_video optional | Start video when participants join meeting. Default: true |
option_cn_meeting optional | Host meeting in China. Default: false |
option_in_meeting optional | Host meeting in India. Default: false |
option_audio optional | Meeting audio options. Can be “both”, “telephony”, “voip”. Default: both |
option_enforce_login optional | Only signed-in users can join this meeting. Default: false |
option_enforce_login_domains optional | Only signed-in users with specified domains can join meetings. |
option_alternative_hosts optional | Alternative hosts. |
option_alternative_host_ids optional | Alternative hosts IDs. |
option_use_pmi optional | Use Personal Meeting ID. Only for scheduled meetings. Default: false |
option_auto_record_type optional | Automatically record type. Can be “local”, “cloud” or “none”. Default: local |
List Meetings
List all the scheduled meetings on Zoom.
Definition
POST https://api.zoom.us/v1/meeting/list
Zoom.meeting.list();
Example Request
$ curl https://api.zoom.us/v1/meeting/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d host_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var meeting = {
host_id: "unique_id"
}
Zoom.meeting.list(meeting, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 5,
"total_records": 235,
"page_number": 1,
"page_size": 50,
"meetings": [
{
"uuid": "unique_id",
"id": "123456789",
"start_url": "https://zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://zoom.us/j/123456789",
"created_at": "2012-11-25T12:00:00Z",
"host_id": "unique_id",
"topic": "Topic for this meeting",
"type": 2,
"start_time": "2012-11-25T12:00:00Z",
"duration": 30,
"timezone": "America/Los_Angeles",
"password": "123",
"h323_password": "123456",
"option_jbh": false,
"option_start_type": "video",
"option_host_video": false,
"option_participants_video": false,
"option_audio": "both",
"option_enforce_login": false,
"option_enforce_login_domains ": "",
"option_alternative_hosts": "",
"status": 0
}
]
}
Arguments | |
---|---|
host_id required | Meeting host user ID. Can be any user under this account. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
List Live Meetings
Lists the live meetings on Zoom.
Definition
POST https://api.zoom.us/v1/meeting/live
Zoom.meeting.listLive();
Example Request
$ curl https://api.zoom.us/v1/meeting/live \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.meeting.listLive(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 5,
"total_records": 235,
"page_number": 1,
"page_size": 50,
"meetings": [
{
"uuid": "unique_id",
"id": "123456789",
"start_url": "https://zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://zoom.us/j/123456789",
"created_at": "2012-11-25T12:00:00Z",
"host_id": "unique_id",
"topic": "Topic for this meeting",
"type": 2,
"status": 0,
"start_time": "2012-11-25T12:00:00Z",
"duration": 30,
"timezone": "America/Los_Angeles",
"password": "123",
"h323_password": "123456",
"option_jbh": false,
"option_start_type": "video",
"option_host_video": false,
"option_participants_video": false,
"option_audio": "both",
"option_enforce_login": false,
"option_enforce_login_domains ": "",
"option_alternative_hosts": ""
}
]
}
Arguments | |
---|---|
page_size optional | The amount of records returns within a single API call. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default: 1 |
Get Meeting Info
Get a meeting on Zoom via meeting ID, return the meeting info.
Definition
POST https://api.zoom.us/v1/meeting/get
Zoom.meeting.end();
Example Request
$ curl https://api.zoom.us/v1/meeting/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=123456789 \
-d host_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var meeting = {
id: 123456789,
host_id: "unique_id"
}
Zoom.meeting.get(meeting, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"uuid": "unique_id",
"id": 123456789,
"host_id": "unique_id",
"topic": "Zoom Meeting",
"password": "",
"h323_password": "",
"status": 0,
"option_jbh": false,
"option_start_type": "video",
"option_host_video": true,
"option_participants_video": true,
"option_cn_meeting": false,
"option_enforce_login": false,
"option_enforce_login_domains": "",
"option_in_meeting": false,
"option_audio": "both",
"option_alternative_hosts": "",
"option_use_pmi": false,
"type": 8,
"start_time": "",
"duration": 0,
"timezone": "Asia/Hong_Kong",
"start_url": "https://www.zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://www.zoom.us/j/123456789",
"created_at": "2016-12-20T02:51:42Z",
"occurrences": [
{
"occurrence_id": "1483210260000",
"start_time": "2017-01-01T02:51:00Z",
"duration": 60,
"status": "available"
}
]
}
Arguments | |
---|---|
id required | Meeting ID. |
host_id required | Meeting host user ID. Can be any user under this account. |
Update Meeting Info
Update meeting info on Zoom via meeting ID.
Definition
POST https://api.zoom.us/v1/meeting/update
Zoom.meeting.update();
Example Request
$ curl https://api.zoom.us/v1/meeting/update \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id \
-d host_id=unique_id \
-d type=1
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var meeting = {
id: "unique_id",
host_id: "unique_id",
type: 1
}
Zoom.meeting.update(meeting, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"updated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | Meeting ID. |
host_id required | Meeting host user ID. Can be any user under this account. Used to retrieve a meeting, cannot be updated. |
type required | Meeting type: 1 means instant meeting (Only used for host to start it as soon as created). 2 means normal scheduled meeting. 3 means a recurring meeting with no fixed time. 8 means a recurring meeting with fixed time. Default: 2 |
topic optional | Meeting topic. Max of 300 characters. |
start_time optional | Meeting start time in ISO datetime format. For scheduled meeting only. Should be UTC time, such as 2012-11-25T12:00:00Z. |
duration optional | Meeting duration (minutes). For scheduled meeting only. |
timezone optional | Timezone to format start_time, like “America/Los_Angeles”. For scheduled meeting only. For this parameter value please refer to the id value in timezone list. |
password optional | Meeting password. Password may only contain the following characters: [a-z A-Z 0-9 @ - _ *]. Max of 10 characters. |
recurrence optional | Recurrence Meeting Settings. For recurring meeting with fixed time only. See Recurrence Object for more details. |
option_registration optional | Registration required. Default: false |
registration_type optional | Registration type. 1 means Attendees register once and can attend any of the occurrences, 2 means Attendees need to register for each occurrence to attend, 3 means Attendees register once and can choose one or more occurrences to attend. For recurring meeting with fixed time only. Default: 1 |
option_jbh optional | Join meeting before host start the meeting. Only for scheduled or recurring meetings. Default: false |
option_start_type optional | Meeting start type. Can be “video” or “screen_share”. (deprecated) Default: video |
option_host_video optional | Start video when host join meeting. Default: true |
option_participants_video optional | Start video when participants join meeting. Default: true |
option_cn_meeting optional | Host meeting in China. Default: false |
option_in_meeting optional | Host meeting in India. Default: false |
option_audio optional | Meeting audio options. Can be “both”, “telephony”, “voip”. Default: both |
option_enforce_login optional | Only signed-in users can join this meeting. Default: false |
option_enforce_login_domains optional | Only signed-in users with specified domains can join meetings. |
option_alternative_hosts optional | Alternative hosts. |
option_alternative_host_ids optional | Alternative hosts IDs. |
option_use_pmi optional | Use Personal Meeting ID. Only for scheduled meetings. Default: false |
option_auto_record_type optional | Automatically record type. Can be “local”, “cloud” or “none”. Default: local |
Delete A Meeting
Delete a meeting on Zoom, return the deleted meeting ID.
Definition
POST https://api.zoom.us/v1/meeting/delete
Zoom.meeting.delete();
Example Request
$ curl https://api.zoom.us/v1/meeting/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id \
-d host_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var meeting = {
id: unique_id,
host_id: "unique_id"
}
Zoom.meeting.delete(meeting, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": 123456789,
"deleted_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | Meeting ID. |
host_id required | Meeting host user ID. Can be any user under this account. |
occurrence_id optional | Occurrence ID, could get this value from Meeting Get API. |
End A Meeting
End a meeting on Zoom, return the deleted meeting ID.
Definition
POST https://api.zoom.us/v1/meeting/end
Zoom.meeting.end();
Example Request
$ curl https://api.zoom.us/v1/meeting/end \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id \
-d host_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var meeting = {
id: unique_id,
host_id: "unique_id"
}
Zoom.meeting.end(meeting, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": 123456789,
"ended_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | Meeting ID. |
host_id required | Meeting host user ID. Can be any user under this account. |
Meeting Registration
Register for a meeting.
Definition
POST https://api.zoom.us/v1/meeting/register
Zoom.meeting.register();
Example Request
$ curl https://api.zoom.us/v1/meeting/register \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id \
-d email="user@company.com" \
-d first_name=Zoomie \
-d last_name=Userton
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var registration = {
id: "unique_id",
email: "user@company.com",
first_name: "Zoomie",
last_name: "Userton"
}
Zoom.meeting.register(registration, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"registrant_id": "unique_id",
"id": 123456789,
"topic": "meeting registration",
"start_time": "2016-02-21T04:00:00Z",
"join_url": "https://www.zoom.us/w/869275230?tk=2DsQiu6nZVsZVATrPLvXgqPvw8mmKyxgAGaDMizLv34.DQEAAAAAM9AWXhZ2Nm5vRjIyMlRoUzE3ZktWM3l4cHVRAA"
}
Arguments | |
---|---|
id required | Meeting ID. |
email required | A valid email address. |
first_name required | User’s first name. |
last_name required | User’s last name. |
address optional | Address. |
city optional | City. |
country optional | Country. For this parameter value please refer to the id value in country list |
zip optional | Zip/Postal Code. |
state optional | State/Province. |
phone optional | Phone. |
industry optional | Industry. |
org optional | Organization. |
job_title optional | Job Title. |
purchasing_time_frame optional | Purchasing Time Frame, should be “Within a month”, “1-3 months”, “4-6 months”, “More than 6 months”, “No timeframe”. |
role_in_purchase_process optional | Role in Purchase Process, should be “Decision Maker”, “Evaluator/Recommender”, “Influencer”, “Not involved”. |
no_of_employees optional | Number of Employees, should be “1-20”, “21-50”, “51-100”, “101-250”, “251-500”, “501-1,000”, “1,001-5,000”, “5,001-10,000”, “More than 10,000”. |
comments optional | Questions & Comments. |
custom_questions optional | Custom Questions, should be JSON format: [{“title”:“field_name1”,“value”:“xxx”},{“title”:“field_name2”,“value”:“xxx”}]. |
language optional | Language setting of email. This value should be “en-US”, “en”, “zh-CN”, “zh”, “en-ES”, “es”, “fr-FR” or “fr”. |
occurrence_ids optional | Occurrence IDs, could get this value from Meeting Get API. |
Webinar
The following API calls go over the creation, management, and deleting of Webinars through Zooms REST API calls.
Create A Webinar
Create a webinar on Zoom, return the created webinar start and join URL.
Definition
POST https://api.zoom.us/v1/webinar/create
Zoom.webinar.create();
Example Request
$ curl https://api.zoom.us/v1/webinar/create \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d host_id="unique_id" \
-d topic="Meeting Topic" \
-d type=1
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
host_id: "unique_id",
topic: "Meeting Topic",
type: 1
}
Zoom.webinar.create(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"uuid": "unique_id",
"id": "123456789",
"host_id": "unique_id",
"topic": "create webinar via rest api",
"agenda": "",
"status": 0,
"option_start_type": "video",
"option_audio": "both",
"option_enforce_login": false,
"option_enforce_login_domains ": "",
"option_alternative_hosts": "",
"type": 5,
"start_time": " 2015-02-08T12:50:30Z",
"duration": 0,
"timezone": "America/Los_Angeles",
"start_url": "https://zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://zoom.us/j/123456789",
"registration_url": "",
"created_at": "2015-01-22T07:09:49Z"
}
Arguments | |
---|---|
host_id required | Webinar host user ID. Can be any user under this account. Cannot be updated after creation. |
topic required | Webinar topic. Max of 300 characters. |
type required | 5 webinar, 6 recurrence webinar, 9 recurring webinar(With Fixed Time) Default: 5 |
start_time optional | Webinar start time in ISO datetime format. For scheduled webinar only. Should be UTC time, such as 2012-11-25T12:00:00Z. |
duration optional | Webinar duration (minutes). For scheduled webinar only. |
timezone optional | Timezone to format start_time, like “America/Los_Angeles”. For scheduled Webinar only. For this parameter value please refer to the id value in timezone list. |
password optional | Webinar password. Password may only contain the following characters: [a-z A-Z 0-9 @ - _ *]. Max of 10 characters. |
recurrence optional | Recurrence Webinar Settings. For recurring webinar with fixed time only. See Recurrence Object for more details. |
approval_type optional | Approval type. 0 means Automatically Approve. 1 means Manually Approve. 2 means No Registration Required. Default: 2 |
registration_type optional | Registration type. 1 means Attendees register once and can attend any of the occurrences, 2 means Attendees need to register for each occurrence to attend, 3 means Attendees register once and can choose one or more occurrences to attend. For recurring meeting with fixed time only. Default: 1 |
agenda optional | Webinar description. |
option_audio optional | Webinar audio options. Can be “both”, “telephony”, “voip”. Default: both |
option_host_video optional | Start video when host join Webinar. Default: true |
option_panelist_video optional | Start video when panelist join Webinar. Default: true |
option_practice_session optional | Enable Practice Session. Default: false |
option_enforce_login optional | Only signed-in users can join this Webinar. Default: false |
option_enforce_login_domains optional | Only signed-in users with specified domains can join Webinar. |
option_alternative_hosts optional | Alternative hosts. |
option_alternative_host_ids optional | Alternative hosts IDs. |
option_auto_record_type optional | Automatically record type. Can be “local”, “cloud” or “none”. Default: local |
option_panelists_reminder optional | Invitation Email to Panelists |
option_close_registration optional | Close registration after event date. |
option_show_share_button optional | Show social share buttons on registration page. |
option_allow_multiple_devices optional | Allow attendees to join from multiple devices. |
panelists optional | Webinar Panelists, should be JSON format: [{“name”:“xxx”,“email”:“test1@zoom.us”}, {“name”:“xxx”,“email”:“test2@zoom.us”}]. |
language optional | Language setting of email to panelists. This value should be “en-US”, “en”, “zh-CN”, “zh”, “en-ES”, “es”, “fr-FR” or “fr”. |
List Webinars
List all registrationless Webinars on Zoom
Definition
POST https://api.zoom.us/v1/webinar/list
Zoom.webinar.list();
Example Request
$ curl https://api.zoom.us/v1/webinar/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
host_id: "unique_id"
}
Zoom.webinar.list(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 5,
"total_records": 235,
"page_number": 1,
"page_size": 50,
"webinars": [
{
"uuid": "unique_id",
"id": "123456789",
"start_url": "https://zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://zoom.us/j/123456789",
"created_at": "2012-11-25T12:00:00Z",
"host_id": "unique_id",
"topic": "Topic for this meeting",
"type": 5,
"start_time": "2012-11-25T12:00:00Z",
"duration": 30,
"timezone": "America/Los_Angeles",
"agenda": "",
"option_start_type": "video",
"option_audio": "both",
"option_enforce_login": false,
"option_enforce_login_domains ": "",
"option_alternative_hosts": "",
"status": 0
}
]
}
Arguments | |
---|---|
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Webinar Info
Get a Webinar on Zoom via Webinar ID, return the Webinar info
Definition
POST https://api.zoom.us/v1/webinar/get
Zoom.webinar.get();
Example Request
$ curl https://api.zoom.us/v1/webinar/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.get(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"uuid": "unique_id",
"id": "123456789",
"start_url": "https://zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://zoom.us/j/123456789",
"registration_url": "",
"created_at": "2012-11-25T12:00:00Z",
"host_id": "unique_id",
"topic": "Topic for this meeting",
"type": 5,
"start_time": "2012-11-25T12:00:00Z",
"duration": 30,
"timezone": "America/Los_Angeles",
"agenda": "",
"option_start_type": "video",
"option_audio": "both",
"option_enforce_login": false,
"option_enforce_login_domains ": "",
"option_alternative_hosts": "",
"status": 0,
"occurrences": [
{
"occurrence_id": "1483210260000",
"start_time": "2017-01-01T02:51:00Z",
"duration": 60,
"status": "available"
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
Update Webinar Info
Update Webinar info on Zoom via Webinar ID
Definition
POST https://api.zoom.us/v1/webinar/update
Zoom.webinar.update();
Example Request
$ curl https://api.zoom.us/v1/webinar/update \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.update(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": 123456789,
"updated_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user under this account. Cannot be updated after creation. |
topic optional | Webinar topic. Max of 300 characters. |
type optional | 5 webinar, 6 recurrence webinar, 9 recurring webinar(With Fixed Time) Default: 5 |
start_time optional | Webinar start time in ISO datetime format. For scheduled webinar only. Should be UTC time, such as 2012-11-25T12:00:00Z. |
duration optional | Webinar duration (minutes). For scheduled webinar only. |
timezone optional | Timezone to format start_time, like “America/Los_Angeles”. For scheduled Webinar only. For this parameter value please refer to the id value in timezone list. |
password optional | Webinar password. Password may only contain the following characters: [a-z A-Z 0-9 @ - _ *]. Max of 10 characters. |
recurrence optional | Recurrence Webinar Settings. For recurring webinar with fixed time only. See Recurrence Object for more details. |
approval_type optional | Approval type. 0 means Automatically Approve. 1 means Manually Approve. 2 means No Registration Required. Default: 2 |
registration_type optional | Registration type. 1 means Attendees register once and can attend any of the occurrences, 2 means Attendees need to register for each occurrence to attend, 3 means Attendees register once and can choose one or more occurrences to attend. For recurring meeting with fixed time only. Default: 1 |
agenda optional | Webinar description. |
option_audio optional | Webinar audio options. Can be “both”, “telephony”, “voip”. Default: both |
option_host_video optional | Start video when host join Webinar. Default: true |
option_panelist_video optional | Start video when panelist join Webinar. Default: true |
option_practice_session optional | Enable Practice Session. |
option_enforce_login optional | Only signed-in users can join this Webinar. Default: false |
option_enforce_login_domains optional | Only signed-in users with specified domains can join Webinar. |
option_alternative_hosts optional | Alternative hosts. |
option_alternative_host_ids optional | Alternative hosts IDs. |
option_auto_record_type optional | Automatically record type. Can be “local”, “cloud” or “none”. Default: local |
option_panelists_reminder optional | Invitation Email to Panelists |
option_close_registration optional | Close registration after event date. |
option_show_share_button optional | Show social share buttons on registration page. |
option_allow_multiple_devices optional | Allow attendees to join from multiple devices. |
panelists optional | Webinar Panelists, should be JSON format: [{“name”:“xxx”,“email”:“test1@zoom.us”}, {“name”:“xxx”,“email”:“test2@zoom.us”}]. |
language optional | Language setting of email to panelists. This value should be “en-US”, “en”, “zh-CN”, “zh”, “en-ES”, “es”, “fr-FR” or “fr”. |
Delete A Webinar
Delete a webinar on Zoom, return the deleted webinar ID.
Definition
POST https://api.zoom.us/v1/webinar/delete
Zoom.webinar.delete();
Example Request
$ curl https://api.zoom.us/v1/webinar/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.delete(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": 123456789,
"deleted_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | webinar host user ID. Can be any user who enabled webinar under this account. |
occurrence_id optional | Occurrence ID, could get this value from Webinar Get API. |
End A Webinar
End a Webinar on Zoom, return the deleted Webinar ID
Definition
POST https://api.zoom.us/v1/webinar/end
Zoom.webinar.end();
Example Request
$ curl https://api.zoom.us/v1/webinar/end \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.end(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "",
"ended_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
Register for Webinar
Register for a webinar
Definition
POST https://api.zoom.us/v1/webinar/register
Zoom.webinar.register();
Example Request
$ curl https://api.zoom.us/v1/webinar/register \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d email="user@company.com" \
-d first_name="Zoomie" \
-d last_name="Userton"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var registration = {
id: "unique_id",
email: "user@company.com",
first_name: "Zoomie",
last_name: "Userton"
}
Zoom.webinar.register(registration, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"registrant_id": "unique_id",
"id": 123456789,
"topic": "webinar registration",
"start_time": "2016-02-21T04:00:00Z",
"join_url": "https://www.zoom.us/w/123456789?tk=2DsQiu6nZVsZVATrPLvXgqPvw8mmKyxgAGaDMizLv34.DQEAAAAAM9AWXhZ2Nm5vRjIyMlRoUzE3ZktWM3l4cHVRAA"
}
Arguments | |
---|---|
id required | Webinar ID. |
email required | A valid email address. |
first_name required | User’s first name. |
last_name required | User’s last name. |
address optional | Address. |
city optional | City. |
country optional | Country. For this parameter value please refer to the id value in country list |
zip optional | Zip/Postal Code. |
state optional | State/Province. |
phone optional | Phone. |
industry optional | Industry. |
org optional | Organization. |
job_title optional | Job Title. |
purchasing_time_frame optional | Purchasing Time Frame, should be “Within a month”, “1-3 months”, “4-6 months”, “More than 6 months”, “No timeframe”. |
role_in_purchase_process optional | Role in Purchase Process, should be “Decision Maker”, “Evaluator/Recommender”, “Influencer”, “Not involved”. |
no_of_employees optional | Number of Employees, should be “1-20”, “21-50”, “51-100”, “101-250”, “251-500”, “501-1,000”, “1,001-5,000”, “5,001-10,000”, “More than 10,000”. |
comments optional | Questions & Comments. |
custom_questions optional | Custom Questions, should be JSON format: [{“title”:“field_name1”,“value”:“xxx”},{“title”:“field_name2”,“value”:“xxx”}]. |
language optional | Language setting of email. This value should be “en-US”, “en”, “zh-CN”, “zh”, “en-ES”, “es”, “fr-FR” or “fr”. |
occurrence_ids optional | Occurrence IDs, could get this value from Webinar Get API. |
List Registration Webinars
List all the upcoming registration-based Webinars on Zoom
Definition
POST https://api.zoom.us/v1/webinar/list/registration
Zoom.webinar.listRegistration();
Example Request
$ curl https://api.zoom.us/v1/webinar/list/registration \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
host_id: "unique_id"
}
Zoom.webinar.listRegistration(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 5,
"total_records": 235,
"page_number": 1,
"page_size": 50,
"webinars": [
{
"uuid": "unique_id",
"id": "123456789",
"start_url": "https://zoom.us/s/123456789?zak=xxxxxx",
"join_url": "https://zoom.us/j/123456789",
"created_at": "2012-11-25T12:00:00Z",
"host_id": "unique_id",
"topic": "Topic for this Webinar",
"type": 5,
"start_time": "2012-11-25T12:00:00Z",
"duration": 30,
"timezone": "America/Los_Angeles",
"agenda": "",
"option_start_type": "video",
"option_audio": "both",
"status": 0
}
]
}
Arguments | |
---|---|
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Webinar Registration Info
Gather Webinar registrants info
Definition
POST https://api.zoom.us/v1/webinar/registration
Zoom.webinar.getRegistration();
Example Request
$ curl https://api.zoom.us/v1/webinar/registration \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.getRegistration(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 1,
"attendees": [
{
"id": "unique_id",
"first_name": "Zoomie",
"last_name": "Userton",
"create_time": "2015-08-23T03:03:48Z",
"approval": "approved",
"email": "user@company.com",
"registration_url": "https://api.zoom.us/w/206388466?tk=n8-qbK4ocC73mPjIRlheMksYPxeWAhnktoUZq_xAqg8.DQEAAAAADE088hZKTXcxTllpelFjZXNfNDg0NlNKQ3lRAA"
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
occurrence_id optional | Occurrence ID, could get this value from Webinar Get API. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Cancel Webinar Registration
Cancel Webinar Registration
Definition
POST https://api.zoom.us/v1/webinar/registration/cancel
Zoom.webinar.cancelRegistration();
Example Request
$ curl https://api.zoom.us/v1/webinar/registration/cancel \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
-d registrants_ids="unique_id,unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id",
registrants_ids: "unique_id,unique_id"
}
Zoom.webinar.cancelRegistration(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "844495467",
"updated_at": "2016-11-29T01:26:43Z"
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
occurrence_id optional | Occurrence ID, could get this value from Webinar Get API. |
registrant_ids required | Webinar registrant IDs, separated by comma. Max of 15 registrants. |
List Webinar Registrants
List webinar registrants on Zoom, include pending approval registrants and approved registrants.
Definition
POST https://api.zoom.us/v1/webinar/registrants/list
Zoom.webinar.listRegistrations();
Example Request
$ curl https://api.zoom.us/v1/webinar/registrants/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.listRegistrations(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 1,
"type": 0,
"users": [
{
"id": "unique_id",
"first_name": "Zoomie",
"last_name": "Userton",
"email": "user@company.com",
"registration_time": "2016-08-18T01:45:26Z"
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
type optional | 0 means pending approval registrants, 1 means approved registrants. Default: 0 |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Approve Pending Registrants
Approve pending registrants on Zoom Webinar.
Definition
POST https://api.zoom.us/v1/webinar/registrants/approve
Zoom.webinar.approveRegistration();
Example Request
$ curl https://api.zoom.us/v1/webinar/registrants/approve \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id" \
-d registrants_ids="unique_id,unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id",
registrants_ids: "unique_id,unique_id"
}
Zoom.webinar.approveRegistration(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "421431292",
"updated_at": "2016-08-18T02:11:40Z"
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
registrant_ids required | Pending approval registrant ids. |
Get Webinar Panelists
Get all the Webinar Panelists on Zoom
Definition
POST https://api.zoom.us/v1/webinar/panelists
Zoom.webinar.listPanelists();
Example Request
$ curl https://api.zoom.us/v1/webinar/panelists \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.listPanelists(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"total_records": 1,
"panelists": [
{
"name": "Zoomie Userton",
"email": "user@company.com",
"join_url": "https://www.zoom.us/w/552681828?tk=TMnju_IjiU7Fx3eSkrajn2irvyMBNQ4XCW6cutSPntg.DQEAAAAAIPFBZBYwbzhKUUlXVVN3bW9Ed05QUmdvU2hBAA"
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
Get Ended Webinar UUID
Get ended webinar UUID.
Definition
POST https://api.zoom.us/v1/webinar/uuid/list
Zoom.webinar.getUUID();
Example Request
$ curl https://api.zoom.us/v1/webinar/uuid/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.getUUID(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"webinars": [
{
"uuid": "unique_id",
"start_time": "2015-08-23T03:03:48Z"
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
Get Ended Webinar Attendees
Get ended webinar attendees
Definition
POST https://api.zoom.us/v1/webinar/attendees/list
Zoom.webinar.getAttendees();
Example Request
$ curl https://api.zoom.us/v1/webinar/attendees/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.getAttendees(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"attendees": [
{
"first_name": "Zoomie",
"last_name": "Userton",
"email": "user@company.com",
"join_time": "2015-09-18T09:41:39Z",
"leave_time": "2015-09-18T09:42:12Z",
"time_in_session": "8",
"attended": "Yes",
"custom_questions": {
"ssssss": " sssss",
"which one do you like?": "sss"
},
"questions": {
"country": "US",
"address": "1234 Some Street",
"city": "Zoomville"
}
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
uuid optional | Webinar uuid. It can be fetched by /v1/webinar/uuid/list. |
Get Ended Webinar Polls
Get Ended Webinar Polls
Definition
POST https://api.zoom.us/v1/webinar/polls
Zoom.webinar.getPolls();
Example Request
$ curl https://api.zoom.us/v1/webinar/polls \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.getPolls(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": 123456789,
"uuid": "unique_id",
"start_time": "2017-02-09T07:15:48Z",
"questions": [
{
"name": "Zoomie Userton",
"email": "user@company.com",
"question_details": [
{
"question": "question?",
"answer": "answer"
}
]
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
uuid optional | Webinar uuid. It can be fetched by /v1/webinar/uuid/list. |
Get Ended Webinar Q&A
Get Ended Webinar Q&A
Definition
POST https://api.zoom.us/v1/webinar/questions
Zoom.webinar.getQuestions();
Example Request
$ curl https://api.zoom.us/v1/webinar/questions \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d host_id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var webinar = {
id: "unique_id",
host_id: "unique_id"
}
Zoom.webinar.getQuestions(webinar, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": 123456789,
"uuid": "unique_id",
"start_time": "2017-02-09T07:15:48Z",
"questions": [
{
"name": "Zoomie Userton",
"email": "user@company.com",
"question_details": [
{
"question": "question?",
"answer": "answer"
}
]
}
]
}
Arguments | |
---|---|
id required | Webinar ID. |
host_id required | Webinar host user ID. Can be any user who enabled webinar under this account. |
uuid optional | Webinar uuid. It can be fetched by /v1/webinar/uuid/list. |
Group
The following API calls go over the creation, management, and deleting of Groups through Zooms REST API calls.
Create A Group
Create a group on Zoom, return the new group info.
Definition
POST https://api.zoom.us/v1/group/create
Zoom.group.create();
Example Request
$ curl https://api.zoom.us/v1/group/create \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d name="New Group Test"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
name: "Group Name"
}
Zoom.group.create(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "New Group Test",
"total_members": 0
}
Arguments | |
---|---|
name required | Group name, must be unique in one account. |
List Groups
List all groups on your Zoom account.
Definition
POST https://api.zoom.us/v1/group/list
Zoom.group.list();
Example Request
$ curl https://api.zoom.us/v1/group/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.group.list(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"total_records": 1,
"groups": [
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "Group Test1",
"total_members": 40
}
]
}
Arguments |
---|
Get Group Info
Get a group on Zoom via ID, return the group info.
Definition
POST https://api.zoom.us/v1/group/get
Zoom.group.get();
Example Request
$ curl https://api.zoom.us/v1/group/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id"
}
Zoom.group.get(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "Group Test",
"total_members": 2
}
Arguments | |
---|---|
id required | Group ID. |
Edit A Group
Edit a group on Zoom, return the new group info.
Definition
POST https://api.zoom.us/v1/group/edit
Zoom.group.update();
Example Request
$ curl https://api.zoom.us/v1/group/edit \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id",
ame: "Group Name"
}
Zoom.group.update(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "New Group Test",
"total_members": 0
}
Arguments | |
---|---|
id required | Group ID. |
name optional | Group name, must be unique in one account. |
Delete A Group
Delete a group on Zoom, return the deleted group ID.
Definition
POST https://api.zoom.us/v1/group/delete
Zoom.group.delete();
Example Request
$ curl https://api.zoom.us/v1/group/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id"
}
Zoom.group.delete(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deleted_at": "2015-08-20T08:41:58Z",
"deleted_count": 1
}
Arguments | |
---|---|
id required | Group ID. |
List Group Members
Lists the members of a group on Zoom.
Definition
POST https://api.zoom.us/v1/group/member/list
Zoom.group.memberList();
Example Request
$ curl https://api.zoom.us/v1/group/member/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id"
}
Zoom.group.memberList(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 1,
"members": [
{
"id": "unique_id",
"email": "user@company.com",
"first_name": "Zoomie",
"last_name": "Userton",
"pic_url": "https://ssotest.zoom.us/p/6EoubcvJR7eF2grNXJkrHA/f2003a9c-3095-4865-8536-03cc6f211e86-9569"
}
]
}
Arguments | |
---|---|
id required | Group ID. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Add Group Members
Add members to a group on Zoom.
Definition
POST https://api.zoom.us/v1/group/member/add
Zoom.group.memberAdd();
Example Request
$ curl https://api.zoom.us/v1/group/member/add \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d member_ids="unique_id,unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id",
member_ids: "unique_id,unique_id"
}
Zoom.group.memberAdd(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"add_at": "2015-08-20T08:57:38Z",
"add_count": 2
}
Arguments | |
---|---|
id required | Group ID. |
member_ids required | The member IDs, separated by comma |
Delete Group Members
Delete members of a group on Zoom.
Definition
POST https://api.zoom.us/v1/group/member/delete
Zoom.group.memberDelete();
Example Request
$ curl https://api.zoom.us/v1/group/member/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d member_ids="unique_id,unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id",
member_ids: "unique_id,unique_id"
}
Zoom.group.memberDelete(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deleted_at": "2015-08-20T08:57:38Z",
"deleted_count": 2
}
Arguments | |
---|---|
id required | Group ID. |
member_ids required | The member IDs, separated by comma |
IM Group
The following API calls go over the creation, management, and deleting of Groups through Zooms REST API calls.
Create IM Group
Create a IM group on Zoom, return the new group info.
Definition
POST https://api.zoom.us/v1/im/group/create
Zoom.imGroup.create();
Example Request
$ curl https://api.zoom.us/v1/im/group/create \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d name="New Group Test"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
name: "Group Name"
}
Zoom.imGroup.create(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "New Group Test",
"total_members": 0,
"option_search_by_domain": false,
"option_search_by_account": false,
"option_search_by_ma_account": false
}
Arguments | |
---|---|
name required | Group name, must be unique in one account. |
type optional | Group type, Normal: normal group, Restricted: Restricted group, Shared: Shared group. Default: Normal |
option_search_by_domain optional | Others in the same email domain can search members. Default: false |
option_search_by_account optional | Others under same account can search members. Default: false |
option_search_by_ma optional | Others under same master account, including all sub accounts can search members. Default: false |
List IM Groups
List all IM groups on your Zoom account.
Definition
POST https://api.zoom.us/v1/im/group/list
Zoom.imGroup.list();
Example Request
$ curl https://api.zoom.us/v1/im/group/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.imGroup.list(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"total_records": 1,
"groups": [
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "Group Test1",
"total_members": 40,
"option_search_by_domain": false,
"option_search_by_account": true,
"option_search_by_ma_account": false,
"last_modified_time": "2016-04-16T07:45:41Z"
}
]
}
Arguments |
---|
Get IM Group Info
Get a IM group on Zoom via ID, return the group info.
Definition
POST https://api.zoom.us/v1/im/group/get
Zoom.imGroup.get();
Example Request
$ curl https://api.zoom.us/v1/im/group/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id"
}
Zoom.imGroup.get(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "Group Test",
"total_members": 2,
"option_search_by_domain": false,
"option_search_by_account": true,
"option_search_by_ma_account": false
}
Arguments | |
---|---|
id required | Group ID. |
Edit A IM Group
Edit a IM group on Zoom, return the new group info.
Definition
POST https://api.zoom.us/v1/im/group/edit
Zoom.imGroup.update();
Example Request
$ curl https://api.zoom.us/v1/im/group/edit \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id",
ame: "Group Name"
}
Zoom.imGroup.update(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"group_id": "unique_id",
"account_id": "unique_id",
"name": "New Group Test",
"total_members": 0,
"option_search_by_domain": false,
"option_search_by_account": true,
"option_search_by_ma_account": false
}
Arguments | |
---|---|
id required | Group ID. |
name optional | Group name, must be unique in one account. |
type optional | Group type, Normal: normal group, Restricted: Restricted group, Shared: Shared group. Default: Normal |
option_search_by_domain optional | Others in the same email domain can search members. Default: false |
option_search_by_account optional | Others under same account can search members. Default: false |
option_search_by_ma optional | Others under same master account, including all sub accounts can search members. Default: false |
Delete IM Group
Delete a IM group on Zoom, return the deleted group ID.
Definition
POST https://api.zoom.us/v1/im/group/delete
Zoom.imGroup.delete();
Example Request
$ curl https://api.zoom.us/v1/im/group/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id"
}
Zoom.imGroup.delete(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deleted_at": "2015-08-20T08:41:58Z",
"deleted_count": 1
}
Arguments | |
---|---|
id required | Group ID. |
List IM Group Members
Lists the members of a IM group on Zoom.
Definition
POST https://api.zoom.us/v1/im/group/member/list
Zoom.imGroup.memberList();
Example Request
$ curl https://api.zoom.us/v1/im/group/member/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id"
}
Zoom.imGroup.memberList(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 1,
"members": [
{
"id": "unique_id",
"email": "user@company.com",
"first_name": "Zoomie",
"last_name": "Userton",
"pic_url": "https://ssotest.zoom.us/p/6EoubcvJR7eF2grNXJkrHA/f2003a9c-3095-4865-8536-03cc6f211e86-9569"
}
]
}
Arguments | |
---|---|
id required | Group ID. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Add Group Members
Add members to a group on Zoom.
Definition
POST https://api.zoom.us/v1/group/member/add
Zoom.imGroup.memberAdd();
Example Request
$ curl https://api.zoom.us/v1/group/member/add \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d member_ids="unique_id,unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id",
member_ids: "unique_id,unique_id"
}
Zoom.imGroup.memberAdd(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"add_at": "2015-08-20T08:57:38Z",
"add_count": 2
}
Arguments | |
---|---|
id required | Group ID. |
member_ids required | The member IDs, separated by comma |
Delete IM Group Members
Delete members of a IM group on Zoom.
Definition
POST https://api.zoom.us/v1/im/group/member/delete
Zoom.imGroup.memberDelete();
Example Request
$ curl https://api.zoom.us/v1/im/group/member/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id" \
-d member_ids="unique_id,unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var group = {
id: "unique_id",
member_ids: "unique_id,unique_id"
}
Zoom.imGroup.memberDelete(group, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deleted_at": "2015-08-20T08:57:38Z",
"deleted_count": 2
}
Arguments | |
---|---|
id required | Group ID. |
member_ids required | The member IDs, separated by comma |
Cloud Recording
The following API calls go over the management and deleting of Cloud Recordings through Zooms REST API calls.
List Recording
List all the cloud recording meetings on Zoom.
Definition
POST https://api.zoom.us/v1/recording/list
Zoom.recording.list();
Example Request
$ curl https://api.zoom.us/v1/recording/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d host_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var recording = {
host_id: "unique_id"
}
Zoom.recording.list(recording, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 15,
"total_records": 1,
"meetings": [
{
"uuid": "unique_id",
"meeting_number": 123456789,
"host_id": "unique_id",
"account_id": "unique_id",
"topic": "Meeting Topic",
"start_time": "2014-11-06T04:10:10Z",
"timezone": "America/Los_Angeles",
"duration": 999,
"total_size": 4324324324,
"recording_count": 1,
"recording_files": [
{
"id": "unique_id",
"meeting_id": "unique_id",
"recording_start": "2014-11-06T04:14:10Z",
"recording_end": "2014-11-06T04:24:10Z",
"file_type": "M4A",
"file_size": 432432,
"status" : "completed",
"play_url": "https://brand.zoom.us/recording/play/HzMyuI23bqxlJLVJLrww3L9ZuFeZEvYtG0vQ6pHhp6Twr6GPjX4Qks_CJak7jrU2",
"download_url": "https://brand.zoom.us/recording/download/HzMyuI23bqxlJLVJLrww3L9ZuFeZEvYtG0vQ6pHhp6Twr6GPjX4Qks_CJak7jrU2"
}
]
}
]
}
Arguments | |
---|---|
host_id required | Meeting host user ID. Can be any user under this account. |
meeting_number optional | The meeting number. |
from optional | The meeting start time after this date, MM/dd/yyyy hh:mm a. For example: 11/05/2014 09:05 pm. Use the host’s time zone, if host has not set time zone, will use GMT. |
to optional | The meeting start time before this date, MM/dd/yyyy hh:mm a. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
List Recording For MC (On Premise)
Lists all the cloud recordings meetings on a Meeting Connector
Definition
POST https://api.zoom.us/v1/mc/recording/list
Example Request
$ curl https://api.zoom.us/v1/mc/recording/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d host_id=unique_id
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 15,
"total_records": 1,
"meetings": [
{
"uuid": "unique_id",
"meeting_number": 123456789,
"host_id": "unique_id",
"account_id": "unique_id",
"topic": "Meeting Topic",
"start_time": "2014-11-06T04:10:10Z",
"timezone": "America/Los_Angeles",
"duration": 999,
"total_size": 4324324324,
"recording_count": 1,
"recording_files": [
{
"id": "unique_id",
"meeting_id": "unique_id",
"recording_start": "2014-11-06T04:14:10Z",
"recording_end": "2014-11-06T04:24:10Z",
"file_type": "M4A",
"file_size": 432432,
"status" : "completed",
"play_url": "https://brand.zoom.us/recording/play/HzMyuI23bqxlJLVJLrww3L9ZuFeZEvYtG0vQ6pHhp6Twr6GPjX4Qks_CJak7jrU2",
"download_url": "https://brand.zoom.us/recording/download/HzMyuI23bqxlJLVJLrww3L9ZuFeZEvYtG0vQ6pHhp6Twr6GPjX4Qks_CJak7jrU2"
}
]
}
]
}
Arguments | |
---|---|
host_id required | Meeting host user ID. Can be any user under this account. |
meeting_number optional | The meeting number. |
from optional | The meeting start time after this date, MM/dd/yyyy hh:mm a. For example: 11/05/2014 09:05 pm. Use the host’s time zone, if host has not set time zone, will use GMT. |
to optional | The meeting start time before this date, MM/dd/yyyy hh:mm a. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Recording
Get the recorded meeting on either Zoom cloud or on-prem.
Definition
POST https://api.zoom.us/v1/recording/get
Zoom.recording.get();
Example Request
$ curl https://api.zoom.us/v1/recording/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d meeting_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var recording = {
meeting_id: "unique_id"
}
Zoom.recording.get(recording, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"uuid": "unique_id",
"meeting_number": 123456789,
"host_id": "unique_id",
"account_id": "unique_id",
"topic": "Meeting Topic",
"start_time": "2015-04-13T01:06:04Z",
"timezone": "UTC",
"duration": 1,
"total_size": 686496,
"recording_count": 3,
"recording_files": [
{
"id": "unique_id",
"meeting_id": "unique_id",
"recording_start": "2015-04-13T01:06:36Z",
"recording_end": "2015-04-13T01:06:47Z",
"file_type": "MP4",
"file_size": 438482,
"status" : "completed",
"play_url": "https://brand.zoom.us/recording/play/HzMyuI23bqxlJLVJLrww3L9ZuFeZEvYtG0vQ6pHhp6Twr6GPjX4Qks_CJak7jrU2",
"download_url": "https://brand.zoom.us/recording/download/HzMyuI23bqxlJLVJLrww3L9ZuFeZEvYtG0vQ6pHhp6Twr6GPjX4Qks_CJak7jrU2"
}
]
}
Arguments | |
---|---|
meeting_id required | The meeting ID. |
Delete Recording
Delete recorded meeting either on Zoom cloud or on-premise.
Definition
POST https://api.zoom.us/v1/recording/delete
Zoom.recording.delete();
Example Request
$ curl https://api.zoom.us/v1/recording/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d meeting_id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var recording = {
meeting_id: "unique_id"
}
Zoom.recording.delete(recording, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deleted_at": "2012-11-25T12:00:00Z"
}
Arguments | |
---|---|
meeting_id required | The meeting ID. Example: ucc69C82Q5mTNyCRWE29Aw== Or B9C73AF4-2F36-4399-9337-2091584DBD03 |
file_id optional | The file ID, if given this, will only delete this one file, if not given this, will delete all files of the meeting |
Device
The following API calls go over the creation, management, and deleting of H.323/SIP Devices through Zooms REST API calls.
Create a H.323/SIP Device
Create a H.323/SIP Device on your Zoom account.
Definition
POST https://api.zoom.us/v1/h323/device/create
Zoom.device.create();
Example Request
$ curl https://api.zoom.us/v1/h323/device/create \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d name="New Device" \
-d ip="192.168.1.10" \
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var device = {
name: "Device Name",
ip: "192.168.1.10"
}
Zoom.device.create(device, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"name": "New Device",
"ip": "192.168.1.10",
"protocol_type": 1,
"encryption_type": 2
}
Arguments | |
---|---|
name required | Display Name. |
ip required | IP Address or H.323 Extension. |
protocol_type optional | Protocol type. 1 means H.323, 2 means SIP. Default: 1 |
encryption_type optional | Encryption type. 0 means No, 1 means Yes, 2 means Auto. Default: 2 |
List H.323/SIP Devices
List H.323/SIP Devices on your Zoom account.
Definition
POST https://api.zoom.us/v1/h323/device/list
Zoom.device.list();
Example Request
$ curl https://api.zoom.us/v1/h323/device/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.device.list(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 1,
"devices": [
{
"id": "unique_id",
"name": "New Device",
"ip": "192.168.1.10",
"protocol_type": 1,
"encryption_type": 2
}
]
}
Arguments | |
---|---|
page_size optional | The amount of records returns within a single API call. Defaults to 30. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Update a H.323/SIP Device
Update a H.323/SIP Device on your Zoom account.
Definition
POST https://api.zoom.us/v1/h323/device/update
Zoom.device.update();
Example Request
$ curl https://api.zoom.us/v1/h323/device/update \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
-d id=unique_id
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var device = {
id: "unique_id",
}
Zoom.device.update(device, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"updated_at": "2017-03-14T09:27:03Z"
}
Arguments | |
---|---|
id required | Device ID. |
name optional | Display Name. |
ip optional | IP Address or H.323 Extension. |
protocol_type optional | Protocol type. 1 means H.323, 2 means SIP. Default: 1 |
encryption_type optional | Encryption type. 0 means No, 1 means Yes, 2 means Auto. Default: 2 |
Delete a H.323/SIP Device
Delete a H.323/SIP Device on your Zoom account.
Definition
POST https://api.zoom.us/v1/h323/device/delete
Zoom.device.delete();
Example Request
$ curl https://api.zoom.us/v1/h323/device/delete \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id="unique_id"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var device = {
id: "unique_id",
}
Zoom.device.delete(device, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"id": "unique_id",
"deleted_at": "2017-03-14T09:27:15Z"
}
Arguments | |
---|---|
id required | Device ID. |
Archived Chat
The following API calls go over the creation of Chat Reports through Zooms REST API calls.
Get Chat History List
Get chat history list for a specified time period.
Definition
POST https://api.zoom.us/v1/chat/list
Zoom.chat.list();
Example Request
$ curl https://api.zoom.us/v1/chat/list \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d access_token=unique_id \
-d from="2017-03-10" \
-d to="2-17-03-10"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var chat = {
access_token: "unique_id",
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.chat.list(chat, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"from": "2016-01-16",
"to": "2016-01-22",
"page_size": 30,
"page_count": 1,
"next_page_token": "",
"chat_list": [
{
"session_id": "unique_id",
"type": "Group",
"participants": "",
"group_name": "zoom test1",
"last_message_send_time": "2016-01-18T06:40:56Z"
}
]
}
Arguments | |
---|---|
access_token required | Archived chat messages access token. Admin who has the view privilege of Archived chat messages will get it. |
from required | Start date. |
to required | End date. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 30 records. Default: 30 |
email optional | Email query condition. |
next_page_token optional | Used to paginate through large result sets. A next page token will be returned whenever the set of available chat history list exceeds 100. The expiration period is 30 minutes. |
Get Chat Messages
Get chat messages for a specified period.
Definition
POST https://api.zoom.us/v1/chat/get
Zoom.chat.get();
Example Request
$ curl https://api.zoom.us/v1/chat/get \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d access_token=unique_id \
-d session_id=unique_id \
-d from="2017-03-10" \
-d to="2-17-03-10"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var chat = {
access_token: "unique_id",
session_id: "unique_id",
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.chat.get(chat, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"session_id": "unique_id",
"group_name": "zoom",
"from": "2016-01-16",
"to": "2016-01-22",
"page_size": 30,
"page_count": 1,
"next_page_token": "",
"chat_messages": [
{
"message": "test1",
"sender": "",
"date_time": "2016-01-18T06:40:56Z"
}
]
}
Arguments | |
---|---|
access_token required | Archived chat messages access token. Admin who has the view privilege of Archived chat messages will get it. |
session_id required | Session Id of chat messages. |
from required | Start date. |
to required | End date. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 30 records. Default: 30 |
next_page_token optional | Used to paginate through large result sets. A next page token will be returned whenever the set of available chat history list exceeds 100. The expiration period is 30 minutes. |
Report
The following API calls go over the creation of Reports through Zooms REST API calls
Get Account Report
Get account report for a specified period.
Definition
POST https://api.zoom.us/v1/report/getaccountreport
Zoom.report.getAccount();
Example Request
$ curl https://api.zoom.us/v1/report/getaccountreport \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d from="2013-01-11T08:18:09Z" \
-d to="2013-02-11T08:18:09Z"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var report = {
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.report.getAccount(report, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 5,
"from": "2013-5-19",
"to": "2013-5-20",
"total_meetings": 50,
"total_participants": 100,
"total_meeting_minutes": 100,
"users": [
{
"user_id": "bNsPi5hCQ-qOzWn2EeCXJA",
"email": "john@sample.com",
"type": 2,
"meetings": 10,
"participants": 56,
"meeting_minutes": 300,
"last_client_version": "1.0.18584.0225",
"last_login_time": "2013-02-11T08:18:09Z"
}
]
}
Arguments | |
---|---|
from required | Start date. |
to required | End date. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Audio Report
Get user report for a specified period.
Definition
POST https://api.zoom.us/v1/report/getaudioreport
Zoom.report.getAudio();
Example Request
$ curl https://api.zoom.us/v1/report/getaudioreport \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d from="2013-01-11T08:18:09Z" \
-d to="2013-02-11T08:18:09Z"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var report = {
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.report.getAudio(report, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"from": "2016-01-08",
"to": "2016-01-21",
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 1,
"telephony_usage": [
{
"meeting_id": 2932547621,
"phone_number": "+86 8208",
"type": "call-out",
"host_name": "test",
"host_email": "zoom.test@zoom.us",
"department": "",
"start_time": "2016-01-12T02:25:34Z",
"end_time": "2016-01-12T02:26:48Z",
"duration": 2,
"total": 0.12
}
]
}
Arguments | |
---|---|
from required | Start date. |
to required | End date. |
type optional | Audio type: 1 means Toll-free Call-in & Call-out. 2 means Toll. Default: 1 |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Daily Report
Get daily report for one month, can only get daily report for recent 3 months.
Definition
POST https://api.zoom.us/v1/report/getdailyreport
Zoom.report.getDaily();
Example Request
$ curl https://api.zoom.us/v1/report/getdailyreport \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d year=2013 \
-d month=5
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var report = {
year: 2017,
month: 6
}
Zoom.report.getDaily(report, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"year": 2013,
"month": 5,
"dates": [
{
"meetings": 0,
"date": "2013-05-01",
"new_user": 0,
"participants": 0,
"meeting_minutes": 0
}
]
}
Arguments | |
---|---|
year required | Year for this report. |
month required | Month for this report. |
Get User Report
Get user report for a specified period.
Definition
POST https://api.zoom.us/v1/report/getuserreport
Zoom.report.getUser();
Example Request
$ curl https://api.zoom.us/v1/report/getuserreport \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d user_id=unique_id \
-d from="2013-01-11T08:18:09Z" \
-d to="2013-02-11T08:18:09Z"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var report = {
user_id: "unique_id",
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.report.getUser(report, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 5,
"from": "2013-5-19",
"to": "2013-5-20",
"meetings": [
{
"number": 111111111,
"topic": "Meeting Topic",
"start_time": "2013-02-11T08:18:09Z",
"end_time": "2013-02-11T09:18:09Z",
"duration": 60,
"participants": [
{
"name": "John",
"join_time": "2013-02-11T08:30:09Z",
"leave_time": "2013-02-11T08:50:09Z"
}
]
}
]
}
Arguments | |
---|---|
user_id required | The user to generate the report. |
from required | Start date. |
to required | End date. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Dashboard
The following API calls go over the creation of Dashboard Reports through Zooms REST API calls. Please see our Dashboard documentation for pre-requisites for Dashboard API access.
Get Meeting List
Get Live Meetings and past meetings for a specified period
Definition
POST https://api.zoom.us/v1/metrics/meetings
Zoom.dashboard.meetings();
Example Request
$ curl https://api.zoom.us/v1/metrics/meetings \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d type=1 \
-d from="2015-03-12" \
-d to="2015-03-12"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
type: 1,
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.dashboard.meetings(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"from": "2015-08-02",
"to": "2015-09-02",
"page_count": 2,
"page_number": 1,
"page_size": 30,
"total_records": 49,
"type": "Past Meetings",
"meetings": [
{
"uuid": "unique_id",
"id": 123456789,
"host": "Zoomie Userton",
"email": "user@company.com",
"user_type": "Pro",
"start_time": "2015-08-29T05:36:56Z",
"end_time": "2015-08-29T06:36:56Z",
"duration": "4 mins",
"participants": 2,
"has_pstn": false,
"has_voip": true,
"has_3rd_party_audio": false,
"has_video": true,
"has_screen_share": false,
"recording": 0
}
]
}
Arguments | |
---|---|
type required | Meeting list type. 1 means live meetings. 2 means past meetings. 3 means past one meetings Default: 1 |
from required | Start date. Only for past meetings. |
to required | End date. Only for past meetings. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 100 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Meeting Detail
Get live and past meeting details
Definition
POST https://api.zoom.us/v1/metrics/meetingdetail
Zoom.dashboard.meeting();
Example Request
$ curl https://api.zoom.us/v1/metrics/meetingdetail \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d meeting_id="unique_id" \
-d type=1
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
meeting_id: "unique_id",
type: 1
}
Zoom.dashboard.meeting(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"uuid": "unique_id",
"id": 123456789,
"type": "Past Meeting",
"host": "Zoomie Userton",
"email": "user@company.com",
"user_type": "Pro",
"start_time": "2015-08-30T05:36:56Z",
"end_time": "2015-08-30T06:36:56Z",
"duration": "4 mins",
"has_pstn": false,
"has_voip": true,
"has_3rd_party_audio": false,
"has_video": true,
"has_screen_share": false,
"recording": 0,
"participants_count": 2,
"page_count": 1,
"page_number": 1,
"page_size": 30,
"participants": [
{
"id": "unique_id",
"user_id": "unique_id",
"user_name": "Zoomie Userton",
"device": "Mac",
"ip_address": "117.83.222.228",
"cn": "CN",
"city": "Nanjing",
"network_type": "Wifi",
"join_time": "2017-02-18T01:44:47Z",
"leave_time": "2017-02-18T01:45:58Z",
"share_application": true,
"share_desktop": true,
"share_whiteboard": true,
"recording": true
}
]
}
Arguments | |
---|---|
meeting_id required | The meeting ID Example: ucc69C82Q5mTNyCRWE29Aw== Or B9C73AF4-2F36-4399-9337-2091584DBD03 |
type required | Meeting type. 1 means live meeting. 2 means past meeting. 3 means past one meetings. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 100 records. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Webinar List
Get live webinars and past webinars for a specified period.
Definition
POST https://api.zoom.us/v1/metrics/webinars
Zoom.dashboard.webinars();
Example Request
$ curl https://api.zoom.us/v1/metrics/webinars \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d type=1 \
-d from="2017-03-01" \
-d to="2017-03-01"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
type: 1,
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.dashboard.webinars(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"from": "2015-08-02",
"to": "2015-09-02",
"page_count": 2,
"page_number": 1,
"page_size": 30,
"total_records": 49,
"type": "Past Webinars",
"meetings": [
{
"uuid": "unique_id",
"id": 123456789,
"host": "Zoomie Userton",
"email": "user@company.com",
"user_type": "Pro",
"start_time": "2015-08-29T05:36:56Z",
"end_time": "2015-08-29T06:36:56Z",
"duration": "4 mins",
"participants": 2,
"has_pstn": false,
"has_voip": true,
"has_3rd_party_audio": false,
"has_video": true,
"has_screen_share": false,
"recording": 0
}
]
}
Arguments | |
---|---|
type required | Webinar list type. 1 means live webinars. 2 means past webinars. Default: 1 |
from required | Start date. Only for past webinars. |
to required | End date. Only for past webinars. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 100 webinars. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Webinar Detail
Get live and past webinar details
Definition
POST https://api.zoom.us/v1/metrics/webinardetail
Zoom.dashboard.webinar();
Example Request
$ curl https://api.zoom.us/v1/metrics/webinardetail \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d meeting_id=unique_id \
-d type=1
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
meeting_id: "unique_id",
type: 1
}
Zoom.dashboard.webinar(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"uuid": "unique_id",
"id": 123456789,
"type": "Past Webinar",
"host": "Zoomie Userton",
"email": "user@company.com",
"user_type": "Pro",
"start_time": "2015-08-30T05:36:56Z",
"end_time": "2015-08-30T06:36:56Z",
"duration": "4 mins",
"has_pstn": false,
"has_voip": true,
"has_3rd_party_audio": false,
"has_video": true,
"has_screen_share": false,
"recording": 0,
"participants_count": 2,
"page_count": 1,
"page_number": 1,
"page_size": 30,
"participants": [
{
"id": "unique_id",
"user_id": "unique_id",
"user_name": "Zoomie Userton",
"device": "Mac",
"ip_address": "117.83.222.228",
"cn": "CN",
"city": "Nanjing",
"network_type": "Wifi",
"join_time": "2017-02-18T01:44:47Z",
"leave_time": "2017-02-18T01:45:58Z",
"share_application": true,
"share_desktop": true,
"share_whiteboard": true,
"recording": true
}
]
}
Arguments | |
---|---|
meeting_id required | The meeting ID Example: ucc69C82Q5mTNyCRWE29Aw== Or B9C73AF4-2F36-4399-9337-2091584DBD03 |
type required | Meeting type. 1 means live webinar. 2 means past webinar. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 100 records. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Meeting Share Details
Get meeting share/recording details.
Definition
POST https://api.zoom.us/v1/metrics/sharerecorddetail
Example Request
$ curl https://api.zoom.us/v1/metrics/sharerecorddetail \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d meeting_id="unique_id"
Example Response
{
"page_count": 1,
"page_number": 10,
"page_size": 1,
"total_records": 1,
"participants": [
{
"id": "unique_id",
"user_id": "16778240",
"user_name": "Zoomie Userton",
"details": [
{
"content": "desktop",
"start_time": "2017-08-09T06:59:05Z",
"end_time": "2017-08-09T06:59:12Z"
},
{
"content": "cloud_recording",
"start_time": "2017-08-09T06:58:50Z",
"end_time": "2017-08-09T06:58:48Z"
}
]
}
]
}
Arguments | |
---|---|
meeting_id required | Meeting ID. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 300 meetings. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
List Zoom Rooms
List all Zoom Rooms on Zoom.
Definition
POST https://api.zoom.us/v1/metrics/zoomrooms
Zoom.dashboard.rooms();
Example Request
$ curl https://api.zoom.us/v1/metrics/zoomrooms \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
Zoom.dashboard.rooms(function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 2,
"zoom_rooms": [
{
"id": "unique_id",
"room_name": "zoom room1",
"email": "zoomroom1@zoom.us",
"account_type": "Work Email",
"passcode": "123",
"status": "Available",
"messages": {
"last_started_time": "",
"running_time": "",
"selected_microphone": "",
"selected_speaker": "",
"selected_camera": ""
},
"meeting_id": ""
}
]
}
Arguments | |
---|---|
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 30 records. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get Zoom Room Detail
Get a Zoom Room on Zoom via Zoom ID, return the Zoom Room info.
Definition
POST https://api.zoom.us/v1/metrics/zoomroomdetail
Zoom.dashboard.room();
Example Request
$ curl https://api.zoom.us/v1/metrics/zoomroomdetail \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d id=unique_id \
-d from="2017-03-01" \
-d to="2017-03-01"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
id: "unique_id",
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.dashboard.room(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"from": "2016-04-12",
"to": "2016-04-13",
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 1,
"zoom_room": {
"id": "unique_id",
"room_name": "zoom room",
"email": "zoomroom@zoom.us",
"account_type": "Work Email",
"passcode": "123",
"status": "Available",
"messages": {
"last_started_time": "",
"running_time": "",
"selected_microphone": "",
"selected_speaker": "",
"selected_camera": ""
},
"meeting_id": ""
},
"live_meeting": {
"uuid": "",
"id": 0,
"host": "",
"email": "",
"user_type": "",
"start_time": "",
"end_time": "",
"duration": "",
"participants": 0,
"has_pstn": false,
"has_voip": false,
"has_3rd_party_audio": false,
"has_video": false,
"has_screen_share": false,
"recording": 0
},
"past_meetings": [
{
"uuid": "unique_id",
"id": 123456789,
"host": "Zoomie Userton",
"email": "user@company.com",
"user_type": "",
"start_time": "",
"end_time": "",
"duration": "",
"participants": 1,
"has_pstn": false,
"has_voip": false,
"has_3rd_party_audio": false,
"has_video": false,
"has_screen_share": false,
"recording": 0
}
]
}
Arguments | |
---|---|
id required | The zoom room ID. Example: ucc69C82Q5mTNyCRWE29Aw== Or B9C73AF4-2F36-4399-9337-2091584DBD03 |
from required | Start date. |
to required | End date. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 30 records. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get User QoS
Get the users quality of service in a Zoom Meeting
Definition
POST https://api.zoom.us/v1/metrics/qos
Zoom.dashboard.qos();
Example Request
$ curl https://api.zoom.us/v1/metrics/qos \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d meeting_id=unique_id \
-d type=1
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
meeting_id: "unique_id",
type: 1
}
Zoom.dashboard.qos(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"meeting_id": "unique_id",
"user_id": "unique_id",
"type": "Past Meeting",
"device": "Mac",
"ip_address": "112.80.63.6",
"cn": "CN",
"city": "Nanjing",
"version": "3.5.35288.1217",
"user_qos": [
{
"dateTime": "2015-08-30T06:40:56Z",
"audio_input": {
"bitrate": "29 kbps",
"latency": "39 ms",
"jitter": "11 ms",
"avg_loss": "2.5%",
"max_loss": "5.0%"
},
"audio_output": {
"bitrate": "",
"latency": "",
"jitter": "",
"avg_loss": "",
"max_loss": ""
},
"video_input": {
"bitrate": "77 kbps",
"latency": "84 ms",
"jitter": "4 ms",
"avg_loss": "28.3%",
"max_loss": "28.3%",
"resolution": "480*270",
"frame_rate": "3 fps"
},
"video_output": {
"bitrate": "",
"latency": "",
"jitter": "",
"avg_loss": "",
"max_loss": "",
"resolution": "",
"frame_rate": ""
},
"as_input": {
"bitrate": "",
"latency": "",
"jitter": "",
"avg_loss": "",
"max_loss": "",
"resolution": "",
"frame_rate": ""
},
"as_output": {
"bitrate": "",
"latency": "",
"jitter": "",
"avg_loss": "",
"max_loss": "",
"resolution": "",
"frame_rate": ""
},
"cpu_usage": {
"zoom_min_cpu_usage": "1%",
"zoom_avg_cpu_usage": "3%",
"zoom_max_cpu_usage": "5%",
"system_max_cpu_usage": "20%"
}
}
]
}
Arguments | |
---|---|
meeting_id required | The meeting ID. |
type required | Meeting type. 1 means live meeting. 2 means past meeting. |
user_id optional | The user ID to get user qos. |
page_size optional | The amount of records returns within a single API call. Defaults to 10. Max of 10 records. Default: 10 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Get CRC Port Usage
Get CRC Port usage hour by hour for a specified time period.
Definition
POST https://api.zoom.us/v1/metrics/crc
Zoom.dashboard.crc();
Example Request
$ curl https://api.zoom.us/v1/metrics/crc \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d from="2015-03-12" \
-d to="2015-03-12"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.dashboard.crc(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"from": "2015-03-12",
"to": "2015-03-12",
"crc_ports_usage": [
{
"date_time": "2015-03-12",
"crc_ports_hour_usage": [
{
"hour": "00",
"max_usage": 1,
"total_usage": 3
}
]
}
]
}
Arguments | |
---|---|
from required | Start date. |
to required | End date. |
Get IM
Get statistics of Zoom IM
Definition
POST https://api.zoom.us/v1/metrics/im
Zoom.dashboard.im();
Example Request
$ curl https://api.zoom.us/v1/metrics/im \
-X POST \
-d api_key=your_api_key \
-d api_secret=your_api_secret \
-d from="2015-03-12" \
-d to="2015-03-12"
var Zoom = require("zoomus")({
key : "your_api_key",
secret : "your_api_secret"
});
var dashboard = {
from: "2013-01-11T08:18:09Z",
to: "2013-02-11T08:18:09Z"
}
Zoom.dashboard.im(dashboard, function(res){
if(res.error){
//handle error
} else {
console.log(res);
}
});
Example Response
{
"from": "2016-04-12",
"to": "2016-04-13",
"page_count": 1,
"page_number": 1,
"page_size": 30,
"total_records": 10,
"users": [
{
"user_id": "unique_id",
"user_name": "Zoomie Userton",
"email": "user@company.com",
"total_send": 0,
"total_receive": 0,
"group_send": 0,
"group_receive": 0,
"calls_send": 0,
"calls_receive": 0,
"files_send": 0,
"files_receive": 0,
"images_send": 0,
"images_receive": 0,
"voice_send": 0,
"voice_receive": 0,
"videos_send": 0,
"videos_receive": 0,
"emoji_send": 0,
"emoji_receive": 0
}
]
}
Arguments | |
---|---|
from required | Start date. |
to required | End date. |
page_size optional | The amount of records returns within a single API call. Defaults to 30. Max of 30 records. Default: 30 |
page_number optional | Current page number of returned records. Default to 1. Default: 1 |
Recurrence Object
Daily Recurrence Example
{
"type" : 1,
"repeat_interval" : 2,
"end_date_time" : "2017-1-9T3:00:00Z"
}
Weekly Recurrence Example
{
"type" : 2,
"repeat_interval" : 2,
"weekly_days" : "1,2,3,4",
"end_times" : 2
}
Monthly Recurrence Examples
{
"type" : 3,
"repeat_interval" : 2,
"monthly_week" : 2,
"monthly_week_day" : 2,
"end_date_time" : "2017-1-9T3:00:00Z"
}
{
"type" : 3,
"repeat_interval" : 2,
"monthly_day" : 2,
"end_times" : 2
}
Key | Value |
---|---|
type | Recurrence Meeting Type. 1 means Daily, 2 means Weekly, 3 means Monthly |
repeat_interval | Recurrence Meeting Repeat Interval. Defaults to 1. For a Daily Meeting, max of 90. For a Weekly Meeting, max of 12. For a Monthly Meeting, max of 3. |
weekly_days | Recurrence Meeting Occurs on week days, multiple value separated by comma. 1 means Sunday, 2 means Monday, 3 means Tuesday, 4 means Wednesday, 5 means Thursday, 6 means Friday, 7 means Saturday. |
monthly_day | Recurrence Meeting Occurs on a month day. The value range is from 1 to 31. |
monthly_week | Recurrence Meeting Occurs on the week of a month. -1 means Last week, 1 means First week, 2 means Second week, 3 means Third week, 4 means Fourth week. |
monthly_week_day | Recurrence Meeting Occurs on the week day of a month. A single value: 1 means Sunday, 2 means Monday, 3 means Tuesday, 4 means Wednesday, 5 means Thursday, 6 means Friday, 7 means Saturday. |
end_times | Recurrence Meeting End occurrences times. Defaults to 1. Max of 50. |
end_date_time | Recurrence Meeting End Date. Should be UTC time, such as 2012-11-25T12:00:00Z. |
Plans
Additional Plan. Should be JSON format as below
{
"type": "large200_monthly",
"hosts": 20
}
Base Plans
Plan | Description |
---|---|
trial | Free Trial |
monthly | Pro Monthly Plan |
yearly | Pro Yearly Plan |
business_monthly | Business Monthly Plan |
business_yearly | Business Yearly Plan |
edu20 | Education |
zroom_monthly | Zoom Rooms Monthly Plan |
zroom_yearly | Zoom Rooms Yearly Plan |
Zoom Room Plans
Plan | Description |
---|---|
zroom_monthly | Additional Zoom Rooms Monthly Plan |
zroom_yearly | Additional Zoom Rooms Yearly Plan |
H.323/SIP Device Room Connector Plans
Plan | Description |
---|---|
roomconnector_monthly | Additional H.323/SIP Room Connector Monthly Plan |
roomconnector_yearly | Additional H.323/SIP Room Connector Yearly Plan |
Large Meeting Plans
Plan | Description |
---|---|
large100_monthly | Additional Large Meeting(100-Participants) Monthly Plan |
large100_yearly | Additional Large Meeting(100-Participants) Yearly Plan |
large200_monthly | Additional Large Meeting(200-Participants) Monthly Plan |
large200_yearly | Additional Large Meeting(200-Participants) Yearly Plan |
large300_monthly | Additional Large Meeting(300-Participants) Monthly Plan |
large300_yearly | Additional Large Meeting(300-Participants) Yearly Plan |
large500_monthly | Additional Large Meeting(500-Participants) Monthly Plan |
large500_yearly | Additional Large Meeting(500-Participants) Yearly Plan |
Webinar Plans
Plan | Description |
---|---|
webinar100_monthly | Additional Webinar(100-Participants) Monthly Plan |
webinar100_yearly | Additional Webinar(100-Participants) Yearly Plan |
webinar500_monthly | Additional Webinar(500-Participants) Monthly Plan |
webinar500_yearly | Additional Webinar(500-Participants) Yearly Plan |
webinar1000_monthly | Additional Webinar(1000-Participants) Monthly Plan |
webinar1000_yearly | Additional Webinar(1000-Participants) Yearly Plan |
webinar3000_monthly | Additional Webinar(3000-Participants) Monthly Plan |
webinar3000_yearly | Additional Webinar(3000-Participants) Yearly Plan |
webinar5000_monthly | Additional Webinar(5000-Participants) Monthly Plan |
webinar5000_yearly | Additional Webinar(5000-Participants) Yearly Plan |
webinar10000_monthly | Additional Webinar(10000-Participants) Monthly Plan |
webinar10000_yearly | Additional Webinar(10000-Participants) Yearly Plan |
Cloud Recording Plans
Plan | Description |
---|---|
cmr_monthly_commitment_40 | Additional Cloud Recording Monthly $40 Plan |
cmr_monthly_commitment_100 | Additional Cloud Recording Monthly $100 Plan |
cmr_monthly_commitment_500 | Additional Cloud Recording Monthly $500 Plan |
For Additional Audio Conferencing Plan, should be JSON format as below
{
"type": "tollfree_monthly_commitment_100",
"tollfree_country": "AU,AT",
"premium_country": "TW,TH",
"callout": 1,
"ddi_numbers":10
}
Audio Conferencing Plans
Plan | Description |
---|---|
tollfree_payongo | Additional Audio Conferencing Pay As You Go Plan |
tollfree_monthly_commitment_100 | Additional Audio Conferencing Monthly $100 Plan |
tollfree_monthly_commitment_500 | Additional Audio Conferencing Monthly $500 Plan |
- “tollfree_country”: Toll-free countries, multiple value separated by comma. For this parameter value please refer to the id value in tollfree countries list
- “premium_country”: Premium countries, multiple value separated by comma. For this parameter value please refer to the id value in premium countries list
- “callout”: Call-out type: 1 means US-only Call-out, 2 means US and International Call-out
- “ddi_numbers”: Dedicated Dial-In Numbers.
Lists
States
ID | Name |
---|---|
AK | Alaska |
AL | Alabama |
AP | Armed Forces Pacific |
AR | Arkansas |
AS | American Samoa |
AZ | Arizona |
CA | California |
CO | Colorado |
CT | Connecticut |
DC | District of Columbia |
DE | Delaware |
FL | Florida |
FM | Federated States of Micronesia |
GA | Georgia |
GU | Guam |
HI | Hawaii |
IA | Iowa |
ID | Idaho |
IL | Illinois |
IN | Indiana |
KS | Kansas |
KY | Kentucky |
LA | Louisiana |
MA | Massachusetts |
MD | Maryland |
ME | Maine |
MH | Marshall Islands |
MI | Michigan |
MN | Minnesota |
MO | Missouri |
MP | Northern Mariana Islands |
MS | Mississippi |
MT | Montana |
NC | North Carolina |
ND | North Dakota |
NE | Nebraska |
NH | New Hampshire |
NJ | New Jersey |
NM | New Mexico |
NV | Nevada |
NY | New York |
OH | Ohio |
OK | Oklahoma |
OR | Oregon |
PA | Pennsylvania |
PR | Puerto Rico |
PW | Palau |
RI | Rhode Island |
SC | South Carolina |
SD | South Dakota |
TN | Tennessee |
TX | Texas |
UT | Utah |
VA | Virginia |
VI | Virgin Islands |
VT | Vermont |
WA | Washington |
WV | West Virginia |
WI | Wisconsin |
WY | Wyoming |
AB | Alberta |
BC | British Columbia |
MB | Manitoba |
NB | New Brunswick |
NL | Newfoundland |
NS | Nova Scotia |
NU | Nunavut |
ON | Ontario |
PE | Prince Edward Island |
QC | Quebec |
SK | Saskatchewan |
NT | Northwest Territories |
YT | Yukon Territory |
AA | Armed Forces Americas |
AE | Armed Forces Europe, Middle East, & Canada |
Countries
ID | Name |
---|---|
PR | Puerto Rico |
PS | Palestinian Territories |
PT | Portugal |
PU | U.S. Miscellaneous Pacific Islands |
PW | Palau |
PY | Paraguay |
PZ | Panama Canal Zone |
QA | Qatar |
QO | Outlying Oceania |
AC | Ascension Island |
AD | Andorra |
AE | United Arab Emirates |
AF | Afghanistan |
AG | Antigua and Barbuda |
AI | Anguilla |
AL | Albania |
AM | Armenia |
AN | Netherlands Antilles |
AO | Angola |
AQ | Antarctica |
AR | Argentina |
AS | American Samoa |
AT | Austria |
RE | Reunion |
AU | Australia |
AW | Aruba |
AZ | Azerbaijan |
RO | Romania |
BA | Bosnia and Herzegovina |
BB | Barbados |
RS | Serbia |
BD | Bangladesh |
BE | Belgium |
RU | Russia |
BF | Burkina Faso |
BG | Bulgaria |
RW | Rwanda |
BH | Bahrain |
BI | Burundi |
BJ | Benin |
BL | Saint Barthélemy |
BM | Bermuda |
BN | Brunei |
BO | Bolivia |
SA | Saudi Arabia |
BQ | Bonaire, Saint Eustatius and Saba |
SB | Solomon Islands |
BR | Brazil |
SC | Seychelles |
BS | Bahamas |
SD | Sudan |
BT | Bhutan |
SE | Sweden |
BV | Bouvet Island |
SG | Singapore |
BW | Botswana |
SH | Saint Helena |
SI | Slovenia |
BY | Belarus |
SJ | Svalbard and Jan Mayen |
BZ | Belize |
SK | Slovakia |
SL | Sierra Leone |
SM | San Marino |
SN | Senegal |
SO | Somalia |
CA | Canada |
SR | Suriname |
CC | Cocos [Keeling] Islands |
SS | South Sudan |
CD | Congo [DRC] |
ST | Sao Tome and Principe |
CF | Central African Republic |
SV | El Salvador |
CH | Switzerland |
SZ | Swaziland |
CK | Cook Islands |
CL | Chile |
CM | Cameroon |
CN | China |
CO | Colombia |
CP | Clipperton Island |
TA | Tristan da Cunha |
CR | Costa Rica |
TC | Turks and Caicos Islands |
TD | Chad |
CS | Serbia and Montenegro |
CT | Canton and Enderbury Islands |
CU | Cuba |
TF | French Southern Territories |
CV | Cape Verde |
TG | Togo |
TH | Thailand |
CX | Christmas Island |
CY | Cyprus |
TJ | Tajikistan |
CZ | Czech Republic |
TK | Tokelau |
TL | Timor-Leste |
TM | Turkmenistan |
TN | Tunisia |
TO | Tonga |
TR | Turkey |
TT | Trinidad and Tobago |
DE | Germany |
TV | Tuvalu |
DG | Diego Garcia |
TW | Taiwan |
DJ | Djibouti |
TZ | Tanzania |
DK | Denmark |
DM | Dominica |
DO | Dominican Republic |
UA | Ukraine |
UG | Uganda |
DZ | Algeria |
UM | U.S. Minor Outlying Islands |
EA | Ceuta and Melilla |
EC | Ecuador |
US | United States |
EE | Estonia |
EG | Egypt |
EH | Western Sahara |
UY | Uruguay |
UZ | Uzbekistan |
VA | Vatican City |
VC | Saint Vincent and the Grenadines |
VD | North Vietnam |
ES | Spain |
ET | Ethiopia |
VE | Venezuela |
EU | European Union |
VG | British Virgin Islands |
VI | U.S. Virgin Islands |
VN | Vietnam |
VU | Vanuatu |
FI | Finland |
FJ | Fiji |
FK | Falkland Islands [Islas Malvinas] |
FM | Micronesia |
FO | Faroe Islands |
FQ | French Southern and Antarctic Territories |
FR | France |
WF | Wallis and Futuna |
FX | Metropolitan France |
WK | Wake Island |
GA | Gabon |
GB | United Kingdom |
WS | Samoa |
GD | Grenada |
GE | Georgia |
GF | French Guiana |
GH | Ghana |
GI | Gibraltar |
GL | Greenland |
GM | Gambia |
GP | Guadeloupe |
GR | Greece |
GS | South Georgia and the South Sandwich Islands |
GT | Guatemala |
GU | Guam |
GW | Guinea-Bissau |
GY | Guyana |
HK | Hong Kong |
HM | Heard Island and McDonald Islands |
HN | Honduras |
HR | Croatia |
YD | People’s Democratic Republic of Yemen |
HT | Haiti |
YE | Yemen |
HU | Hungary |
IC | Canary Islands |
ID | Indonesia |
YT | Mayotte |
IE | Ireland |
IL | Israel |
IM | Isle of Man |
IN | India |
IO | British Indian Ocean Territory |
ZA | South Africa |
IQ | Iraq |
IS | Iceland |
IT | Italy |
ZM | Zambia |
JM | Jamaica |
JO | Jordan |
JP | Japan |
JT | Johnston Island |
KE | Kenya |
KG | Kyrgyzstan |
KH | Cambodia |
KI | Kiribati |
KM | Comoros |
KN | Saint Kitts and Nevis |
KR | South Korea |
KW | Kuwait |
KY | Cayman Islands |
KZ | Kazakhstan |
LA | Laos |
LC | Saint Lucia |
LI | Liechtenstein |
LK | Sri Lanka |
LS | Lesotho |
LT | Lithuania |
LU | Luxembourg |
LV | Latvia |
LY | Libya |
MA | Morocco |
MC | Monaco |
MD | Moldova |
ME | Montenegro |
MF | Saint Martin |
MG | Madagascar |
MH | Marshall Islands |
MI | Midway Islands |
MK | Macedonia [FYROM] |
ML | Mali |
MM | Myanmar |
MN | Mongolia |
MO | Macau |
MP | Northern Mariana Islands |
MQ | Martinique |
MR | Mauritania |
MS | Montserrat |
MT | Malta |
MU | Mauritius |
MV | Maldives |
MW | Malawi |
MX | Mexico |
MY | Malaysia |
MZ | Mozambique |
NA | Namibia |
NC | New Caledonia |
NE | Niger |
NF | Norfolk Island |
NG | Nigeria |
NI | Nicaragua |
NL | Netherlands |
NO | Norway |
NP | Nepal |
NQ | Dronning Maud Land |
NR | Nauru |
NT | Neutral Zone |
NU | Niue |
NZ | New Zealand |
OM | Oman |
PA | Panama |
PC | Pacific Islands Trust Territory |
PE | Peru |
PF | French Polynesia |
PH | Philippines |
PK | Pakistan |
PL | Poland |
PM | Saint Pierre and Miquelon |
PN | Pitcairn Islands |
Timezones
ID | Name |
---|---|
Pacific/Midway | Midway Island, Samoa |
Pacific/Pago_Pago | Pago Pago |
Pacific/Honolulu | Hawaii |
America/Anchorage | Alaska |
America/Vancouver | Vancouver |
America/Los_Angeles | Pacific Time (US and Canada) |
America/Tijuana | Tijuana |
America/Edmonton | Edmonton |
America/Denver | Mountain Time (US and Canada) |
America/Phoenix | Arizona |
America/Mazatlan | Mazatlan |
America/Winnipeg | Winnipeg |
America/Regina | Saskatchewan |
America/Chicago | Central Time (US and Canada) |
America/Mexico_City | Mexico City |
America/Guatemala | Guatemala |
America/El_Salvador | El Salvador |
America/Managua | Managua |
America/Costa_Rica | Costa Rica |
America/Montreal | Montreal |
America/New_York | Eastern Time (US and Canada) |
America/Indianapolis | Indiana (East) |
America/Panama | Panama |
America/Bogota | Bogota |
America/Lima | Lima |
America/Halifax | Halifax |
America/Puerto_Rico | Puerto Rico |
America/Caracas | Caracas |
America/Santiago | Santiago |
America/St_Johns | Newfoundland and Labrador |
America/Montevideo | Montevideo |
America/Araguaina | Brasilia |
America/Argentina/Buenos_Aires | Buenos Aires, Georgetown |
America/Godthab | Greenland |
America/Sao_Paulo | Sao Paulo |
Atlantic/Azores | Azores |
Canada/Atlantic | Atlantic Time (Canada) |
Atlantic/Cape_Verde | Cape Verde Islands |
UTC | Universal Time UTC |
Etc/Greenwich | Greenwich Mean Time |
Europe/Belgrade | Belgrade, Bratislava, Ljubljana |
CET | Sarajevo, Skopje, Zagreb |
Atlantic/Reykjavik | Reykjavik |
Europe/Dublin | Dublin |
Europe/London | London |
Europe/Lisbon | Lisbon |
Africa/Casablanca | Casablanca |
Africa/Nouakchott | Nouakchott |
Europe/Oslo | Oslo |
Europe/Copenhagen | Copenhagen |
Europe/Brussels | Brussels |
Europe/Berlin | Amsterdam, Berlin, Rome, Stockholm, Vienna |
Europe/Helsinki | Helsinki |
Europe/Amsterdam | Amsterdam |
Europe/Rome | Rome |
Europe/Stockholm | Stockholm |
Europe/Vienna | Vienna |
Europe/Luxembourg | Luxembourg |
Europe/Paris | Paris |
Europe/Zurich | Zurich |
Europe/Madrid | Madrid |
Africa/Bangui | West Central Africa |
Africa/Algiers | Algiers |
Africa/Tunis | Tunis |
Africa/Harare | Harare, Pretoria |
Africa/Nairobi | Nairobi |
Europe/Warsaw | Warsaw |
Europe/Prague | Prague Bratislava |
Europe/Budapest | Budapest |
Europe/Sofia | Sofia |
Europe/Istanbul | Istanbul |
Europe/Athens | Athens |
Europe/Bucharest | Bucharest |
Asia/Nicosia | Nicosia |
Asia/Beirut | Beirut |
Asia/Damascus | Damascus |
Asia/Jerusalem | Jerusalem |
Asia/Amman | Amman |
Africa/Tripoli | Tripoli |
Africa/Cairo | Cairo |
Africa/Johannesburg | Johannesburg |
Europe/Moscow | Moscow |
Asia/Baghdad | Baghdad |
Asia/Kuwait | Kuwait |
Asia/Riyadh | Riyadh |
Asia/Bahrain | Bahrain |
Asia/Qatar | Qatar |
Asia/Aden | Aden |
Asia/Tehran | Tehran |
Africa/Khartoum | Khartoum |
Africa/Djibouti | Djibouti |
Africa/Mogadishu | Mogadishu |
Asia/Dubai | Dubai |
Asia/Muscat | Muscat |
Asia/Baku | Baku, Tbilisi, Yerevan |
Asia/Kabul | Kabul |
Asia/Yekaterinburg | Yekaterinburg |
Asia/Tashkent | Islamabad, Karachi, Tashkent |
Asia/Calcutta | India |
Asia/Kathmandu | Kathmandu |
Asia/Novosibirsk | Novosibirsk |
Asia/Almaty | Almaty |
Asia/Dacca | Dacca |
Asia/Krasnoyarsk | Krasnoyarsk |
Asia/Dhaka | Astana, Dhaka |
Asia/Bangkok | Bangkok |
Asia/Saigon | Vietnam |
Asia/Jakarta | Jakarta |
Asia/Irkutsk | Irkutsk, Ulaanbaatar |
Asia/Shanghai | Beijing, Shanghai |
Asia/Hong_Kong | Hong Kong |
Asia/Taipei | Taipei |
Asia/Kuala_Lumpur | Kuala Lumpur |
Asia/Singapore | Singapore |
Australia/Perth | Perth |
Asia/Yakutsk | Yakutsk |
Asia/Seoul | Seoul |
Asia/Tokyo | Osaka, Sapporo, Tokyo |
Australia/Darwin | Darwin |
Australia/Adelaide | Adelaide |
Asia/Vladivostok | Vladivostok |
Pacific/Port_Moresby | Guam, Port Moresby |
Australia/Brisbane | Brisbane |
Australia/Sydney | Canberra, Melbourne, Sydney |
Australia/Hobart | Hobart |
Asia/Magadan | Magadan |
SST | Solomon Islands |
Pacific/Noumea | New Caledonia |
Asia/Kamchatka | Kamchatka |
Pacific/Fiji | Fiji Islands, Marshall Islands |
Pacific/Auckland | Auckland, Wellington |
Asia/Kolkata | Mumbai, Kolkata, New Delhi |
Europe/Kiev | Kiev |
America/Tegucigalpa | Tegucigalpa |
Pacific/Apia | Independent State of Samoa |
Toll Free Countries
ID | Name |
---|---|
AR | Argentina |
AU | Australia |
AT | Austria |
BH | Bahrain |
BE | Belgium |
BR | Brazil |
BG | Bulgaria |
CA | Canada |
CL | Chile |
CN | China |
CO | Colombia |
HR | Croatia |
CY | Cyprus |
CZ | Czech Republic |
DK | Denmark |
DO | Dominican Republic |
FI | Finland |
FR | France |
DE | Germany |
GH | Ghana |
GR | Greece |
HK | Hong Kong |
HU | Hungary |
IN | India |
IE | Ireland |
IL | Israel |
IT | Italy |
JP | Japan |
KE | Kenya |
LV | Latvia |
LT | Lithuania |
LU | Luxembourg |
MO | Macau |
MY | Malaysia |
MT | Malta |
MX | Mexico |
NL | Netherlands |
NZ | New Zealand |
NO | Norway |
OM | Oman |
PA | Panama |
PE | Peru |
PH | Philippines |
PL | Poland |
PT | Portugal |
PR | Puerto Rico |
QA | Qatar |
RO | Romania |
RU | Russia |
SA | Saudi Arabia |
SG | Singapore |
SK | Slovakia |
SI | Slovenia |
ZA | South Africa |
KR | South Korea |
ES | Spain |
SE | Sweden |
CH | Switzerland |
TR | Turkey |
UA | Ukraine |
AE | United Arab Emirates |
GB | United Kingdom |
US | United States |
VE | Venezuela |
Premium Countries
ID | Name |
---|---|
IN | India |
ID | Indonesia |
PH | Philippines |
TW | Taiwan |
TH | Thailand |
AE | United Arab Emirates |
VN | Vietnam |