Users

  • OpenAPI Version: 3.1.1
  • API Version: 2

The User APIs allow developers to programatically access data related to users, groups, and contact groups.

Servers

  • URL: https://api.zoom.us/v2

Operations

List contact groups

  • Method: GET
  • Path: /contacts/groups
  • Tags: Contact Groups

List contact groups under an account.

Prerequisite: Pro or higher account.

Scopes: contact_group:read:admin

Rate Limit Label: Medium

Responses

Status: 200 **HTTP Status Code:** `200` List of contact groups returned.
Content-Type: application/json
  • groups

    array — List of contact group objects.

    Items:

    • description

      string — The group description.

    • group_id

      string — The group ID.

    • group_name

      string — The group name.

    • group_privacy

      integer, possible values: 1, 2, 3 — The contact group privacy configuration: `1` - Visible to anyone, searchable by anyone. `2` - Visible to members only, searchable by anyone. `3` - Visible to members only, searchable by members only.

  • next_page_token

    string — The next page token is used to paginate through large result sets. A next page token will be returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.

  • page_size

    integer — The number of records returned within a single API call.

Example:

{
  "groups": [
    {
      "group_id": "dir.JquKVDGlQ9K6S0QVWGcysw",
      "group_name": "Developers",
      "group_privacy": 1,
      "description": "A contact group for office A"
    }
  ],
  "next_page_token": "R4aF9Oj0fVM2hhezJTEmSKaBSkfesDwGy42",
  "page_size": 10
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account: {accountId}
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Create a contact group

  • Method: POST
  • Path: /contacts/groups
  • Tags: Contact Groups

Use this API to create a contact group.

Prerequisite: Pro or higher account.

Scopes: contact_group:write:admin

Rate Limit Label: Heavy

Request Body

Content-Type: application/json
  • description

    string — The group description.

  • group_members

    array

    Items:

    • id

      string — The member ID: user ID (`user`) or user group ID (`user group`).

    • type

      integer, possible values: 1, 2 — Contact group member types: `1` - user. `2` - user group.

  • group_name

    string — The contact group's name.

  • group_privacy

    integer, possible values: 1, 2, 3 — Contact group privacy configuration: `1` - Visible to anyone, searchable by anyone. `2` - Visible to members only, searchable by anyone. `3` - Visible to members only, searchable by members only.

Example:

{
  "group_name": "Developers",
  "group_privacy": 1,
  "description": "A contact group.",
  "group_members": [
    {
      "type": 2,
      "id": "n22T5G6bQDCugVm1V59TAQ"
    }
  ]
}

Responses

Status: 201 **HTTP Status Code:** `201` Group created.
Content-Type: application/json
  • description

    string — The group description.

  • group_id

    string — The contact group ID.

  • group_name

    string — The contact group's name.

  • group_privacy

    integer, possible values: 1, 2, 3 — Contact group privacy configuration: `1` - Visible to anyone, searchable by anyone. `2` - Visible to members only, searchable by anyone. `3` - Visible to members only, searchable by members only.

  • total_members

    integer — The contact group's total member count.

Example:

{
  "group_id": "A4ql1FjgL913r",
  "group_name": "Developers",
  "total_members": 34,
  "group_privacy": 1,
  "description": "A contact group."
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account: {accountId}<br> **Error Code:** `300` <br> The maximum number of user member per request is 50.<br> **Error Code:** `300` <br> The maximum number of group member per request is 3.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get a contact group

  • Method: GET
  • Path: /contacts/groups/{groupId}
  • Tags: Contact Groups

Get a contact group under an account.

Prerequisite: Pro or higher account.

Scopes: contact_group:write:admin

Rate Limit Label: Light

Responses

Status: 200 **HTTP Status Code:** `200` Group returned.
Content-Type: application/json
  • description

    string — The group description.

  • group_id

    string — The group ID.

  • group_name

    string — The group name.

  • group_privacy

    integer, possible values: 1, 2, 3 — The contact group privacy configuration: `1` - Visible to anyone, searchable by anyone. `2` - Visible to members only, searchable by anyone. `3` - Visible to members only, searchable by members only.

  • total_members

    integer — The total number of members in a contact group.

Example:

{
  "group_id": "dir.JquKVDGlQ9K6S0QVWGcysw",
  "group_name": "Developers",
  "total_members": 10,
  "group_privacy": 1,
  "description": "A contact group for office A"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account: {accountId}<br> **Error Code:** `300` <br> A group with this groupId: {groupId} does not exist.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete a contact group

  • Method: DELETE
  • Path: /contacts/groups/{groupId}
  • Tags: Contact Groups

Use this API to delete a contact group.

Prerequisite: Pro or higher account.

Scopes: contact_group:write:admin

Rate Limit Label: Heavy

Responses

Status: 204 **HTTP Status Code:** `204` Group deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account,{accountId}.<br> **Error Code:** `300` <br> A group with this groupId: {groupId} does not exist.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a contact group

  • Method: PATCH
  • Path: /contacts/groups/{groupId}
  • Tags: Contact Groups

Update a contact group under your account.

Prerequisite: Pro or higher account.

Scopes: contact_group:write:admin

Rate Limit Label: Heavy

Request Body

Content-Type: application/json
  • description

    string — The group description.

  • name

    string — The contact group's name.

  • privacy

    integer, possible values: 1, 2, 3 — Contact group privacy configuration: `1` - Visible to anyone, searchable by anyone. `2` - Visible to members only, searchable by anyone. `3` - Visible to members only, searchable by members only.

Example:

{
  "name": "Developers",
  "privacy": 1,
  "description": "A contact group."
}

Responses

Status: 204 Contact group updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account: {accountId}<br> **Error Code:** `300` <br> A group with this groupId: {groupId} does not exist.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List contact group members

  • Method: GET
  • Path: /contacts/groups/{groupId}/members
  • Tags: Contact Groups

List members in contact groups under an account.

Prerequisite: Pro or higher account.

Scopes: contact_group:read:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` List of contact group members returned.
Content-Type: application/json
  • group_members

    array — List of contact group members.

    Items:

    • id

      string — The member ID: user ID (`user`) or user group ID (`user group`).

    • name

      string — The member's name: user's name (`user`) or the group's name (`user group`).

    • type

      integer, possible values: 1, 2 — Contact group member types: `1` - user. `2` - user group.

  • next_page_token

    string — The next page token is used to paginate through large result sets. A next page token will be returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.

  • page_size

    integer — The number of records returned within a single API call.

Example:

{
  "group_members": [
    {
      "type": 2,
      "id": "n22T5G6bQDCugVm1V59TAQ",
      "name": "Developer group"
    }
  ],
  "next_page_token": "R4aF9Oj0fVM2hhezJTEmSKaBSkfesDwGy42",
  "page_size": 10
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account: {accountId}<br> <br> **Error Code:** `300` <br> A group with this groupId: {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Add contact group members

  • Method: POST
  • Path: /contacts/groups/{groupId}/members
  • Tags: Contact Groups

Use this API to add members to a contact group.

Prerequisite: Pro or higher account.

Scopes: contact_group:write:admin

Rate Limit Label: HEAVY

Request Body

Content-Type: application/json
  • group_members

    array — Group members array

    Items:

    • id

      string — The member ID: user ID (`user`) or user group ID (`user group`).

    • type

      integer, possible values: 1, 2 — Contact group member types: `1` - user. `2` - user group.

Example:

{
  "group_members": [
    {
      "type": 2,
      "id": "n22T5G6bQDCugVm1V59TAQ"
    }
  ]
}

Responses

Status: 201 **HTTP Status Code:** `201` Member added.
Content-Type: application/json
  • member_ids

    array — Member ids array

    Items:

    string — The member ID of the member that is added successfully.

Example:

{
  "member_ids": [
    "KT6h5SfCSm6YNjZo7i8few"
  ]
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account: {accountId}<br> <br> **Error Code:** `300` <br> A group with this groupId: {groupId} does not exist.<br> <br> **Error Code:** `300` <br> The maximum number of user member per request is 50.<br> <br> **Error Code:** `300` <br> The maximum number of group member per request is 3. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Remove members in a contact group

  • Method: DELETE
  • Path: /contacts/groups/{groupId}/members
  • Tags: Contact Groups

Removes members in a contact group.

Prerequisite: Pro or higher account.

Scopes: contact_group:write:admin

Rate Limit Label: HEAVY

Responses

Status: 204 **HTTP Status Code:** `204` Member removed.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account,{accountId}.<br> <br> **Error Code:** `300` <br> A group with this groupId: {groupId} does not exist.<br> <br> **Error Code:** `300` <br> The maximum number of memberId is 20.<br> <br> **Error Code:** `300` <br> A member with this memberId: {memberId} does not exist.<br> <br> **Error Code:** `300` <br> A group must have at least one member. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List divisions

  • Method: GET
  • Path: /divisions
  • Tags: Divisions

List divisions under an account.

Scopes: division:read:admin

Granular Scopes: division:read:list_divisions:admin

Rate Limit Label: LIGHT

Not supported in Gov cluster

Responses

Status: 200 **HTTP Status Code:** `200` Division list returned.
Content-Type: application/json
  • divisions

    array — The information about the divisions.

    Items:

    • division_description

      string — The division's description.

    • division_id

      string — The division's id

    • division_name

      string — The division's name.

    • is_main_division

      boolean — Is it Main Division

    • total_members

      integer — Total number of members in this division.

  • next_page_token

    string — Use the next page token to paginate through a large set of results. It returns whenever the set of available results exceeds the current page size. This token's expiration period is 15 minutes.

  • page_size

    integer — The number of records returned within a single API call.

  • total_records

    integer — The total records of divisions under the account.

Example:

{
  "next_page_token": "IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2",
  "page_size": 30,
  "total_records": 300,
  "divisions": [
    {
      "division_id": "example-TaOOmobxuqLVnw",
      "division_name": "my division",
      "division_description": "this is division",
      "is_main_division": true,
      "total_members": 100
    }
  ]
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request Invalid parameters.
Status: 401 **HTTP Status Code:** `401` <br> Unauthorized **Error Code:** `30031002` <br> Missing token <br> **Error Code:** `30031004` <br> Invalid or expired token <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden No permission.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Create a division

  • Method: POST
  • Path: /divisions
  • Tags: Divisions

Create a division. You can add a maximum of 500 divisions in one account.

Scopes: division:wirte:admin

Granular Scopes: division:write:division:admin

Rate Limit Label: LIGHT

Not supported in Gov cluster

Request Body

Content-Type: application/json
  • division_name (required)

    string — The division's name.

  • division_description

    string — The division's description.

Example:

{
  "division_name": "my division",
  "division_description": "this is division"
}

Responses

Status: 201 **HTTP Status Code:** `201` Division created.
Content-Type: application/json
  • division_description

    string — The division's description.

  • division_id

    string — The division's id

  • division_name

    string — The division's name.

Example:

{
  "division_id": "example-TaOOmobxuqLVnw",
  "division_name": "my division",
  "division_description": "this is division"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `40005` <br> Invalid field. <br> **Error Code:** `42006` <br> You've reached the maximum number of divisions reached. You can clean up some divisions then try again. <br>
Status: 401 **HTTP Status Code:** `401` <br> Unauthorized **Error Code:** `30031004` <br> Invalid or expired token. <br> **Error Code:** `30031002` <br> Missing token. <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden No permission.
Status: 409 **HTTP Status Code:** `409` <br> Conflict This name is already in use. Please try another.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Get a division

  • Method: GET
  • Path: /divisions/{divisionId}
  • Tags: Divisions

Get a division under an account.

Scopes: division:wirte:admin,division:read:admin

Granular Scopes: division:read:division:admin

Rate Limit Label: LIGHT

Not supported in Gov cluster

Responses

Status: 200 **HTTP Status Code:** `200` Division returned.
Content-Type: application/json
  • division_description

    string — The division's description.

  • division_id

    string — The division's id

  • division_name

    string — The division's name.

  • is_main_division

    boolean — Is it Main Division

Example:

{
  "division_id": "example-TaOOmobxuqLVnw",
  "division_name": "my division",
  "division_description": "this is division",
  "is_main_division": true
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request Invalid parameters.
Status: 401 **HTTP Status Code:** `401` <br> Unauthorized **Error Code:** `30031002` <br> Missing token <br> **Error Code:** `30031004` <br> Invalid or expired token <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden No permission.
Status: 404 **HTTP Status Code:** `404` <br> Not Found Division not found.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Delete a division

  • Method: DELETE
  • Path: /divisions/{divisionId}
  • Tags: Divisions

Delete an entire division.

Scopes: division:wirte:admin

Granular Scopes: division:delete:division:admin

Rate Limit Label: LIGHT

Not supported in Gov cluster

Responses

Status: 204 **HTTP Status Code:** `204` Division deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `42011` <br> Main division can't be deleted. <br> **Error Code:** `42012` <br> Please remove all users from this division before deleting. <br>
Status: 401 **HTTP Status Code:** `401` <br> Unauthorized **Error Code:** `30031002` <br> Missing token. <br> **Error Code:** `30031004` <br> Invalid or expired token. <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden No permission.
Status: 404 **HTTP Status Code:** `404` <br> Not Found Division not found.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Update a division

  • Method: PATCH
  • Path: /divisions/{divisionId}
  • Tags: Divisions

Update a group under your account.

Scopes: division:wirte:admin

Granular Scopes: division:update:division:admin

Rate Limit Label: LIGHT

Not supported in Gov cluster

Request Body

Content-Type: application/json
  • division_description

    string — The division's description.

  • division_name

    string — The division's name.

Example:

{
  "division_name": "my division",
  "division_description": "this is division"
}

Responses

Status: 204 **HTTP Status Code:** `204` Division updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request Invalid parameters.
Status: 401 **HTTP Status Code:** `401` <br> Unauthorized **Error Code:** `30031002` <br> Missing token <br> **Error Code:** `30031004` <br> Invalid or expired token <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden No permission.
Status: 404 **HTTP Status Code:** `404` <br> Not Found Division not found.
Status: 409 **HTTP Status Code:** `409` <br> Conflict This name is already in use. Please try another.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

List division members

  • Method: GET
  • Path: /divisions/{divisionId}/users
  • Tags: Divisions

List the users of a division under your account.

Scopes: division:read:admin

Granular Scopes: division:read:member:admin

Rate Limit Label: LIGHT

Not supported in Gov cluster

Responses

Status: 200 **HTTP Status Code:** `200` Division users returned.
Content-Type: application/json
  • next_page_token

    string — Use the next page token to paginate through a large set of results. It returns whenever the set of available results exceeds the current page size. This token's expiration period is 15 minutes.

  • page_size

    integer — The number of records returned within a single API call.

  • total_records

    integer — The total records of users under the division.

  • users

    array — List of a division's users.

    Items:

    • user_display_name

      string — The user's display name.

    • user_email

      string — The user's email address.

    • user_id

      string — The user's unique identifier.

Example:

{
  "next_page_token": "IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2",
  "page_size": 30,
  "total_records": 300,
  "users": [
    {
      "user_id": "example-FLFD4pfkQ4a2nec",
      "user_display_name": "jill chill",
      "user_email": "jchill@example.com"
    }
  ]
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request Invalid parameters.
Status: 401 **HTTP Status Code:** `401` <br> Unauthorized **Error Code:** `30031002` <br> Missing token. <br> **Error Code:** `30031004` <br> Invalid or expired token. <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden No permission.
Status: 404 **HTTP Status Code:** `404` <br> Not Found Division not found.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Assign a division

  • Method: POST
  • Path: /divisions/{divisionId}/users
  • Tags: Divisions

Assign a division to members. A user can belong to only one division.

Scopes: division:wirte:admin

Granular Scopes: division:write:member:admin

Rate Limit Label: MEDIUM

Not supported in Gov cluster

Request Body

Content-Type: application/json
  • users

    array — Array of userId/user email of users to whom you would like to assign this division. Up to 30 users can be assigned a division at once.

    Items:

    • user_email

      string — Email address of the user to whom you would like to assign the division. Provide either the userId in the user_id field or the email address in the user_email field. If both fields are provided, only userId is used.

    • user_id

      string — User ID of the user to whom you would like to assign the division.

Example:

{
  "users": [
    {
      "user_email": "user@example.com",
      "user_id": "example_2RTm5TNvuvk4yRw"
    }
  ]
}

Responses

Status: 201 **HTTP Status Code:** `201` Division users added.
Content-Type: application/json
  • added_at

    string — Date and time at which the members are assigned to the division.

  • ids

    string — User ids

Example:

{
  "added_at": "2022-03-25T03:08:12Z",
  "ids": "example-userId1,example-userId2"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request Invalid parameters.
Status: 401 **HTTP Status Code:** `401` <br> Unauthorized **Error Code:** `30031002` <br> Missing token. <br> **Error Code:** `30031004` <br> Invalid or expired token. <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden No permission.
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `40406` <br> Division not found. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

List groups

  • Method: GET
  • Path: /groups
  • Tags: Groups

List groups under an account.

Prerequisite: Pro or higher account.

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:list_groups:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` List of groups returned. **Error Code:** `200` Only available for paid accounts.
Content-Type: application/json
  • groups

    array — List of Group objects.

    Items:

    All of:

    • id

      string — Group ID.

    • name

      string — Group name.

    • total_members

      integer — Total number of members in this group.

  • next_page_token

    string — The next page token paginates through a large set results. A next page token returns whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.

  • total_records

    integer — Total records.

Example:

{
  "groups": [
    {
      "id": "SobVexyrQjqCkcxjpBWi6w",
      "name": "Developers",
      "total_members": 200
    }
  ],
  "total_records": 200,
  "next_page_token": "qUEQqB1V0HVhJmwKFQrGOD"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Create a group

  • Method: POST
  • Path: /groups
  • Tags: Groups

Use this API to create a group. You can add a maximum of 100 groups in one account per day, and a maximum of 5000 groups in one account.

If you enabled a new group via the user interface, you can also choose whether to display the group and set its privacy level.

Prerequisites:

  • A Pro or higher account

Scopes: group:write:admin

Granular Scopes: group:write:group:admin

Rate Limit Label: LIGHT

Request Body

Content-Type: application/json
  • name

    string — The group's name.

Example:

{
  "name": "Developers"
}

Responses

Status: 201 **HTTP Status Code:** `201` Group created.
Content-Type: application/json
  • id

    string — The group ID.

  • name

    string — The group's name.

  • total_members

    integer — The group's total member count.

Example:

{
  "id": "A4ql1FjgL913r",
  "name": "Developers",
  "total_members": 34
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Invalid parameter: name. <br> **Error Code:** `300` <br> Validation Failed. <br> **Error Code:** `300` <br> It has reached the maximum number of groups. You can clean up some groups then add. <br> **Error Code:** `200` <br> Only available for Paid account. <br>
Status: 409 **HTTP Status Code:** `409` <br> Conflict **Error Code:** `4132` <br> The group name "{groupName}" is already in use. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get a group

  • Method: GET
  • Path: /groups/{groupId}
  • Tags: Groups

Get a group under an account.

Prerequisite: Pro, Business, or Education account

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:group:admin

Rate Limit Label: LIGHT

Responses

Status: 200 **HTTP Status Code:** `200` Group returned. **Error Code:** `200` Only available for Paid account,{accountId}.
Content-Type: application/json
  • id

    string — Group ID.

  • name

    string — Group name.

  • total_members

    integer — Total count of members in the group.

Example:

{
  "id": "825c9e31f1064c73b394c5e4557d3447",
  "name": "Developers",
  "total_members": 100
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `1010` <br> Group does not belong to your account. <br> **Error Code:** `200` <br> Only available for Paid account. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete a group

  • Method: DELETE
  • Path: /groups/{groupId}
  • Tags: Groups

Delete an entire group. Prerequisites: * A Pro, Business, or Education account.

Scopes: group:write:admin

Granular Scopes: group:delete:group:admin

Rate Limit Label: LIGHT

Responses

Status: 204 Group deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account,{accountId}. <br> Group cannot be deleted. Information Barriers policies have been applied to this group. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> Group does not exist. <br> A group with this {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a group

  • Method: PATCH
  • Path: /groups/{groupId}
  • Tags: Groups

Update a group under your account.

Prerequisite: Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:update:group:admin

Rate Limit Label: LIGHT

Request Body

Content-Type: application/json
  • name

    string — Group name. It must be unique to one account and less than 128 characters.

Example:

{
  "name": "Developers"
}

Responses

Status: 204 Group updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br>
Status: 409 **HTTP Status Code:** `409` <br> Conflict **Error Code:** `4132` <br> Group name {groupName} is already in use. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List group admins

  • Method: GET
  • Path: /groups/{groupId}/admins
  • Tags: Groups

Use this API to return a list of group administrators under your account.

Prerequisites:

  • A Pro, Business, or Education account

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:administrator:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` Only available for paid account: &quot;{accountId}&quot;.
Content-Type: application/json
  • admins

    array

    Items:

    • email

      string, format: email — The user's email address.

    • name

      string — The user's display name.

  • next_page_token

    string — The next page token is used to paginate through large result sets. A next page token is returned when the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.

  • page_size

    integer — The number of records returned in a single API call.

  • total_records

    integer — The total number of records available across all pages.

Example:

{
  "admins": [
    {
      "email": "jchill@example.com",
      "name": "Jill Chill"
    }
  ],
  "next_page_token": "oMTCmjMRwzSfZtUXDIuWDswdksIQ3dyGUB1",
  "page_size": 1,
  "total_records": 20
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account. <br> **Error Code:** `300` <br> The next page token is invalid or expired. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with the "{groupId}" ID does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Add group admins

  • Method: POST
  • Path: /groups/{groupId}/admins
  • Tags: Groups

Use this API to add administrators to a group under your account.

Prerequisites:

  • A Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:write:administrator:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json
  • admins

    array — A list of the administrators to add to a group.

    Items:

    • email

      string — The user's email. Use this value if you do not have the user's ID. If you pass the `id` value, the API ignores this parameter.

    • id

      string — The user's ID.

Example:

{
  "admins": [
    {
      "email": "jchill@example.com",
      "id": "v4iyWT1LTfy8QvPG4GTvdg"
    }
  ]
}

Responses

Status: 201 **Status Code:** `201` Group administrator added.
Content-Type: application/json
  • added_at

    string, format: date-time — The timestamp at which the administrator was added to the group.

  • ids

    string — The administrator IDs.

Example:

{
  "added_at": "2022-03-25T03:08:12Z",
  "ids": "v4iyWT1LTfy8QvPG4GTvdg"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account,{accountId}. <br> **Error Code:** `300` <br> Validation Failed. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with the "{groupId}" ID does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete a group admin

  • Method: DELETE
  • Path: /groups/{groupId}/admins/{userId}
  • Tags: Groups

Use this API to remove a group administrator in a Zoom account.

Prerequisites:

  • A Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:delete:administrator:admin

Rate Limit Label: LIGHT

Responses

Status: 204 **Status Code:** `204` Group administrator removed.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `4138` <br> That user is not an administrator for the group: "{groupId}". <br> **Error Code:** `200` <br> Only available for Paid account. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with the "{groupId}" ID does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List group channels

  • Method: GET
  • Path: /groups/{groupId}/channels
  • Tags: Groups

Returns a list of channels for a group under your account.

Prerequisite:

  • Pro, Business, or Education account

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:list_channels:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` List of group channels returned.
Content-Type: application/json
  • channels (required)

    array — The channels in a group.

    Items:

    • channel_id (required)

      string — The unique identifier of the channel.

    • channel_name (required)

      string — The name of the channel.

    • member_count (required)

      integer — The member number of the channel.

  • group_id (required)

    string — The unique identifier of the group.

Example:

{
  "channels": [
    {
      "channel_id": "d26fd4dfebfa4aff9f31ee5710529442",
      "channel_name": "Your Channel",
      "member_count": 10
    }
  ],
  "group_id": "2NEr8QoCSZq4LV6s7jjYQA"
}
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get locked settings

  • Method: GET
  • Path: /groups/{groupId}/lock_settings
  • Tags: Groups

Retrieve a group's locked settings. If you lock a setting, the group members will not be able to modify it individually.

Note: The force_pmi_jbh_password field under meeting settings is deprecated as of September 22, 2019.

Prerequisite: Pro, Business, or Education account

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:lock_settings:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **Status Code:** `200` Locked settings of group returned.
Content-Type: application/json

One of:

  • audio_conferencing

    object — The group's audio conference settings.

  • email_notification

    object

    • alternative_host_reminder

      boolean — Notify the alternative host who is set or removed.

    • cancel_meeting_reminder

      boolean — Notify host and participants when the meeting is cancelled.

    • cloud_recording_available_reminder

      boolean — Whether to notify the host when a cloud recording is available.

    • jbh_reminder

      boolean — Notify host when participants join the meeting before them.

    • schedule_for_reminder

      boolean — Notify the host there is a meeting is scheduled, rescheduled, or cancelled.

  • in_meeting

    object

    • alert_guest_join

      boolean — Allow participants who belong to your account to see that a guest (someone who does not belong to your account) is participating in the meeting/webinar.

    • allow_live_streaming

      boolean — Whether to allow livestreaming.

    • allow_show_zoom_windows

      boolean — Show Zoom windows during screen share.

    • allow_users_to_delete_messages_in_meeting_chat

      boolean — If the value of this field is set to `true`, allow users to delete messages in the in-meeting chat.

    • annotation

      boolean — Allow participants to use annotation tools to add information to shared screens.

    • attendee_on_hold

      boolean, default: false — Allow host to put attendee on hold. **This field has been deprecated and is no longer supported.**

    • auto_answer

      boolean — Enable users to see and add contacts to 'auto-answer group' in the contact list on chat. Any call from members of this group will be automatically answered.

    • auto_generated_captions

      boolean — Whether to allow a live transcription service to transcribe meetings.

    • auto_saving_chat

      boolean — Automatically save all in-meeting chats.

    • breakout_room

      boolean — Allow host to split meeting participants into separate, smaller rooms.

    • chat

      boolean — Allow meeting participants to send chat message visible to all participants.

    • closed_caption

      boolean — Allow host to type closed captions or assign a participant or third party device to add closed captions.

    • co_host

      boolean — Allow the host to add co-hosts. Co-hosts have the same in-meeting controls as the host.

    • custom_data_center_regions

      boolean — Displays whether or not custom [data center regions](https://support.zoom.us/hc/en-us/articles/360042411451-Selecting-data-center-regions-for-hosted-meetings-and-webinars) have been selected for meetings/webinars hosted by this group.

    • disable_screen_sharing_for_host_meetings

      boolean — Whether the **Disable desktop screen sharing for meetings you host** setting is enabled.

    • disable_screen_sharing_for_in_meeting_guests

      boolean — Whether the **Disable screen sharing when guests are in the meeting** setting is enabled.

    • e2e_encryption

      boolean — Require that all meetings are encrypted using AES.

    • entry_exit_chime

      string — Play sound when participants join or leave.

    • far_end_camera_control

      boolean — Allow another user to take control of the camera during a meeting.

    • feedback

      boolean — Enable users to provide feedback to Zoom at the end of the meeting.

    • file_transfer

      boolean — Indicates whether [in-meeting file transfer](https://support.zoom.us/hc/en-us/articles/209605493-In-meeting-file-transfer) setting has been enabled for the users in the group or not.

    • full_transcript

      boolean — Whether to allow the viewing of full transcripts in the in-meeting side panel.

    • group_hd

      boolean — Enable higher quality video for host and participants in a meeting. This will require more bandwidth.

    • language_interpretation

      boolean — Whether to allow hosts to assign participants as interpreters who can interpret one language into another in real-time.

    • manual_captions

      boolean — Allow host to type closed captions or assign a participant or third party device to add closed captions.

    • meeting_question_answer

      boolean — Allow participants to ask questions for the host and participants to answer.

    • meeting_reactions

      boolean — Whether meeting participants can [communicate using the emoji reactions](https://support.zoom.us/hc/en-us/articles/115001286183-Nonverbal-feedback-and-meeting-reactions) located in the **Reactions** menu in the meeting toolbar.

    • meeting_survey

      boolean — Whether the host can present a survey to participants once a meeting has ended. This feature is only available in version 5.7.3 or higher.

    • non_verbal_feedback

      boolean — Allow participants in a meeting can provide nonverbal feedback and express opinions by clicking on icons in the Participants panel.

    • original_audio

      boolean — Allow users to select original sound during a meeting.

    • polling

      boolean — Add 'Polls' to the meeting controls. This allows the host to survey the attendees.

    • post_meeting_feedback

      boolean — Display end-of-meeting experience feedback survey.

    • private_chat

      boolean — Allow meeting participants to send a private 1:1 message to another participant.

    • remote_control

      boolean — During screen sharing, allow the person who is sharing to let others control the shared content.

    • remote_support

      boolean — Allow meeting host to provide 1:1 remote support to another participant.

    • request_permission_to_unmute_participants

      boolean — Indicates whether the [**Request permission to unmute participants**](https://support.zoom.us/hc/en-us/articles/203435537-Muting-and-unmuting-participants-in-a-meeting#h_01EGK4XFWS1SJGZ71MYGKF7260) option has been enabled and locked for the group or not.

    • save_caption

      boolean — Whether participants can save closed captions or transcripts.

    • save_captions

      boolean — Whether participants can save closed captions or transcripts.

    • screen_sharing

      boolean — Allow host and participants to share their screen or content during meetings.

    • sending_default_email_invites

      boolean — Allow users to invite participants by email only by default.

    • show_a_join_from_your_browser_link

      boolean — Whether to allow participants to join a meeting directly from their browser and bypass the Zoom application download process. This is useful for participants who cannot download, install, or run applications. Note that the meeting experience from the browser is limited.

    • show_browser_join_link

      boolean — Allow participants to join a meeting directly from their browser.

    • show_meeting_control_toolbar

      boolean — Always show meeting controls during a meeting.

    • sign_language_interpretation

      boolean — Allow hosts to assign participants as sign language interpreters who can interpret one language into sign language in real-time. Hosts can assign interpreters when scheduling, or during the meeting itself. This feature is only available with version 5.11.3 or later.

    • slide_control

      boolean — Whether the person sharing during a presentation can allow others to control the slide presentation. This feature is only available in version 5.8.3 or higher.

    • stereo_audio

      boolean — Allow users to select stereo audio during a meeting.

    • use_html_format_email

      boolean — Allow HTML formatting instead of plain text for meeting invitations scheduled with the Outlook plugin.

    • virtual_background

      boolean — Enable virtual backgrounds.

    • waiting_room

      boolean — Attendees cannot join a meeting until a host admits them individually from the waiting room.

    • webinar_chat

      boolean — Whether to allow webinar participants to send chat messages.

    • webinar_group_hd

      boolean — Enable higher quality video for host and participants in a webinar. This will require more bandwidth.

    • webinar_live_streaming

      boolean — Whether webinar livestreaming is enabled.

    • webinar_polling

      boolean — Whether the host can add polls before or during a webinar.

    • webinar_question_answer

      boolean — Whether attendees can ask the host and panelists questions in the webinar.

    • webinar_reactions

      boolean — Set this field to true to use [webinar reactions](https://support.zoom.us/hc/en-us/articles/4803536268429).

    • webinar_survey

      boolean — Whether the host can present surveys to attendees once a webinar has ended.

    • whiteboard

      boolean — Allow participants to share a whiteboard that includes annotation tools.

  • other_options

    object

    • blur_snapshot

      boolean — If `true`, iOS blurs the screenshot in the task switcher when multiple apps are open. Android hides the screenshot in the system-level list of recent apps.

  • recording

    object

    • account_user_access_recording

      boolean — Make cloud recordings accessible to account members only.

    • archive

      boolean — [Archiving solution](https://support.zoom.us/hc/en-us/articles/360050431572-Archiving-Meeting-and-Webinar-data) settings. This setting can only be used if you have been granted archiving solution access by the Zoom support team.

    • auto_delete_cmr

      boolean — Allow Zoom to automatically delete recordings permanently after a specified number of days.

    • auto_recording

      boolean — Record meetings automatically as they start.

    • cloud_recording

      boolean — Allow hosts to record and save the meeting or webinar in the cloud.

    • cloud_recording_download

      boolean — Allow anyone with a link to the cloud recording to download.

    • host_delete_cloud_recording

      boolean — Allow the host to delete the recordings. If this option is disabled, the recordings cannot be deleted by the host and only admin can delete them.

    • ip_address_access_control

      object — Setting to allow cloud recording access only from specific IP address ranges.

      • enable

        boolean — If set to `true`, the cloud recordings of this account can only be accessed by the IP addresses defined in the `ip_addresses_or_ranges` property.

      • ip_addresses_or_ranges

        string — IP addresses or ranges that have access to the cloud recordings. Separate multiple IP ranges with commas. Use `n.n.n.n, n.n.n.n/n` or `n.n.n.n - n.n.n.n` syntax where n is a number, such as `46.33.24.184, 48.99.100.2/25` or `200.181.108.17 - 220.181.108.157`.

    • local_recording

      boolean — Allow hosts and participants to record the meeting to a local file.

    • prevent_host_access_recording

      boolean — If set to `true`, meeting hosts cannot view their meeting cloud recordings. Only the admins who have recording management privilege can access them.

    • recording_authentication

      boolean — Only authenticated users can view cloud recordings

  • schedule_meeting

    object

    • audio_type

      boolean — Determine how participants can join the audio portion of the meeting.

    • continuous_meeting_chat

      boolean — Whether to enable the [**Enable continuous meeting chat**] setting.

    • embed_password_in_join_link

      boolean — If the value is set to `true`, the meeting passcode will be encrypted and included in the join meeting link to allow participants to join with just one click without having to enter the passcode.

    • force_pmi_jbh_password

      boolean — If the join before host option is enabled for a personal meeting, then enforce passcode requirement.

    • host_video

      boolean — Start meetings with host video on.

    • join_before_host

      boolean — Allow participants to join the meeting before the host arrives

    • meeting_authentication

      boolean — Only authenticated users can join meetings

    • mute_upon_entry

      boolean — Automatically mute all participants when they join the meeting.

    • participant_video

      boolean — Start meetings with participant video on.

    • pstn_password_protected

      boolean — Generate and send new passcodes for newly scheduled or edited meetings.

    • require_password_for_instant_meetings

      boolean — Require passcode for instant meetings. If you use personal meeting ID (PMI) for your instant meetings, this option will be disabled.

    • require_password_for_pmi_meetings

      boolean — Require participants to enter passcode for PMI meetings.

    • require_password_for_scheduling_new_meetings

      boolean — This setting applies for regular meetings that do not use PMI. If enabled, a passcode will be generated while a host schedules a new meeting and participants will be required to enter the passcode before they can join the meeting.

    • upcoming_meeting_reminder

      boolean — Receive desktop notification for upcoming meetings.

  • telephony

    object — Group Settings: Telephony.

    • telephony_regions

      boolean — Third party audio conference info.

    • third_party_audio

      boolean — Allow users to join the meeting using the existing third party audio configuration.

  • meeting_security

    object

    • approved_or_denied_countries_or_regions

      boolean — Whether the [**Approve or block entry for users from specific countries/regions**](https://support.zoom.us/hc/en-us/articles/360060086231-Joining-from-specific-countries-regions) setting is enabled.

    • auto_security

      boolean — Whether all meetings must be secured with at least one security option. This setting can only be disabled by Enterprise, ISV, Business (with more than 100 licenses), and Education accounts.

    • block_user_domain

      boolean — Whether users in specific domains are blocked from joining meetings and webinars.

    • embed_password_in_join_link

      boolean — Whether the meeting passcode is encrypted and included in the invitation link. The provided link will allow participants to join the meeting without having to enter the passcode.

    • encryption_type

      string, possible values: "enhanced_encryption", "e2ee" — The type of encryption used when starting a meeting. * `enhanced_encryption` - Enhanced encryption. Encryption data is stored in the cloud. * `e2ee` - End-to-end encryption. The encryption key is stored on the local device and cannot be obtained by anyone else. Enabling E2EE also [**disables** certain features](https://support.zoom.us/hc/en-us/articles/360048660871), such as cloud recording, live streaming, and allowing participants to join before the host.

    • end_to_end_encrypted_meetings

      boolean — Whether end-to-end encryption is enabled for meetings.

    • meeting_password

      boolean — Whether all instant and scheduled meetings that users can join via client or Zoom Rooms systems are passcode-protected. [Personal meeting ID (PMI)](https://support.zoom.us/hc/en-us/articles/203276937) meetings are **not** included in this setting.

    • only_authenticated_can_join_from_webclient

      boolean — Whether to specify that only authenticated users can join the meeting from the web client.

    • phone_password

      boolean — Whether passcodes are required for participants joining by phone. If enabled and the meeting is passcode-protected, a numeric passcode is required for participants to join by phone. For meetings with alphanumeric passcodes, a numeric passcode will be generated.

    • pmi_password

      boolean — Whether all PMI meetings that users can join via client or Zoom Rooms systems are passcode-protected.

    • waiting_room

      boolean — Whether participants are placed in the [**waiting room**](https://support.zoom.us/hc/en-us/articles/115000332726-Waiting-Room) when they join a meeting. If the **Waiting Room** feature is enabled, the [**Allow participants to join before host**](https://support.zoom.us/hc/en-us/articles/202828525-Allow-participants-to-join-before-host) setting is automatically disabled.

    • webinar_password

      boolean — Whether to generate a passcode when scheduling webinars. Participants must use the generated passcode to join the scheduled webinar.

Example:

{
  "audio_conferencing": {
    "toll_free_and_fee_based_toll_call": true,
    "toll_call": true,
    "call_me_and_invite_by_phone": true,
    "personal_audio_conference": true,
    "participant_phone_masking": true
  },
  "email_notification": {
    "alternative_host_reminder": true,
    "cloud_recording_available_reminder": true,
    "jbh_reminder": true,
    "schedule_for_reminder": true
  },
  "in_meeting": {
    "alert_guest_join": true,
    "allow_users_to_delete_messages_in_meeting_chat": true,
    "allow_live_streaming": true,
    "allow_show_zoom_windows": true,
    "annotation": true,
    "auto_answer": true,
    "auto_generated_captions": true,
    "auto_saving_chat": true,
    "breakout_room": true,
    "chat": true,
    "meeting_question_answer": true,
    "closed_caption": true,
    "co_host": true,
    "custom_data_center_regions": true,
    "disable_screen_sharing_for_host_meetings": true,
    "disable_screen_sharing_for_in_meeting_guests": true,
    "e2e_encryption": true,
    "entry_exit_chime": "all",
    "far_end_camera_control": true,
    "feedback": true,
    "file_transfer": true,
    "full_transcript": true,
    "group_hd": true,
    "webinar_group_hd": true,
    "language_interpretation": true,
    "sign_language_interpretation": true,
    "manual_captions": true,
    "meeting_reactions": true,
    "webinar_reactions": true,
    "meeting_survey": true,
    "non_verbal_feedback": true,
    "original_audio": true,
    "polling": true,
    "post_meeting_feedback": true,
    "private_chat": true,
    "remote_control": true,
    "remote_support": true,
    "request_permission_to_unmute_participants": true,
    "save_caption": true,
    "save_captions": true,
    "screen_sharing": true,
    "sending_default_email_invites": true,
    "show_a_join_from_your_browser_link": true,
    "show_browser_join_link": true,
    "show_meeting_control_toolbar": true,
    "slide_control": true,
    "stereo_audio": true,
    "use_html_format_email": true,
    "virtual_background": true,
    "waiting_room": true,
    "webinar_chat": true,
    "webinar_live_streaming": true,
    "webinar_polling": true,
    "webinar_question_answer": true,
    "webinar_survey": true,
    "whiteboard": true
  },
  "other_options": {
    "blur_snapshot": true
  },
  "recording": {
    "account_user_access_recording": true,
    "auto_delete_cmr": true,
    "auto_recording": true,
    "cloud_recording": true,
    "cloud_recording_download": true,
    "host_delete_cloud_recording": true,
    "ip_address_access_control": {
      "enable": true,
      "ip_addresses_or_ranges": "200.181.108.17 - 220.181.108.157"
    },
    "local_recording": true,
    "prevent_host_access_recording": true,
    "recording_authentication": true,
    "archive": true
  },
  "schedule_meeting": {
    "audio_type": true,
    "embed_password_in_join_link": true,
    "force_pmi_jbh_password": true,
    "host_video": true,
    "join_before_host": true,
    "meeting_authentication": true,
    "mute_upon_entry": true,
    "participant_video": true,
    "pstn_password_protected": true,
    "require_password_for_instant_meetings": true,
    "require_password_for_pmi_meetings": true,
    "require_password_for_scheduling_new_meetings": true,
    "upcoming_meeting_reminder": true,
    "continuous_meeting_chat": true
  },
  "telephony": {
    "telephony_regions": true,
    "third_party_audio": true
  }
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> Group does not exist: {groupId} <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update locked settings

  • Method: PATCH
  • Path: /groups/{groupId}/lock_settings
  • Tags: Groups

Update a group's locked settings. If you lock a setting, the group members cannot modify it individually.

Note: The force_pmi_jbh_password field under meeting settings is deprecated as of September 22, 2019.

Prerequisite: Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:update:lock_settings:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json

One of:

  • audio_conferencing

    object — The group's audio conference settings.

  • email_notification

    object

    • alternative_host_reminder

      boolean — Notify the alternative host who is set or removed.

    • cancel_meeting_reminder

      boolean — Notify host and participants when the meeting is cancelled.

    • cloud_recording_available_reminder

      boolean — Whether to notify the host when a cloud recording is available.

    • jbh_reminder

      boolean — Notify the host when participants join the meeting before them.

    • schedule_for_reminder

      boolean — Notify the host there is a meeting is scheduled, rescheduled, or cancelled.

  • in_meeting

    object

    • alert_guest_join

      boolean — Allow participants who belong to your account to see that a guest (someone who does not belong to your account) is participating in the meeting/webinar.

    • allow_live_streaming

      boolean — Whether to allow livestreaming.

    • allow_show_zoom_windows

      boolean — Show Zoom windows during screen share.

    • allow_users_to_delete_messages_in_meeting_chat

      boolean — If the value of this field is set to `true`, allow users to delete messages in the in-meeting chat.

    • annotation

      boolean — Allow participants to use annotation tools to add information to shared screens.

    • attendee_on_hold

      boolean, default: false — Allow host to put attendee on hold. **This field has been deprecated and is no longer supported.**

    • auto_answer

      boolean — Enable users to see and add contacts to 'auto-answer group' in the contact list on chat. Any call from members of this group will be automatically answered.

    • auto_generated_captions

      boolean — Whether to allow a live transcription service to transcribe meetings.

    • auto_saving_chat

      boolean — Automatically save all in-meeting chats.

    • breakout_room

      boolean — Allow host to split meeting participants into separate, smaller rooms.

    • chat

      boolean — Allow meeting participants to send chat message visible to all participants.

    • closed_caption

      boolean — Allow host to type closed captions or assign a participant/third party device to add closed captions.

    • co_host

      boolean — Allow the host to add co-hosts. Co-hosts have the same in-meeting controls as the host.

    • custom_data_center_regions

      boolean — Displays whether or not custom [data center regions](https://support.zoom.us/hc/en-us/articles/360042411451-Selecting-data-center-regions-for-hosted-meetings-and-webinars) have been selected for meetings/webinars hosted by this group.

    • disable_screen_sharing_for_host_meetings

      boolean — Whether to enable the **Disable desktop screen sharing for meetings you host** setting.

    • disable_screen_sharing_for_in_meeting_guests

      boolean — Whether to enable the **Disable screen sharing when guests are in the meeting** setting.

    • e2e_encryption

      boolean — Require that all meetings are encrypted using AES.

    • entry_exit_chime

      string — Play sound when participants join or leave.

    • far_end_camera_control

      boolean — Allow another user to take control of the camera during a meeting.

    • feedback

      boolean — Enable users to provide feedback to Zoom at the end of the meeting.

    • file_transfer

      boolean — Indicates whether [in-meeting file transfer](https://support.zoom.us/hc/en-us/articles/209605493-In-meeting-file-transfer) setting has been enabled for the users in the group or not.

    • full_transcript

      boolean — Whether to allow the viewing of full transcripts in the in-meeting side panel.

    • group_hd

      boolean — Enable higher quality video for host and participants in the meeting. This will require more bandwidth.

    • language_interpretation

      boolean — Whether to allow hosts to assign participants as interpreters who can interpret one language into another in real-time.

    • meeting_question_answer

      boolean — Allow participants to ask questions for the host and participants to answer.

    • meeting_survey

      boolean — Whether to allow the host to present a survey to participants once a meeting has ended. This feature is only available in version 5.7.3 or higher.

    • non_verbal_feedback

      boolean — Allow participants in a meeting can provide nonverbal feedback and express opinions by clicking on icons in the Participants panel.

    • original_audio

      boolean — Allow users to select original sound during a meeting.

    • polling

      boolean — Add 'Polls' to the meeting controls. This allows the host to survey the attendees.

    • post_meeting_feedback

      boolean — Display end-of-meeting experience feedback survey.

    • private_chat

      boolean — Allow meeting participants to send a private 1:1 message to another participant.

    • remote_control

      boolean — During screen sharing, allow the person who is sharing to let others control the shared content.

    • remote_support

      boolean — Allow meeting host to provide 1:1 remote support to another participant.

    • request_permission_to_unmute_participants

      boolean — Indicate whether the [**Request permission to unmute participants**](https://support.zoom.us/hc/en-us/articles/203435537-Muting-and-unmuting-participants-in-a-meeting#h_01EGK4XFWS1SJGZ71MYGKF7260) option should be enabled and locked for the group or not.

    • save_caption

      boolean — Whether to allow participants to save closed captions or transcripts.

    • save_captions

      boolean — Whether participants can save closed captions or transcripts.

    • screen_sharing

      boolean — Allow host and participants to share their screen or content during meetings.

    • sending_default_email_invites

      boolean — Allow users to invite participants by email only by default.

    • show_a_join_from_your_browser_link

      boolean — Whether to allow participants to join a meeting directly from their browser and bypass the Zoom application download process. This is useful for participants who cannot download, install, or run applications. Note that the meeting experience from the browser is limited.

    • show_browser_join_link

      boolean — Allow participants to join a meeting directly from their browser.

    • show_meeting_control_toolbar

      boolean — Always show meeting controls during a meeting.

    • sign_language_interpretation

      boolean — Allow hosts to assign participants as sign language interpreters who can interpret one language into sign language in real-time. Hosts can assign interpreters when scheduling, or during the meeting itself. This feature is only available with version 5.11.3 or later.

    • slide_control

      boolean — Whether the person sharing during a presentation can allow others to control the slide presentation. This feature is only available in version 5.8.3 or higher.

    • stereo_audio

      boolean — Allow users to select stereo audio during a meeting.

    • use_html_format_email

      boolean — Allow HTML formatting instead of plain text for meeting invitations scheduled with the Outlook plugin.

    • virtual_background

      boolean — Enable virtual background.

    • waiting_room

      boolean — Attendees cannot join a meeting until a host admits them individually from the waiting room.

    • webinar_chat

      boolean — Whether to allow webinar participants to send chat messages.

    • webinar_group_hd

      boolean — Enable higher quality video for host and participants in the webinar. This will require more bandwidth.

    • webinar_live_streaming

      boolean — Whether webinar livestreaming is enabled.

    • webinar_polling

      boolean — Whether to allow the host to add polls before or during a webinar.

    • webinar_question_answer

      boolean — Whether attendees can ask the host and panelists questions in the webinar.

    • webinar_reactions

      boolean — Set this field to true to use [webinar reactions](https://support.zoom.us/hc/en-us/articles/4803536268429).

    • webinar_survey

      boolean — Whether to allow the host to present surveys to attendees once a webinar has ended.

    • whiteboard

      boolean — Allow participants to share a whiteboard that includes annotation tools.

  • other_options

    object

    • blur_snapshot

      boolean — If `true`, iOS blurs the screenshot in the task switcher when multiple apps are open. Android hides the screenshot in the system-level list of recent apps.

  • recording

    object

    • account_user_access_recording

      boolean — Make cloud recordings accessible to account members only.

    • archive

      boolean — [Archiving solution](https://support.zoom.us/hc/en-us/articles/360050431572-Archiving-Meeting-and-Webinar-data) settings. This setting can only be used if you have been granted archiving solution access by the Zoom support team.

    • auto_delete_cmr

      boolean — Allow Zoom to automatically delete recordings permanently after a specified number of days.

    • auto_recording

      boolean — Record meetings automatically as they start.

    • cloud_recording

      boolean — Allow hosts to record and save the meeting or webinar in the cloud.

    • cloud_recording_download

      boolean — Allow anyone with a link to the cloud recording to download.

    • host_delete_cloud_recording

      boolean — Allow the host to delete the recordings. If this option is disabled, the recordings cannot be deleted by the host and only admin can delete them.

    • ip_address_access_control

      object — Setting to allow cloud recording access only from specific IP address ranges.

      • enable

        boolean — If set to `true`, the cloud recordings of this account can only be accessed by the IP addresses defined in the `ip_addresses_or_ranges` property.

      • ip_addresses_or_ranges

        string — IP addresses or ranges that have access to the cloud recordings. Separate multiple IP ranges with comma. Use n.n.n.n, n.n.n.n/n or n.n.n.n - n.n.n.n syntax where n is a number. Example: `46.33.24.184, 48.99.100.2/25` or `200.181.108.17 - 220.181.108.157`

    • local_recording

      boolean — Allow hosts and participants to record the meeting to a local file.

    • recording_authentication

      boolean

  • schedule_meeting

    object

    • audio_type

      boolean — Determine how participants can join the audio portion of the meeting.

    • continuous_meeting_chat

      boolean — Whether to enable the [**Enable continuous meeting chat**] setting.

    • embed_password_in_join_link

      boolean — If the value is set to `true`, the meeting passcode will be encrypted and included in the join meeting link to allow participants to join with just one click without having to enter the passcode.

    • force_pmi_jbh_password

      boolean — If join before host option is enabled for a personal meeting, then enforce passcode requirement.

    • host_video

      boolean — Start meetings with host video on.

    • join_before_host

      boolean — Allow participants to join the meeting before the host arrives

    • meeting_authentication

      boolean — Only authenticated users can join meetings

    • mute_upon_entry

      boolean — Automatically mute all participants when they join the meeting.

    • participant_video

      boolean — Start meetings with participant video on.

    • personal_meeting

      boolean — Turn the lock setting on or off for the **Enable Personal Meeting ID** setting for a group. `true` - Turn the **Enable Personal Meeting ID** setting **on** for all users in the group. Users can choose to use personal meeting ID for their meetings. `false` - Turn **off** the **Enable Personal Meeting ID** setting. **If this setting is [disabled](https://support.zoom.us/hc/en-us/articles/201362843-Personal-meeting-ID-PMI-and-personal-link?flash_digest=eb7ac62d8c7fb4daf285916e3e15d87537806133#h_aa0335c8-3b06-41bc-bc1f-a8b84ef17f2a), meetings that were scheduled with PMI by this group members will be invalid. Users will have to update previously scheduled PMI meetings.** For Zoom Phone only: If a user has been assigned a desk phone, **Elevate to Zoom Meeting** on desk phone will be disabled.

    • pstn_password_protected

      boolean — Generate and send new passcodes for newly scheduled or edited meetings.

    • require_password_for_instant_meetings

      boolean — Require passcode for instant meetings. If you use PMI for your instant meetings, this option is disabled.

    • require_password_for_pmi_meetings

      boolean — Require participants to enter passcode for PMI meetings.

    • require_password_for_scheduling_new_meetings

      boolean — This setting applies for regular meetings that do not use PMI. If enabled, a passcode is generated while a host schedules a new meeting and participants will be required to enter the passcode before they can join the meeting.

    • upcoming_meeting_reminder

      boolean — Receive desktop notification for upcoming meetings.

  • telephony

    object — Group Settings: Telephony.

    • telephony_regions

      boolean — Indicates where most of the participants call into or call from during a meeting.

    • third_party_audio

      boolean — Allow users to join the meeting using the existing 3rd party audio configuration.

  • meeting_security

    object

    • approved_or_denied_countries_or_regions

      boolean — Whether to enable the [**Approve or block entry for users from specific countries or regions**](https://support.zoom.us/hc/en-us/articles/360060086231-Joining-from-specific-countries-regions) setting.

    • auto_security

      boolean — Whether to require that all meetings are secured with at least one security option. This setting can only be disabled by Enterprise, ISV, Business (with more than 100 licenses), and Education accounts.

    • block_user_domain

      boolean — Whether to block users in specific domains from joining meetings and webinars.

    • embed_password_in_join_link

      boolean — Whether the meeting passcode will be encrypted and included in the invitation link. The provided link will allow participants to join the meeting without having to enter the passcode.

    • encryption_type

      string, possible values: "enhanced_encryption", "e2ee" — The type of encryption to use when starting a meeting. * `enhanced_encryption` - Use enhanced encryption. Encryption data is stored in the cloud. * `e2ee` &mdash; End-to-end encryption. The encryption key is stored on the local device and cannot be obtained by anyone else. Enabling E2EE also [**disables** certain features](https://support.zoom.us/hc/en-us/articles/360048660871), such as cloud recording, live streaming, and allowing participants to join before the host.

    • end_to_end_encrypted_meetings

      boolean — Whether to enable end-to-end encryption for meetings. If enabled, you can specify the type of encryption in the `encryption_type` field.

    • meeting_password

      boolean — Whether all instant and scheduled meetings that users can join via client or Zoom Rooms systems are passcode-protected. [Personal Meeting ID (PMI)](https://support.zoom.us/hc/en-us/articles/203276937) meetings are **not** included in this setting.

    • only_authenticated_can_join_from_webclient

      boolean — Whether to specify that only authenticated users can join the meeting from the web client.

    • phone_password

      boolean — Whether to require a passcode for participants joining by phone. If enabled and the meeting is passcode-protected, a numeric passcode is required for participants to join by phone. For meetings with alphanumeric passcodes, a numeric passcode will be generated.

    • pmi_password

      boolean — Whether all personal meeting ID (PMI) meetings that users can join via client or Zoom Rooms systems are passcode-protected.

    • waiting_room

      boolean — Whether participants are placed in the [**Waiting Room**](https://support.zoom.us/hc/en-us/articles/115000332726-Waiting-Room) when they join a meeting. If the **Waiting Room** feature is enabled, the [**Allow participants to join before host**](https://support.zoom.us/hc/en-us/articles/202828525-Allow-participants-to-join-before-host) setting is automatically disabled.

    • webinar_password

      boolean — Whether to generate a passcode when scheduling webinars. Participants must use the generated passcode to join the scheduled webinar.

Example:

{
  "audio_conferencing": {
    "toll_free_and_fee_based_toll_call": true,
    "toll_call": true,
    "call_me_and_invite_by_phone": true,
    "personal_audio_conference": true,
    "participant_phone_masking": true
  },
  "email_notification": {
    "alternative_host_reminder": true,
    "cancel_meeting_reminder": true,
    "cloud_recording_available_reminder": true,
    "jbh_reminder": true,
    "schedule_for_reminder": true
  },
  "in_meeting": {
    "alert_guest_join": true,
    "allow_users_to_delete_messages_in_meeting_chat": true,
    "allow_live_streaming": true,
    "allow_show_zoom_windows": true,
    "annotation": true,
    "attendee_on_hold": true,
    "auto_answer": true,
    "auto_generated_captions": true,
    "auto_saving_chat": true,
    "breakout_room": true,
    "chat": true,
    "meeting_question_answer": true,
    "closed_caption": true,
    "co_host": true,
    "custom_data_center_regions": true,
    "disable_screen_sharing_for_host_meetings": true,
    "disable_screen_sharing_for_in_meeting_guests": true,
    "e2e_encryption": true,
    "entry_exit_chime": "all",
    "far_end_camera_control": true,
    "feedback": true,
    "file_transfer": true,
    "full_transcript": true,
    "group_hd": true,
    "webinar_group_hd": true,
    "language_interpretation": true,
    "sign_language_interpretation": true,
    "webinar_reactions": true,
    "meeting_survey": true,
    "non_verbal_feedback": true,
    "original_audio": true,
    "polling": true,
    "post_meeting_feedback": true,
    "private_chat": true,
    "remote_control": true,
    "remote_support": true,
    "request_permission_to_unmute_participants": true,
    "save_caption": true,
    "save_captions": true,
    "screen_sharing": true,
    "sending_default_email_invites": true,
    "show_a_join_from_your_browser_link": true,
    "show_browser_join_link": true,
    "show_meeting_control_toolbar": true,
    "slide_control": true,
    "stereo_audio": true,
    "use_html_format_email": true,
    "virtual_background": true,
    "waiting_room": true,
    "webinar_chat": true,
    "webinar_live_streaming": true,
    "webinar_polling": true,
    "webinar_question_answer": true,
    "webinar_survey": true,
    "whiteboard": true
  },
  "other_options": {
    "blur_snapshot": true
  },
  "recording": {
    "account_user_access_recording": true,
    "auto_delete_cmr": true,
    "auto_recording": true,
    "cloud_recording": true,
    "cloud_recording_download": true,
    "host_delete_cloud_recording": true,
    "ip_address_access_control": {
      "enable": true,
      "ip_addresses_or_ranges": "200.181.108.17 - 220.181.108.157"
    },
    "local_recording": true,
    "recording_authentication": true,
    "archive": true
  },
  "schedule_meeting": {
    "audio_type": true,
    "embed_password_in_join_link": true,
    "host_video": true,
    "join_before_host": true,
    "meeting_authentication": true,
    "mute_upon_entry": true,
    "participant_video": true,
    "personal_meeting": true,
    "pstn_password_protected": true,
    "require_password_for_instant_meetings": true,
    "require_password_for_pmi_meetings": true,
    "require_password_for_scheduling_new_meetings": true,
    "upcoming_meeting_reminder": true,
    "continuous_meeting_chat": true
  },
  "telephony": {
    "telephony_regions": true,
    "third_party_audio": true
  }
}

Responses

Status: 204 **Status Code:** `204` Group's locked settings updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> This group does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List group members

  • Method: GET
  • Path: /groups/{groupId}/members
  • Tags: Groups

List the members of a group under your account.

Prerequisite: Pro, Business, or Education account

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:list_members:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` List of group members returned.
Content-Type: application/json
  • members

    array — List of a Group Members

    Items:

    • email

      string — User's email address.

    • first_name

      string — First name of the user.

    • id

      string — Unique Identifier of the user.

    • last_name

      string — Last name of the user.

    • type

      integer — User type: `1` - Basic `2` - Licensed

  • next_page_token

    string — The next page token is used to paginate through large result sets. A next page token will be returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.

  • page_count

    integer — The number of pages returned from this request.

  • page_number

    integer — The page number of the current results.

  • page_size

    integer — The number of records returned from a single API call.

  • total_records

    integer — The total number of records available across all pages.

Example:

{
  "members": [
    {
      "email": "jchill@example.com",
      "first_name": "Jill",
      "id": "v4iyWT1LTfy8QvPG4GTvdg",
      "last_name": "Chill",
      "type": 1
    }
  ],
  "next_page_token": "R4aF9Oj0fVM2hhezJTEmSKaBSkfesDwGy42",
  "page_count": 20,
  "page_number": 1,
  "page_size": 10,
  "total_records": 200
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account. <br> **Error Code:** `300` <br> The next page token is invalid or expired. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Add group members

  • Method: POST
  • Path: /groups/{groupId}/members
  • Tags: Groups

Use this API to add users to a group in your account.

Prerequisites:

  • A Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:write:member:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json
  • members

    array — List of Group members

    Items:

    • email

      string — User email. If the user ID is given then the user email should be ignored.

    • id

      string — User ID.

Example:

{
  "members": [
    {
      "email": "jchill@example.com",
      "id": "v4iyWT1LTfy8QvPG4GTvdg"
    }
  ]
}

Responses

Status: 201 Member added.
Content-Type: application/json
  • added_at

    string, format: date-time

  • ids

    string

Example:

{
  "added_at": "2022-03-25T03:08:12Z",
  "ids": "v4iyWT1LTfy8QvPG4GTvdg"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for paid account,{accountId}. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete a group member

  • Method: DELETE
  • Path: /groups/{groupId}/members/{memberId}
  • Tags: Groups

Use this API to remove a user from a group in an account.

Prerequisites:

  • A Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:delete:member:admin

Rate Limit Label: LIGHT

Responses

Status: 204 **HTTP Status Code:** `204` **No Content** Group member deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `1010` <br> Group does not belong to this account:{accountId}. <br> **Error Code:** `200` <br> Only available for Paid account. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br> **Error Code:** `4131` <br> Group member does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a group member

  • Method: PATCH
  • Path: /groups/{groupId}/members/{memberId}
  • Tags: Groups

Use this API to perform either of the following tasks:

  • Remove a group member from one group and move them to a different group.
  • Set a user's primary group. By default, the primary group is the first group that user is added to.

If a user is a member of multiple groups, you can assign the user a primary group. The user will use the primary group's settings by default. However, if the user is a member of a group with locked settings, those group settings will remain locked to the user.

Prerequisites:

  • A Pro or higher account

Scopes: group:write:admin

Granular Scopes: group:update:member:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json
  • action (required)

    string, possible values: "move", "set_primary" — The action to perform: * `move` &mdash; Remove the group member from one group and move them to a different group. * `set_primary` &mdash; Set the user's primary group.

  • target_group_id

    string — The target group's ID. To get this value, use the [**List groups**](/docs/api-reference/zoom-api/methods#operation/groups) API. * To set a user's primary group, use the designated primary group's `groupId` value. * To move a group member from one group to another, use the `groupId` of the designated group.

Example:

{
  "action": "move",
  "target_group_id": "SobVexyrQjqCkcxjpBWi6w"
}

Responses

Status: 204 **HTTP Status Code:** `204` **No Content** Group member updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account, {accountId}.<br><br> <br> **Error Code:** `300` <br> The target_group_id can not be empty.<br><br> <br> **Error Code:** `1010` <br> Group does not belong to this account:{accountId}. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br> **Error Code:** `4131` <br> Group member does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get a group's settings

  • Method: GET
  • Path: /groups/{groupId}/settings
  • Tags: Groups

Get settings for a group.

Prerequisite: Pro, Business, or Education account.

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:settings:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code**: `200` Group Settings Returned.
Content-Type: application/json

One of:

  • audio_conferencing

    object — The group's audio conference settings.

  • chat

    object — The account's chat settings.

    • allow_users_to_add_contacts

      object — Allow users to add contacts.

      • enable

        boolean — By disabling this setting, users will not be able to add contacts.

      • selected_option

        integer, possible values: 1, 2, 3, 4 — The type of allowing users to add contacts. * 1 - Anyone, either internal and external contacts. * 2 - In the same organization. * 3 - In the same organization and specified domains. * 4 - In the same organization and specified users.

      • user_email_addresses

        string — The domains or emails, internal or external. * When the `selected_option` field value is `3`, the value is internal or external domains. Use a comma to separate multiple domains. * When the `selected_option` field value is `4`, the value is internal or external email addresses. Use a comma to separate multiple emails.

    • allow_users_to_chat_with_others

      object — Allow users to chat with others.

      • enable

        boolean — If you select 'In the same organization', users may still be able to chat with external users if they are added to channels or group chats with external users.

      • selected_option

        integer, possible values: 1, 2, 3, 4 — The type of allowing users to add contacts. * 1 - Anyone (internal and external contacts). * 2 - In the same organization. * 3 - In the same organization and specified domains. * 4 - In the same organization and specified users.

      • user_email_addresses

        string — The domains or emails, either internal or external. * When the `selected_option` field value is `3`, the value is internal or external domains. Use a comma to separate multiple domains. * When the `selected_option` field value is `4`, the value is internal or external email addresses. Use a comma to separate multiple emails.

    • allow_users_to_search_others_options

      string — Allow users to search others, when selecting multiple items, separate them with commas. * ''-none. * '1' - In the same account. * '2' - Under the same master account, including all sub acounts. * '3' - Under the same organization.

    • chat_emojis

      object — Chat emojis.

      • emojis_option

        string, possible values: "all", "selected"

      • enable

        boolean — Allow users to use the emoji library in direct messages or group conversations. Choose between allowing users to use any emoji in the library, or choose to allow only pre-selected emojis. If the setting is disabled, users can still use keyboard shortcuts to add emojis. Users can change their emoji skin tone in Settings.

    • chat_etiquette_tool

      object — Information about the Chat Etiquette tool.

      • enable

        boolean — Whether the **Chat Etiquette Tool** is enabled.

      • policies

        array — Information about the defined **Chat Etiquette Tool** policies.

        Items:

        • description

          string — The policy's description.

        • id

          string — The policy ID.

        • is_locked

          boolean — Whether the policy is locked by an account-level user. When it is locked, users cannot update the policy.

        • keywords

          array — A list of defined rule keywords.

          Items:

          string

        • name

          string — The policy name.

        • regular_expression

          string — The regular expression to match to the content of chat messages.

        • status

          string, possible values: "activated", "deactivated" — The policy's current status. * `activated` - Activated. * `deactivated` - Deactivated.

        • trigger_action

          integer, possible values: 1, 2 — The policy's trigger action. * `1` - Ask the user to confirm before they send the message. * `2` - Block the user's message.

    • create_private_channels

      boolean — Allow users to create private channels.

    • create_public_channels

      boolean — Allow users to create public channels.

    • record_video_messages

      boolean — Allow users to record video messages that can be sent in direct messages or group conversations. If the file share setting is disabled, they will not be able to record and send video messages.

    • record_voice_messages

      boolean — Allow users to record voice messages that can be sent in direct messages or group conversations.

    • schedule_meetings_in_chat

      boolean — Schedule a meeting from chat or channel.

    • screen_capture

      boolean — Allow users to take and send screenshots in direct messages or group conversations.

    • search_and_send_animated_gif_images

      object — Allow users to search GIF images from GIPHY when they compose messages. See GIPHY's website for more information about content ratings.

      • enable

        boolean — Whether to allow users to search GIF images from GIPHY when they compose messages.

    • send_data_to_third_party_archiving_service

      object — Send data to third-party archiving service.

      • enable

        boolean — Allow users to send data to third-party archiving service.

    • set_retention_period_in_cloud

      object — Set retention period for messages and files in Zoom's cloud.

      • enable

        boolean — By default, messages and files are stored in Zoom's cloud. Enable this setting to specify when they are deleted. When retention is disabled, messages sent by offline users can be received within 7 days before they are deleted.

      • retention_period_of_channels

        string — Delete data in channels after retention period. 'y' - year, 'm' - month, 'd' - day

      • retention_period_of_direct_messages_and_group_conversation

        string — Delete direct messages and group conversations after retention period. 'y' - year, 'm' - month, 'd' - day

    • set_retention_period_in_local

      object — Store messages on local devices, excluding personal channel messages.

      • enable

        boolean — Specify how long your messages are saved on local devices. If this setting is disabled, messages are never deleted locally.

      • retention_period_of_channels

        string — Delete data in channels after retention period. 'y' - year, 'm' - month, 'd' - day

      • retention_period_of_direct_messages_and_group_conversation

        string — Delete direct messages and group conversations after retention period. 'y' - year, 'm' - month, 'd' - day

    • share_files

      object — Users can share files in chats and channels.

      • enable

        boolean — Allow users of this account to send and receive files in chats and channels. When disabled, users can still take and share screenshots.

      • share_option

        string, possible values: "anyone", "account", "organization" — Allow users of this account to send and receive files in chats and channels. When disabled, users can still take and share screenshots.

    • share_links_in_chat

      boolean — Share links to messages and channels in Team Chat.

    • translate_messages

      boolean — Allow users to translate team chat messages. [Learn more].(https://support.zoom.us/hc/en-us/articles/12998089084685)

  • email_notification

    object

    • alternative_host_reminder

      boolean — Notify the alternative host who is set or removed.

    • cancel_meeting_reminder

      boolean — Notify host and participants when the meeting is cancelled.

    • cloud_recording_available_reminder

      boolean — Whether to notify the host when a cloud recording is available.

    • jbh_reminder

      boolean — Notify host when participants join the meeting before them.

    • recording_available_reminder_alternative_hosts

      boolean — Whether to notify any alternative hosts when a cloud recording is available.

    • recording_available_reminder_schedulers

      boolean — Whether to notify the person who scheduled the meeting or webinar for the host when a cloud recording is available.

    • schedule_for_reminder

      boolean — Notify the host there is a meeting is scheduled, rescheduled, or cancelled.

  • general_setting

    object — General settings.

    • auto_zoom_room_proximity_connect

      boolean — Allow automatic direct sharing and connecting to Zoom Rooms using ultrasonic proximity signal.

  • in_meeting

    object

    • alert_guest_join

      boolean — Allow participants who belong to your account to see that a guest (someone who does not belong to your account) is participating in the meeting or webinar.

    • allow_host_panelists_to_use_audible_clap

      boolean — Whether to allow hosts and panelists to use audible clap.

    • allow_live_streaming

      boolean — Whether livestreaming is enabled.

    • allow_participants_chat_with

      integer, possible values: 1, 2, 3, 4 — Whether to allow participants to only chat with certain groups. * `1` - The participant cannot use chat. * `2` - Host and co-hosts only. * `3` - The participant can chat with other participants publicly. * `4` - The participant can chat with other participants publicly and privately. **Note:** This setting is only available with client versions 5.7.3 and above.

    • allow_show_zoom_windows

      boolean — Show Zoom windows during screen share.

    • allow_users_save_chats

      integer, possible values: 1, 2, 3 — Whether to allow participants to save meeting chats. * `1` - Participants cannot save meeting chats. * `2` - Participants can only save host and co-host meeting chats. * `3` - Participants can save all meeting chats.

    • allow_users_to_delete_messages_in_meeting_chat

      boolean — If the value of this field is set to `true`, allow users to delete messages in the in-meeting chat.

    • annotation

      boolean — Allow participants to use annotation tools to add information to shared screens.

    • attendee_on_hold

      boolean, default: false — Allow the host to put an attendee on hold. **This field has been deprecated and is no longer supported.**

    • auto_answer

      boolean — Enable users to see and add contacts to 'auto-answer group' in the contact list on chat. Any call from members of this group will be automatically answered.

    • auto_generated_translation

      object — Information about the [Translate captions](https://support.zoom.us/hc/en-us/articles/8158738379917-Managing-automated-captions-) settings in meetings.

      • enable

        boolean — Whether to allow users to enable automated translated captions in these language pairs in meetings.

      • language_item_pairList

        object — Information about all spoken languages and translation languages in meetings.

        • all

          boolean — Whether to select all spoken languages and translation languages.

        • trans_lang_config

          array — A list of spoken languages and translation languages.

          Items:

          • speak_language

            object — The language used in meetings.

            • code

              string, possible values: "zh", "nl", "en", "fr", "de", "it", "ja", "ko", "pt", "ru", "es", "uk" — The code for the language.

            • name

              string, possible values: "Chinese (Simplified)", "Dutch", "English", "French", "German", "Italian", "Japanese", "Korean", "Portuguese", "Russian", "Spanish", "Ukrainian" — The language's name.

          • translate_to

            object — Information about all the translation languages.

            • all

              boolean — Whether to select all the translation languages.

            • language_config

              array — A list of the translation languages.

              Items:

              • code

                string, possible values: "en" — The translation language's code.

              • name

                string, possible values: "English" — The translation language's name.

    • auto_saving_chat

      boolean — Automatically save all in-meeting chats.

    • breakout_room

      boolean — Allow the host to split meeting participants into separate, smaller rooms.

    • breakout_room_schedule

      boolean — Whether the host can assign participants to breakout rooms when scheduling. This feature is **only** available in version 4.5.0 or higher.

    • chat

      boolean — Allow meeting participants to send chat message visible to all participants.

    • closed_caption

      boolean — Allow the host to type closed captions or assign a participant/third party device to add closed captions.

    • closed_captioning

      object — Information about the group's closed captioning settings.

      • auto_transcribing

        boolean — Whether to allow a live transcription service to transcribe meetings.

      • enable

        boolean — Whether to allow the host to type closed captions or assign a participant or 3rd-party service to provide closed captioning.

      • save_caption

        boolean — Whether to allow participants to save closed captions or transcripts.

      • third_party_captioning_service

        boolean — Whether to allow the use of an API token to integrate with 3rd-party closed captioning services.

      • view_full_transcript

        boolean — Whether to allow the viewing of full transcripts in the in-meeting side panel.

    • co_host

      boolean — Allow the host to add co-hosts. Co-hosts have the same in-meeting controls as the host.

    • custom_data_center_regions

      boolean — If set to `true`, you can [select data center regions](https://support.zoom.us/hc/en-us/articles/360042411451-Selecting-data-center-regions-for-hosted-meetings-and-webinars) to be used by this group for hosting their real-time meeting and webinar traffic. These regions can be provided in the `data_center_regions` field. If set to `false`, the regions cannot be customized and the default regions will be used.

    • custom_live_streaming_service

      boolean — Whether custom livestreaming is enabled.

    • custom_service_instructions

      string — The specific instructions to allow your account's meeting hosts to configure a custom livestream.

    • data_center_regions

      array — If the value of `custom_data_center_regions` is `true`, a comma-separated list of these [data center regions](https://support.zoom.us/hc/en-us/articles/360059254691-Datacenter-abbreviation-list) to opt in to. * `AU` - Australia. * `LA` - Latin America. * `CA` - Canada. * `CN` - China. * `DE` - Germany. * `HK` - Hong Kong SAR. * `IN` - India. * `IE` - Ireland. * `TY` - Japan. * `MX` - Mexico. * `NL` - Netherlands. * `SG` - Singapore. * `US` - United States.

      Items:

      string, possible values: "AU", "LA", "CA", "CN", "DE", "HK", "IN", "IE", "TY", "MX", "NL", "SG", "US"

    • disable_screen_sharing_for_host_meetings

      boolean — Whether the **Disable desktop screen sharing for meetings you host** setting is enabled.

    • disable_screen_sharing_for_in_meeting_guests

      boolean — Whether the **Disable screen sharing when guests are in the meeting** setting is enabled.

    • e2e_encryption

      boolean — Require that all meetings are encrypted using AES.

    • entry_exit_chime

      string — Play sound when participants join or leave.

    • far_end_camera_control

      boolean — Allow another user to take control of the camera during a meeting.

    • feedback

      boolean — Enable users to provide feedback to Zoom at the end of the meeting.

    • file_transfer

      boolean — Indicates whether [in-meeting file transfer](https://support.zoom.us/hc/en-us/articles/209605493-In-meeting-file-transfer) setting has been enabled for the users in the group or not.

    • group_hd

      boolean — Enable higher quality video for host and participants in the meeting. This requires more bandwidth.

    • join_from_desktop

      boolean — Whether to allow participants to join a meeting directly from their desktop browser. Note that the meeting experience from the desktop browser is limited.

    • join_from_mobile

      boolean — Whether to allow participants to join a meeting directly from their mobile browser. Note that the meeting experience from the mobile browser is limited.

    • language_interpretation

      object — Information about the [language interpretation](https://support.zoom.us/hc/en-us/articles/360034919791-Using-Language-Interpretation-in-your-meeting-or-webinar) settings.

      • allow_participants_to_speak_in_listening_channel

        boolean — Whether to allow participants to speak in listening channel.

      • allow_up_to_25_custom_languages_when_scheduling_meetings

        boolean — Whether to allow up to 25 custom languages when scheduling meetings.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — Whether to allow hosts to assign participants as interpreters who can interpret one language into another in real-time.

      • enable_language_interpretation_by_default

        boolean — Whether to enable language interpretation by default.

      • languages

        array, possible values: "English", "Chinese", "Japanese", "German", "French", "Russian", "Portuguese", "Spanish", "Korean" — A list of system-supported languages.

        Items:

        string

    • live_streaming_facebook

      boolean — Whether Facebook livestreaming is enabled.

    • live_streaming_youtube

      boolean — Whether YouTube livestreaming is enabled.

    • manual_captioning

      object — Information about manual captioning settings.

    • meeting_polling

      object — Information about the account's meeting polling settings.

      • advanced_polls

        boolean — Whether to allow the host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. Hosts can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow the host to upload an image for each question.

      • enable

        boolean — Whether to allow the host to add polls before or during a meeting.

      • manage_saved_polls_and_quizzes

        boolean — Whether to allow users to manage saved polls and quizzes from Meetings

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • meeting_question_answer

      boolean — Allow participants to ask questions for the host and participants to answer.

    • meeting_reactions

      boolean — Whether meeting participants can [communicate using the emoji reactions](https://support.zoom.us/hc/en-us/articles/115001286183-Nonverbal-feedback-and-meeting-reactions) located in the **Reactions** menu in the meeting toolbar.

    • meeting_reactions_emojis

      string, possible values: "all", "selected" — Choose from the following meeting reaction options. * `all` - All emojis: Allow meeting participants to use any emoji available in Zoom chat as a reaction in a meeting. * `selected` - Selected emojis: Allow meeting participants to use the 6 standard meeting reaction emojis: Clapping Hands, Thumbs Up, Heart, Tears of Joy, Open Mouth, Party Popper (Tada, Celebration)

    • meeting_survey

      boolean — Whether to allow the host to present a survey to participants once a meeting has ended. This feature is only available in version 5.7.3 or higher.

    • non_verbal_feedback

      boolean — Allow participants in a meeting to provide nonverbal feedback and express opinions by clicking on icons in the participants panel.

    • only_host_view_device_list

      boolean — Show the list of H.323/SIP devices only to the host.

    • original_audio

      boolean — Allow users to select original sound during a meeting.

    • participants_share_simultaneously

      string, possible values: "multiple", "one" — Indicates how many participants can share at the same time. The value can be one of the following: `one`: Only one participant can share at a time . `multiple`: Multiple participants can share simultaneously (dual monitors recommended) . For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • polling

      boolean — Add 'Polls' to the meeting controls. This allows the host to survey the attendees.

    • post_meeting_feedback

      boolean — Display end-of-meeting experience feedback survey.

    • private_chat

      boolean — Allow meeting participants to send a private 1:1 message to another participant.

    • record_play_own_voice

      boolean — When each participant joins by telephone, allow the option to record and play their own voice as entry and exit chimes.

    • remote_control

      boolean — During screen sharing, allow the person who is sharing to let others control the shared content.

    • remote_support

      boolean — Allow meeting host to provide 1:1 remote support to another participant.

    • request_permission_to_unmute_participants

      boolean — Indicates whether the [**Request permission to unmute participants**](https://support.zoom.us/hc/en-us/articles/203435537-Muting-and-unmuting-participants-in-a-meeting#h_01EGK4XFWS1SJGZ71MYGKF7260) option has been enabled for the group or not.

    • screen_sharing

      boolean — Allow host and participants to share their screen or content during meetings.

    • sending_default_email_invites

      boolean — Allow users to invite participants by email only by default.

    • show_a_join_from_your_browser_link

      boolean — Whether to allow participants to join a meeting directly from their browser and bypass the Zoom application download process. This is useful for participants who cannot download, install, or run applications. Note that the meeting experience from the browser is limited.

    • show_browser_join_link

      boolean — Allow participants to join a meeting directly from their browser.

    • show_device_list

      boolean — Show the list of H.323/SIP devices.

    • show_meeting_control_toolbar

      boolean — Always show meeting controls during a meeting.

    • sign_language_interpretation

      object — Allow hosts to assign participants as sign language interpreters who can interpret one language into sign language in real-time. Hosts can assign interpreters when scheduling, or during the meeting itself. This feature is only available with version 5.11.3 or later.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — Whether to allow hosts to assign participants as sign language interpreters who can interpret one language into another in real-time.

      • enable_sign_language_interpretation_by_default

        boolean — Whether to enable sign language interpretation view by default in scheduler.

      • languages

        array — A list of system-supported languages.

        Items:

        string, possible values: "American", "Chinese", "French", "German", "Japanese", "Russian", "Brazilian", "Spanish", "Mexican", "British"

    • slide_control

      boolean — Whether the person sharing during a presentation can allow others to control the slide presentation. This feature is only available in version 5.8.3 or higher.

    • stereo_audio

      boolean — Allow users to select stereo audio during a meeting.

    • unchecked_data_center_regions

      array, possible values: "EU", "HK", "AU", "IN", "TY", "CN", "US", "CA", "DE", "NL", "LA" — If the value of `custom_data_center_regions` is `true`, a comma-separated list of these [data center regions](https://support.zoom.us/hc/en-us/articles/360059254691-Datacenter-abbreviation-list) to **not** opt in to. * `EU` - Europe. * `HK` - Hong Kong. * `AU` - Australia. * `IN` - India. * `LA` - Latin America. * `TY` - Tokyo. * `CN` - China. * `US` - United States. * `CA` - Canada.

      Items:

      string

    • use_html_format_email

      boolean — Allow HTML formatting instead of plain text for meeting invitations scheduled with the Outlook plugin.

    • virtual_background

      boolean — Enable virtual backgrounds.

    • virtual_background_settings

      object — Settings to manage virtual background.

      • allow_upload_custom

        boolean — Allow users to upload custom backgrounds.

      • allow_videos

        boolean — Allow use of videos for virtual backgrounds.

      • enable

        boolean — Enable virtual backgrounds.

      • files

        array

        Items:

        • id

          string — The file's unique identifier.

        • is_default

          boolean — Indicates whether or not this file is the default virtual background file.

        • name

          string — File name.

        • size

          integer — File size.

        • type

          string — File type.

    • waiting_room

      boolean — Attendees can't join a meeting until a host admits them individually from the waiting room.

    • webinar_chat

      object

      • allow_attendees_chat_with

        integer, possible values: 1, 2, 3 — Allow webinar attendees to chat with other attendees. * `1` - No one. * `2` - Host and all panelists. * `3` - Everyone.

      • allow_auto_save_local_chat_file

        boolean — Whether to automatically save chat messages to a local file on the host's computer when the webinar ends.

      • allow_panelists_chat_with

        integer, possible values: 1, 2 — Allow webinar panelists to chat with other attendees. * `1` - Host and all panelists. * `2` - Everyone.

      • allow_panelists_send_direct_message

        boolean — Whether to allow webinar panelists to send direct messages to other panelists.

      • allow_users_save_chats

        integer, possible values: 0, 1, 2 — Whether to allow webinar attendees to save chats. * `0` - Attendees cannot save chats. * `1` - Attendees can only save host and panelist chats. * `2` - Attendees can save all chats.

      • default_attendees_chat_with

        integer, possible values: 1, 2 — By default, allow webinar attendees to chat with. * `1` - Host and all panelists. * `2` - Everyone.

      • enable

        boolean — Whether to allow webinar participants to send chat messages.

    • webinar_group_hd

      boolean — Enable higher quality video for host and participants in the webianr. This requires more bandwidth.

    • webinar_live_streaming

      object

      • custom_service_instructions

        string — The specific instructions to allow your account's meeting hosts to configure a custom livestream.

      • enable

        boolean — Whether webinar livestreaming is enabled.

      • live_streaming_reminder

        boolean — Whether to notify users to watch the livestream. This does not apply to custom real-time messaging protocol (RTMP).

      • live_streaming_service

        array — The available livestreaming services. * `facebook` * `workplace_by_facebook` * `youtube` * `custom_live_streaming_service`

        Items:

        string, possible values: "facebook", "workplace_by_facebook", "youtube", "custom_live_streaming_service"

    • webinar_polling

      object

      • advanced_polls

        boolean — Whether to allow the host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. Hosts can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow the host to upload an image for each question.

      • enable

        boolean — Whether to allow the host to add polls before or during a webinar.

      • manage_saved_polls_and_quizzes

        boolean — Whether to allow users to manage saved polls and quizzes from Meetings

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • webinar_question_answer

      boolean — Whether attendees can ask the host and panelists questions in the webinar.

    • webinar_reactions

      boolean — Set this field to `true` to use [webinar reactions](https://support.zoom.us/hc/en-us/articles/4803536268429).

    • webinar_survey

      boolean — Whether to allow the host to present surveys to attendees once a webinar has ended.

    • whiteboard

      boolean — Allow participants to share a whiteboard that includes annotation tools.

    • who_can_share_screen

      string, possible values: "host", "all" — Indicates who can share their screen or content during meetings. The value can be one of the following: `host`: Only host can share the screen. `all`: Both hosts and attendees can share their screen during meetings. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • who_can_share_screen_when_someone_is_sharing

      string, possible values: "host", "all" — Indicates who is allowed to start sharing screen when someone else in the meeting is sharing their screen. The value can be one of the following: `host`: Only a host can share the screen when someone else is sharing. `all`: Anyone in the meeting is allowed to start sharing their screen when someone else is sharing. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • workplace_by_facebook

      boolean — Whether Workplace by Facebook is enabled.

  • mail_calendar

    object — Email and calendar related settings.

    • email_calendar_management

      boolean — Allow the Zoom client to manage both emails and calendar events for the user.

    • email_management

      boolean — Allow the Zoom client to manage user emails.

    • zoom_email_provider

      boolean — Allow users to select Zoom as their email service provider.

  • other_options

    object

    • allow_users_contact_support_via_chat

      boolean — Whether to display the Zoom help badge on the bottom-right of the page.

    • blur_snapshot

      boolean — Whether iOS blurs the screenshot in the task switcher when multiple apps are open. Android hides the screenshot in the system-level list of recent apps.

    • webinar_registration_options

      object — Webinar registration options.

      • allow_host_to_enable_join_info

        boolean — Allow host to enable **Show join info on registration confirmation page**.

      • allow_host_to_enable_social_share_buttons

        boolean — Allow host to enable **Show social share buttons on registration page**.

      • enable_custom_questions

        boolean — Enable custom questions.

  • profile

    object

  • recording

    object

    • account_user_access_recording

      boolean — Make cloud recordings accessible to account members only.

    • archive

      object — [Archiving solution](https://support.zoom.us/hc/en-us/articles/360050431572-Archiving-Meeting-and-Webinar-data) settings. This setting can only be used if you have been granted archiving solution access by the Zoom Support team.

      • enable

        boolean — Enable the archiving feature.

      • settings

        object

        • action_when_archive_failed

          integer, possible values: 1, 2 — Perform the action when meetings or webinars cannot be archived. `1` - Participants can stay in the meeting and will receive a notification. `2` - Nobody can join or stay in the meeting.

        • archive_retention

          integer, possible values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 — The retention period for archiving content, in days.

        • audio_file

          boolean — Include in-meeting or in-webinar audio in the archive.

        • cc_transcript_file

          boolean — Include closed caption or transcript in the archive.

        • chat_file

          boolean — Include in-meeting chat in the archive.

        • chat_with_direct_message

          boolean — Include direct message in in-meeting chat file.

        • chat_with_sender_email

          boolean — Include user email in in-meeting chat file.

        • notification_when_archiving_starts

          string, possible values: "participants", "guest" — Show notification when video or audio archiving starts. `1` - Participants can stay in the meeting and will receive a notification. `2` - Nobody can join or stay in the meeting.

        • play_voice_prompt_when_archiving_starts

          string, possible values: "participants", "guest", "none" — Play voice prompt when video or audio archiving starts. `1` - Participants can stay in the meeting and will receive a notification. `2` - Nobody can join or stay in the meeting.

        • video_file

          boolean — Include in-meeting or in-webinar video in the archive.

      • type

        integer, possible values: 1, 2, 3 — Archive types. * `1` - Only meetings are archived. * `2` - Only webinars are archived. * `3` - Both meetings and webinars are archived.

    • auto_recording

      string — Record meetings automatically as they start.

    • cloud_recording

      boolean — Allow hosts to record and save the meeting or webinar in the cloud.

    • cloud_recording_download

      boolean — Allow anyone with a link to the cloud recording to download.

    • cloud_recording_download_host

      boolean — Allow only the host with a link to the cloud recording to download.

    • display_participant_name

      boolean — Whether participants' names display in the recording.

    • host_delete_cloud_recording

      boolean — Allow the host to delete the recordings. If this option is disabled, the recordings cannot be deleted by the host and only admin can delete them.

    • ip_address_access_control

      object — Setting to allow cloud recording access only from specific IP address ranges.

      • enable

        boolean — If set to `true`, the cloud recordings of this account can only be accessed by the IP addresses defined in the `ip_addresses_or_ranges` property.

      • ip_addresses_or_ranges

        string — IP addresses or ranges that have access to the cloud recordings. Separate multiple IP ranges with comma. Use n.n.n.n, n.n.n.n/n or n.n.n.n - n.n.n.n syntax where n is a number. Example: `46.33.24.184, 48.99.100.2/25` or `200.181.108.17 - 220.181.108.157`

    • local_recording

      boolean — Allow hosts and participants to record the meeting to a local file.

    • optimize_recording_for_3rd_party_video_editor

      boolean — Whether recordings will be optimized for a 3rd party video editor. This can increase the file size and the time it takes to generate recording files.

    • prevent_host_access_recording

      boolean — If set to `true`, meeting hosts cannot view their meeting cloud recordings. Only the admins who have recording management privilege can access them.

    • record_audio_file

      boolean — Whether to record one audio file for all participants.

    • record_files_separately

      object — The account's [**Record active speaker, gallery view and shared screen separately**](https://support.zoom.us/hc/en-us/articles/360060316092-Changing-basic-and-advanced-cloud-recording-settings#h_01F4CYJTCTXNS2MXH00W9EFG6R) settings.

      • active_speaker

        boolean — Whether recording only the active speaker is enabled.

      • gallery_view

        boolean — Whether recording only the gallery view is enabled.

      • shared_screen

        boolean — Whether recording only shared screen is enabled.

    • record_gallery_view

      boolean — When someone is sharing their screen, active speaker will show on the top right corner of the shared screen.

    • record_speaker_view

      boolean — Record active speaker with shared screen.

    • recording_audio_transcript

      boolean — Automatically transcribe the audio of a meeting or webinar for cloud recordings.

    • recording_highlight

      boolean — Whether the [recording highlights](https://support.zoom.us/hc/en-us/articles/360060802432) feature is enabled.

    • recording_notification_for_zoom_client

      object — setting name: Recording notifications - Zoom clients

      • ask_host_to_confirm

        boolean — Child setting name is [Ask host to confirm before starting a recording], the value is option name you selected

      • disclaimer_to_participants

        string — Child setting name is [Show a disclaimer to participants when a recording starts], the value is option name you selected.

      • play_voice_prompt

        string — Child setting name is [Play voice prompt for], the value is option name you selected.

    • recording_thumbnails

      boolean — Whether thumbnails of the presenter are recorded when they are sharing their screen.

    • save_chat_text

      boolean — Save chat messages from the meeting or webinar.

    • save_close_caption

      boolean — Whether [closed captions](https://support.zoom.us/hc/en-us/articles/207279736) are saved as a VTT (Video Track Text) file.

    • save_panelist_chat

      boolean — Whether panelist chats are saved to the recording.

    • save_poll_results

      boolean — Whether poll results shared during the meeting or webinar are saved. This also includes poll results shared during the meeting or webinar.

    • show_timestamp

      boolean — Add a timestamp to the recording.

    • smart_recording

      object — By selecting this option, your recording will have meeting smart chapters, and next steps. You are directing Zoom to access, process, and use your account's recording data for the purpose of analysis and insights.

      • create_next_steps

        boolean — By selecting this option, there will be a summary of actions to take after the recorded meeting.

      • create_recording_highlights

        boolean — By selecting this option, meeting details in the audio transcript will be highlighted. Hosts can modify highlighted sections and generate a video summary (highlighted sections may have a 3-second offset) based on these sections. The summary is for informational purposes only and may not be complete.

      • create_smart_chapters

        boolean — By selecting this option, your recording will have chapters with overview. Hosts can edit the chapters.

  • schedule_meeting

    object

    • always_display_zoom_meeting_as_topic

      object — Information about the [**Always display `Zoom Meeting` as the meeting topic**](https://support.zoom.us/hc/en-us/articles/201363253-Changing-account-settings#h_01EG9BJ646V2WJK1S3H2MP6YV6) setting.

      • display_topic_for_scheduled_meetings

        boolean — Whether to display **Zoom Meeting** as the topic for already-scheduled meetings.

      • enable

        boolean — Whether the **Always display `Zoom Meeting` as the meeting topic** setting is enabled.

    • always_display_zoom_webinar_as_topic

      object — Information about the [**Always show `Zoom Webinar` as the webinar topic**](https://support.zoom.us/hc/en-us/articles/201363253-Changing-account-settings#h_01EG9BJ646V2WJK1S3H2MP6YV6) setting.

      • display_topic_for_scheduled_webinars

        boolean — Whether to display **Zoom Webinar** as the topic for already-scheduled meetings.

      • enable

        boolean — Whether the **Always show `Zoom Webinar` as the webinar topic** setting is enabled.

    • audio_type

      string — Determine how participants can join the audio portion of the meeting.

    • continuous_meeting_chat

      object — Information about the **Enable continuous meeting chat** feature.

      • auto_add_invited_external_users

        boolean — Whether to enable the **Automatically add invited external users** setting.

      • can_add_external_users

        boolean — Whether to enable the **External users can be added** setting.

      • enable

        boolean — Whether to enable the **Enable continuous meeting chat** setting.

    • embed_password_in_join_link

      boolean — If the value is set to `true`, the meeting passcode will be encrypted and included in the join meeting link to allow participants to join with just one click without having to enter the passcode.

    • force_pmi_jbh_password

      boolean — If join before host option is enabled for a personal meeting, then enforce passcode requirement. **This field will be deprecated in near future.** If you would like to enable this setting, we highly encourage you to use the `require_password_for_pmi_meetings` field.

    • host_video

      boolean — Start meetings with host video on.

    • join_before_host

      boolean — Allow participants to join the meeting before the host arrives.

    • mute_upon_entry

      boolean — Automatically mute all participants when they join the meeting.

    • participant_video

      boolean — Start meetings with participant video on.

    • personal_meeting

      boolean — Personal meeting setting. n `true` - Indicates that the **Enable Personal Meeting ID** setting is turned on. Users can choose to use personal meeting ID for their meetings. `false` - Indicates that the **Enable Personal Meeting ID** setting is [turned off](https://support.zoom.us/hc/en-us/articles/201362843-Personal-meeting-ID-PMI-and-personal-link#h_aa0335c8-3b06-41bc-bc1f-a8b84ef17f2a). If this setting is disabled, meetings that were scheduled with PMI will be invalid. Scheduled meetings will need to be manually updated. For Zoom Phone only:If a user has been assigned a desk phone, **Elevate to Zoom Meeting** on desk phone will be disabled.

    • pstn_password_protected

      boolean — Generate and send new passcodes for newly scheduled or edited meetings.

    • require_password_for_instant_meetings

      boolean — If enabled, a random passcode will be generated on the user's end who starts the instant meeting. Other participants will have to enter the password to join the meeting. If you use PMI for your instant meetings, this option will be disabled.

    • require_password_for_pmi_meetings

      string, possible values: "all", "jbh_only", "none" — Indicates whether a passcode is required for [PMI](https://support.zoom.us/hc/en-us/articles/203276937-Using-Personal-Meeting-ID-PMI-) meetings or not. `none` - Do not require password for PMI meetings. `all` - Require participants to enter password for all PMI enabled meetings. `jbh_only` - Require password only for meetings where the **join before host** setting is enabled.

    • require_password_for_scheduled_meetings

      boolean — Require a passcode for meetings which have already been scheduled

    • require_password_for_scheduling_new_meetings

      boolean — This setting applies for regular meetings that do not use a PMI. If enabled, a password will be generated while a host schedules a new meeting and participants will be required to enter the password before they can join the meeting.

    • upcoming_meeting_reminder

      boolean — Receive desktop notification for upcoming meetings.

    • use_pmi_for_instant_meetings

      boolean — Indicates whether PMI is enabled for all instant meetings or not.

    • use_pmi_for_schedule_meetings

      boolean — Indicates whether PMI is enabled for all scheduled meetings or not.

  • telephony

    object — Group Settings: Telephony.

    • audio_conference_info

      string — Third party audio conference info.

    • telephony_regions

      object — Indicates where most of the participants call into or call from during a meeting.

      • selection_values

        string — The account's selected telephony regions that indicate where most participants call into or call from during a meeting.

    • third_party_audio

      boolean — Allow users to join the meeting using the existing 3rd party audio configuration.

One of:

  • allow_authentication_exception

    boolean — Whether the [**Allow authentication exception**](https://support.zoom.us/hc/en-us/articles/360037117472#h_01F13A9N1FQFNVESC9C21NRHXY) setting is enabled. This lets hosts invite users who can bypass authentication.

  • authentication_options

    array — Meeting Authentication Options

    Items:

    • default_option

      boolean — Authentication default option

    • domains

      string — Authentication domains

    • id

      string — Authentication id

    • name

      string — Authentication name

    • type

      string, possible values: "enforce_login", "enforce_login_with_same_account", "enforce_login_with_domains" — Authentication type. Specify one of the following authentication types for the authentication profile: * `enforce_login`: This option allows any users to join the meeting or webinar, as long as they are signed into their Zoom account. * `enforce_login_with_domains`: This option, allows you to specify a rule so that only those Zoom users whose email addresses contain a certain domain, can join the meeting or webinar. You can either add multiple domains using a comma in between and/or use a wildcard for listing domains. * `enforce_login_with_same_account`: This option allows users to join the meeting or webinar with the same Zoom account.

    • visible

      boolean — Authentication visible

  • meeting_authentication

    boolean — Only authenticated users can join meetings

  • authentication_options

    array — Authentication Options

    Items:

    • default_option

      boolean — Authentication default option

    • domains

      string — Authentication domains

    • id

      string — Authentication id

    • name

      string — Authentication name

    • type

      string, possible values: "internally", "enforce_login", "enforce_login_with_domains" — Authentication type

    • visible

      boolean — Authentication visible

  • recording_authentication

    boolean — Only authenticated users can view cloud recordings

  • meeting_security

    object

    • auto_security

      boolean — Whether all meetings are required to be secured with at least one security option. This setting can only be disabled by Enterprise, ISV, Business (with more than 100 licenses), and Education accounts.

    • block_user_domain

      boolean — Whether users in specific domains are blocked from joining meetings and webinars.

    • block_user_domain_list

      array — A list of blocked domains.

      Items:

      string

    • chat_etiquette_tool

      object — Information about the Chat Etiquette Tool.

      • enable

        boolean — Whether the **Chat Etiquette Tool** is enabled.

      • policies

        array — Information about the defined **Chat Etiquette Tool** policies.

        Items:

        • description

          string — The policy's description.

        • id

          string — The policy ID.

        • is_locked

          boolean — Whether the policy is locked by an account-level user. When it is locked, users cannot update the policy.

        • keywords

          array — A list of defined rule keywords.

          Items:

          string

        • name

          string — The policy name.

        • regular_expression

          string — The regular expression to match to the content of chat messages.

        • status

          string, possible values: "activated", "deactivated" — The policy's current status. * `activated` - Activated. * `deactivated` - Deactivated.

        • trigger_action

          integer, possible values: 1, 2 — The policy's trigger action. * `1` - Ask the user to confirm before they send the message. * `2` - Block the user's message.

    • embed_password_in_join_link

      boolean — Whether the meeting password will be encrypted and included in the invitation link. The provided link will allow participants to join the meeting without having to enter the password.

    • encryption_type

      string, possible values: "enhanced_encryption", "e2ee" — The type of encryption used to start a meeting. * `enhanced_encryption` - Enhanced encryption. Encryption data is stored in the cloud. * `e2ee` - End-to-end encryption. The encryption key is stored on the local device and cannot be obtained by anyone else. E2EE also [**disables** certain features](https://support.zoom.us/hc/en-us/articles/360048660871), such as cloud recording, live streaming, and allowing participants to join before the host.

    • end_to_end_encrypted_meetings

      boolean — Whether end-to-end encryption is enabled for meetings.

    • meeting_password

      boolean — Whether all instant and scheduled meetings that users can join via client or Zoom Rooms systems are password-protected. [Personal meeting ID (PMI)](https://support.zoom.us/hc/en-us/articles/203276937) meetings are **not** included in this setting.

    • meeting_password_requirement

      object — Information about the meeting and webinar [password requirements](https://support.zoom.us/hc/en-us/articles/360033559832-Meeting-and-webinar-passwords#h_a427384b-e383-4f80-864d-794bf0a37604).

      • consecutive_characters_length

        integer, possible values: 0, 4, 5, 6, 7, 8 — The maximum length of consecutive characters, like `abcdef`, allowed in a password. * `4` through `8` - The maximum consecutive characters length. The length is `n` minus `1`, where `n` is the provided value. For example, if you provide the `4` value, there can only be a maximum of `3` consecutive characters in a password (for example, `abc1x@8fdh`). * `0` - Do not apply a consecutive character restriction.

      • have_letter

        boolean — Whether the password must contain at least one letter character.

      • have_number

        boolean — Whether the password must contain at least one numeric character.

      • have_special_character

        boolean — Whether the password must contain at least one special character. For example, `!`, `@`, and/or `#` characters.

      • have_upper_and_lower_characters

        boolean — Whether the password must include uppercase and lowercase characters.

      • length

        integer — The password's minimum length.

      • only_allow_numeric

        boolean — Whether the password must contain **only** numeric characters.

      • weak_enhance_detection

        boolean — Whether users will be informed when the provided password is weak.

    • only_authenticated_can_join_from_webclient

      boolean — Whether to specify that only authenticated users can join the meeting from the web client.

    • phone_password

      boolean — Whether a password is required for participants joining by phone. If enabled and the meeting is password-protected, a numeric password is required for participants to join by phone. For meetings with alphanumeric passwords, a numeric password will be generated.

    • pmi_password

      boolean — Whether all Personal Meeting ID (PMI) meetings that users can join via client or Zoom Rooms systems are password-protected.

    • require_password_for_scheduled_meeting

      boolean — Whether a password is required for meetings that have already been scheduled.

    • require_password_for_scheduled_webinar

      boolean — Whether a password is required for webinars that have already been scheduled.

    • waiting_room

      boolean — Whether participants are placed in the [**Waiting Room**](https://support.zoom.us/hc/en-us/articles/115000332726-Waiting-Room) when they join a meeting. When the **Waiting Room** feature is enabled, the [**Allow participants to join before host**](https://support.zoom.us/hc/en-us/articles/202828525-Allow-participants-to-join-before-host) setting is disabled.

    • waiting_room_settings

      object — Information about the waiting room settings.

      • participants_to_place_in_waiting_room

        integer, possible values: 0, 1, 2 — The type of participants to be admitted to the waiting room. * `0` - All attendees. * `1` - Users who are not in your account. * `2` - Users who are not in your account and are not part of your [allowed domains list](https://support.zoom.us/hc/en-us/articles/360037117472-Configuring-authentication-profiles#h_e3cf0d5f-eec7-4c2a-ad29-ef2a5079a7da).

      • users_who_can_admit_participants_from_waiting_room

        integer, possible values: 0, 1 — The users who can admit participants from the waiting room. * `0` - Host and co-hosts only. * `1` - Host, co-hosts, and anyone who bypassed the Waiting Room if the host and co-hosts are not present.

      • whitelisted_domains_for_waiting_room

        string — If the `participants_to_place_in_waiting_room` field is `2`, a comma-separated list of the domains that can bypass the waiting room (`example.com,example2.com`).

    • webinar_password

      boolean — Whether a password is generated when scheduling webinars. Participants must use the generated password to join the scheduled webinar.

Example:

{
  "audio_conferencing": {
    "toll_free_and_fee_based_toll_call": {
      "allow_webinar_attendees_dial": true,
      "enable": true,
      "numbers": [
        {
          "code": "86",
          "country_code": "CN",
          "country_name": "China",
          "display_number": "+86 7777 777",
          "number": "7777 777"
        }
      ]
    },
    "toll_call": {
      "enable": true,
      "numbers": [
        {
          "code": "86",
          "country_code": "CN",
          "country_name": "China",
          "display_number": "+86 777 777 77",
          "number": "777 777 77"
        }
      ]
    },
    "call_me_and_invite_by_phone": {
      "enable": true,
      "require_press_1_for_call_me": "auto",
      "allow_webinar_attendees_call_me": true,
      "call_out_countries": {
        "allowed_countries": [
          {
            "code": "CN",
            "name": "China"
          }
        ],
        "selected_countries": [
          {
            "code": "CN",
            "name": "China"
          }
        ]
      }
    },
    "personal_audio_conference": true,
    "participant_phone_masking": {
      "enable": true,
      "masking_type": "mask_default"
    },
    "global_dial_in_countries": {
      "allowed_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ],
      "selected_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ],
      "include_toll_free": true
    }
  },
  "email_notification": {
    "alternative_host_reminder": true,
    "cancel_meeting_reminder": true,
    "cloud_recording_available_reminder": true,
    "jbh_reminder": true,
    "recording_available_reminder_alternative_hosts": true,
    "recording_available_reminder_schedulers": true,
    "schedule_for_reminder": true
  },
  "in_meeting": {
    "alert_guest_join": true,
    "allow_users_to_delete_messages_in_meeting_chat": true,
    "allow_live_streaming": true,
    "allow_participants_chat_with": 1,
    "allow_show_zoom_windows": true,
    "allow_users_save_chats": 1,
    "annotation": true,
    "attendee_on_hold": true,
    "auto_answer": true,
    "auto_saving_chat": true,
    "breakout_room": true,
    "breakout_room_schedule": true,
    "chat": true,
    "meeting_question_answer": true,
    "closed_caption": true,
    "closed_captioning": {
      "auto_transcribing": true,
      "enable": true,
      "save_caption": true,
      "third_party_captioning_service": true,
      "view_full_transcript": true
    },
    "co_host": true,
    "custom_data_center_regions": true,
    "custom_live_streaming_service": true,
    "custom_service_instructions": "The specific instructions",
    "data_center_regions": [
      "AU"
    ],
    "disable_screen_sharing_for_host_meetings": true,
    "disable_screen_sharing_for_in_meeting_guests": true,
    "e2e_encryption": true,
    "entry_exit_chime": "all",
    "far_end_camera_control": true,
    "feedback": true,
    "file_transfer": true,
    "group_hd": true,
    "webinar_group_hd": true,
    "join_from_desktop": true,
    "join_from_mobile": true,
    "auto_generated_translation": {
      "language_item_pairList": {
        "trans_lang_config": [
          {
            "speak_language": {
              "name": "Chinese (Simplified)",
              "code": "zh"
            },
            "translate_to": {
              "all": true,
              "language_config": [
                {
                  "name": "English",
                  "code": "en"
                }
              ]
            }
          }
        ],
        "all": true
      },
      "enable": true
    },
    "language_interpretation": {
      "custom_languages": [
        "English"
      ],
      "enable_language_interpretation_by_default": true,
      "allow_participants_to_speak_in_listening_channel": true,
      "allow_up_to_25_custom_languages_when_scheduling_meetings": true,
      "enable": true,
      "languages": "English"
    },
    "sign_language_interpretation": {
      "enable": true,
      "enable_sign_language_interpretation_by_default": true,
      "languages": [
        "American"
      ],
      "custom_languages": [
        "Language1"
      ]
    },
    "live_streaming_facebook": true,
    "live_streaming_youtube": true,
    "manual_captioning": {
      "allow_to_type": true,
      "auto_generated_captions": true,
      "full_transcript": true,
      "manual_captions": true,
      "save_captions": true,
      "third_party_captioning_service": true
    },
    "meeting_reactions": true,
    "meeting_reactions_emojis": "all",
    "allow_host_panelists_to_use_audible_clap": true,
    "webinar_reactions": true,
    "meeting_survey": true,
    "non_verbal_feedback": true,
    "only_host_view_device_list": true,
    "original_audio": true,
    "polling": true,
    "post_meeting_feedback": true,
    "private_chat": true,
    "record_play_own_voice": true,
    "remote_control": true,
    "remote_support": true,
    "request_permission_to_unmute_participants": true,
    "screen_sharing": true,
    "sending_default_email_invites": true,
    "show_a_join_from_your_browser_link": true,
    "show_browser_join_link": true,
    "show_device_list": true,
    "show_meeting_control_toolbar": true,
    "slide_control": true,
    "stereo_audio": true,
    "unchecked_data_center_regions": "EU",
    "use_html_format_email": true,
    "virtual_background": true,
    "virtual_background_settings": {
      "allow_upload_custom": true,
      "allow_videos": true,
      "enable": true,
      "files": [
        {
          "id": "fawegw4tq43t35h4nhgfnethswe",
          "is_default": true,
          "name": "File name",
          "size": 1435,
          "type": "image"
        }
      ]
    },
    "waiting_room": true,
    "webinar_chat": {
      "allow_attendees_chat_with": 1,
      "allow_auto_save_local_chat_file": true,
      "allow_panelists_chat_with": 2,
      "allow_panelists_send_direct_message": true,
      "allow_users_save_chats": 0,
      "default_attendees_chat_with": 1,
      "enable": true
    },
    "webinar_live_streaming": {
      "custom_service_instructions": "The specific instructions test",
      "enable": true,
      "live_streaming_reminder": true,
      "live_streaming_service": [
        "facebook"
      ]
    },
    "meeting_polling": {
      "enable": true,
      "advanced_polls": true,
      "manage_saved_polls_and_quizzes": true,
      "require_answers_to_be_anonymous": true,
      "allow_alternative_host_to_add_edit": true,
      "allow_host_to_upload_image": true
    },
    "webinar_polling": {
      "enable": true,
      "advanced_polls": true,
      "manage_saved_polls_and_quizzes": true,
      "require_answers_to_be_anonymous": true,
      "allow_host_to_upload_image": true,
      "allow_alternative_host_to_add_edit": true
    },
    "webinar_question_answer": true,
    "webinar_survey": true,
    "whiteboard": true,
    "who_can_share_screen": "host",
    "who_can_share_screen_when_someone_is_sharing": "all",
    "participants_share_simultaneously": "multiple",
    "workplace_by_facebook": true
  },
  "other_options": {
    "allow_users_contact_support_via_chat": true,
    "blur_snapshot": true,
    "webinar_registration_options": {
      "allow_host_to_enable_join_info": true,
      "allow_host_to_enable_social_share_buttons": true,
      "enable_custom_questions": true
    }
  },
  "profile": {
    "recording_storage_location": {
      "allowed_values": [
        "US"
      ],
      "value": "US"
    }
  },
  "recording": {
    "account_user_access_recording": true,
    "archive": {
      "enable": true,
      "settings": {
        "audio_file": true,
        "cc_transcript_file": true,
        "chat_file": true,
        "chat_with_sender_email": true,
        "video_file": true,
        "chat_with_direct_message": true,
        "archive_retention": 1,
        "action_when_archive_failed": 1,
        "notification_when_archiving_starts": "participants",
        "play_voice_prompt_when_archiving_starts": "guest"
      },
      "type": 2
    },
    "auto_recording": "local",
    "cloud_recording": true,
    "cloud_recording_download": true,
    "cloud_recording_download_host": true,
    "host_delete_cloud_recording": true,
    "record_files_separately": {
      "active_speaker": true,
      "gallery_view": true,
      "shared_screen": true
    },
    "display_participant_name": true,
    "recording_thumbnails": true,
    "optimize_recording_for_3rd_party_video_editor": true,
    "recording_highlight": true,
    "save_panelist_chat": true,
    "save_poll_results": true,
    "save_close_caption": true,
    "ip_address_access_control": {
      "enable": true,
      "ip_addresses_or_ranges": "200.181.108.17 - 220.181.108.157"
    },
    "local_recording": true,
    "prevent_host_access_recording": true,
    "record_audio_file": true,
    "record_gallery_view": true,
    "record_speaker_view": true,
    "recording_audio_transcript": true,
    "smart_recording": {
      "create_recording_highlights": true,
      "create_smart_chapters": true,
      "create_next_steps": true
    },
    "save_chat_text": true,
    "show_timestamp": true,
    "recording_notification_for_zoom_client": {
      "disclaimer_to_participants": "All participants or Guest only",
      "play_voice_prompt": " All participants or Guest only or  No one",
      "ask_host_to_confirm": true
    }
  },
  "schedule_meeting": {
    "audio_type": "both",
    "embed_password_in_join_link": true,
    "host_video": true,
    "join_before_host": true,
    "mute_upon_entry": true,
    "participant_video": true,
    "personal_meeting": true,
    "pstn_password_protected": true,
    "require_password_for_instant_meetings": true,
    "require_password_for_pmi_meetings": "jbh_only",
    "require_password_for_scheduled_meetings": true,
    "require_password_for_scheduling_new_meetings": true,
    "upcoming_meeting_reminder": true,
    "use_pmi_for_instant_meetings": true,
    "use_pmi_for_schedule_meetings": true,
    "always_display_zoom_meeting_as_topic": {
      "enable": false,
      "display_topic_for_scheduled_meetings": false
    },
    "always_display_zoom_webinar_as_topic": {
      "enable": false,
      "display_topic_for_scheduled_webinars": false
    },
    "continuous_meeting_chat": {
      "enable": true,
      "can_add_external_users": true,
      "auto_add_invited_external_users": true
    }
  },
  "telephony": {
    "audio_conference_info": "test",
    "telephony_regions": {
      "selection_values": "CNTB"
    },
    "third_party_audio": true
  },
  "chat": {
    "share_files": {
      "enable": true,
      "share_option": "true"
    },
    "chat_emojis": {
      "enable": true,
      "emojis_option": "all"
    },
    "record_voice_messages": true,
    "record_video_messages": true,
    "screen_capture": true,
    "create_public_channels": true,
    "create_private_channels": true,
    "share_links_in_chat": true,
    "schedule_meetings_in_chat": true,
    "set_retention_period_in_cloud": {
      "enable": true,
      "retention_period_of_direct_messages_and_group_conversation": "2m",
      "retention_period_of_channels": "2m"
    },
    "set_retention_period_in_local": {
      "enable": true,
      "retention_period_of_direct_messages_and_group_conversation": "2m",
      "retention_period_of_channels": "2m"
    },
    "allow_users_to_search_others_options": "1,3",
    "allow_users_to_add_contacts": {
      "enable": true,
      "selected_option": 4,
      "user_email_addresses": "123@test.com"
    },
    "allow_users_to_chat_with_others": {
      "enable": true,
      "selected_option": 4,
      "user_email_addresses": "123@test.com"
    },
    "chat_etiquette_tool": {
      "enable": true,
      "policies": [
        {
          "description": "The policy's description",
          "id": "dvgerwe98z8v9vgbug43iubkjn",
          "is_locked": true,
          "keywords": [
            "key"
          ],
          "name": "The policy name",
          "regular_expression": "^test",
          "status": "Activated",
          "trigger_action": 2
        }
      ]
    },
    "send_data_to_third_party_archiving_service": {
      "enable": true
    },
    "translate_messages": true,
    "search_and_send_animated_gif_images": {
      "enable": true
    }
  },
  "mail_calendar": {
    "email_calendar_management": true,
    "email_management": true,
    "zoom_email_provider": true
  },
  "general_setting": {
    "auto_zoom_room_proximity_connect": true
  }
}
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> Group does not exist: {groupId}. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a group's settings

  • Method: PATCH
  • Path: /groups/{groupId}/settings
  • Tags: Groups

Update settings for a group.

Note: The force_pmi_jbh_password field under meeting settings is deprecated as of September 22, 2019.

Prerequisite: Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:update:settings:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json

One of:

  • audio_conferencing

    object — The group's audio conference settings.

  • chat

    object — The account's chat settings.

    • allow_users_to_add_contacts

      object — Allow users to add contacts.

      • enable

        boolean — By disabling this setting, users will not be able to add contacts.

      • selected_option

        integer, possible values: 1, 2, 3, 4 — The type of allowing users to add contacts: * 1 - Anyone (internal and external contacts). * 2 - In the same organization. * 3 - In the same organization and specified domains. * 4 - In the same organization and specified users.

      • user_email_addresses

        string — The domains or emails (internal or external). * When the `selected_option` field value is `3`, the value is internal or external domains. Use a comma to separate multiple domains. Example: company.com. * When the `selected_option` field value is `4`, the value is internal or external email addresses. Use a comma to separate multiple emails.

    • allow_users_to_chat_with_others

      object — Allow users to chat with others.

      • enable

        boolean — If you select 'In the same organization', users may still be able to chat with external users if they are added to channels or group chats with external users.

      • selected_option

        integer, possible values: 1, 2, 3, 4 — The type of allowing users to add contacts: * 1 - Anyone (internal and external contacts). * 2 - In the same organization. * 3 - In the same organization and specified domains. * 4 - In the same organization and specified users.

      • user_email_addresses

        string — The domains or emails (internal or external). * When the `selected_option` field value is `3`, the value is internal or external domains. Use a comma to separate multiple domains. Example: company.com. * When the `selected_option` field value is `4`, the value is internal or external email addresses. Use a comma to separate multiple emails.

    • allow_users_to_search_others_options

      string — Allow users to search others, when selecting multiple items, separate them with commas. * ''-none. * '1' - In the same account. * '2' - Under the same master account, including all sub acounts. * '3' - Under the same organization.

    • chat_emojis

      object — Chat emojis.

      • emojis_option

        string, possible values: "all", "selected"

      • enable

        boolean — Allow users to use the emoji library in direct messages or group conversations. Choose between allowing users to use any emoji in the library, or choose to allow only pre-selected emojis. If the setting is disabled, users can still use keyboard shortcuts to add emojis. Users can change their emoji skin tone in Settings.

    • chat_etiquette_tool

      object — Information about the **Chat Etiquette** Tool.

      • enable

        boolean, default: false — Whether to enable the **Chat Etiquette Tool**. This value defaults to `false`. The **Chat Etiquette Tool** allows you to define specific keywords and text patterns in chat to prevent users from inadvertently sharing unwanted messages.

      • policies

        array — Information about the defined **Chat Etiquette Tool** policies.

        Items:

        • id

          string — The policy ID.

        • status

          string, possible values: "activated", "deactivated" — The policy's current status: * `activated` - Activated. * `deactivated` - Deactivated.

    • create_private_channels

      boolean — Allow users to create private channels.

    • create_public_channels

      boolean — Allow users to create public channels.

    • record_video_messages

      boolean — Allow users to record video messages that can be sent in direct messages or group conversations. If the file share setting is disabled, they will not be able to record and send video messages.

    • record_voice_messages

      boolean — Allow users to record voice messages that can be sent in direct messages or group conversations.

    • schedule_meetings_in_chat

      boolean — Schedule a meeting from chat or channel.

    • screen_capture

      boolean — Allow users to take and send screenshots in direct messages or group conversations.

    • search_and_send_animated_gif_images

      object — Allow users to search GIF images from GIPHY when they compose messages. See GIPHY's website for more information about content ratings.

      • enable

        boolean — Whether to allow users to search GIF images from GIPHY when they compose messages.

    • send_data_to_third_party_archiving_service

      object — Send data to third-party archiving service.

      • enable

        boolean — Allow users to send data to third-party archiving service.

    • set_retention_period_in_cloud

      object — Set retention period for messages and files in Zoom's cloud.

      • enable

        boolean — By default, messages and files are stored in Zoom's cloud. Enable this setting to specify when they are deleted. When retention is disabled, messages sent by offline users can be received within 7 days before they are deleted.

      • retention_period_of_channels

        string — Delete data in channels after retention period. 'y' - year, 'm' - month, 'd' - day

      • retention_period_of_direct_messages_and_group_conversation

        string — Delete direct messages and group conversations after retention period. 'y' - year, 'm' - month, 'd' - day

    • set_retention_period_in_local

      object — Store messages on local devices, excluding personal channel messages.

      • enable

        boolean — Specify how long your messages are saved on local devices. If this setting is disabled, messages are never deleted locally.

      • retention_period_of_channels

        string — Delete data in channels after retention period. 'y' - year, 'm' - month, 'd' - day

      • retention_period_of_direct_messages_and_group_conversation

        string — Delete direct messages and group conversations after retention period. 'y' - year, 'm' - month, 'd' - day

    • share_files

      object — Users can share files in chats and channels.

      • enable

        boolean — Allow users of this account to send and receive files in chats and channels. When disabled, users can still take and share screenshots.

      • share_option

        string, possible values: "anyone", "account", "organization" — Allow users of this account to send and receive files in chats and channels. When disabled, users can still take and share screenshots.

    • share_links_in_chat

      boolean — Share links to messages and channels in Team Chat.

    • translate_messages

      boolean — Allow users to translate team chat messages. [Learn more].(https://support.zoom.us/hc/en-us/articles/12998089084685)

  • email_notification

    object

    • alternative_host_reminder

      boolean — Notify the alternative host who is set or removed.

    • cancel_meeting_reminder

      boolean — Notify host and participants when the meeting is cancelled.

    • cloud_recording_available_reminder

      boolean — Whether to notify the host when a cloud recording is available.

    • jbh_reminder

      boolean — Notify host when participants join the meeting before them.

    • recording_available_reminder_alternative_hosts

      boolean — Whether to notify any alternative hosts when a cloud recording is available.

    • recording_available_reminder_schedulers

      boolean — Whether to notify the person who scheduled the meeting or webinar for the host when a cloud recording is available.

    • schedule_for_reminder

      boolean — Notify the host there is a meeting is scheduled, rescheduled, or cancelled.

  • in_meeting

    object

    • alert_guest_join

      boolean — Allow participants who belong to your account to see that a guest (someone who does not belong to your account) is participating in the meeting/webinar.

    • allow_host_panelists_to_use_audible_clap

      boolean — Whether to allow hosts and panelists to use audible clap.

    • allow_live_streaming

      boolean — Whether livestreaming is enabled.

    • allow_participants_chat_with

      integer, possible values: 1, 2, 3, 4 — Whether to allow participants to only chat with certain groups. * `1` - The participant cannot use chat. * `2` - Host and co-hosts only. * `3` - The participant can chat with other participants publicly. * `4` - The participant can chat with other participants publicly and privately. **Note:** This setting is only available with client versions 5.7.3 and above.

    • allow_show_zoom_windows

      boolean — Show Zoom windows during screen share.

    • allow_users_save_chats

      integer, possible values: 1, 2, 3 — Whether to allow participants to save meeting chats. * `1` - Participants cannot save meeting chats. * `2` - Participants can only save host and co-host meeting chats. * `3` - Participants can save all meeting chats.

    • allow_users_to_delete_messages_in_meeting_chat

      boolean — If the value of this field is set to `true`, allow users to delete messages in the in-meeting chat.

    • annotation

      boolean — Allow participants to use annotation tools to add information to shared screens.

    • attendee_on_hold

      boolean, default: false — Allow host to put attendee on hold. **This field has been deprecated and is no longer supported.**

    • auto_answer

      boolean — Enable users to see and add contacts to 'auto-answer group' in the contact list on chat. Any call from members of this group will be automatically answered.

    • auto_generated_translation

      object — Information about the [Translate captions](https://support.zoom.us/hc/en-us/articles/8158738379917-Managing-automated-captions-) settings in meetings.

      • enable

        boolean — Whether to allow users to enable automated translated captions in these language pairs in meetings.

      • language_item_pairList

        object — Information about all spoken languages and translation languages in meetings.

        • all

          boolean — Whether to select all spoken languages and translation languages

        • trans_lang_config

          array — A list of spoken languages and translation languages.

          Items:

          • speak_language

            object — Language used in meetings.

            • code

              string, possible values: "zh", "nl", "en", "fr", "de", "it", "ja", "ko", "pt", "ru", "es", "uk" — The language's code.

            • name

              string, possible values: "Chinese (Simplified)", "Dutch", "English", "French", "German", "Italian", "Japanese", "Korean", "Portuguese", "Russian", "Spanish", "Ukrainian" — The language's name.

          • translate_to

            object — Information about all the translation languages.

            • all

              boolean — Whether to select all the translation languages.

            • language_config

              array — A list of the translation languages.

              Items:

              • code

                string, possible values: "en" — The translation language's code.

              • name

                string, possible values: "English" — The translation language's name.

    • auto_saving_chat

      boolean — Automatically save all in-meeting chats.

    • breakout_room

      boolean — Allow host to split meeting participants into separate, smaller rooms.

    • breakout_room_schedule

      boolean — Whether the host can assign participants to breakout rooms when scheduling. This feature is **only** available in version 4.5.0 or higher.

    • chat

      boolean — Allow meeting participants to send chat message visible to all participants.

    • closed_caption

      boolean — Allow host to type closed captions or assign a participant/third party device to add closed captions.

    • closed_captioning

      object — Information about the group's closed captioning settings.

      • auto_transcribing

        boolean — Whether to allow a live transcription service to transcribe meetings.

      • enable

        boolean — Whether to allow the host to type closed captions or assign a participant or 3rd-party service to provide closed captioning.

      • save_caption

        boolean — Whether to allow participants to save closed captions or transcripts.

      • third_party_captioning_service

        boolean — Whether to allow the use of an API token to integrate with 3rd-party closed captioning services.

      • view_full_transcript

        boolean — Whether to allow the viewing of full transcripts in the in-meeting side panel.

    • co_host

      boolean — Allow the host to add co-hosts. Co-hosts have the same in-meeting controls as the host.

    • custom_data_center_regions

      boolean — If set to `true`, you can [select data center regions](https://support.zoom.us/hc/en-us/articles/360042411451-Selecting-data-center-regions-for-hosted-meetings-and-webinars) to be used by this group for hosting their real-time meeting and webinar traffic. These regions can be provided in the `data_center_regions` field. If set to `false`, the regions cannot be customized and the default regions will be used.

    • custom_live_streaming_service

      boolean — Whether custom livestreaming is enabled.

    • custom_service_instructions

      string — The specific instructions to allow your account's meeting hosts to configure a custom livestream.

    • data_center_regions

      array — If the value of `custom_data_center_regions` is `true`, a comma-separated list of these [data center regions](https://support.zoom.us/hc/en-us/articles/360059254691-Datacenter-abbreviation-list) to opt in to. * `AU` - Australia. * `LA` - Latin America. * `CA` - Canada. * `CN` - China. * `DE` - Germany. * `HK` - Hong Kong SAR. * `IN` - India. * `IE` - Ireland. * `TY` - Japan. * `MX` - Mexico. * `NL` - Netherlands. * `SG` - Singapore. * `US` - United States.

      Items:

      string, possible values: "AU", "LA", "CA", "CN", "DE", "HK", "IN", "IE", "TY", "MX", "NL", "SG", "US"

    • disable_screen_sharing_for_host_meetings

      boolean — Whether to enable the **Disable desktop screen sharing for meetings you host** setting.

    • disable_screen_sharing_for_in_meeting_guests

      boolean — Whether to enable the **Disable screen sharing when guests are in the meeting** setting.

    • e2e_encryption

      boolean — Require that all meetings are encrypted using AES.

    • entry_exit_chime

      string, possible values: "host", "all", "none" — Play sound when participants join or leave.

    • far_end_camera_control

      boolean — Allow another user to take control of the camera during a meeting.

    • feedback

      boolean — Enable users to provide feedback to Zoom at the end of the meeting.

    • file_transfer

      boolean — Whether [in-meeting file transfer](https://support.zoom.us/hc/en-us/articles/209605493-In-meeting-file-transfer) setting has been enabled for the users in the group or not.

    • group_hd

      boolean — Enable higher quality video for host and participants in Meeting. This will require more bandwidth.

    • join_from_desktop

      boolean — Whether to allow participants to join a meeting directly from their desktop browser. Note that the meeting experience from the desktop browser is limited.

    • join_from_mobile

      boolean — Whether to allow participants to join a meeting directly from their mobile browser. Note that the meeting experience from the mobile browser is limited.

    • language_interpretation

      object — Information about the [language interpretation](https://support.zoom.us/hc/en-us/articles/360034919791-Using-Language-Interpretation-in-your-meeting-or-webinar) settings.

      • allow_participants_to_speak_in_listening_channel

        boolean — Whether to allow participants to speak in listening channel.

      • allow_up_to_25_custom_languages_when_scheduling_meetings

        boolean — Whether to allow up to 25 custom languages when scheduling meetings.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — Whether to allow hosts to assign participants as interpreters who can interpret one language into another in real-time.

      • enable_language_interpretation_by_default

        boolean — Whether to enable language interpretation by default.

    • live_streaming_facebook

      boolean — Whether Facebook livestreaming is enabled.

    • live_streaming_youtube

      boolean — Whether YouTube livestreaming is enabled.

    • manual_captioning

      object

      • allow_to_type

        boolean — Allow host to type or assign a participant to type.

      • auto_generated_captions

        boolean — Whether to allow a live transcription service to transcribe meetings.

      • full_transcript

        boolean — Whether to allow the viewing of full transcripts in the in-meeting side panel.

      • manual_captions

        boolean — Allow host to type closed captions or assign a participant/third party device to add closed captions.

      • save_captions

        boolean — Whether participants can save closed captions or transcripts.

      • third_party_captioning_service

        boolean — Whether to allow the use of an API token to integrate with 3rd-party closed captioning services.

    • meeting_polling

      object — Information about the account's meeting polling settings.

      • advanced_polls

        boolean — Whether to allow host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. Hosts can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow host to upload an image for each question.

      • enable

        boolean — Whether to allow the host to add polls before or during a meeting.

      • manage_saved_polls_and_quizzes

        boolean — Whether to allow users to manage saved polls and quizzes from meetings.

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • meeting_question_answer

      boolean — Allow participants to ask questions for the host and participants to answer.

    • meeting_reactions

      boolean — Whether meeting participants can [communicate using the emoji reactions](https://support.zoom.us/hc/en-us/articles/115001286183-Nonverbal-feedback-and-meeting-reactions) located in the **Reactions** menu in the meeting toolbar.

    • meeting_reactions_emojis

      string, possible values: "all", "selected" — Choose from these meeting reaction options. * `all` - All emojis: Allow meeting participants to use any emoji available in Zoom chat as a reaction in a meeting. * `selected` - Selected emojis: Allow meeting participants to use the 6 standard meeting reaction emojis: Clapping Hands, Thumbs Up, Heart, Tears of Joy, Open Mouth, Party Popper (Tada, Celebration)

    • meeting_survey

      boolean — Whether to allow the host to present a survey to participants once a meeting has ended. This feature is only available in version 5.7.3 or higher.

    • non_verbal_feedback

      boolean — Allow participants in a meeting can provide nonverbal feedback and express opinions by clicking on icons in the Participants panel.

    • only_host_view_device_list

      boolean — Show the list of H.323/SIP devices only to the host.

    • original_audio

      boolean — Allow users to select original sound during a meeting.

    • participants_share_simultaneously

      string, possible values: "multiple", "one" — Indicates how many participants can share at the same time. The value can be one of the following: `one`: Only one participant can share at a time . `multiple`: Multiple participants can share simultaneously (dual monitors recommended) . For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • polling

      boolean — Add 'Polls' to the meeting controls. This allows the host to survey the attendees.

    • post_meeting_feedback

      boolean — Display end-of-meeting experience feedback survey.

    • private_chat

      boolean — Allow meeting participants to send a private 1:1 message to another participant.

    • record_play_own_voice

      boolean — When each participant joins by telephone, allow the option to record and play their own voice as entry and exit chimes.

    • remote_control

      boolean — During screen sharing, allow the person who is sharing to let others control the shared content.

    • remote_support

      boolean — Allow meeting host to provide 1:1 remote support to another participant.

    • request_permission_to_unmute_participants

      boolean — Indicate whether the [**Request permission to unmute participants**](https://support.zoom.us/hc/en-us/articles/203435537-Muting-and-unmuting-participants-in-a-meeting#h_01EGK4XFWS1SJGZ71MYGKF7260) option should be enabled for the group or not.

    • screen_sharing

      boolean — Allow host and participants to share their screen or content during meetings.

    • sending_default_email_invites

      boolean — Allow users to invite participants by email only by default.

    • show_a_join_from_your_browser_link

      boolean — Whether to allow participants to join a meeting directly from their browser and bypass the Zoom application download process. This is useful for participants who cannot download, install, or run applications. Note that the meeting experience from the browser is limited.

    • show_browser_join_link

      boolean — Allow participants to join a meeting directly from their browser.

    • show_device_list

      boolean — Show the list of H.323/SIP devices.

    • show_meeting_control_toolbar

      boolean — Always show meeting controls during a meeting.

    • sign_language_interpretation

      object — Allow hosts to assign participants as sign language interpreters who can interpret one language into sign language in real-time. Hosts can assign interpreters when scheduling, or during the meeting itself. This feature is only available with version 5.11.3 or later.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — Whether to allow hosts to assign participants as sign language interpreters who can interpret one language into another in real-time.

      • enable_sign_language_interpretation_by_default

        boolean — Whether to enable sign language interpretation view by default in scheduler.

    • slide_control

      boolean — Whether the person sharing during a presentation can allow others to control the slide presentation. This feature is only available in version 5.8.3 or higher.

    • stereo_audio

      boolean — Allow users to select stereo audio during a meeting.

    • use_html_format_email

      boolean — Allow HTML formatting instead of plain text for meeting invitations scheduled with the Outlook plugin.

    • virtual_background

      boolean — Enable virtual backgrounds.

    • waiting_room

      boolean — Attendees cannot join a meeting until a host admits them individually from the waiting room.

    • webinar_chat

      object

      • allow_attendees_chat_with

        integer, possible values: 1, 2, 3 — Allow webinar attendees to chat witn others in the webinar. * `1` - No one. * `2` - Host and all panelists. * `3` - Everyone.

      • allow_auto_save_local_chat_file

        boolean — Whether to automatically save chat messages to a local file on the host's computer when the webinar ends.

      • allow_panelists_chat_with

        integer, possible values: 1, 2 — Allow webinar panelists to chat with others in the webinar. * `1` - Host and all panelists. * `2` - Everyone.

      • allow_panelists_send_direct_message

        boolean — Whether to allow webinar panelists to send direct messages to other panelists.

      • allow_users_save_chats

        integer, possible values: 0, 1, 2 — Whether webinar attendees can save chats. * `0` - Attendees cannot save chats. * `1` - Attendees can only save host and panelist chats. * `2` - Attendees can save all chats.

      • default_attendees_chat_with

        integer, possible values: 1, 2 — By default, who to allow webinar attendees to chat with. * `1` - Host and all panelists. * `2` - Everyone.

      • enable

        boolean — Whether to allow webinar participants to send chat messages.

    • webinar_group_hd

      boolean — Enable higher quality video for host and participants in Webinar. This will require more bandwidth.

    • webinar_live_streaming

      object

      • custom_service_instructions

        string — The specific instructions to allow your account's meeting hosts to configure a custom livestream.

      • enable

        boolean — Whether webinar livestreaming is enabled.

      • live_streaming_reminder

        boolean — Whether to notify users to watch the livestream. This does not apply to custom RTMP (real-time messaging protocol).

      • live_streaming_service

        array — The available livestreaming services. * `facebook` * `workplace_by_facebook` * `youtube` * `custom_live_streaming_service`

        Items:

        string, possible values: "facebook", "workplace_by_facebook", "youtube", "custom_live_streaming_service"

    • webinar_polling

      object

      • advanced_polls

        boolean — Whether to allow host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. Hosts can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow host to upload an image for each question.

      • enable

        boolean — Whether to allow the host to add polls before or during a webinar.

      • manage_saved_polls_and_quizzes

        boolean — Whether to allow users to manage saved polls and quizzes from Webinars

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • webinar_question_answer

      boolean — Whether attendees can ask the host and panelists questions in the webinar.

    • webinar_reactions

      boolean — Set this field to `true` to use [webinar reactions](https://support.zoom.us/hc/en-us/articles/4803536268429).

    • webinar_survey

      boolean — Whether to allow the host to present surveys to attendees once a webinar has ended.

    • whiteboard

      boolean — Allow participants to share a whiteboard that includes annotation tools.

    • who_can_share_screen

      string, possible values: "host", "all" — Indicates who can share their screen or content during meetings. The value can be one of the following: `host`: Only host can share the screen. `all`: Both hosts and attendees can share their screen during meetings. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • who_can_share_screen_when_someone_is_sharing

      string, possible values: "host", "all" — Indicates who is allowed to start sharing screen when someone else in the meeting is sharing their screen. The value can be one of the following: `host`: Only a host can share the screen when someone else is sharing. `all`: Anyone in the meeting is allowed to start sharing their screen when someone else is sharing. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • workplace_by_facebook

      boolean — Whether Workplace by Facebook is enabled.

  • other_options

    object

    • allow_users_contact_support_via_chat

      boolean — Whether to display the Zoom help badge on the bottom-right of the page.

    • blur_snapshot

      boolean — Whether iOS blurs the screenshot in the task switcher when multiple apps are open. Android hides the screenshot in the system-level list of recent apps.

    • webinar_registration_options

      object — Webinar registration options.

      • allow_host_to_enable_join_info

        boolean — Allow host to enable **Show join info on registration confirmation page**.

      • allow_host_to_enable_social_share_buttons

        boolean — Allow host to enable **Show social share buttons on registration page**.

      • enable_custom_questions

        boolean — Enable custom questions.

  • profile

    object

  • recording

    object

    • account_user_access_recording

      boolean — Make cloud recordings accessible to account members only.

    • archive

      object — [Archiving solution](https://support.zoom.us/hc/en-us/articles/360050431572-Archiving-Meeting-and-Webinar-data) settings. This setting can only be used if you have been granted archiving solution access by the Zoom Support team.

      • enable

        boolean — Enable the archiving feature.

      • settings

        object

        • audio_file

          boolean — Include in-meeting or in-webinar audio in the archive.

        • cc_transcript_file

          boolean — Include closed caption or transcript in the archive.

        • chat_file

          boolean — Include in-meeting chat in the archive.

        • chat_with_sender_email

          boolean — Include user email in in-meeting chat file.

        • video_file

          boolean — Include in-meeting or in-webinar video in the archive.

      • type

        integer, possible values: 1, 2, 3 — Archive types. * `1` - Only meetings are archived. * `2` - Only webinars are archived. * `3` - Both meetings and webinars are archived.

    • auto_recording

      string — Record meetings automatically as they start.

    • cloud_recording

      boolean — Allow hosts to record and save the meeting or webinar in the cloud.

    • cloud_recording_download

      boolean — Allow anyone with a link to the cloud recording to download.

    • cloud_recording_download_host

      boolean — Allow only the host with a link to the cloud recording to download.

    • display_participant_name

      boolean — Whether participants' names display in the recording.

    • host_delete_cloud_recording

      boolean — Allow the host to delete the recordings. If this option is disabled, the recordings cannot be deleted by the host and only admin can delete them.

    • ip_address_access_control

      object — Setting to allow cloud recording access only from specific IP address ranges.

      • enable

        boolean — If set to `true`, this account's the cloud recordings can only be accessed by the IP addresses defined in the `ip_addresses_or_ranges` property.

      • ip_addresses_or_ranges

        string — IP addresses or ranges that have access to the cloud recordings. Separate multiple IP ranges with comma. Use `n.n.n.n`, `n.n.n.n/n` or `n.n.n.n - n.n.n.n` syntax where n is a number. Examples: `46.33.24.184, 48.99.100.2/25` or `200.181.108.17 - 220.181.108.157`

    • local_recording

      boolean — Allow hosts and participants to record the meeting to a local file.

    • optimize_recording_for_3rd_party_video_editor

      boolean — Whether recordings will be optimized for a 3rd party video editor. This can increase the file size and the time it takes to generate recording files.

    • prevent_host_access_recording

      boolean — If set to `true`, meeting hosts can't view their meeting cloud recordings. Only the admins who have recording management privilege can access them.

    • record_audio_file

      boolean — Whether to record one audio file for all participants.

    • record_files_separately

      object — The account's [**Record active speaker, gallery view and shared screen separately**](https://support.zoom.us/hc/en-us/articles/360060316092-Changing-basic-and-advanced-cloud-recording-settings#h_01F4CYJTCTXNS2MXH00W9EFG6R) settings.

      • active_speaker

        boolean — Whether recording only the active speaker is enabled.

      • gallery_view

        boolean — Whether recording only the gallery view is enabled.

      • shared_screen

        boolean — Whether recording only shared screen is enabled.

    • record_gallery_view

      boolean — When someone is sharing their screen, active speaker will show on the top right corner of the shared screen.

    • record_speaker_view

      boolean — Record active speaker with shared screen.

    • recording_audio_transcript

      boolean — Automatically transcribe the audio of a meeting or webinar for cloud recordings.

    • recording_highlight

      boolean — Whether the [recording highlights](https://support.zoom.us/hc/en-us/articles/360060802432) feature is enabled.

    • recording_notification_for_zoom_client

      object — You can update the setting name: Recording notifications - Zoom clients

      • ask_host_to_confirm

        boolean — This field updates the child setting name is [Ask host to confirm before starting a recording], true: enable, false: disable

      • disclaimer_to_participants

        string, possible values: "All participants", "Guest only" — This field updates child setting name is [Show a disclaimer to participants when a recording starts]. All participants or Guest only.

      • play_voice_prompt

        string, possible values: "All participants", "Guest only", "No one" — This field updates child setting name is [Play voice prompt for]. All participants or Guest only or No one

    • recording_thumbnails

      boolean — Whether thumbnails of the presenter are recorded when they are sharing their screen.

    • save_chat_text

      boolean — Save chat messages from the meeting or webinar.

    • save_close_caption

      boolean — Whether [closed captions](https://support.zoom.us/hc/en-us/articles/207279736) are saved as a VTT (Video Track Text) file.

    • save_panelist_chat

      boolean — Whether panelist chats are saved to the recording.

    • save_poll_results

      boolean — Whether poll results shared during the meeting or webinar are saved. This also includes poll results shared during the meeting or webinar.

    • show_timestamp

      boolean — Add a timestamp to the recording.

    • smart_recording

      object — By selecting this option, your recording will have meeting smart chapters, and next steps. You are directing Zoom to access, process, and use your account's recording data for the purpose of analysis and insights.

      • create_next_steps

        boolean — By selecting this option, there will be a summary of actions to take after the recorded meeting.

      • create_recording_highlights

        boolean — By selecting this option, meeting details in the audio transcript will be highlighted. Hosts can modify highlighted sections and generate a video summary (highlighted sections may have a 3-second offset) based on these sections. The summary is for informational purposes only and may not be complete.

      • create_smart_chapters

        boolean — By selecting this option, your recording will have chapters with overview. Hosts can edit the chapters.

  • schedule_meeting

    object

    • always_display_zoom_meeting_as_topic

      object — Information about the [**Always display `Zoom Meeting` as the meeting topic**](https://support.zoom.us/hc/en-us/articles/201363253-Changing-account-settings#h_01EG9BJ646V2WJK1S3H2MP6YV6) setting.

      • display_topic_for_scheduled_meetings

        boolean — Whether to display **Zoom Meeting** as the topic for already-scheduled meetings.

      • enable

        boolean — Whether to enable the **Always display `Zoom Meeting` as the meeting topic** setting.

    • always_display_zoom_webinar_as_topic

      object — Information about the [**Always show `Zoom Webinar` as the webinar topic**](https://support.zoom.us/hc/en-us/articles/201363253-Changing-account-settings#h_01EG9BJ646V2WJK1S3H2MP6YV6) setting.

      • display_topic_for_scheduled_webinars

        boolean — Whether to display **Zoom Webinar** as the topic for already-scheduled meetings.

      • enable

        boolean — Whether to enable the **Always show `Zoom Webinar` as the webinar topic** setting.

    • audio_type

      string — Determine how participants can join the audio portion of the meeting.

    • continuous_meeting_chat

      object — Information about the **Enable continuous meeting chat** feature.

      • auto_add_invited_external_users

        boolean — Whether to enable the **Automatically add invited external users** setting.

      • can_add_external_users

        boolean — Whether to enable the **External users can be added** setting.

      • enable

        boolean — Whether to enable the **Enable continuous meeting chat** setting.

    • embed_password_in_join_link

      boolean — If the value is set to `true`, the meeting passcode will be encrypted and included in the join meeting link to allow participants to join with just one click without having to enter the passcode.

    • force_pmi_jbh_password

      boolean — If join before host option is enabled for a personal meeting, then enforce passcode requirement.

    • host_video

      boolean — Start meetings with host video on.

    • join_before_host

      boolean — Allow participants to join the meeting before the host arrives

    • mute_upon_entry

      boolean — Automatically mute all participants when they join the meeting.

    • participant_video

      boolean — Start meetings with participant video on.

    • pstn_password_protected

      boolean — Generate and send new passcodes for newly scheduled or edited meetings.

    • require_password_for_all_meetings

      boolean — Require passcode from all participants before joining a meeting.

    • require_password_for_instant_meetings

      boolean — If enabled, a random passcode will be generated on the user's end who starts the instant meeting. Other participants will have to enter the passcode to join the meeting. If you use personal meeting ID (PMI) for your instant meetings, this option will be disabled.

    • require_password_for_pmi_meetings

      string, possible values: "all", "jbh_only", "none" — Indicates whether a passcode is required for [PMI](https://support.zoom.us/hc/en-us/articles/203276937-Using-Personal-Meeting-ID-PMI-) meetings or not. `none` - Do not require passcode for PMI meetings. `all` - Require participants to enter passcode for all PMI enabled meetings. `jbh_only`: Require passcode only for meetings where the **join before host** setting is enabled.

    • require_password_for_scheduled_meetings

      boolean — Require a passcode for meetings which have already been scheduled.

    • require_password_for_scheduling_new_meetings

      boolean — This setting applies for regular meetings that do not use PMI. If enabled, a passcode will be generated while a host schedules a new meeting and participants will be required to enter the passcode before they can join the meeting.

    • upcoming_meeting_reminder

      boolean — Receive desktop notification for upcoming meetings.

  • telephony

    object — Group Settings: Telephony.

    • audio_conference_info

      string — Third party audio conference info.

    • third_party_audio

      boolean — Allow users to join the meeting using the existing 3rd party audio configuration.

One of:

  • authentication_option

    object — Meeting Authentication Options

    • action

      string, possible values: "update", "show", "hide" — Authentication action

    • default_option

      boolean — Authentication default option

    • domains

      string — Authentication domains

    • id

      string — Authentication id

    • name

      string — Authentication name

    • type

      string, possible values: "enforce_login", "enforce_login_with_same_account", "enforce_login_with_domains" — Authentication type. Specify one of the following authentication types for the authentication profile: * `enforce_login`: This option allows any users to join the meeting or webinar, as long as they are signed into their Zoom account. * `enforce_login_with_domains`: This option, allows you to specify a rule so that only those Zoom users whose email addresses contain a certain domain, can join the meeting or webinar. You can either add multiple domains using a comma in between and/or use a wildcard for listing domains. * `enforce_login_with_same_account`: This option allows users to join the meeting or webinar with the same Zoom account.

  • meeting_authentication

    boolean — Only authenticated users can join meetings

  • authentication_option

    object — Authentication Options

    • action

      string, possible values: "update", "show", "hide" — Authentication action

    • default_option

      boolean — Authentication default option

    • domains

      string — Authentication domains

    • id

      string — Authentication id

    • name

      string — Authentication name

    • type

      string, possible values: "internally", "enforce_login", "enforce_login_with_domains" — Authentication type

  • recording_authentication

    boolean — Only authenticated users can view cloud recordings

  • meeting_security

    object

    • auto_security

      boolean — Whether to require that all meetings are secured with at least one security option. This setting can only be disabled by Enterprise, ISV, Business (with more than 100 licenses), and Education accounts.

    • block_user_domain

      boolean — Whether to block users in specific domains from joining meetings and webinars.

    • block_user_domain_list

      array — The domain to block, up to 20 domains. For example, the `*.example.com` domain.

      Items:

      string

    • chat_etiquette_tool

      object — Information about the **Chat Etiquette** Tool.

      • enable

        boolean, default: false — Whether to enable the **Chat Etiquette Tool**. This value defaults to `false`. The **Chat Etiquette Tool** allows you to define specific keywords and text patterns in chat to prevent users from inadvertently sharing unwanted messages.

      • policies

        array — Information about the defined **Chat Etiquette Tool** policies.

        Items:

        • id

          string — The policy ID.

        • status

          string, possible values: "activated", "deactivated" — The policy's current status: * `activated` - Activated. * `deactivated` - Deactivated.

    • embed_password_in_join_link

      boolean — Whether the meeting passcode will be encrypted and included in the invitation link. The provided link will allow participants to join the meeting without having to enter the passcode.

    • encryption_type

      string, possible values: "enhanced_encryption", "e2ee" — The type of encryption to use when starting a meeting: * `enhanced_encryption` - Use enhanced encryption. Encryption data is stored in the cloud. * `e2ee` - End-to-end encryption. The encryption key is stored on the local device and cannot be obtained by anyone else. Enabling E2EE also [**disables** certain features](https://support.zoom.us/hc/en-us/articles/360048660871), such as cloud recording, live streaming, and allowing participants to join before the host.

    • end_to_end_encrypted_meetings

      boolean — Whether to enable end-to-end encryption for meetings. If enabled, you can specify the type of encryption in the `encryption_type` field.

    • meeting_password

      boolean — Whether all instant and scheduled meetings that users can join via client or Zoom Rooms systems are passcode-protected. [Personal Meeting ID (PMI)](https://support.zoom.us/hc/en-us/articles/203276937) meetings are **not** included in this setting.

    • meeting_password_requirement

      object — Information about the meeting and webinar [passcode requirements](https://support.zoom.us/hc/en-us/articles/360033559832-Meeting-and-webinar-passwords#h_a427384b-e383-4f80-864d-794bf0a37604).

      • consecutive_characters_length

        integer, possible values: 0, 4, 5, 6, 7, 8 — The maximum length of consecutive characters (for example, `abcdef`) allowed in a passcode. * `4` through `8` - The maximum consecutive characters length. The length is `n` minus `1`, where `n` is the provided value. For example, if you provide the `4` value, there can only be a maximum of `3` consecutive characters in a passcode, such as `abc1x@8fdh`. * `0` - Do not apply a consecutive character restriction.

      • have_letter

        boolean — Whether the passcode must contain at least one alphabetic character.

      • have_number

        boolean — Whether the passcode must contain at least one numeric character.

      • have_special_character

        boolean — Whether the passcode must contain at least one special character. For example, `!`, `@`, and/or `#` characters.

      • have_upper_and_lower_characters

        boolean — Whether the passcode must include uppercase and lowercase characters.

      • length

        integer — The passcode's minimum length.

      • only_allow_numeric

        boolean — Whether the passcode must contain **only** numeric characters.

      • weak_enhance_detection

        boolean — Whether users will be informed when the provided passcode is weak.

    • only_authenticated_can_join_from_webclient

      boolean — Whether to specify that only authenticated users can join the meeting from the web client.

    • phone_password

      boolean — Whether to require a passcode for participants joining by phone. If enabled and the meeting is passcode-protected, a numeric passcode is required for participants to join by phone. For meetings with alphanumeric passcodes, a numeric passcode will be generated.

    • pmi_password

      boolean — Whether all PMI meetings that users can join via client or Zoom Rooms systems are passcode-protected.

    • require_password_for_scheduled_meeting

      boolean — Whether to require a passcode for meetings that have already been scheduled.

    • require_password_for_scheduled_webinar

      boolean — Whether to require a passcode for webinars that have already been scheduled.

    • waiting_room

      boolean — Whether participants are placed in the [**waiting room**](https://support.zoom.us/hc/en-us/articles/115000332726-Waiting-Room) when they join a meeting. If the **Waiting Room** feature is enabled, the [**Allow participants to join before host**](https://support.zoom.us/hc/en-us/articles/202828525-Allow-participants-to-join-before-host) setting is automatically disabled.

    • waiting_room_settings

      object — Information about the waiting room settings.

      • participants_to_place_in_waiting_room

        integer, possible values: 0, 1, 2 — The type of participants to be admitted to the waiting room. * `0` - All attendees. * `1` - Users who are not in your account. * `2` - Users who are not in your account and are not part of your [allowed domains list](https://support.zoom.us/hc/en-us/articles/360037117472-Configuring-authentication-profiles#h_e3cf0d5f-eec7-4c2a-ad29-ef2a5079a7da).

      • users_who_can_admit_participants_from_waiting_room

        integer, possible values: 0, 1 — The users who can admit participants from the waiting room. * `0` - Host and co-hosts only. * `1` - Host, co-hosts, and anyone who bypassed the waiting room if the host and co-hosts are not present.

      • whitelisted_domains_for_waiting_room

        string — If the `participants_to_place_in_waiting_room` field is `2`, a comma-separated list of the domains that can bypass the waiting room, such as `example.com,example2.com`.

    • webinar_password

      boolean — Whether to generate a passcode when scheduling webinars. Participants must use the generated passcode to join the scheduled webinar.

Example:

{
  "audio_conferencing": {
    "toll_free_and_fee_based_toll_call": {
      "allow_webinar_attendees_dial": true,
      "enable": true,
      "numbers": [
        {
          "code": "86",
          "country_code": "CN",
          "country_name": "China",
          "display_number": "+86 7777 777",
          "number": "7777 777"
        }
      ]
    },
    "toll_call": {
      "enable": true,
      "numbers": [
        {
          "code": "86",
          "country_code": "CN",
          "country_name": "China",
          "display_number": "+86 7777 777",
          "number": "7777 777"
        }
      ]
    },
    "call_me_and_invite_by_phone": {
      "enable": true,
      "require_press_1_for_call_me": "auto",
      "call_out_countries": {
        "selected_countries": [
          {
            "code": "CN",
            "name": "China"
          }
        ]
      },
      "allow_webinar_attendees_call_me": true
    },
    "personal_audio_conference": true,
    "participant_phone_masking": {
      "enable": true,
      "masking_type": "mask_default"
    },
    "global_dial_in_countries": {
      "selected_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ],
      "include_toll_free": true
    }
  },
  "email_notification": {
    "alternative_host_reminder": true,
    "cancel_meeting_reminder": true,
    "cloud_recording_available_reminder": true,
    "jbh_reminder": true,
    "recording_available_reminder_alternative_hosts": true,
    "recording_available_reminder_schedulers": true,
    "schedule_for_reminder": true
  },
  "in_meeting": {
    "alert_guest_join": true,
    "allow_users_to_delete_messages_in_meeting_chat": true,
    "allow_live_streaming": true,
    "allow_participants_chat_with": 1,
    "allow_show_zoom_windows": true,
    "allow_users_save_chats": 3,
    "annotation": true,
    "attendee_on_hold": true,
    "auto_answer": true,
    "auto_saving_chat": true,
    "breakout_room": true,
    "breakout_room_schedule": true,
    "chat": true,
    "meeting_question_answer": true,
    "closed_caption": true,
    "closed_captioning": {
      "auto_transcribing": true,
      "enable": true,
      "save_caption": true,
      "third_party_captioning_service": true,
      "view_full_transcript": true
    },
    "co_host": true,
    "custom_data_center_regions": true,
    "custom_live_streaming_service": true,
    "custom_service_instructions": "The specific instructions",
    "data_center_regions": [
      "US"
    ],
    "disable_screen_sharing_for_host_meetings": true,
    "disable_screen_sharing_for_in_meeting_guests": true,
    "e2e_encryption": true,
    "entry_exit_chime": "host",
    "far_end_camera_control": true,
    "feedback": true,
    "file_transfer": true,
    "group_hd": true,
    "webinar_group_hd": true,
    "join_from_desktop": true,
    "join_from_mobile": true,
    "auto_generated_translation": {
      "language_item_pairList": {
        "trans_lang_config": [
          {
            "speak_language": {
              "name": "Chinese (Simplified)",
              "code": "zh"
            },
            "translate_to": {
              "all": true,
              "language_config": [
                {
                  "name": "English",
                  "code": "en"
                }
              ]
            }
          }
        ],
        "all": true
      },
      "enable": true
    },
    "language_interpretation": {
      "custom_languages": [
        "English"
      ],
      "enable_language_interpretation_by_default": true,
      "allow_participants_to_speak_in_listening_channel": true,
      "allow_up_to_25_custom_languages_when_scheduling_meetings": true,
      "enable": true
    },
    "sign_language_interpretation": {
      "enable": true,
      "enable_sign_language_interpretation_by_default": true,
      "custom_languages": [
        "Language1"
      ]
    },
    "live_streaming_facebook": true,
    "live_streaming_youtube": true,
    "manual_captioning": {
      "allow_to_type": true,
      "auto_generated_captions": true,
      "full_transcript": true,
      "manual_captions": true,
      "save_captions": true,
      "third_party_captioning_service": true
    },
    "meeting_reactions": true,
    "meeting_reactions_emojis": "all",
    "allow_host_panelists_to_use_audible_clap": true,
    "webinar_reactions": true,
    "meeting_survey": true,
    "non_verbal_feedback": true,
    "only_host_view_device_list": true,
    "original_audio": true,
    "polling": true,
    "post_meeting_feedback": true,
    "private_chat": true,
    "record_play_own_voice": true,
    "remote_control": true,
    "remote_support": true,
    "request_permission_to_unmute_participants": true,
    "screen_sharing": true,
    "sending_default_email_invites": true,
    "show_a_join_from_your_browser_link": true,
    "show_browser_join_link": true,
    "show_device_list": true,
    "show_meeting_control_toolbar": true,
    "slide_control": true,
    "stereo_audio": true,
    "use_html_format_email": true,
    "virtual_background": true,
    "waiting_room": true,
    "webinar_chat": {
      "allow_attendees_chat_with": 3,
      "allow_auto_save_local_chat_file": true,
      "allow_panelists_chat_with": 2,
      "allow_panelists_send_direct_message": true,
      "allow_users_save_chats": 0,
      "default_attendees_chat_with": 1,
      "enable": true
    },
    "webinar_live_streaming": {
      "custom_service_instructions": "The specific instructions",
      "enable": true,
      "live_streaming_reminder": true,
      "live_streaming_service": [
        "Facebook"
      ]
    },
    "meeting_polling": {
      "enable": true,
      "advanced_polls": true,
      "manage_saved_polls_and_quizzes": true,
      "require_answers_to_be_anonymous": true,
      "allow_host_to_upload_image": true,
      "allow_alternative_host_to_add_edit": true
    },
    "webinar_polling": {
      "advanced_polls": true,
      "allow_alternative_host_to_add_edit": true,
      "manage_saved_polls_and_quizzes": true,
      "require_answers_to_be_anonymous": true,
      "allow_host_to_upload_image": true,
      "enable": true
    },
    "webinar_question_answer": true,
    "webinar_survey": true,
    "whiteboard": true,
    "who_can_share_screen": "host",
    "who_can_share_screen_when_someone_is_sharing": "all",
    "participants_share_simultaneously": "multiple",
    "workplace_by_facebook": true
  },
  "other_options": {
    "allow_users_contact_support_via_chat": true,
    "blur_snapshot": true,
    "webinar_registration_options": {
      "allow_host_to_enable_join_info": true,
      "allow_host_to_enable_social_share_buttons": true,
      "enable_custom_questions": true
    }
  },
  "profile": {
    "recording_storage_location": {
      "allowed_values": [
        "US"
      ],
      "value": "US"
    }
  },
  "recording": {
    "account_user_access_recording": true,
    "archive": {
      "enable": true,
      "settings": {
        "audio_file": true,
        "cc_transcript_file": true,
        "chat_file": true,
        "chat_with_sender_email": true,
        "video_file": true
      },
      "type": 1
    },
    "auto_recording": "local",
    "cloud_recording": true,
    "cloud_recording_download": true,
    "cloud_recording_download_host": true,
    "host_delete_cloud_recording": true,
    "record_files_separately": {
      "active_speaker": true,
      "gallery_view": true,
      "shared_screen": true
    },
    "display_participant_name": true,
    "recording_thumbnails": true,
    "optimize_recording_for_3rd_party_video_editor": true,
    "save_panelist_chat": true,
    "save_poll_results": true,
    "save_close_caption": true,
    "ip_address_access_control": {
      "enable": true,
      "ip_addresses_or_ranges": "200.181.108.17 - 220.181.108.157"
    },
    "local_recording": true,
    "prevent_host_access_recording": true,
    "record_audio_file": true,
    "record_gallery_view": true,
    "record_speaker_view": true,
    "recording_audio_transcript": true,
    "smart_recording": {
      "create_recording_highlights": true,
      "create_smart_chapters": true,
      "create_next_steps": true
    },
    "save_chat_text": true,
    "show_timestamp": true,
    "recording_notification_for_zoom_client": {
      "disclaimer_to_participants": "All participants",
      "play_voice_prompt": "All participants",
      "ask_host_to_confirm": true
    }
  },
  "schedule_meeting": {
    "audio_type": "both",
    "embed_password_in_join_link": true,
    "host_video": true,
    "join_before_host": true,
    "mute_upon_entry": true,
    "participant_video": true,
    "pstn_password_protected": true,
    "require_password_for_all_meetings": true,
    "require_password_for_instant_meetings": true,
    "require_password_for_pmi_meetings": "jbh_only",
    "require_password_for_scheduled_meetings": true,
    "require_password_for_scheduling_new_meetings": true,
    "upcoming_meeting_reminder": true,
    "always_display_zoom_meeting_as_topic": {
      "enable": false,
      "display_topic_for_scheduled_meetings": false
    },
    "always_display_zoom_webinar_as_topic": {
      "enable": false,
      "display_topic_for_scheduled_webinars": false
    },
    "continuous_meeting_chat": {
      "enable": true,
      "can_add_external_users": true,
      "auto_add_invited_external_users": true
    }
  },
  "telephony": {
    "audio_conference_info": "test",
    "third_party_audio": true
  },
  "chat": {
    "share_files": {
      "enable": true,
      "share_option": "true"
    },
    "chat_emojis": {
      "enable": true,
      "emojis_option": "all"
    },
    "record_voice_messages": true,
    "record_video_messages": true,
    "screen_capture": true,
    "create_public_channels": true,
    "create_private_channels": true,
    "share_links_in_chat": true,
    "schedule_meetings_in_chat": true,
    "set_retention_period_in_cloud": {
      "enable": true,
      "retention_period_of_direct_messages_and_group_conversation": "2m",
      "retention_period_of_channels": "2m"
    },
    "set_retention_period_in_local": {
      "enable": true,
      "retention_period_of_direct_messages_and_group_conversation": "2m",
      "retention_period_of_channels": "2m"
    },
    "allow_users_to_search_others_options": "1,3",
    "allow_users_to_add_contacts": {
      "enable": true,
      "selected_option": 4,
      "user_email_addresses": "123@test.com"
    },
    "allow_users_to_chat_with_others": {
      "enable": true,
      "selected_option": 4,
      "user_email_addresses": "123@test.com"
    },
    "chat_etiquette_tool": {
      "enable": true,
      "policies": [
        {
          "id": "aefwf23dsv;sdo-khuity8",
          "status": "Activated"
        }
      ]
    },
    "send_data_to_third_party_archiving_service": {
      "enable": true
    },
    "translate_messages": true,
    "search_and_send_animated_gif_images": {
      "enable": true
    }
  }
}

Responses

Status: 204 Setting updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account, {accountId} <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> Group does not exist: {groupId}. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get a group's webinar registration settings

  • Method: GET
  • Path: /groups/{groupId}/settings/registration
  • Tags: Groups

Get webinar registration settings for a group. Prerequisite: Pro, Business, or Education account

Scopes: group:read:admin,group:write:admin

Granular Scopes: group:read:registration_settings:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` Group settings registration information returned.
Content-Type: application/json
  • approve_type

    integer, possible values: 0, 1 — Approval type for the registration.

  • custom_questions

    array — Array of Registrant Custom Questions

    Items:

    • answers

      array — Answer choices for the custom question. Can not be used for `short` question type as this type of question requires registrants to type out the answer.

      Items:

      string

    • required

      boolean — Decide whether this field are required.

    • selected

      boolean — Indicates whether or not the custom question is required to be answered by participants or not.

    • title

      string — Title of the custom question.

    • type

      string, possible values: "short", "single_dropdown", "single_radio", "multiple" — Type of the question being asked.

  • options

    object — When participants submit registration, do something.

    • allow_participants_to_join_from_multiple_devices

      boolean — Allow participants to join from multiple devices

    • close_registration

      boolean — Close registration after event date.

    • host_email_notification

      boolean — Send an email to host when someone registers.

    • show_social_share_buttons

      boolean — Show social share buttons on registration page

  • questions

    array — Array of Registrant Questions.

    Items:

    • field_name

      string, possible values: "last_name", "address", "city", "country", "zip", "state", "phone", "industry", "org", "job_title", "purchasing_time_frame", "role_in_purchase_process", "no_of_employees", "comments" — Field name of the question.

    • required

      boolean — Decide whether this field are required.

    • selected

      boolean — Indicates whether or not the displayed fields are required to be filled out by registrants.

Example:

{
  "options": {
    "host_email_notification": true,
    "close_registration": true,
    "allow_participants_to_join_from_multiple_devices": true,
    "show_social_share_buttons": true
  },
  "questions": [
    {
      "field_name": "last_name",
      "required": true,
      "selected": true
    }
  ],
  "approve_type": 0,
  "custom_questions": [
    {
      "title": "true",
      "type": "single_dropdown",
      "required": true,
      "selected": true,
      "answers": [
        "option 1"
      ]
    }
  ]
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Missing parameters: type. <br> **Error Code:** `300` <br> Invalid parameter: type. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> Group does not exist: {groupId}. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a group's webinar registration settings

  • Method: PATCH
  • Path: /groups/{groupId}/settings/registration
  • Tags: Groups

Update webinar registration settings for a group.<p style="background-color:#FEEFB3; color:#9F6000">
Note:</b> The force_pmi_jbh_password field under meeting settings is planned to be deprecated on September 22, 2019. This field will be replaced by another field that will provide the same functionality.</p> Prerequisite: Pro, Business, or Education account

Scopes: group:write:admin

Granular Scopes: group:update:registration_settings:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json
  • approve_type

    integer, possible values: 0, 1 — Approval type for the registration.

  • custom_questions

    array — Array of Registrant Custom Questions

    Items:

    • answers

      array — Answer choices for the custom question. Can not be used for `short` question type as this type of question requires registrants to type out the answer.

      Items:

      string

    • required

      boolean — Decide whether this field are required.

    • selected

      boolean — Indicates whether or not the custom question is required to be answered by participants or not.

    • title

      string — Title of the custom question.

    • type

      string, possible values: "short", "single_dropdown", "single_radio", "multiple" — Type of the question being asked.

  • options

    object — When participants submit registration, do something.

    • allow_participants_to_join_from_multiple_devices

      boolean — Allow participants to join from multiple devices

    • close_registration

      boolean — Close registration after event date.

    • host_email_notification

      boolean — Send an email to host when someone registers.

    • show_social_share_buttons

      boolean — Show social share buttons on registration page

  • questions

    array — Array of Registrant Questions.

    Items:

    • field_name

      string, possible values: "last_name", "address", "city", "country", "zip", "state", "phone", "industry", "org", "job_title", "purchasing_time_frame", "role_in_purchase_process", "no_of_employees", "comments" — Field name of the question.

    • required

      boolean — Decide whether this field are required.

    • selected

      boolean — Indicates whether or not the displayed fields are required to be filled out by registrants.

Example:

{
  "options": {
    "host_email_notification": true,
    "close_registration": true,
    "allow_participants_to_join_from_multiple_devices": true,
    "show_social_share_buttons": true
  },
  "questions": [
    {
      "field_name": "last_name",
      "required": true,
      "selected": true
    }
  ],
  "approve_type": 0,
  "custom_questions": [
    {
      "title": "true",
      "type": "single_dropdown",
      "required": true,
      "selected": true,
      "answers": [
        "option 1"
      ]
    }
  ]
}

Responses

Status: 204 **HTTP Status Code:** `204` Settings updated successfully.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only available for Paid account. <br> **Error Code:** `300` <br> Missing parameters: type. <br> **Error Code:** `300` <br> Invalid parameter: type. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> Group does not exist: {groupId}. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Upload Virtual Background files

  • Method: POST
  • Path: /groups/{groupId}/settings/virtual_backgrounds
  • Tags: Groups

Use this API to upload Virtual Background files for all users in a group to use.

Prerequisites:

Scopes: group:write:admin

Granular Scopes: group:write:virtual_background_files:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: multipart/form-data
  • file

    string — The Virtual Background file's path.

Example:

{
  "file": "binary"
}

Responses

Status: 201 **HTTP Status Code:** `201` Created
Content-Type: application/json
  • id

    string — The file's ID.

  • is_default

    boolean — Whether the file is the default Virtual Background file.

  • name

    string — The file's name.

  • size

    integer — The file's size, in bytes.

  • type

    string — The file type.

Example:

{
  "id": "6SEYvTU4SuG257lOHuJKOQ",
  "is_default": true,
  "name": "San Francisco",
  "size": 7221,
  "type": "image"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `120` <br> No file uploaded, verify that a file has been uploaded.<br> File size cannot exceed 15M.<br> A maximum of 10 files are allowed for a user.<br> Only jpg/jpeg or png image file can be uploaded. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User not exist.<br> User {email} not exist or not belong to this account. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete Virtual Background files

  • Method: DELETE
  • Path: /groups/{groupId}/settings/virtual_backgrounds
  • Tags: Groups

Use this API to delete a group's Virtual Background files.

Prerequisites:

Scopes: group:write:admin

Granular Scopes: group:delete:virtual_background_files:admin

Rate Limit Label: LIGHT

Responses

Status: 204 **HTTP Status Code:** `204` * No content. * Deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> * Invalid parameter: {file_ids} * Group member not found. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> A group with this {groupId} does not exist. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List users

  • Method: GET
  • Path: /users
  • Tags: Users

Retrieve a list your account's users.

Scopes: user:read,user:write,user:read:admin,user:write:admin

Granular Scopes: user:read:list_users:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` User list returned.
Content-Type: application/json
  • next_page_token

    string — The next page token paginates through a large set of results. A next page token returns whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.

  • page_count

    integer — The number of pages returned for the request made.

  • page_number

    integer, default: 1 — The page number of the current results.

  • page_size

    integer, default: 30 — The number of records returned within a single API call.

  • total_records

    integer — The total number of all the records available across pages.

  • users

    array — The information about the users.

    Items:

    • email (required)

      string, format: email — The user's email address.

    • type (required)

      integer, possible values: 1, 2, 4, 99 — The user's assigned plan type. * `1` - Basic. * `2` - Licensed. * `4` - Unassigned without Meetings Basic. * <del>`99` - None (this can only be set with `ssoCreate`).</del>

    • created_at

      string, format: date-time — The date and time when this user's latest login type was created.

    • custom_attributes

      array — The information about the user's custom attributes. This field is **only** returned if users are assigned custom attributes and you provided the `custom_attributes` value for the `include_fields` query parameter in the API request.

      Items:

      • key

        string — The custom attribute's unique ID.

      • name

        string — The custom attribute's name.

      • value

        string — The custom attribute's value.

    • dept

      string — The user's department.

    • display_name

      string — The user's display name.

    • division_ids

      array — List of division IDs the user belongs to. Currently, only a single division is supported.

      Items:

      string

    • employee_unique_id

      string — The employee's unique ID. The this field only returns when: * SAML single sign-on (SSO) is enabled. * The `login_type` value is `101` (SSO).

    • first_name

      string — The user's first name.

    • group_ids

      array — The IDs of groups where the user is a member.

      Items:

      string

    • host_key

      string — The user's [host key](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0067063). This field is **only** returned if users are assigned a host key and you provided the `host_key` value for the `include_fields` query parameter in the API request.

    • id

      string — The user's ID. The API does **not** return this value for users with the `pending` status.

    • im_group_ids

      array — The IDs of IM directory groups where the user is a member.

      Items:

      string

    • last_client_version

      string — The last client version that user used to log in.

    • last_login_time

      string, format: date-time — The user's last login time. This field has a three-day buffer period. For example, if user first logged in on `2020-01-01` and then logged out and logged in on `2020-01-02`, this value will still reflect the login time of `2020-01-01`. However, if the user logs in on `2020-01-04`, the value of this field will reflect the corresponding login time since it exceeds the three-day buffer period.

    • last_name

      string — The user's last name.

    • license_info_list

      array — Detailed license subscription information. This list is returned only for accounts with multiple subscription plans enabled that contain duplicate plans.

      Items:

      • license_option

        integer, possible values: 2, 4, 8, 16, 32, 64, 128, 33554432, 134217728, 1073741824, 536870912, 268435456, 4398046511104, 18014398509481984, 72057594037927940, 576460752303423500, 144115188075855870, 137438953472, 1099511627776, 549755813888, 274877906944, 2199023255552, 4294967296, 34359738368, 17179869184, 8589934592, 68719476736 — License option. For the `MEETING` parameter, setting the corresponding value indicates that the user is converted to a licensed user. The specific values are as follows: User's plan type. `2` - Licensed. For the `ZOOM_WORKPLACE_BUNDLE` parameter, setting the corresponding value assigns the user a Zoom Workplace series license. The specific values are as follows: The user's Zoom Workplace plan option. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom Workplace plan option for Govermnemt accounts. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus. The Zoom Workplace plan option for Education accounts. `18014398509481984` - Zoom Workplace for Education School and Campus. `72057594037927936` - Zoom Workplace for Education Enterprise Essentials. `576460752303423488` - Zoom Workplace for Education Enterprise Student. `144115188075855872` - Zoom Workplace for Education Enterprise Plus. `137438953472` - Zoom Workplace for Education School and Campus Plus with US/CA Unlimited. `1099511627776` - Zoom Workplace for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom Workplace for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom Workplace for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom Workplace for Education School and Campus Plus with Global Select. `4294967296` - Zoom Workplace for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom Workplace for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom Workplace for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom Workplace for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom Workplace for Education Enterprise Premier with Global Select.

      • license_type

        string, possible values: "MEETING", "ZOOM_WORKPLACE_BUNDLE" — License type name. The `MEETING` license is associated with the paid user type, while the `ZOOM_WORKPLACE_BUNDLE` license corresponds to the Zoom Workplace series licenses.

      • subscription_id

        string — Subscription ID with the corresponding license.

    • plan_united_type

      string, possible values: "1", "2", "4", "8", "16", "32", "64", "128", "256", "512", "1024", "2048", "4096", "8192", "16384", "32768", "65536", "131072" — This field is returned if the user is enrolled in the [Zoom United](https://zoom.us/pricing) plan. The license option: * `1` &mdash; Zoom United Pro-United with US/CA Unlimited. * `2` &mdash; Zoom United Pro-United with UK/IR Unlimited. * `4` &mdash; Zoom United Pro-United with AU/NZ Unlimited. * `8` &mdash; Zoom United Pro-United with Global Select. * `16` &mdash; Zoom United Pro-United with Zoom Phone Pro. * `32` &mdash; Zoom United Biz-United with US/CA Unlimited. * `64` &mdash; Zoom United Biz-United with UK/IR Unlimited. * `128` &mdash; Zoom United Biz-United with AU/NZ Unlimited. * `256` &mdash; Zoom United Biz-United with Global Select. * `512` &mdash; Zoom United Biz-United with Zoom Phone Pro. * `1024` &mdash; Zoom United Ent-United with US/CA Unlimited. * `2048` &mdash; Zoom United Ent-United with UK/IR Unlimited. * `4096` &mdash; Zoom United Ent-United with AU/NZ Unlimited. * `8192` &mdash; Zoom United Ent-United with Global Select. * `16384` &mdash; Zoom United Ent-United with Zoom Phone Pro. * `32768` &mdash; Zoom United Pro-United with JP Unlimited. * `65536` &mdash; Zoom United Biz-United with JP Unlimited. * `131072` &mdash; Zoom United Ent-United with JP Unlimited.

    • pmi

      integer, format: int64 — The user's [personal meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi)

    • role_id

      string — The unique ID of the user's assigned [role](/docs/api/accounts/#tag/roles/GET/roles).

    • status

      string, possible values: "active", "inactive", "pending" — The user's status. * `active` - An active user. * `inactive` - A deactivated user. * `pending` - A pending user.

    • timezone

      string — The user's timezone.

    • user_created_at

      string, format: date-time — The date and time when this user was created.

    • verified

      integer, possible values: 1, 0 — Whether the user's email address for the Zoom account is verified. * `1` - A verified user email. * `0` - The user's email **not** verified.

Example:

{
  "next_page_token": "8V8HigQkzm2O5r9RUn31D9ZyJHgrmFfbLa2",
  "page_count": 100,
  "page_number": 1,
  "page_size": 30,
  "total_records": 8482,
  "users": [
    {
      "user_created_at": "2019-06-01T07:58:03Z",
      "custom_attributes": [
        {
          "key": "cbf_cywdkexrtqc73f97gd4w6g",
          "name": "A1",
          "value": "2323"
        }
      ],
      "dept": "Developers",
      "email": "jchill@example.com",
      "employee_unique_id": "HqDyI037Qjili1kNsSIrIg",
      "first_name": "Jill",
      "group_ids": [
        "t-_-d56CSWG-7BF15LLrOw"
      ],
      "division_ids": [
        "xxxxxxxxxx"
      ],
      "host_key": "299492849",
      "id": "KDcuGIm1QgePTO8WbOqwIQ",
      "im_group_ids": [
        "t-_-d56CSWG-7BF15LLrOw"
      ],
      "last_client_version": "5.2.45120.0906(win)",
      "last_login_time": "2022-03-25T05:40:55Z",
      "last_name": "Chill",
      "plan_united_type": "1",
      "pmi": 6589310093,
      "role_id": "0",
      "status": "active",
      "timezone": "Asia/Shanghai",
      "type": 1,
      "verified": 1,
      "display_name": "Jill Chill",
      "license_info_list": [
        {
          "license_type": "ZOOM_WORKPLACE_BUNDLE",
          "license_option": 16,
          "subscription_id": "SUBREF-xxxxxx-xxxxxx"
        }
      ]
    }
  ]
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `124` <br> Access token is expired. Invalid access token. <br> **Error Code:** `300` <br> The next page token is invalid or expired. <br> **Error Code:** `2300` <br> This API endpoint is not recognized. <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden Access to the Zoom REST API has been denied for this account. Contact Zoom Support for details.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Create users

  • Method: POST
  • Path: /users
  • Tags: Users

Add a new user to your Zoom account.

Note These rate limits apply when you use the create value for the action field.

  • 50 requests per day for Free accounts.
  • 1,500 requests per day for Pro accounts.
  • 10,000 requests per day for Business+ accounts.

Prerequisites

  • A Pro or higher plan.

Scopes: user:write,user:write:admin

Granular Scopes: user:write:user:admin

Rate Limit Label: LIGHT

Request Body

Content-Type: application/json
  • action (required)

    string, possible values: "create", "autoCreate", "custCreate", "ssoCreate" — The action to take to create the new user. * `create` - The user receives an email from Zoom containing a confirmation link. The user must then use the link to activate their Zoom account. The user can then set or change their password. * `autoCreate` - This action is for Enterprise customers with a managed domain. autoCreate creates an email login type for users. * `custCreate` - Users created with this action do not have passwords and will **not** have the ability to log into the Zoom web portal or the Zoom client. These users can still host and join meetings using the `start_url` and `join_url` respectively. To use this option, you must [contact the Integrated Software Vendor (ISV) sales team](https://explore.zoom.us/en/isv/#isv). * `ssoCreate` - This action is provided for the enabled &ldquo;Pre-provisioning SSO User&rdquo; option. A user created this way has no password. If it is **not** a Basic user, a personal vanity URL with the username (no domain) of the provisioning email is generated. If the username or PMI is invalid or occupied, it uses a random number or random personal vanity URL.

  • user_info

    object

    • email (required)

      string — User email address.

    • type (required)

      integer, possible values: 1, 2, 4, 99 — User type. `1` - Basic. `2` - Licensed. `4` - Unassigned without Meetings Basic. <del>`99` - None. this can only be set with `ssoCreate`.</del>

    • display_name

      string — The user's display name. Cannot contain more than 10 Chinese characters.

    • division_ids

      array — List of Division IDs to be updated (currently only a single division is supported)

      Items:

      string

    • feature

      object — Information about the user's features.

      • zoom_one_type

        integer, possible values: 16, 32, 64, 128, 33554432, 134217728, 268435456, 536870912, 1073741824, 4398046511104, 4294967296, 8589934592, 17179869184, 34359738368, 68719476736, 137438953472, 274877906944, 549755813888, 1099511627776, 2199023255552, 18014398509481984, 72057594037927940, 144115188075855870, 576460752303423500 — The Zoom Workplace plan option. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom One plan option for Gov accounts: `16` - Zoom One Business Plus. The Zoom One plan option for Education accounts: `18014398509481984` - Zoom One for Education School and Campus. `72057594037927936` - Zoom One for Education Enterprise Essentials. `576460752303423488` - Zoom One for Education Enterprise Student. `144115188075855872` - Zoom One for Education Enterprise Plus. `137438953472` - Zoom One for Education School and Campus Plus with US/CA Unlimited. `1099511627776` -Zoom One for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom One for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom One for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom One for Education School and Campus Plus with Global Select. `4294967296` - Zoom One for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom One for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom One for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom One for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom One for Education Enterprise Premier with Global Select.

      • zoom_phone

        boolean — Whether the user has the **Zoom Phone** feature enabled.

    • first_name

      string — The user's first name. Cannot contain more than 5 Chinese characters.

    • last_name

      string — The user's last name. Cannot contain more than 5 Chinese characters.

    • license_info_list

      array — A list of license information used to specify the appropriate license type, license option, and license subscription reference ID or name during user creation.

      Items:

      • license_option (required)

        integer, possible values: 2, 4, 8, 16, 32, 64, 128, 33554432, 134217728, 1073741824, 536870912, 268435456, 4398046511104, 18014398509481984, 72057594037927940, 576460752303423500, 144115188075855870, 137438953472, 1099511627776, 549755813888, 274877906944, 2199023255552, 4294967296, 34359738368, 17179869184, 8589934592, 68719476736 — License option. For the `MEETING` parameter, setting the corresponding value indicates that the user is converted to a licensed user. The specific values are as follows: User's plan type. `2` - Licensed. For the `ZOOM_WORKPLACE_BUNDLE` parameter, setting the corresponding value assigns the user a Zoom Workplace series license. The specific values are as follows: The user's Zoom Workplace plan option. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom Workplace plan option for Govermnemt accounts. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus. The Zoom Workplace plan option for Education accounts. `18014398509481984` - Zoom Workplace for Education School and Campus. `72057594037927936` - Zoom Workplace for Education Enterprise Essentials. `576460752303423488` - Zoom Workplace for Education Enterprise Student. `144115188075855872` - Zoom Workplace for Education Enterprise Plus. `137438953472` - Zoom Workplace for Education School and Campus Plus with US/CA Unlimited. `1099511627776` - Zoom Workplace for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom Workplace for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom Workplace for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom Workplace for Education School and Campus Plus with Global Select. `4294967296` - Zoom Workplace for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom Workplace for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom Workplace for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom Workplace for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom Workplace for Education Enterprise Premier with Global Select.

      • license_type (required)

        string, possible values: "MEETING", "ZOOM_WORKPLACE_BUNDLE" — License type name. The `MEETING` license is associated with the paid user type, while the `ZOOM_WORKPLACE_BUNDLE` license corresponds to the Zoom Workplace series licenses.

      • subscription_id (required)

        string — The subscription ID associated with the corresponding license.

    • password

      string, format: password — User password. Only used for the &quot;autoCreate&quot; function. The password has to have a minimum of 8 characters and maximum of 32 characters. By default (basic requirement), password must have at least one letter (a, b, c..), at least one number (1, 2, 3...) and include both uppercase and lowercase letters. It should not contain only one identical character repeatedly ('11111111' or 'aaaaaaaa') and it cannot contain consecutive characters ('12345678' or 'abcdefgh'). **Note:** If the account owner or admin has enabled [enhanced password requirements](https://support.zoom.us/hc/en-us/articles/360034675592-Advanced-security-settings#h_fa9186e4-6818-4f7a-915c-2e25c19f0acd), the value provided in this field must meet those requirements. These requirements can be retrieved by calling the [**Get account settings**](/docs/api-reference/zoom-api/ma#operation/accountSettings) API and referring to the `password_requirement` field present in the `security` object.

    • plan_united_type

      string, possible values: "1", "2", "4", "8", "16", "32", "64", "128", "256", "512", "1024", "2048", "4096", "8192", "16384", "32768", "65536", "131072" — The Zoom United type. The license option. * `1` - Zoom United Pro-United with US/CA Unlimited. * `2` - Zoom United Pro-United with UK/IR Unlimited. * `4` - Zoom United Pro-United with AU/NZ Unlimited. * `8` - Zoom United Pro-United with Global Select. * `16` - Zoom United Pro-United with Zoom Phone Pro. * `32` - Zoom United Biz-United with US/CA Unlimited. * `64` - Zoom United Biz-United with UK/IR Unlimited. * `128` - Zoom United Biz-United with AU/NZ Unlimited. * `256` - Zoom United Biz-United with Global Select. * `512` - Zoom United Biz-United with Zoom Phone Pro. * `1024` - Zoom United Ent-United with US/CA Unlimited. * `2048` - Zoom United Ent-United with UK/IR Unlimited. * `4096` - Zoom United Ent-United with AU/NZ Unlimited. * `8192` - Zoom United Ent-United with Global Select. * `16384` - Zoom United Ent-United with Zoom Phone Pro. * `32768` - Zoom United Pro-United with JP Unlimited. * `65536` - Zoom United Biz-United with JP Unlimited. * `131072` - Zoom United Ent-United with JP Unlimited.

Example:

{
  "action": "create",
  "user_info": {
    "email": "jchill@example.com",
    "first_name": "Jill",
    "last_name": "Chill",
    "display_name": "Jill Chill",
    "password": "if42!LfH@",
    "type": 1,
    "division_ids": [
      "xxxxxxxxxx"
    ],
    "feature": {
      "zoom_phone": true,
      "zoom_one_type": 64
    },
    "plan_united_type": "1",
    "license_info_list": [
      {
        "license_type": "ZOOM_WORKPLACE_BUNDLE",
        "license_option": 16,
        "subscription_id": "SUBREF-xxxxxx-xxxxxx"
      }
    ]
  }
}

Responses

Status: 201 **HTTP Status Code:** `201` User created.
Content-Type: application/json
  • email

    string — User email address.

  • first_name

    string — The user's first name.

  • id

    string — User ID.

  • last_name

    string — The user's last name.

  • type

    integer, possible values: 1, 2, 4, 99 — User type. `1` - Basic. `2` - Licensed. `4` - Unassigned without Meetings Basic. <del>`99` - None. This can only be set with `ssoCreate`.</del>

Example:

{
  "email": "jchill@example.com",
  "first_name": "Jill",
  "id": "KDcuGIm1QgePTO8WbOqwIQ",
  "last_name": "Chill",
  "type": 1
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Invalid parameter: password Your account can't set user type as On-prem. <br> **Error Code:** `200` <br> No privilege. <br> No permission. <br> Invalid access token. Does not contain permissions [User:Edit]. <br> **Error Code:** `1000` <br> The user cannot be changed because they are a Call-queue manager or Auto-receptionist operator. <br> **Error Code:** `300` <br> * Your request could not be completed because the name contains an invalid word: `{name}`. <br> The value provided for `plan_united_type` parameter is invalid. Try again with a valid value. * The subscription "{subscriptionId}" you entered does not exist. Please choose a different subscription and try again. <br> **Error Code:** `1009` <br> The user $email already holds an active account. <br> **Error Code:** `1107` <br> Email domain is blocked. <br> **Error Code:** `2034` <br> Your request to add a new {0} user could not be approved at this time because your account has reached the permitted maximum number of {1} users. Please purchase additional licenses or contact the Zoom support team to provision additional users in your account. <br> **Error Code:** `2033` <br> Your request to add a basic user wasn't approved because you've already reached the maximum basic user limit allowed in your account. For additional help regarding this issue, contact the Zoom Customer Support team. <br> **Error Code:** `3412` <br> * Your request to add a basic user couldn't be approved at this time because your account has reached the permitted maximum number of $maxAllowedNumber basic users. Please remove existing basic user(s) from your Users list or the Pending Users list before attempting to add another user. * Your request to add a new "{$userType}" user couldn't be approved at this time because your account has reached the permitted maximum number of "{$maxAllowedNumber}" paying users. Please purchase additional licenses or contact the Zoom support team to provision additional users in your account. * Your request to add a new "{$userType}" user could not be approved at this time because the subscription {$subscriptionId} has reached the permitted maximum number of "{$maxAllowedNumber}" paying users. Please choose a different subscription and try again. <br> **Error Code:** `1108` <br> Permission requirements to change the user type of this user were not met. <br> **Error Code:** `1116` <br> Email address $email doesn't match limited domains: $domains <br> **Error Code:** `2002` <br> SSO has not been enabled for this account. Contact the Zoom support team to enable this option. <br> **Error Code:** `2032` <br> The ssoCreate option is only available for SSO Partners that have enabled the pre-provision option. Contact the Zoom Support team to learn more. <br> **Error Code:** `2035` <br> GPA accounts cannot add users. <br> **Error Code:** `2036` <br> Other accounts cannot invite GPA account owners. <br> **Error Code:** `2037` <br> Force forbidden user can not be invited. <br> **Error Code:** `2038` <br> * Your request to add a new Zoom One user could not be approved at this time because your account has reached the permitted maximum number. Please purchase additional licenses or contact the Zoom support team to provision additional users in your account. * Your request to add a new Zoom One user could not be approved at this time because the subscription "{subscriptionId}" doesn’t have enough licenses available to assign. Please choose a different subscription and try again. <br> **Error Code:** `11321` <br> Email domain is blocked by Zoom Trust & Safety. <br> **Error Code:** `2016` <br> No permission. Please contact Zoom Customer Support. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `4130` <br> Group does not exist: $groupId. <br> **Error Code:** `1102` <br> You cannot enable the **Zoom Phone** feature because you do not have any available licenses. <br>
Status: 409 **HTTP Status Code:** `409` <br> Conflict **Error Code:** `1005` <br> Email "$email" has already been used. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Check a user email

  • Method: GET
  • Path: /users/email
  • Tags: Users

Verify if a user's email is registered with Zoom.

<b>Note: </b>You can successfully check if a user is a registered Zoom user only if the user signed up for Zoom via email and is within your account. If you provide an email address of a user who is not in your account, the value of "existed_email" parameter will be "false" irrespective of whether or not the user is registered with Zoom. The response of this API call will not include users who joined Zoom using options such as "Sign in with SSO", "Sign in with Google" or "Sign in with Facebook" even if they are in the same account as yours.

Scopes: user:read,user:write,user:read:admin,user:write:admin

Granular Scopes: user:read:email,user:read:email:admin

Rate Limit Label: Light

Responses

Status: 200 **HTTP Status Code:** `200` Success.
Content-Type: application/json
  • existed_email

    boolean — Indicates whether or not the email already exists in Zoom.

Example:

{
  "existed_email": true
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Email is required.
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Bulk update features for users

  • Method: POST
  • Path: /users/features
  • Tags: Users

Update multiple features for a user.

Note This endpoint can process a maximum of 30 users at a time. Furthermore, the endpoint is rate-limited to one request every 10 seconds.

Scopes: user:write,user:write:admin

Granular Scopes: user:write:feature:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json
  • feature_type (required)

    string, possible values: "user_type", "concurrent_meeting", "large_meeting", "webinar", "zoom_events", "zoom_whiteboard", "plan_united_type", "zoom_one_type", "zoom_iq_for_sales", "zoom_revenue_accelerator", "zoom_clips_plus" — The feature type to update.

  • feature_value (required)

    string — The feature value to update. The value you can pass depends on the 'feature_type' field. **user_type:** * `1` - Basic * `2` - Licensed * <del>`99` - None. This can only be set with `ssoCreate`. </del> **concurrent_meeting:** * `Basic` * `Plus` * `None`. **large_meeting:** * `1` - 100 capacity * `32` - 200 capacity * `64` - 300 capacity * `128` - 500 capacity * `256` - 1000 capacity * `1024` - 3000 capacity * `2048` - 5000 capacity * `0` - Turn off the **Large meeting** feature. **webinar:** * `16` - 100 capacity * `1` - 500 capacity * `64` - 1000 capacity * `128` - 3000 capacity * `256` - 5000 capacity * `512` - 10000 capacity * `1024` - 20000 capacity * `2048` - 30000 capacity * `4096` - 40000 capacity * `8192` - 50000 capacity * `16384` - promo 500 capacity * `32768` - promo 1000 capacity * `0` - Turn off the **Webinar** feature. **zoom_events:** * `500` - 500 capacity * `1000` - 1000 capacity * `3000` - 3000 capacity * `5000` - 5000 capacity * `10000` - 10000 capacity * `20000` - 20000 capacity * `30000` - 30000 capacity * `50000` - 50000 capacity * `0` - Turn off the **Zoom events** feature. **<del>zoom_iq_for_sales</del>:** * `true` - Turn on the **Zoom Revenue Accelerator** feature. * `false` - Turn off the **Zoom Revenue Accelerator** feature. **zoom_revenue_accelerator:** * `true` - Turn on the **Zoom Revenue Accelerator** feature. * `false` - Turn off the **Zoom Revenue Accelerator** feature. **zoom_whiteboard:** * `true` - Turn on the **Zoom whiteboard** feature. * `false` - Turn off the **Zoom whiteboard** feature. **zoom_clips_plus** * `true` - Turn on the **Zoom Clips Plus** feature. * `false` - Turn off the **Zoom Clips Plus** feature. **plan_united_type:** * `1` - Zoom United Pro-United with US/CA Unlimited. * `2` - Zoom United Pro-United with UK/IR Unlimited. * `4` - Zoom United Pro-United with AU/NZ Unlimited. * `8` - Zoom United Pro-United with Global Select. * `16` - Zoom United Pro-United with Zoom Phone Pro. * `32` - Zoom United Biz-United with US/CA Unlimited. * `64` - Zoom United Biz-United with UK/IR Unlimited. * `128` - Zoom United Biz-United with AU/NZ Unlimited. * `256` - Zoom United Biz-United with Global Select. * `512` - Zoom United Biz-United with Zoom Phone Pro. * `1024` - Zoom United Ent-United with US/CA Unlimited. * `2048` - Zoom United Ent-United with UK/IR Unlimited. * `4096` - Zoom United Ent-United with AU/NZ Unlimited. * `8192` - Zoom United Ent-United with Global Select. * `16384` - Zoom United Ent-United with Zoom Phone Pro. * `32768` - Zoom United Pro-United with JP Unlimited. * `65536` - Zoom United Biz-United with JP Unlimited. * `131072` - Zoom United Ent-United with JP Unlimited. * `0` - Turn off the **Zoom united** feature. **zoom_one_type:** * `16` - Zoom Workplace Business Plus with US/CA Unlimited. * `32` - Zoom Workplace Business Plus with UK/Ireland Unlimited. * `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. * `128` - Zoom Workplace Business Plus with Japan Unlimited. * `33554432` - Zoom Workplace Business Plus with Global Select. * `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. * `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. * `536870912` - Zoom Workplace Enterprise Premier with UK/Ireland Unlimited. * `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. * `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. * `0` - Turn off the **Zoom Workplace** feature. For Gov accounts: * `16` - Zoom One Business Plus. * `0` - Turn off the **Zoom one** feature. For Education accounts: * `18014398509481984` - Zoom One for Education School and Campus. * `72057594037927936` - Zoom One for Education Enterprise Essentials. * `576460752303423488` - Zoom One for Education Enterprise Student. * `144115188075855872` - Zoom One for Education Enterprise Plus. * `137438953472` - Zoom One for Education School and Campus Plus with US/CA Unlimited. * `1099511627776` -Zoom One for Education School and Campus Plus with AU/NZ Unlimited. * `549755813888` - Zoom One for Education School and Campus Plus with UK/Ireland Unlimited. * `274877906944` - Zoom One for Education School and Campus Plus with Japan Unlimited. * `2199023255552` - Zoom One for Education School and Campus Plus with Global Select. * `4294967296` - Zoom One for Education Enterprise Premier with US/CA Unlimited. * `34359738368` - Zoom One for Education Enterprise Premier with AU/NZ Unlimited. * `17179869184` -Zoom One for Education Enterprise Premier with UK/Ireland Unlimited. * `8589934592` - Zoom One for Education Enterprise Premier with with Japan Unlimited. * `68719476736` - Zoom One for Education Enterprise Premier with Global Select. * `0` - Turn off the **Zoom one** feature.

  • users (required)

    array — The users' information to update.

    Items:

    • email

      string — The user's email.

    • id

      string — The user's ID.

  • license_info_list

    array — A list of license information used to specify the appropriate license type, license option, and license subscription reference ID or name during user creation.

    Items:

    • license_option (required)

      integer, possible values: 2, 4, 8, 16, 32, 64, 128, 33554432, 134217728, 1073741824, 536870912, 268435456, 4398046511104, 18014398509481984, 72057594037927940, 576460752303423500, 144115188075855870, 137438953472, 1099511627776, 549755813888, 274877906944, 2199023255552, 4294967296, 34359738368, 17179869184, 8589934592, 68719476736 — License option. For the `MEETING` parameter, setting the corresponding value indicates that the user is converted to a licensed user. The specific values are as follows: User's plan type. `2` - Licensed. For the `ZOOM_WORKPLACE_BUNDLE` parameter, setting the corresponding value assigns the user a Zoom Workplace series license. The specific values are as follows: The user's Zoom Workplace plan option. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom Workplace plan option for Govermnemt accounts. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus. The Zoom Workplace plan option for Education accounts. `18014398509481984` - Zoom Workplace for Education School and Campus. `72057594037927936` - Zoom Workplace for Education Enterprise Essentials. `576460752303423488` - Zoom Workplace for Education Enterprise Student. `144115188075855872` - Zoom Workplace for Education Enterprise Plus. `137438953472` - Zoom Workplace for Education School and Campus Plus with US/CA Unlimited. `1099511627776` - Zoom Workplace for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom Workplace for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom Workplace for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom Workplace for Education School and Campus Plus with Global Select. `4294967296` - Zoom Workplace for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom Workplace for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom Workplace for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom Workplace for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom Workplace for Education Enterprise Premier with Global Select.

    • license_type (required)

      string, possible values: "MEETING", "ZOOM_WORKPLACE_BUNDLE" — License type name. The `MEETING` license is associated with the paid user type, while the `ZOOM_WORKPLACE_BUNDLE` license corresponds to the Zoom Workplace series licenses.

    • subscription_id (required)

      string — The subscription ID associated with the corresponding license.

  • subscription_id

    string — The subscription ID associated with the corresponding license. For accounts with duplicate subscription IDs, when zoom_one_type is 0, this parameter represents the subscription ID that requires the allocation of a meeting license.

Example:

{
  "feature_type": "user_type",
  "feature_value": "1",
  "subscription_id": "SUBREF-xxxxxx-xxxxxx",
  "users": [
    {
      "id": "-gbbm4KGTsSvL5zmELDJdw",
      "email": "jchill@example.com"
    }
  ]
}

Responses

Status: 201 **HTTP Status Code:** `201` Features updated.
Content-Type: application/json
  • fail_details

    array — The details why these users' feature was not updated successfully.

    Items:

    • reason

      string, possible values: "Users not found", "Have upcoming events", "Unpaid user", "Not enough seats", "Can't update for Zoom One users", "Can't update for free users", "Can't update for Zoom United users", "Can't update for Zoom Room users", "Not allowed to add basic users", "Can't update for non-SSO users", "No need to update" — The reason why the feature for these users was not updated successfully.

    • user_ids

      array — The IDs of users for whom the feature was not updated successfully.

      Items:

      string

  • success_user_ids

    array — The IDs of users for whom the feature was updated successfully

    Items:

    string

Example:

{
  "success_user_ids": [
    "-gbbm4KGTsSvL5zmELDJdw"
  ],
  "fail_details": [
    {
      "user_ids": [
        "-gbbm4KGTsSvL5zmELDJdw"
      ],
      "reason": "Not enough seats"
    }
  ]
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> * Current account must be a paid account. * Current account does not enable this feature. <br> **Error Code:** `300` <br> * Your account can't set user type as On-prem. * The subscription "{subscriptionId}" you entered does not exist. Please choose a different subscription and try again. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get the user's ZAK

  • Method: GET
  • Path: /users/me/zak
  • Tags: Users

Get the Zoom Access Key (ZAK) for the authenticated user associated with the access token in the API request. Use a ZAK to start or join a meeting on behalf of this user.

ZAKs obtained with this endpoint expire five minutes after receipt.

To get a ZAK for a different user or with a different expiration, use the Get a user token API with the zak type query parameter.

See Getting a Zoom Access Key (ZAK) for details.

Scopes: user_zak:read

Granular Scopes: user:read:zak,user:read:zak:admin

Rate Limit Label: Light

Responses

Status: 200 OK
Content-Type: application/json
  • token

    string — The user's ZAK.

Example:

{
  "token": "eyJ0eXAiOiJKV1QiLCJzdiI6IjAwMDAwMSIsInptX3NrbSI6InptX28ybSIsImFsZyI6IkhTMjU2In0.eyJhdWQiOiJjbGllbnRzbSIsInVpZCI6Im4ya1NtRmdsU2lpRnZjZWJFZTVWRFEiLCJpc3MiOiJ3ZWIiLCJzayI6IjAiLCJzdHkiOjk5LCJ3Y2QiOiJkZXYiLCJjbHQiOjAsImV4cCI6MTY1NzQ0MjI4MSwiaWF0IjoxNjQ5NjY2MjgxddkFMiiOiI0YUZaXzRJa1QzV05LMjMtSFZWSlFnIiwiY2lkIjoiIn0.RmCpEOQVUFXhtEyAaR5UsgEuAUKckcWnfWVMkH-XVGc"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `1001` <br> User not exist.<br> User {userId} does not exist or does not belong to this account. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get user summary

  • Method: GET
  • Path: /users/summary
  • Tags: Users

Gets a summary of users, including the number and types of users in the account.

Scopes: user:read,user:write,user:read:admin,user:write:admin

Granular Scopes: user:read:summary:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` User summary returned.
Content-Type: application/json
  • basic_users_count

    integer — The number of basic users.

  • join_only_users_count

    integer — The number of users without licenses.

  • licensed_users_count

    integer — The number of licensed users.

  • on_prem_users_count

    integer — The number of on-prem users.

  • pending_users_count

    integer — The number of users with a pending activation meeting license.

  • room_users_count

    integer — The number of Zoom rooms.

  • total_users_count

    integer — The total number of `licensed_users_count`, `basic_users_count`, `on_prem_users_count`, `join_only_users_count` and `room_users_count`.

Example:

{
  "licensed_users_count": 30,
  "basic_users_count": 30,
  "on_prem_users_count": 30,
  "room_users_count": 30,
  "pending_users_count": 30,
  "join_only_users_count": 30,
  "total_users_count": 120
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `124` <br> Access token is expired. Invalid access token. <br> **Error Code:** `2300` <br> This API endpoint is not recognized. <br>
Status: 403 **HTTP Status Code:** `403` <br> Forbidden Access to the Zoom REST API has been denied for this account. Contact Zoom Support for details.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Check a user's PM room

  • Method: GET
  • Path: /users/vanity_name
  • Tags: Users

A personal meeting room is a virtual meeting room that can be permanently assigned to a user. Use this API to check if a personal meeting room with the given name exists or not.

Scopes: user:read,user:write,user:read:admin,user:write:admin

Granular Scopes: user:read:pm_room,user:read:pm_room:admin

Rate Limit Label: Light

Responses

Status: 200 **HTTP Status Code:** `200` Success.
Content-Type: application/json
  • existed

    boolean — If `true`, it indicates that the personal meeting room with the given name exists. `false` - The room name does not exist.

Example:

{
  "existed": false
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Vanity name is required.
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get a user

  • Method: GET
  • Path: /users/{userId}
  • Tags: Users

View a user's information on a Zoom account. For user-managed apps, pass the me value instead of the userId parameter. Note: The user_info:read scope is only available when you pass the me value for the $userId value.

Users who have not activated their account will have a pending status. These users' created_at timestamp will also display the time at which the API call was made, not the account's creation date.

Scopes: user:read,user:write,user:read:admin,user:write:admin,user_profile,user_info:read

Granular Scopes: user:read:user,user:read:user:admin

Rate Limit Label: LIGHT

Responses

Status: 200 **HTTP Status Code:** `200` **OK** User object returned.
Content-Type: application/json

All of:

  • id

    string — User ID.

  • account_id

    string — User's account ID.

  • account_number

    integer, format: int64 — The user's account number.

  • cluster

    string — The user's cluster.

  • cms_user_id

    string — The user's CMS ID. Only enabled for Kaltura integration.

  • company

    string — The user's company.

  • cost_center

    string — The user's cost center.

  • created_at

    string, format: date-time — The date and time when this user's latest login type was created.

  • custom_attributes

    array — Custom attributes that have been assigned to the user.

    Items:

    • key

      string — The custom attribute's identifier.

    • name

      string — The custom attribute's name.

    • value

      string — The custom attribute's value.

  • division_ids

    array — List of division IDs the user belongs to. Currently, only a single division is supported.

    Items:

    string

  • employee_unique_id

    string — The employee's unique ID. This field only returns when * SAML single sign-on (SSO) is enabled. * The `login_type` value is `101` (SSO).

  • group_ids

    array — IDs of the web groups that the user belongs to.

    Items:

    string

  • im_group_ids

    array — IM IDs of the groups that the user belongs to.

    Items:

    string

  • jid

    string

  • job_title

    string — The user's job title.

  • language

    string — Default language for the Zoom Web Portal.

  • license_info_list

    array — Detailed license subscription information. This list is returned only for accounts with multiple subscription plans enabled that contain duplicate plans.

    Items:

    • license_option

      integer, possible values: 2, 4, 8, 16, 32, 64, 128, 33554432, 134217728, 1073741824, 536870912, 268435456, 4398046511104, 18014398509481984, 72057594037927940, 576460752303423500, 144115188075855870, 137438953472, 1099511627776, 549755813888, 274877906944, 2199023255552, 4294967296, 34359738368, 17179869184, 8589934592, 68719476736 — License option. For the `MEETING` parameter, setting the corresponding value indicates that the user is converted to a licensed user. The specific values are as follows: User's plan type. `2` - Licensed. For the `ZOOM_WORKPLACE_BUNDLE` parameter, setting the corresponding value assigns the user a Zoom Workplace series license. The specific values are as follows: The user's Zoom Workplace plan option. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom Workplace plan option for Govermnemt accounts. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus. The Zoom Workplace plan option for Education accounts. `18014398509481984` - Zoom Workplace for Education School and Campus. `72057594037927936` - Zoom Workplace for Education Enterprise Essentials. `576460752303423488` - Zoom Workplace for Education Enterprise Student. `144115188075855872` - Zoom Workplace for Education Enterprise Plus. `137438953472` - Zoom Workplace for Education School and Campus Plus with US/CA Unlimited. `1099511627776` - Zoom Workplace for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom Workplace for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom Workplace for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom Workplace for Education School and Campus Plus with Global Select. `4294967296` - Zoom Workplace for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom Workplace for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom Workplace for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom Workplace for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom Workplace for Education Enterprise Premier with Global Select.

    • license_type

      string, possible values: "MEETING", "ZOOM_WORKPLACE_BUNDLE" — License type name. The `MEETING` license is associated with the paid user type, while the `ZOOM_WORKPLACE_BUNDLE` license corresponds to the Zoom Workplace series licenses.

    • subscription_id

      string — Subscription ID with the corresponding license.

  • location

    string — The user's location.

  • login_types

    array — The user's login method. `0` - Facebook OAuth. `1` - Google OAuth. `24` - Apple OAuth. `27` - Microsoft OAuth. `97` - Mobile device. `98` - RingCentral OAuth. `99` - API user. `100` - Zoom Work email. `101` - Single Sign-On (SSO). These login methods are only available in China. `11` - Phone number. `21` - WeChat. `23` - Alipay.

    Items:

    integer, possible values: 0, 1, 11, 21, 23, 24, 27, 97, 98, 99, 100, 101

  • manager

    string, format: email — The user's manager.

  • personal_meeting_url

    string — User's personal meeting URL.

  • phone_country

    string — This field has been **deprecated** and will not be supported in the future. Use the **phone_numbers** field instead of this field. User's country for the company phone number.

  • phone_number

    string — This field has been **deprecated** and will not be supported in the future. Use the **phone_numbers** field instead of this field. The user's phone number.

  • phone_numbers

    array

    Items:

    • code

      string — The phone number's ISO country code. For example, United States phone numbers' value will be `+1`.

    • country

      string — The phone number's [country ID](/docs/api/references/abbreviations/#countries). For example, if the `number` field contains a Brazil-based number, this value is `BR`.

    • label

      string, possible values: "Mobile", "Office", "Home", "Fax" — The phone number's label. * `Mobile` * `Office` * `Home` * `Fax`

    • number

      string — The user's phone number.

    • verified

      boolean — Whether Zoom has verified the phone number.

  • pic_url

    string — The URL for user's profile picture.

  • plan_united_type

    string, possible values: "1", "2", "4", "8", "16", "32", "64", "128", "256", "512", "1024", "2048", "4096", "8192", "16384", "32768", "65536", "131072" — This field is returned if the user is enrolled in the [Zoom United](https://zoom.us/pricing/zoom-bundles) plan. * `1` - Zoom United Pro-United with US/CA Unlimited. * `2` - Zoom United Pro-United with UK/IR Unlimited. * `4` - Zoom United Pro-United with AU/NZ Unlimited. * `8` - Zoom United Pro-United with Global Select. * `16` - Zoom United Pro-United with Zoom Phone Pro. * `32` - Zoom United Biz-United with US/CA Unlimited. * `64` - Zoom United Biz-United with UK/IR Unlimited. * `128` - Zoom United Biz-United with AU/NZ Unlimited. * `256` - Zoom United Biz-United with Global Select. * `512` - Zoom United Biz-United with Zoom Phone Pro. * `1024` - Zoom United Ent-United with US/CA Unlimited. * `2048` - Zoom United Ent-United with UK/IR Unlimited. * `4096` - Zoom United Ent-United with AU/NZ Unlimited. * `8192` - Zoom United Ent-United with Global Select. * `16384` - Zoom United Ent-United with Zoom Phone Pro. * `32768` - Zoom United Pro-United with JP Unlimited. * `65536` - Zoom United Biz-United with JP Unlimited. * `131072` - Zoom United Ent-United with JP Unlimited.

  • pronouns

    string — The user's pronouns.

  • pronouns_option

    integer, possible values: 1, 2, 3 — The user's display pronouns setting. * `1` - Ask the user every time they join meetings and webinars. * `2` - Always display pronouns in meetings and webinars. * `3` - Do not display pronouns in meetings and webinars.

  • role_id

    string — Unique identifier of the user's assigned [role](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/roles).

  • status

    string, possible values: "pending", "active", "inactive" — Status of user's account.

  • use_pmi

    boolean, default: false — Displays `true` if user has enabled a [personal meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi) for instant meetings, `false` otherwise.

  • user_created_at

    string, format: date-time — The date and time when this user was created.

  • vanity_url

    string — Personal meeting room URL, if the user has one.

  • verified

    integer — Displays whether user is verified or not. `1` - Account verified. `0` - Account not verified.

  • zoom_one_type

    integer — The user's Zoom Workplace plan option. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom One plan option for Govermnemt accounts. `4` - Zoom One Enterprise. `8` - Zoom One Enterprise Plus. `16` - Zoom One Business Plus. The Zoom One plan option for Education accounts. `18014398509481984` - Zoom One for Education School and Campus. `72057594037927936` - Zoom One for Education Enterprise Essentials. `576460752303423488` - Zoom One for Education Enterprise Student. `144115188075855872` - Zoom One for Education Enterprise Plus. `137438953472` - Zoom One for Education School and Campus Plus with US/CA Unlimited. `1099511627776` - Zoom One for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom One for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom One for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom One for Education School and Campus Plus with Global Select. `4294967296` - Zoom One for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom One for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom One for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom One for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom One for Education Enterprise Premier with Global Select.

Example:

{
  "id": "zJKyaiAyTNC-MWjiWC18KQ",
  "created_at": "2018-10-31T04:32:37Z",
  "dept": "Developers",
  "email": "jchill@example.com",
  "first_name": "Jill",
  "last_client_version": "5.9.6.4993(mac)",
  "last_login_time": "2021-05-05T20:40:30Z",
  "last_name": "Chill",
  "pmi": 3542471135,
  "role_name": "Admin",
  "timezone": "Asia/Shanghai",
  "type": 1,
  "use_pmi": false,
  "display_name": "Jill Chill",
  "account_id": "q6gBJVO5TzexKYTb_I2rpg",
  "account_number": 10009239,
  "cms_user_id": "KDcuGIm1QgePTO8WbOqwIQ",
  "company": "Jill",
  "user_created_at": "2018-10-31T04:32:37Z",
  "custom_attributes": [
    {
      "key": "cbf_cywdkexrtqc73f97gd4w6g",
      "name": "A1",
      "value": "1"
    }
  ],
  "employee_unique_id": "HqDyI037Qjili1kNsSIrIg",
  "group_ids": [
    "RSMaSp8sTEGK0_oamiA2_w"
  ],
  "division_ids": [
    "xxxxxxxxxx"
  ],
  "im_group_ids": [
    "t-_-d56CSWG-7BF15LLrOw"
  ],
  "jid": "jchill@example.com",
  "job_title": "API Developer",
  "cost_center": "cost center",
  "language": "en-US",
  "location": "Paris",
  "login_types": [
    101
  ],
  "manager": "thill@example.com",
  "personal_meeting_url": "example.com",
  "phone_numbers": [
    {
      "code": "+1",
      "country": "US",
      "label": "Mobile",
      "number": "800000000",
      "verified": true
    }
  ],
  "pic_url": "example.com",
  "plan_united_type": "1",
  "pronouns": "3123",
  "pronouns_option": 1,
  "role_id": "0",
  "status": "pending",
  "vanity_url": "example.com",
  "verified": 1,
  "cluster": "us04",
  "zoom_one_type": 64,
  "license_info_list": [
    {
      "license_type": "ZOOM_WORKPLACE_BUNDLE",
      "license_option": 16,
      "subscription_id": "SUBREF-xxxxxx-xxxxxx"
    }
  ]
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `1120` <br> A valid invitation to join the Zoom account was not found for this user.<br> This error is thrown if you added a user in your account but the user did not accept the invitation on time and the invitation expired - thus making the userId invalid. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

Delete a user

  • Method: DELETE
  • Path: /users/{userId}
  • Tags: Users

Disassociate (unlink) a user or permanently delete a user.

Disassociating a user unlinks the user from the associated Zoom account and provides the user their own basic free Zoom account. The disassociated user can then purchase their own Zoom licenses. An account owner or account admin can transfer the user's meetings, webinars, and cloud recordings to another user before disassociation.

Deleting a user permanently removes the user and their data from Zoom. Users can create a new Zoom account using the same email address. An account owner or an account admin can transfer meetings, webinars, and cloud recordings to another Zoom user account before deleting.

For user-level apps, pass the me value instead of the userId parameter.

Note: This API does not support the deletion requirements of a Data Subject Access Request (DSAR). For a DSAR request, contact Zoom Support.

Scopes: user:write:admin,user:write

Granular Scopes: user:delete:user,user:delete:user:admin

Rate Limit Label: LIGHT

Responses

Status: 204 **HTTP Status Code:** `204` User deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> The transfer-to email address cannot be the same as the unlinked or deleted user's email address.<br> Unable to unlink API user(s).<br> This user has published events on Zoom Events and cannot be deleted or unlinked.<br> This user has published events on Zoom Events and you do not specify a target user to transfer data.<br> The destination user does not have a Zoom Events license and cannot receive this data.<br> The destination user does not have a $license or higher license and cannot receive this data.<br><br> <br> **Error Code:** `200` <br> Cannot delete a user out of your account. <br>Cannot delete a Zoom Rooms user. <br>Unable to delete this deactivated user. Please contact Zoom support team for more information. <br><br> <br> **Error Code:** `1000` <br> The user cannot be changed because they are a Call-queue manager or Auto-receptionist operator.<br><br> <br> **Error Code:** `1107` <br> You can not disassociate a user with managed domain.<br><br> <br> **Error Code:** `1117` <br> You can not disassociate an Admin user.<br><br> <br> **Error Code:** `1120` <br> A valid invitation to join the Zoom account was not found for this user. <br>This error is thrown if you added a user in your account but the user did not accept the invitation on time and the invitation expired - thus making the userId invalid. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId.<br> <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a user

  • Method: PATCH
  • Path: /users/{userId}
  • Tags: Users

Updates a user's Zoom profile information.

Note:
If display_name is empty, the API endpoint derives the display_name from the first_name and last_name values.

For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:write:admin,user:write

Granular Scopes: user:update:user,user:update:user:admin

Rate Limit Label: LIGHT

Request Body

Content-Type: application/json
  • about_me

    string — The user's self-introduction. Hyperlinks or HTML code not allowed in this field.

  • cms_user_id

    string — The Kaltura user ID.

  • company

    string — The user's company.

  • cost_center

    string — The user's cost center.

  • custom_attributes

    array — The user's assigned custom attributes.

    Items:

    • key

      string — The custom attribute's key.

    • name

      string — The custom attribute's name.

    • value

      string — The custom attribute's value

  • dept

    string — The user's assigned department.

  • display_name

    string — The user's display name. This value cannot contain more than ten Chinese characters.

  • division_ids

    array — List of division IDs to be updated. Currently only a single division is supported.

    Items:

    string

  • feature

    object — The information about the user's features. If the value is set to false, will remove user from Zoom Phone. All numbers and phones assigned to the users will become unassigned.

    • zoom_phone

      boolean — Whether the user has the **Zoom Phone** feature enabled.

  • first_name

    string — The user's first name. This value cannot contain more than five Chinese characters.

  • group_id

    string — This field provides the unique identifier of the group that you would like to add a [pending user](https://support.zoom.us/hc/en-us/articles/201363183-Managing-users#h_13c87a2a-ecd6-40ad-be61-a9935e660edb) to. Retrieve the value of this field from the [**List groups**](/docs/docs/api/rest/reference/user/methods/#operation/groups) API.

  • host_key

    string — The user's host key.

  • job_title

    string — The user's job title.

  • language

    string — The user's language.

  • last_name

    string — The user's last name. This value cannot contain more than five Chinese characters.

  • license_info_list

    array — A list of license information used to specify the appropriate license type, license option, and license subscription reference ID. This list is only for accounts with multiple subscription plans enabled.

    Items:

    • license_option (required)

      integer, possible values: 2, 4, 8, 16, 32, 64, 128, 33554432, 134217728, 1073741824, 536870912, 268435456, 4398046511104, 18014398509481984, 72057594037927940, 576460752303423500, 144115188075855870, 137438953472, 1099511627776, 549755813888, 274877906944, 2199023255552, 4294967296, 34359738368, 17179869184, 8589934592, 68719476736 — License option. For the `MEETING` parameter, setting the corresponding value indicates that the user is converted to a licensed user. The specific values are as follows: User's plan type. `2` - Licensed. For the `ZOOM_WORKPLACE_BUNDLE` parameter, setting the corresponding value assigns the user a Zoom Workplace series license. The specific values are as follows: The user's Zoom Workplace plan option. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom Workplace plan option for Govermnemt accounts. `4` - Zoom Workplace Enterprise. `8` - Zoom Workplace Enterprise Plus. `16` - Zoom Workplace Business Plus. The Zoom Workplace plan option for Education accounts. `18014398509481984` - Zoom Workplace for Education School and Campus. `72057594037927936` - Zoom Workplace for Education Enterprise Essentials. `576460752303423488` - Zoom Workplace for Education Enterprise Student. `144115188075855872` - Zoom Workplace for Education Enterprise Plus. `137438953472` - Zoom Workplace for Education School and Campus Plus with US/CA Unlimited. `1099511627776` - Zoom Workplace for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom Workplace for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom Workplace for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom Workplace for Education School and Campus Plus with Global Select. `4294967296` - Zoom Workplace for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom Workplace for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom Workplace for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom Workplace for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom Workplace for Education Enterprise Premier with Global Select.

    • license_type (required)

      string, possible values: "MEETING", "ZOOM_WORKPLACE_BUNDLE" — License type name. The `MEETING` license is associated with the paid user type, while the `ZOOM_WORKPLACE_BUNDLE` license corresponds to the Zoom Workplace series licenses.

    • subscription_id (required)

      string — The subscription ID associated with the corresponding license.

  • linkedin_url

    string — The user's LinkedIn link. The URL must contain `linkedin.com`.

  • location

    string — The user's location.

  • manager

    string, format: email — The user's assigned manager. To set a manager, provide the manager’s email address or display name within the same account.

  • phone_country

    string — **Note** This field has been **deprecated** and will not be supported in the future. Use the `country` field of the `phone_numbers` object to select the phone number country. The user's phone number [country ID](https://marketplace.zoom.us/docs/api-reference/other-references/abbreviation-lists#countries).

  • phone_number

    string — **Note** This field has been **deprecated** and will not be supported in the future. Instead, use the `phone_numbers` field to assign phone numbers to a user. The user's phone number. To update a phone number, you must also provide the `phone_country` field.

  • phone_numbers

    array — The information about the user's assigned phone numbers.

    Items:

  • plan_united_type

    string, possible values: "1", "2", "4", "8", "16", "32", "64", "128", "256", "512", "1024", "2048", "4096", "8192", "16384", "32768", "65536", "131072", "none" — The Zoom United type and license. * `1` - Zoom United Pro-United with US/CA Unlimited. * `2` - Zoom United Pro-United with UK/IR Unlimited. * `4` - Zoom United Pro-United with AU/NZ Unlimited. * `8` - Zoom United Pro-United with Global Select. * `16` - Zoom United Pro-United with Zoom Phone Pro. * `32` - Zoom United Biz-United with US/CA Unlimited. * `64` - Zoom United Biz-United with UK/IR Unlimited. * `128` - Zoom United Biz-United with AU/NZ Unlimited. * `256` - Zoom United Biz-United with Global Select. * `512` - Zoom United Biz-United with Zoom Phone Pro. * `1024` - Zoom United Ent-United with US/CA Unlimited. * `2048` - Zoom United Ent-United with UK/IR Unlimited. * `4096` - Zoom United Ent-United with AU/NZ Unlimited. * `8192` - Zoom United Ent-United with Global Select. * `16384` - Zoom United Ent-United with Zoom Phone Pro. * `32768` - Zoom United Pro-United with JP Unlimited. * `65536` - Zoom United Biz-United with JP Unlimited. * `131072` - Zoom United Ent-United with JP Unlimited. * `none` - Turn off Zoom United type.

  • pmi

    integer — The user's [personal meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi).

  • pronouns

    string — The user's pronouns.

  • pronouns_option

    integer, possible values: 1, 2, 3 — The user's display pronouns setting. * `1` - Ask the user every time they join meetings and webinars. * `2` - Always display pronouns in meetings and webinars. * `3` - Do not display pronouns in meetings and webinars.

  • timezone

    string — The user's [timezone](https://developers.zoom.us/docs/api/rest/other-references/abbreviation-lists/#timezones)

  • type

    integer, possible values: 1, 2, 4, 99 — The type of [user](https://support.zoom.us/hc/en-us/articles/201363173-Zoom-user-types-roles). * `1` - Basic. * `2` - Licensed. * `4` - Unassigned without Meetings Basic. * <del>`99` - None. You can only set this value if the user was created using the `ssoCreate` value for `action` parameter in the [**Create users**](/docs/api-reference/zoom-api/methods#operation/userCreate) API.</del> **Note**: If a Zoom Workplace series plan is configured as the account’s base plan, you can directly assign the corresponding Zoom Workplace license by setting type = 2.

  • use_pmi

    boolean, default: false — Whether to use a [personal meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi) for instant meetings.

  • vanity_name

    string — The user's personal meeting room name.

  • zoom_one_type

    integer, possible values: 0, 16, 32, 64, 128, 33554432, 134217728, 268435456, 536870912, 1073741824, 4398046511104, 4294967296, 8589934592, 17179869184, 34359738368, 68719476736, 137438953472, 274877906944, 549755813888, 1099511627776, 2199023255552, 18014398509481984, 72057594037927940, 144115188075855870, 576460752303423500 — The Zoom Workplace plan option. `0` - Turn off Zoom Workplace license. `16` - Zoom Workplace Business Plus with US/CA Unlimited. `32` - Zoom Workplace Business Plus with UK/IR Unlimited. `64` - Zoom Workplace Business Plus with AU/NZ Unlimited. `128` - Zoom Workplace Business Plus with Japan Unlimited. `33554432` - Zoom Workplace Business Plus with Global Select. `134217728` - Zoom Workplace Enterprise Premier with US/CA Unlimited. `1073741824` - Zoom Workplace Enterprise Premier with AU/NZ Unlimited. `536870912` - Zoom Workplace Enterprise Premier with UK/IR Unlimited. `268435456` - Zoom Workplace Enterprise Premier with Japan Unlimited. `4398046511104` - Zoom Workplace Pro Plus with US/CA Unlimited. The Zoom One plan option for Gov accounts: `0` - Turn off Zoom One license. `16` - Zoom One Business Plus. The Zoom One plan option for Education accounts: `0` - Turn off Zoom One license. `18014398509481984` - Zoom One for Education School and Campus. `72057594037927936` - Zoom One for Education Enterprise Essentials. `576460752303423488` - Zoom One for Education Enterprise Student. `144115188075855872` - Zoom One for Education Enterprise Plus. `137438953472` - Zoom One for Education School and Campus Plus with US/CA Unlimited. `1099511627776` -Zoom One for Education School and Campus Plus with AU/NZ Unlimited. `549755813888` - Zoom One for Education School and Campus Plus with UK/IR Unlimited. `274877906944` - Zoom One for Education School and Campus Plus with Japan Unlimited. `2199023255552` - Zoom One for Education School and Campus Plus with Global Select. `4294967296` - Zoom One for Education Enterprise Premier with US/CA Unlimited. `34359738368` - Zoom One for Education Enterprise Premier with AU/NZ Unlimited. `17179869184` -Zoom One for Education Enterprise Premier with UK/IR Unlimited. `8589934592` - Zoom One for Education Enterprise Premier with with Japan Unlimited. `68719476736` - Zoom One for Education Enterprise Premier with Global Select.

Example:

{
  "cms_user_id": "KDcuGIm1QgePTO8WbOqwIQ",
  "company": "Example, Inc.",
  "custom_attributes": [
    {
      "key": "cbf_cywdkexrtqc73f97gd4w6g",
      "name": "A1",
      "value": "1"
    }
  ],
  "dept": "Developers",
  "first_name": "Jill",
  "group_id": "RSMaSp8sTEGK0_oamiA2_w",
  "division_ids": [
    "xxxxxxxxxx"
  ],
  "host_key": "4692486817",
  "job_title": "Developer",
  "cost_center": "cost center",
  "language": "English",
  "last_name": "Chill",
  "location": "San Jose",
  "manager": "Tara Smith",
  "phone_numbers": [
    {
      "code": "+1",
      "country": "US",
      "label": "Mobile",
      "number": "5550100"
    }
  ],
  "pmi": 1234567890,
  "pronouns": "They/Them/Their",
  "pronouns_option": 1,
  "timezone": "America/Chicago",
  "type": 2,
  "use_pmi": false,
  "vanity_name": "My Meeting Room",
  "display_name": "Jill Chill",
  "zoom_one_type": 64,
  "plan_united_type": "1",
  "feature": {
    "zoom_phone": true
  },
  "about_me": "I'm a Zoom lover!",
  "linkedin_url": "https://www.linkedin.com/example",
  "license_info_list": [
    {
      "license_type": "ZOOM_WORKPLACE_BUNDLE",
      "license_option": 16,
      "subscription_id": "SUBREF-xxxxxx-xxxxxx"
    }
  ]
}

Responses

Status: 204 **HTTP Status Code:** `204` User updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> * A Zoom Room user cannot be changed to a free user type: $userId * A Zoom Room user cannot be changed to a no-meeting-license user type: $userId. * You cannot change PMI information for a "No Meetings License" user. * Only an account administrator can change a user's name. * Only an account administrator can change the host key. * Only an account administrator can change a Personal Meeting ID (PMI). * Only an account administrator can change a vanity name. <br> **Error Code:** `300` <br> * Your request could not be completed because the name contains an invalid word: {name} * You cannot change the user type to "Basic" because this user has an upcoming Zoom Events scheduled. * Invalid parameter: password * The value provided for "plan_united_type" parameter is invalid. Try again with a valid value. * You can't change the "type" or "plan_united_type" or "zoom_one_type" at the same time. * You can't turn off your Zoom One license now because you are having Zoom One as your basic plan type. * The `about_me` field is illegal and can't contain hyperlinks or HTML code. * The `linkedin_url` field is illegal. The URL must contain `linkedin.com`. * Your account can't set user type as On-prem. * The subscription "{subscriptionId}" you entered does not exist. Please choose a different subscription and try again. <br> **Error Code:** `1108` <br> Permission requirements to change the user type of this user were not met. <br> **Error Code:** `1109` <br> Host is not a paid user. <br> **Error Code:** `1120` <br> A valid invitation to join the Zoom account wasn't found for this user. This error happens if you add a user to your account but the user didn't accept the invitation and the invitation expired, making the `userId` invalid. <br> **Error Code:** `2034` <br> Your request to convert this user's plan type to "{0}" wasn't approved because your account has reached the permitted maximum number of "{1}" users. Purchase additional licenses or contact the Zoom support team to provision additional users in your account. <br> **Error Code:** `2033` <br> Your request to convert the user type to "Basic" was not approved because you have already reached the maximum basic user limit allowed in your account. For additional help regarding this issue, contact the Zoom Customer Support team. <br> **Error Code:** `3412` <br> * Your request to convert the user type of this "{$userType}" user to a "Basic" user was not approved at this time because your account has reached the permitted maximum number of "{$maxAllowedNumber}" Basic users. Remove existing basic user(s) from your "Users" list or the "Pending Users" list before attempting to convert a user to a Basic user. * Your request to convert the user type of a "Basic" user to a "{$userType}" user was not approved at this time because your account has reached the permitted maximum number of "{$maxAllowedNumber}" paying users. Please purchase additional licenses or remove existing paying user(s) from your "Users" list or the "Pending Users" list before attempting to convert a user to a paying user. * Your request to convert the user type of a "{$userType}" user to a "No-Meeting License" user was not approved at this time because your account has reached the permitted maximum number of "{$maxAllowedNumber}" No-Meeting License users. Remove the existing No-Meeting License user(s) from your "Users" list or the "Pending Users" list before attempting to convert a user to a No-Meeting License user. * Your request to convert the user type of this basic user to a "{$userType}" user was not approved at this time because the subscription "{$subscriptionId}" has reached the permitted maximum number of "{$maxAllowedNumber}" paying users. Please choose a different subscription and try again. <br> **Error Code:** `4100` <br> User is already taken by another user from your account. Choose another "Personal Link Name". <br> **Error Code:** `2038` <br> * Your request to convert the plan type of this user was not approved at this time because your account has reached the permitted maximum number. Please purchase additional licenses or contact the Zoom support team to provision additional users in your account. * Your request to convert the plan type of this user was not approved at this time because the subscription "{subscriptionId}" doesn’t have enough licenses available to assign. Please choose a different subscription and try again. <br> **Error Code:** `2039` <br> * You can't turn off your Zoom United license now because you don't have enough basic licenses. * You can't turn off your Zoom One license now because you don't have enough basic licenses. * No permission <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/).

List user assistants

  • Method: GET
  • Path: /users/{userId}/assistants
  • Tags: Users

List a user's assistants. For user-level apps, pass the me value instead of the userId parameter.

Assistants are users who the current user has assigned scheduling privilege. These assistants can schedule meetings on behalf of the current user, as well as manage and act as an alternative host for all meetings if the admin has enabled the co-host option on the account.

Prerequisites:

  • Current user as well as the assistant must have Licensed or an On-prem license.
  • Assistants must be under the current user's account.

Scopes: user:read,user:write,user:read:admin,user:write:admin,user_profile

Granular Scopes: user:read:list_assistants,user:read:list_assistants:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` Success.
Content-Type: application/json
  • assistants

    array — List of the user's assistants.

    Items:

    • can_manage_host_private_event

      boolean — The assistant can manage my private events.

    • email

      string — Assistant's email address.

    • id

      string — Assistant's user ID.

Example:

{
  "assistants": [
    {
      "email": "jchill@example.com",
      "id": "KDcuGIm1QgePTO8WbOqwIQ",
      "can_manage_host_private_event": true
    }
  ]
}
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId.<br> <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Add assistants

  • Method: POST
  • Path: /users/{userId}/assistants
  • Tags: Users

Assign assistants to a user.

In the request body, provide either the user's ID or the user's email address. For user-level apps, pass the me value instead of the userId parameter.

Assistants are the users to whom the current user has assigned scheduling privileges. Assistants can schedule meetings on behalf of the current user, and can also manage and act as an alternative host for all meetings if the admin has enabled the co-host option on the account.

Prerequisites:

  • The user as well as the assistant must have Licensed or an On-prem license.
  • Assistants must be under the current user's account, or the assistants' account must be in the same organization as the current user's account.

Scopes: user:write:admin,user:write

Granular Scopes: user:write:assistant,user:write:assistant:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json
  • assistants

    array — List of user's assistants.

    Items:

    • can_manage_host_private_event

      boolean — The assistant can manage my private events.

    • email

      string — Assistant's email address.

    • id

      string — Assistant's user ID.

Example:

{
  "assistants": [
    {
      "email": "jchill@example.com",
      "id": "KDcuGIm1QgePTO8WbOqwIQ",
      "can_manage_host_private_event": true
    }
  ]
}

Responses

Status: 201 **HTTP Status Code:** `201` Assistant added.
Content-Type: application/json
  • add_at

    string, format: date-time

  • ids

    string — User ID.

Example:

{
  "add_at": "2018-10-31T04:32:37Z",
  "ids": "KDcuGIm1QgePTO8WbOqwIQ"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Current account must be paid account: $userId <br> The user must either be a Licensed user or an On-prem user : $userId. <br> Can't assign scheduling privilege to yourself.<br> Can't find user $email.<br> User $email has already granted scheduling privilege.<br> The user must either be a Licensed user or an On-prem user : $email. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId.<br> <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete user assistants

  • Method: DELETE
  • Path: /users/{userId}/assistants
  • Tags: Users

Delete all of the current user's assistants. For user-level apps, pass the me value instead of the userId parameter.

Assistants are the users who the current user has assigned scheduling privilege. These assistants can schedule meeting on behalf of the current user, and manage and act as an alternative host for all meetings if the admin has enabled co-host option on the account.

Prerequisites:

  • The user as well as the assistant must have Licensed or an On-prem license.
  • Assistants must be under the current user's account.

Scopes: user:write:admin,user:write

Granular Scopes: user:delete:assistant,user:delete:assistant:admin

Rate Limit Label: Light

Responses

Status: 204 **HTTP Status Code:** `204` **No Content** Assistants deleted.
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId.<br> <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete a user assistant

  • Method: DELETE
  • Path: /users/{userId}/assistants/{assistantId}
  • Tags: Users

Delete a specific assistant of a user. For user-level apps, pass the me value instead of the userId parameter.

Assistants are the users who the current user has assigned scheduling privilege. These assistants can schedule meeting on behalf of the current user as well as manage and act as an alternative host for all meetings if the admin has enabled co-host option on the account.

Prerequisites:

  • The user as well as the assistant must have Licensed or an On-prem license.
  • Assistants must be under the current user's account.

Scopes: user:write:admin,user:write

Granular Scopes: user:delete:assistant,user:delete:assistant:admin

Rate Limit Label: Light

Responses

Status: 204 **HTTP Status Code:** `204` **OK** Assistant deleted.
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List a user's collaboration devices

  • Method: GET
  • Path: /users/{userId}/collaboration_devices
  • Tags: Users

List a user's collaboration devices. For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:read,user:write,user:read:admin,user:write:admin

Granular Scopes: user:read:list_collaboration_devices,user:read:list_collaboration_devices:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` Collaboration device list returned.
Content-Type: application/json
  • collaboration_devices

    array

    Items:

    • device_name

      string — Name of the Personal Zoom Room's device.

    • id

      string — The device's unique identifier.

    • room_name

      string — Name of the Personal Zoom Room.

    • room_user_id

      string — The device's unique identifier.

    • status

      string, possible values: "Online", "Offline" — The device's status. The value can be either `Online` or `Offline`.

  • total_records

    integer — Total number of records returned.

Example:

{
  "total_records": 30,
  "collaboration_devices": [
    {
      "id": "F1C6E9DF-429E-4FA1-85DA-AC95464F3D18",
      "device_name": "Test Computer",
      "room_name": "My Personal Zoom Room",
      "room_user_id": "HgCQF82ZS5GiQ4x_fCx0MB",
      "status": "Online"
    }
  ]
}
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId . <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get collaboration device detail

  • Method: GET
  • Path: /users/{userId}/collaboration_devices/{collaborationDeviceId}
  • Tags: Users

Get collaboration device detail. For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:read,user:write,user:read:admin,user:write:admin

Granular Scopes: user:read:collaboration_device,user:read:collaboration_device:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` Collaboration device returned.
Content-Type: application/json
  • device_name

    string — Name of the Personal Zoom Room's device.

  • id

    string — The device's unique identifier.

  • room_name

    string — Name of the Personal Zoom Room.

  • room_user_id

    string — The Zoom Room's unique identifier.

  • status

    string, possible values: "Online", "Offline" — The device's status. The value can be either `Online` or `Offline`.

Example:

{
  "id": "F1C6E9DF-429E-4FA1-85DA-AC95464F3D18",
  "device_name": "Test Computer",
  "room_name": "My Personal Zoom Room",
  "room_user_id": "HgCQF82ZS5GiQ4x_fCx0MB",
  "status": "Online"
}
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId <br> **Error Code:** `1238` <br> Collaboration Device does not exist: {0}. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a user's email

  • Method: PUT
  • Path: /users/{userId}/email
  • Tags: Users

Change a user's email address on a Zoom account that has managed domain set up. For user-level apps, pass the me value instead of the userId parameter.

  • If the Zoom account in which the user belongs has multiple managed domains, then the email to be updated must match one of the managed domains.
  • A user's email address can be changed up to 3 times in any 24 hour period.

Prerequisites:

  • Managed domain must be enabled in the account.
  • The new email address should not already exist in Zoom.

Scopes: user:write:admin,user:write

Granular Scopes: user:update:email,user:update:email:admin

Rate Limit Label: Light

Request Body

Content-Type: application/json
  • email (required)

    string, format: email — User's email. The length should be less than 128 characters.

Example:

{
  "email": "jchill@example.com"
}

Responses

Status: 204 **HTTP Status Code:** `204` **No Content** Email updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only an account administrator can change email.<br> <br> **Error Code:** `1000` <br> Admin can not change other admins email. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $email.<br> <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get meeting summary templates

  • Method: GET
  • Path: /users/{userId}/meeting_summary_templates
  • Tags: Users

Get a list of meeting summary templates.

Scopes: user:read,user:read:admin

Granular Scopes: user:read:settings,user:read:settings:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 return meeting summary template list
Content-Type: application/json

Array of:

  • description (required)

    string — summary template description

  • meeting_summary_template_id (required)

    string — summary template id

  • name (required)

    string — summary template name

Example:

[
  {
    "meeting_summary_template_id": "1e1356ad",
    "name": "General template",
    "description": "Recap and next steps"
  }
]

Get meeting template detail

  • Method: GET
  • Path: /users/{userId}/meeting_templates/{meetingTemplateId}
  • Tags: Users

Retrieve a user's meeting template. For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:read:admin,user:read

Rate Limit Label: Medium

Responses

Status: 200 **HTTP Status Code:** `200` Meeting Template returned.
Content-Type: application/json
  • id

    string — Meeting template ID.

  • name

    string — Meeting template name.

  • settings

    object — Meeting Template settings.

    • in_meeting

      object

      • allow_participants_to_rename

        boolean — If the value of this field is set to `true`, meeting participants and webinar panelists are allowed to rename themselves during a meeting or a webinar.

      • annotation

        boolean — Allow participants to use annotation tools to add information to shared screens.

      • breakout_room

        boolean — Allow the meeting host to split meeting participants into separate breakout rooms.

      • closed_captioning

        object — Information about closed captioning settings.

        • auto_transcribing

          boolean — Whether to allow live transcription service to transcribe meeting automatically.

        • enable

          boolean — Whether to allow the host to type closed captions or assign a participant or 3rd-party service to provide closed captioning.

        • save_caption

          boolean — Whether to allow participants to save closed captions or transcripts.

      • disable_screen_sharing_for_host_meetings

        boolean — Whether the **Disable desktop screen sharing for meetings you host** setting is enabled.

      • entry_exit_chime

        string, possible values: "host", "all", "none" — Play sound when participants join or leave. `host` - Heard by host only. `all` - Heard by host and all attendees. `none` - Disable.

      • feedback

        boolean — Add a **Feedback** tab to the Windows Settings or Mac Preferences dialog. Enable users to provide feedback to Zoom at the end of the meeting.

      • manual_captioning

        object — Information about manual captioning settings.

      • non_verbal_feedback

        boolean — Allow participants in a meeting to provide nonverbal feedback and express opinions by clicking on icons in the Participants panel.

      • polling

        boolean — Add 'Polls' to the meeting controls. This allows the host to survey the attendees.

      • post_meeting_feedback

        boolean — Whether to display a thumbs up or thumbs down feedback survey at the end of each meeting.

      • remote_control

        boolean — Whether to enable the [**Remote control**](https://support.zoom.us/hc/en-us/articles/201362673-Requesting-or-giving-remote-control) setting.

      • remote_support

        boolean — Allow meeting host to provide 1:1 remote support to another participant.

      • screen_sharing

        boolean — Whether to allow hosts and participants to share their screen or content during meetings.

      • whiteboard

        boolean — Allow participants to share a whiteboard that includes annotation tools.

      • who_can_share_screen

        string, possible values: "host", "all" — The type of user who can share their screen or content during meetings. * `host` - Only hosts can screen share. * `all` - Both hosts and participants can screen share.

      • who_can_share_screen_when_someone_is_sharing

        string, possible values: "host", "all" — Indicates who is allowed to start sharing screen when someone else in the meeting is sharing their screen. The value can be one of the following: `host`: Only a host can share the screen when someone else is sharing. `all`: Anyone in the meeting is allowed to start sharing their screen when someone else is sharing. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • meeting_security

      object

    • recording

      object

      • auto_recording

        string, possible values: "local", "cloud", "none" — Automatic recording: `local` - Record on local. `cloud` - Record on cloud. `none` - Disabled.

    • schedule_meeting

      object

      • host_video

        boolean — Start meetings with host video on.

      • mute_upon_entry

        boolean, default: false — Mute participants upon entry.

      • participant_video

        boolean — Start meetings with the participant video on. Participants can change this setting during the meeting.

Example:

{
  "id": "Q4COb7QVRVmO0896Ry4XHg",
  "name": "Meeting template name",
  "settings": {
    "in_meeting": {
      "entry_exit_chime": "none",
      "feedback": true,
      "polling": true,
      "post_meeting_feedback": true,
      "screen_sharing": true,
      "who_can_share_screen": "all",
      "who_can_share_screen_when_someone_is_sharing": "all",
      "disable_screen_sharing_for_host_meetings": true,
      "annotation": true,
      "whiteboard": true,
      "remote_control": true,
      "non_verbal_feedback": true,
      "allow_participants_to_rename": true,
      "breakout_room": true,
      "remote_support": true,
      "manual_captioning": {
        "auto_generated_captions": true,
        "allow_to_type": true,
        "manual_captions": true,
        "save_captions": true
      },
      "closed_captioning": {
        "auto_transcribing": true,
        "enable": true,
        "save_caption": true
      }
    },
    "recording": {
      "auto_recording": "cloud"
    },
    "schedule_meeting": {
      "host_video": true,
      "participant_video": true,
      "mute_upon_entry": false
    },
    "meeting_security": {
      "waiting_room": true
    }
  }
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a user's password

  • Method: PUT
  • Path: /users/{userId}/password
  • Tags: Users

Update the password of a user using which the user can login to Zoom. For user-level apps, pass the me value instead of the userId parameter.

After this request is processed successfully, an email notification is sent to the user saying that the password was changed.

Prerequisites:

  • Owner or admin of the Zoom account.

Scopes: user:write:admin,user:write

Granular Scopes: user:update:password,user:update:password:admin

Rate Limit Label: Medium

Request Body

Content-Type: application/json

Example:

{
  "password": "if42!LfH@"
}

Responses

Status: 204 **HTTP Status Code:** `204` **OK** Password updated.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Your new password can not match the old password.<br>This password cannot be changed because it has already been changed the maximum number of times over the past 24 hours.<br><br> <br> **Error Code:** `1117` <br> Can not update Admin's password<br><br> <br> **Error Code:** `1123` <br> Can only update password of Zoom work email account<br><br> <br> **Error Code:** `1124` <br> Minimum of 6 characters.<br> Have at least {lengthRule} characters<br><br> <br> **Error Code:** `1125` <br> Have at least 1 letter (a, b, c…)<br><br> <br> **Error Code:** `1126` <br> Have at least 1 number (1, 2, 3…)<br><br> <br> **Error Code:** `1127` <br> Have at least 1 special character (!, @, #…)<br><br> <br> **Error Code:** `1128` <br> Include both Upper case and Lower case characters<br><br> <br> **Error Code:** `1129` <br> Users cannot reuse any of the last $formerPwdCount passwords created.<br><br> <br> **Error Code:** `1130` <br> Password can't use the same character.<br><br> <br> **Error Code:** `1131` <br> Password can't use continuation character.Such as 'abcdef','123456'.<br><br> <br> **Error Code:** `1136` <br> Your password is too easy to guess. Try another one. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get user permissions

  • Method: GET
  • Path: /users/{userId}/permissions
  • Tags: Users

Get permissions that have been granted to the user. For user-level apps, pass the me value instead of the userId parameter.

Users can be assigned a set of permissions that allows them to access only the pages or information that a user needs to view or edit.

Scopes: user:read,user:write,user:read:admin,user:write:admin,user_profile

Granular Scopes: user:read:list_permissions,user:read:list_permissions:admin

Rate Limit Label: LIGHT

Responses

Status: 200 **HTTP Status Code:** `200` User permissions returned.
Content-Type: application/json

Example:

{
  "permissions": [
    "Branding:Edit"
  ]
}
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Upload a user's profile picture

  • Method: POST
  • Path: /users/{userId}/picture
  • Tags: Users

Upload a user's profile picture. For user-level apps, pass the me value instead of the userId parameter.

Provide multipart/form-data as the value of the content-type header for this request. This API supports .jpeg and .png file formats.

Scopes: user:write:admin,user:write

Granular Scopes: user:write:profile_picture,user:write:profile_picture:admin

Rate Limit Label: Medium

Request Body

Content-Type: multipart/form-data
  • pic_file (required)

    string — The file's path.

Example:

{
  "pic_file": "profile.png"
}

Responses

Status: 201 **HTTP Status Code:** `201` Picture uploaded.
Content-Type: application/json

Example:

{}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Your request was not accepted because the profile picture contains invalid or explicit content.<br> <br> **Error Code:** `200` <br> Only an account administrator can change a profile picture.<br> <br> **Error Code:** `120` <br> File is empty.<br> File size cannot exceed 2M.<br> Only jpg/jpeg or png image file can be uploaded.<br> <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete a user's profile picture

  • Method: DELETE
  • Path: /users/{userId}/picture
  • Tags: Users

Delete a user's profile picture. For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:write:admin,user:write

Rate Limit Label: Medium

Responses

Status: 204 **HTTP Status Code:** `204` No Content User picture deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Only an account administrator can change a profile picture.<br> <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get a user presence status

  • Method: GET
  • Path: /users/{userId}/presence_status
  • Tags: Users

Returns a user's current status.

Users in the Zoom desktop client and mobile apps are assigned with a presence status. The presence status displays the user's availability.

The available statuses are:

  • Away
  • Do not disturb
  • Available
  • In a calendar event
  • Presenting
  • In a Zoom meeting
  • On a call
  • Out of Office
  • Busy
  • Offline

If the presence status is Do not disturb, end_time and remaining_time properties are only visible if the user being queried is also the current user.

Scopes: user:read,user:read:admin

Granular Scopes: user:read:presence_status,user:read:presence_status:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` **OK** User Presence Status object returned.
Content-Type: application/json

One of:

  • end_time (required)

    string — The Do_Not_Disturb end date and time (UTC Time Zone).

  • remaining_time (required)

    number — The remaining time for `Do_Not_Disturb` status to end in seconds.

  • status (required)

    string, possible values: "Do_No_Disturb" — The user's presence status in the Zoom Chat client. The status has to be `Do_Not_Disturb`.

  • status (required)

    string, possible values: "Away", "Do_Not_Disturb", "Available", "In_Calendar_Event", "Presenting", "In_A_Zoom_Meeting", "On_A_Call", "Out_of_Office", "Busy" — The user's presence status in the Zoom Chat client. The status can be one of the following: `Away` `Available` `Offline` `In_A_Meeting` `In_A_Call` `In_A_Calendar_Event` `Presenting` `Out_of_Office` `Busy` `Do_Not_Disturb`

Example:

{
  "status": "Do_Not_Disturb",
  "end_time": "2024-03-27T04:00:00Z",
  "remaining_time": 60
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `5301` <br> Request to read the presence status of this user failed. <br> **Error Code:** `5411` <br> Unauthorized request. You do not have permission to get the presence status of this user. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: {userId} <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update a user's presence status

  • Method: PUT
  • Path: /users/{userId}/presence_status
  • Tags: Users

Update a user's presence status. For user-level apps, pass the me value instead of the userId parameter.

A user's status cannot be updated more than once per minute. For example, you can only submit a maximum of one update request per minute for a single user.

Users in the Zoom desktop client and mobile apps are assigned with a presence status. The presence status informs users of their contact's availability. Users can also change their own presence status to one the following:

  • Away
  • Do not disturb
  • Available
  • In a calendar event
  • Presenting
  • In a Zoom meeting
  • On a call
  • Out of Office
  • Busy

Note that a user's presence status cannot be updated via this API if the user is not logged in to the Zoom client.

Scopes: user:write,user:write:admin

Granular Scopes: user:update:presence_status,user:update:presence_status:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json

One of:

  • status (required)

    string, possible values: "Away", "Available", "In_Calendar_Event", "Presenting", "In_A_Zoom_Meeting", "On_A_Call", "Out_of_Office", "Busy" — The user's presence status. * `Away` * `Available` * `In_Calendar_Event` * `Presenting` * `In_A_Zoom_Meeting` * `On_A_Call` * `Out_of_Office` * `Busy` Users who are on Zoom Client with a version **lower than 5.3.0** can update the status from: * `Away` to `Do_Not_Disturb` * `Available` to `Do_Not_Disturb` Users who are on **Zoom Client 5.3.0 or higher** can update the status from: * `Do_Not_Disturb` to `Away` * `Do_Not_Disturb` to `Available` * `Available` to `Away` * `Away` to `Available`

  • status (required)

    string, possible values: "Do_No_Disturb" — The user's presence status. * `Do_Not_Disturb` Users who are on Zoom client with a version **lower than 5.3.0** can update the status from: * `Away` to `Do_Not_Disturb` * `Available` to `Do_Not_Disturb` Users who are on **Zoom client 5.3.0 or higher** can update the status from: * `Do_Not_Disturb` to `Away` * `Do_Not_Disturb` to `Available` * `Available` to `Away` * `Away` to `Available`

  • duration

    integer — If updating the user's status to `Do_Not_Disturb`, the duration that the status should remain as `Do_Not_Disturb`, in minutes. Duration value must be between 1 and 1440 minutes (24 hours). If duration is not set, the default value is 20 minutes.

Example:

{
  "status": "Available"
}

Responses

Status: 204 **HTTP Status Code:** `204` Status updated successfully.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `5301` <br> Request to update the presence status of this user failed. <br> **Error Code:** `5411` <br> Unauthorized request. You do not have permission to update the presence status of this user. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: {userId} <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

List user schedulers

  • Method: GET
  • Path: /users/{userId}/schedulers
  • Tags: Users

List all of a user's schedulers. For user-level apps, pass the me value instead of the userId parameter.

Schedulers in this context are users who can schedule meetings for the current user. For example, if the current user, the user whose userId was passed in the path parameter, is User A, this API's response will list all users for whom User A can schedule and manage meetings. User A is the assistant of these users, and thus has scheduling privilege for these users.

Prerequisites

  • Current user must be under the same account as the scheduler.

Scopes: user:read,user:write,user:read:admin,user:write:admin,user_profile

Granular Scopes: user:read:list_schedulers,user:read:list_schedulers:admin

Rate Limit Label: Medium

Responses

Status: 200 **HTTP Status Code:** `200` Successfully listed all schedulers of the user.
Content-Type: application/json
  • schedulers

    array — List of users for whom the current user can schedule meetings.

    Items:

    • email

      string — Email address of the scheduler.

    • id

      string — Unique Identifier (User ID) of the Scheduler.

    • pmi

      integer, format: int64 — PMI of the meeting host in long (int64) format.

Example:

{
  "schedulers": [
    {
      "email": "jchill@example.com",
      "id": "KDcuGIm1QgePTO8WbOqwIQ",
      "pmi": 3542471135
    }
  ]
}
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete user schedulers

  • Method: DELETE
  • Path: /users/{userId}/schedulers
  • Tags: Users

Delete all of a user's schedulers. For user-level apps, pass the me value instead of the userId parameter.

Schedulers are users on whose behalf the current user (assistant) can schedule meetings for. By calling this API, the current user will no longer be a scheduling assistant of any user.

Prerequisites:

  • Current user (assistant) must be under the same account as the scheduler.

Scopes: user:write:admin,user:write

Granular Scopes: user:delete:scheduler,user:delete:scheduler:admin

Rate Limit Label: Light

Responses

Status: 204 **HTTP Status Code:** `204` All schedulers deleted.
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete a scheduler

  • Method: DELETE
  • Path: /users/{userId}/schedulers/{schedulerId}
  • Tags: Users

Delete a scheduler. For user-level apps, pass the me value instead of the userId parameter.

Schedulers are users who the current user (assistant) can schedule meetings on their behalf. By calling this API, the current user will no longer be a scheduling assistant of this scheduler.

Prerequisites:

  • Current user must be under the same account as the scheduler.

Scopes: user:write:admin,user:write

Granular Scopes: user:delete:scheduler,user:delete:scheduler:admin

Rate Limit Label: Light

Responses

Status: 204 **HTTP Status Code:** `204` Scheduler deleted.
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get user settings

  • Method: GET
  • Path: /users/{userId}/settings
  • Tags: Users

Retrieve a user's settings. For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:read,user:write,user:read:admin,user:write:admin

Granular Scopes: user:read:settings,user:read:settings:admin

Rate Limit Label: MEDIUM

Responses

Status: 200 **HTTP Status Code:** `200` User settings returned.
Content-Type: application/json

One of:

  • audio_conferencing

    object — The user's audio conference settings.

  • email_notification

    object

    • alternative_host_reminder

      boolean, default: false — When an alternative host is set or removed from a meeting.

    • cancel_meeting_reminder

      boolean, default: false — When a meeting is cancelled.

    • cloud_recording_available_reminder

      boolean — Whether to notify the host when a cloud recording is available.

    • jbh_reminder

      boolean, default: false — When attendees join meeting before host.

    • recording_available_reminder_alternative_hosts

      boolean — Whether to notify any alternative hosts when a cloud recording is available.

    • recording_available_reminder_schedulers

      boolean — Whether to notify the person who scheduled the meeting or webinar for the host when a cloud recording is available.

    • schedule_for_reminder

      boolean, default: false — This setting notifies the host there is a meeting is scheduled, rescheduled, or cancelled.

  • feature

    object

    • cn_meeting

      boolean — The host meeting in China.

    • concurrent_meeting

      string, possible values: "Basic", "Plus", "None" — The user's assigned [Concurrent Meeting](https://support.zoom.us/hc/en-us/articles/206122046) type: * `Basic` * `Plus` * `None` **Note:** This feature requires a Concurrent Meeting Basic or Plus plan subscription.

    • in_meeting

      boolean — The host meeting in India.

    • large_meeting

      boolean — The large meeting feature.

    • large_meeting_capacity

      integer — The large meeting capacity. It can be 500 or 1000, depending on if the user has a large meeting capacity plan subscription or not.

    • license_info_list

      array — A list of license information used to return the user's corresponding license type, license option, and license subscription reference ID.

      Items:

      • license_option

        integer, format: int64, possible values: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 2147483648, 549755813888, 1099511627776, 2199023255552, 8796093022208, 17592186044416, 281474976710656, 4503599627370496 — License option For the parameters with **licenseType** as **ZOOM_WHITEBOARD:** `2` - Zoom Whiteboard. `65536` - Zoom Whiteboard Plus. For the parameters with **licenseType** as **ZOOM_TRANSLATED_CAPTIONS**: `2048` - Zoom Translated Captions. For the parameters with **licenseType** as **ZOOM_SCHEDULER**: `2199023255552` - Zoom Scheduler. For the parameters with **licenseType** as **ZOOM_CLIPS**: `1` - Zoom Clips Plus. For the parameters with **licenseType** as **ZOOM_VISITOR_MANAGEMENT**: `2147483648` - Zoom Visitor Management. For the parameters with **licenseType** as **ZOOM_CMK**: `131072` - Zoom Customer Managed Key. For the parameters with **licenseType** as **ZOOM_DOCS**: `281474976710656` - Zoom Docs. For the parameters with **licenseType** as **ZOOM_REVENUE_ACCELERATOR**: `1` - Zoom Revenue Accelerator. For the parameters with **licenseType** as **ZOOM_COMPLIANCE_MANAGEMENT**: `8796093022208` - Zoom Compliance Management. `17592186044416` - Zoom Compliance Management Plus. For the parameters with **licenseType** as **ZOOM_WORKFORCE_MANAGEMENT**: `549755813888` - Zoom Workforce Management. For the parameters with **licenseType** as **ZOOM_QUALITY_MANAGEMENT**: `1099511627776` - Zoom Quality Management. For the parameters with **licenseType** as **ZOOM_HEALTHCARE_CLINICAL_NOTES**: `512` - Zoom Workplace for Clinicians Unlimited. `4503599627370496` - Zoom Workplace for Clinicians - Pay Per Notes. For the parameters with **licenseType** as **ZOOM_EVENTS_NEW_SAAS**: `2` - Zoom Events Unlimited - 100 attendees. `4` - Zoom Events Unlimited - 500 attendees. `8` - Zoom Events Unlimited - 1000 attendees. `16` - Zoom Events Unlimited - 3000 attendees. `32` - Zoom Events Unlimited - 5000 attendees. `64` - Zoom Events Unlimited - 10000 attendees. `128` - Zoom Events Unlimited - 20000 attendees. `256` - Zoom Events Unlimited - 30000 attendees. `512` - Zoom Events Unlimited - 50000 attendees. For the parameters with **licenseType** as **ZOOM_EVENTS_CONSUMPTION**: `1` - Zoom Events - Pay Per Attendee. For the parameters with **licenseType** as **ZOOM_WEBINARS_PLUS**: `2048` - Zoom Webinars Plus Unlimited - 100 attendees. `4096` - Zoom Webinars Plus Unlimited - 500 attendees. `8192` - Zoom Webinars Plus Unlimited - 1000 attendees. `16384` - Zoom Webinars Plus Unlimited - 3000 attendees. `32768` - Zoom Webinars Plus Unlimited - 5000 attendees. `65536` - Zoom Webinars Plus Unlimited - 10000 attendees. `131072` - Zoom Webinars Plus Unlimited - 20000 attendees. `262144` - Zoom Webinars Plus Unlimited - 30000 attendees. `524288` - Zoom Webinars Plus Unlimited - 50000 attendees. For the parameters with **licenseType** as **ZOOM_WEBINARS_PLUS_CONSUMPTION**: `1024` - Zoom Webinars Plus - Pay Per Attendee. For the parameters with **licenseType** as **ZOOM_CUSTOM_AI_COMPANION**: `256` - Zoom Custom AI Companion. `4096` - Zoom AI Companion. For the parameters with **licenseType** as **CX_INSIGHTS_LEADER**: `1099511627776` - CX Insights Leader. For the parameters with **licenseType** as **ZOOM_ENHANCED_MEDIA**: `4503599627370496` - Zoom Enhanced Media. For the parameters with **licenseType** as **EDU_STANDARD_STUDENT**: `1152921504606846976` - Education Standard Student.

      • license_type

        string, possible values: "ZOOM_WHITEBOARD", "ZOOM_TRANSLATED_CAPTIONS", "ZOOM_SCHEDULER", "ZOOM_CLIPS", "ZOOM_VISITOR_MANAGEMENT", "ZOOM_CMK", "ZOOM_DOCS", "ZOOM_REVENUE_ACCELERATOR", "ZOOM_COMPLIANCE_MANAGEMENT", "ZOOM_WORKFORCE_MANAGEMENT", "ZOOM_QUALITY_MANAGEMENT", "ZOOM_HEALTHCARE_CLINICAL_NOTES", "ZOOM_EVENTS_NEW_SAAS", "ZOOM_EVENTS_CONSUMPTION", "ZOOM_WEBINARS_PLUS", "ZOOM_WEBINARS_PLUS_CONSUMPTION", "ZOOM_CUSTOM_AI_COMPANION", "CX_INSIGHTS", "ZOOM_ENHANCED_MEDIA", "EDU_STUDENT" — The corresponding type for the user's existing license.

      • subscription_id

        string — The subscription ID associated with the corresponding license.

    • meeting_capacity

      integer — The user's meeting capacity.

    • webinar

      boolean — The webinar feature.

    • webinar_capacity

      integer — The webinar capacity. It can be 100, 500, 1000, 3000, 5000 or 10000, depending on if the user has a webinar capacity plan subscription or not.

    • zoom_clips_plus

      boolean — Whether the user has a Zoom Clips Plus license.

    • zoom_compliance_management

      boolean — Whether the user has a Zoom Compliance Management license.

    • zoom_customer_managed_key

      boolean — Whether the user has a Zoom Customer Managed Key license.

    • zoom_docs

      boolean — Whether the user has a Zoom Docs license.

    • zoom_events

      boolean — Whether the Zoom Events feature is enabled for the user.

    • zoom_events_capacity

      integer, possible values: 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000 — The user's Zoom Events plan capacity: `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`.

    • zoom_events_pay_per_attendee

      boolean — Whether to enable the Zoom Events Pay Per Attendee feature for the user.

    • zoom_events_unlimited

      boolean — Whether to enable the Zoom Events Unlimited feature for the user.

    • zoom_events_unlimited_capacities

      array — The capacity list of user's Zoom Events Unlimited plan - `100`, `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`. The first entry is always the largest.

      Items:

      integer, possible values: 100, 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000

    • zoom_huddles

      boolean — Whether the user has a Zoom Huddles license.

    • zoom_iq_for_sales

      boolean — Whether the user has a Zoom Revenue Accelerator license. For information about a Zoom Revenue Accelerator license, contact [Zoom Support](https://support.zoom.us/hc/en-us/articles/201362003).

    • zoom_mail_calendar

      boolean — Whether the user has a Zoom Mail Calendar license.

    • zoom_phone

      boolean — The Zoom phone feature.

    • zoom_quality_management

      boolean — Whether the user has a Zoom Quality Management license.

    • zoom_revenue_accelerator

      boolean — Whether the user has a Zoom Revenue Accelerator license. For information about a Zoom Revenue Accelerator license, contact [Zoom Support](https://support.zoom.us/hc/en-us/articles/201362003).

    • zoom_scheduler

      boolean — Whether the user has a Zoom Scheduler license.

    • zoom_sessions_pay_per_attendee

      boolean — Whether to enable the Zoom Sessions Pay Per Attendee feature for the user.

    • zoom_sessions_unlimited

      boolean — Whether to enable the Zoom Sessions Unlimited feature for the user.

    • zoom_sessions_unlimited_capacities

      array — The capacity list of user's Zoom Sessions Unlimited plan - `100`, `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`. The first entry is always the largest.

      Items:

      integer, possible values: 100, 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000

    • zoom_translated_captions

      boolean — Whether the user has a Zoom Translated Captions license.

    • zoom_webinars_plus_unlimited

      boolean — Whether to enable the Zoom Webinars Plus Unlimited feature for the user.

    • zoom_webinars_plus_unlimited_capacities

      array — The capacity list of user's Zoom Webinars Plus Unlimited plan - `100`, `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`. The first entry is always the largest.

      Items:

      integer, possible values: 100, 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000

    • zoom_whiteboard

      boolean — Whether the user has a Zoom Whiteboard license.

    • zoom_whiteboard_plus

      boolean — Whether the user has a Zoom Whiteboard Plus license.

    • zoom_workforce_management

      boolean — Whether the user has a Zoom Workforce Management license.

  • general_setting

    object — General settings.

    • auto_zoom_room_proximity_connect

      boolean — Allow automatic direct sharing and connecting to Zoom Rooms using ultrasonic proximity signal.

  • in_meeting

    object

    • ai_companion_questions

      object — Allow hosts and invited participants to ask questions to AI Companion during a meeting. Questions are answered based on the conversation transcript.

      • auto_enable

        boolean — Whether to automatically allow access when the meeting starts

      • enable

        boolean — Whether to allow hosts and invited participants to ask questions to AI Companion during a meeting.

      • who_can_ask_questions

        integer, possible values: 1, 2, 3, 4, 5 — Defines who can ask questions about this meeting's transcript. * `1` - All participants and invitees. * `2` - All participants only from when they join. * `3` - Only meeting host. * `4` - Participants and invitees in our organization. * `5` - Participants in our organization only from when they join.

    • allow_host_panelists_to_use_audible_clap

      boolean — Whether to allow host and panelist to use audible clap.

    • allow_host_to_enable_focus_mode

      boolean — Allow the host to enable [**Focus Mode**](https://support.zoom.us/hc/en-us/articles/360061113751-Using-focus-mode) when scheduling a meeting. This value defaults to `null`.

    • allow_live_streaming

      boolean — Whether to allow live streaming.

    • allow_participants_chat_with

      integer, possible values: 1, 2, 3, 4 — Specify who participants can chat with: * `1` - The participant cannot use chat. * `2` - The participant can chat with the host and co-hosts only. * `3` - The participant can chat with other participants publicly. * `4` - The participant can chat with other participants publicly and privately. **Note:** This setting is only available with client versions 5.7.3 and above.

    • allow_show_zoom_windows

      boolean — This setting enables the [**Show Zoom windows during screen share**](https://support.zoom.us/hc/en-us/articles/360061383571-Showing-Zoom-windows-during-screen-share) feature.

    • allow_users_save_chats

      integer, possible values: 1, 2, 3 — This setting specifies how participants can save meeting chats: * `1` - Participants cannot save meeting chats. * `2` - Participants can only save host and co-host meeting chats. * `3` - Participants can save all meeting chats.

    • allow_users_to_delete_messages_in_meeting_chat

      boolean — If the value of this field is set to `true`, allow users to delete messages in the in-meeting chat.

    • annotation

      boolean, default: false — This setting allows participants to use annotation tools.

    • attendee_on_hold

      boolean, default: false — This setting allows host to put attendee on hold. **This field has been deprecated and is no longer supported.**

    • attention_mode_focus_mode

      boolean, default: false — Whether the [**Focus Mode**](https://support.zoom.us/hc/en-us/articles/360061113751-Using-focus-mode) feature is enabled. When enabled, this feature only displays the host and co-hosts' video and profile pictures during a meeting. This value defaults to `false`.

    • auto_saving_chat

      boolean, default: false — This setting auto saves all in-meeting chats.

    • breakout_room

      boolean, default: false — This setting allows the host to split meeting participants into separate breakout rooms.

    • breakout_room_schedule

      boolean — Whether the host can assign participants to breakout rooms when scheduling. This feature is only available in version 4.5.0 or higher.

    • chat

      boolean, default: false — This setting enables chat during meeting for all participants.

    • closed_caption

      boolean, default: false — This setting enables closed captions.

    • closed_captioning

      object — The information about the user's closed captioning settings.

      • auto_transcribing

        boolean — Whether to allow a live transcription service to transcribe meetings.

      • enable

        boolean — Whether to allow the host to type closed captions or assign a participant or 3rd-party service to provide closed captioning.

      • save_caption

        boolean — Whether to allow participants to save closed captions or transcripts.

      • third_party_captioning_service

        boolean — Whether to allow the use of an API token to integrate with 3rd-party closed captioning services.

      • view_full_transcript

        boolean — Whether to allow the viewing of full transcripts in the in-meeting side panel.

    • co_host

      boolean, default: false — This setting allows the host to add co-hosts.

    • custom_data_center_regions

      boolean — If set to `true`, you can [select data center regions](https://support.zoom.us/hc/en-us/articles/360042411451-Selecting-data-center-regions-for-hosted-meetings-and-webinars) to use for hosting your real-time meeting and webinar traffic. These regions can be provided in the `data_center_regions` field. If set to `false`, the regions cannot be customized and the default regions will be used.

    • custom_live_streaming_service

      boolean — Whether to allow custom live streaming.

    • custom_service_instructions

      string — The custom live streaming service instructions.

    • data_center_regions

      array — If the value of `custom_data_center_regions` is `true`, a comma-separated list of the following [data center regions](https://support.zoom.us/hc/en-us/articles/360059254691-Datacenter-abbreviation-list) to opt in to. * `AU` - Australia. * `LA` - Latin America. * `CA` - Canada. * `CN` - China. * `DE` - Germany. * `HK` - Hong Kong SAR. * `IN` - India. * `IE` - Ireland. * `TY` - Japan. * `MX` - Mexico. * `NL` - Netherlands. * `SG` - Singapore. * `US` - United States.

      Items:

      string, possible values: "AU", "LA", "CA", "CN", "DE", "HK", "IN", "IE", "TY", "MX", "NL", "SG", "US"

    • disable_screen_sharing_for_host_meetings

      boolean — This setting enables the **Disable desktop screen sharing for meetings you host** setting.

    • disable_screen_sharing_for_in_meeting_guests

      boolean — This setting enables the **Disable screen sharing when guests are in the meeting** setting.

    • e2e_encryption

      boolean — Zoom requires encryption for all data between the Zoom cloud, Zoom client, and Zoom Room. Require encryption for 3rd party endpoints (H323/SIP).

    • entry_exit_chime

      string, possible values: "host", "all", "none", default: "all" — This setting plays sound when participants join or leave: `host` - When host joins or leaves. `all` - When any participant joins or leaves. `none` - No join or leave sound.

    • far_end_camera_control

      boolean, default: false — This setting allows another user to take control of the camera.

    • feedback

      boolean, default: false — This setting enables option to send feedback to Zoom at the end of the meeting.

    • file_transfer

      boolean — Whether the [in-meeting file transfer](https://support.zoom.us/hc/en-us/articles/209605493-In-meeting-file-transfer) setting has been enabled for the user or not.

    • group_hd

      boolean, default: false — This setting enables group HD video in Meeting.

    • join_from_desktop

      boolean — This setting allows participants to join a meeting directly from their desktop browser. Note that the meeting experience from the desktop browser is limited.

    • join_from_mobile

      boolean — This setting allows participants to join a meeting directly from their mobile browser. Note that the meeting experience from the mobile browser is limited.

    • language_interpretation

      object — The information about the [language interpretation](https://support.zoom.us/hc/en-us/articles/360034919791-Using-Language-Interpretation-in-your-meeting-or-webinar) settings.

      • allow_participants_to_speak_in_listening_channel

        boolean — Whether to allow participants to speak in listening channel.

      • allow_up_to_25_custom_languages_when_scheduling_meetings

        boolean — Whether to allow up to 25 custom languages when scheduling meetings.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — This setting allows hosts to assign participants as interpreters who can interpret one language into another in real-time.

      • enable_language_interpretation_by_default

        boolean — Whether enable language interpretation by default.

      • languages

        array — A list of system-supported languages.

        Items:

        string, possible values: "English", "Chinese", "Japanese", "German", "French", "Russian", "Portuguese", "Spanish", "Korean"

    • live_streaming_facebook

      boolean — Whether to allow Facebook live streaming.

    • live_streaming_youtube

      boolean — Whether to allow YouTube live streaming.

    • manual_captioning

      object — The information about manual captioning settings.

    • meeting_polling

      object — The information about the account's meeting polling settings.

      • advanced_polls

        boolean — Whether to allow the host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. The host can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow host to upload an image for each question.

      • enable

        boolean — Whether to allow the host to add polls before or during a meeting.

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • meeting_question_answer

      boolean — This setting allows participants to ask questions for the host and participants to answer.

    • meeting_reactions

      boolean — This setting allows meeting participants to [communicate using the emoji reactions](https://support.zoom.us/hc/en-us/articles/115001286183-Nonverbal-feedback-and-meeting-reactions) located in the **Reactions** menu in the meeting toolbar.

    • meeting_reactions_emojis

      string, possible values: "all", "selected" — This setting enables you to choose from these meeting reaction options. * `all` - All emojis: Allow meeting participants to use any emoji available in Zoom chat as a reaction in a meeting. * `selected` - Selected emojis: Allow meeting participants to use the 6 standard meeting reaction emojis: Clapping Hands, Thumbs Up, Heart, Tears of Joy, Open Mouth, Party Popper (Tada, Celebration).

    • meeting_summary_with_ai_companion

      object — As a host, you can generate a summary. Summaries are sent after the meeting has ended based on the share options.

      • auto_enable

        boolean — Whether to turn on meeting summary automatically when meetings start

      • enable

        boolean — Whether to allow hosts to generate a summary.

      • who_will_receive_summary

        integer, possible values: 1, 2, 3, 4 — Defines who will receive a summary after this meeting. * `1` - Only meeting host. * `2` - Only meeting host, co-hosts, and alternative hosts. * `3` - Only meeting host and meeting invitees in our organization. * `4` - All meeting invitees including those outside of our organization.

    • meeting_survey

      boolean — This setting allows the host to present a survey to participants once a meeting has ended. This feature is only available in version 5.7.3 or higher.

    • non_verbal_feedback

      boolean, default: false — This setting enables non-verbal feedback through screens.

    • participants_share_simultaneously

      string, possible values: "multiple", "one" — This setting indicates how many participants can share at the same time. The value can be one of the following: `one`: Only one participant can share at a time . `multiple`: Multiple participants can share simultaneously (dual monitors recommended).

    • polling

      boolean, default: false — This setting adds polls to the meeting controls.

    • post_meeting_feedback

      boolean — Whether to display a thumbs up or thumbs down feedback survey at the end of each meeting.

    • private_chat

      boolean, default: false — This setting enables 1:1 private chat between participants during meetings.

    • record_play_voice

      boolean — This setting records and plays their own voice.

    • remote_control

      boolean, default: false — This setting enables remote control during screensharing.

    • remote_support

      boolean, default: false — This setting allows host to provide 1:1 remote support to a participant.

    • request_permission_to_unmute_participants

      boolean — Whether the [**Request permission to unmute participants**](https://support.zoom.us/hc/en-us/articles/203435537-Muting-and-unmuting-participants-in-a-meeting#h_01EGK4XFWS1SJGZ71MYGKF7260) option has been enabled for the user or not.

    • screen_sharing

      boolean — This setting allows host and participants to share their screen or content during meetings

    • share_dual_camera

      boolean, default: false — This setting shares dual camera.

    • show_a_join_from_your_browser_link

      boolean — The setting allows participants to join a meeting directly from their browser and bypass the Zoom application download process. This is useful for participants who cannot download, install, or run applications. Note that the meeting experience from the browser is limited.

    • show_meeting_control_toolbar

      boolean — This setting allows you to always show meeting controls during a meeting.

    • sign_language_interpretation

      object — This setting allows hosts to assign participants as sign language interpreters who can interpret one language into sign language in real-time. Hosts can assign interpreters when scheduling, or during the meeting itself. This feature is only available with version 5.11.3 or later.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — Whether to allow hosts to assign participants as sign language interpreters who can interpret one language into another in real-time.

      • enable_sign_language_interpretation_by_default

        boolean — Whether to enable sign language interpretation view by default in scheduler.

      • languages

        array — A list of system-supported languages.

        Items:

        string, possible values: "American", "Chinese", "French", "German", "Japanese", "Russian", "Brazilian", "Spanish", "Mexican", "British"

    • slide_control

      boolean — This setting allows the person sharing during a presentation to allow others to control the slide presentation. This feature is only available in version 5.8.3 or higher.

    • transfer_meetings_between_devices

      boolean — Users can move to a new device without leaving the meeting they're in.

    • unchecked_data_center_regions

      array — If the value of `custom_data_center_regions` is `true`, a comma-separated list of the following [data center regions](https://support.zoom.us/hc/en-us/articles/360059254691-Datacenter-abbreviation-list) to **not** opt in to: * `EU` - Europe. * `HK` - Hong Kong. * `AU` - Australia. * `IN` - India. * `LA` - Latin America. * `TY` - Tokyo. * `CN` - China. * `US` - United States. * `CA` - Canada.

      Items:

      string, possible values: "EU", "HK", "AU", "IN", "TY", "CN", "US", "CA", "DE", "NL", "LA"

    • virtual_background

      boolean, default: false — This setting enables virtual background.

    • virtual_background_settings

      object — The settings to manage virtual background.

      • allow_upload_custom

        boolean — This setting allows the user to upload custom backgrounds.

      • allow_videos

        boolean — This setting allows the use of videos for virtual backgrounds.

      • enable

        boolean — This setting enables virtual background.

      • files

        array

        Items:

        • id

          string — The unique identifier of the file.

        • is_default

          boolean — Whether or not this file is the default virtual background file.

        • name

          string — The file name.

        • size

          integer — The file size.

        • type

          string — The file type.

    • waiting_room

      boolean, default: false — This setting enables the waiting room. If enabled, attendees can only join after host approves.

    • webinar_chat

      object

      • allow_attendees_chat_with

        integer, possible values: 1, 2, 3 — This setting indicates who webinar attendees can chat with. * `1` - No one. * `2` - Host and all panelists. * `3` - Everyone.

      • allow_auto_save_local_chat_file

        boolean — Automatically saves chat messages to a local file on the host's computer when the webinar ends.

      • allow_panelists_chat_with

        integer, possible values: 1, 2 — This setting indicates who the webinar panelists can chat with. * `1` - Host and all panelists. * `2` - Everyone.

      • allow_panelists_send_direct_message

        boolean — This setting allows webinar panelists to send direct messages to other panelists.

      • allow_users_save_chats

        integer, possible values: 0, 1, 2 — This setting indicates how webinar attendees can save chats. * `0` - Attendees cannot save chats. * `1` - Attendees can only save host and panelist chats. * `2` - Attendees can save all chats.

      • default_attendees_chat_with

        integer, possible values: 1, 2 — By default, it indicates who the webinar attendees can chat with. * `1` - Host and all panelists. * `2` - Everyone.

      • enable

        boolean — This setting allows the webinar participants to send chat messages.

    • webinar_group_hd

      boolean, default: false — This setting enables group HD video in Webinar.

    • webinar_live_streaming

      object

      • custom_service_instructions

        string — The specific instructions to allow your account's meeting hosts to configure a custom live stream.

      • enable

        boolean — Whether webinar live streaming is enabled.

      • live_streaming_reminder

        boolean — Whether to notify users to watch the live stream. This does not apply to custom RTMP (real-time messaging protocol).

      • live_streaming_service

        array — The available live streaming services: * `facebook` * `workplace_by_facebook` * `youtube` * `custom_live_streaming_service`

        Items:

        string, possible values: "facebook", "workplace_by_facebook", "youtube", "custom_live_streaming_service"

    • webinar_polling

      object — The information about the user's webinar polling settings.

      • advanced_polls

        boolean — This setting allows the host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. Hosts can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow host to upload an image for each question.

      • enable

        boolean — This setting allows the host to add polls before or during a webinar.

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • webinar_reactions

      boolean — You can set this field to true to use [webinar reactions](https://support.zoom.us/hc/en-us/articles/4803536268429).

    • webinar_survey

      boolean — This setting allows the host to present surveys to attendees once a webinar has ended.

    • whiteboard

      boolean — Whether to enable the [**Zoom Whiteboard**](https://support.zoom.us/hc/en-us/articles/4410916881421) feature.

    • who_can_share_screen

      string, possible values: "host", "all" — This setting indicates who can share their screen or content during meetings. The value can be one of the following: `host`: Only host can share the screen. `all`: Both hosts and attendees can share their screen during meetings. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • who_can_share_screen_when_someone_is_sharing

      string, possible values: "host", "all" — This setting indicates who is allowed to start sharing screen when someone else in the meeting is sharing their screen. The value can be one of the following: `host`: Only a host can share the screen when someone else is sharing. `all`: Anyone in the meeting is allowed to start sharing their screen when someone else is sharing. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • workplace_by_facebook

      boolean — Whether to allow Workplace by Facebook live streaming.

  • profile

    object

  • recording

    object

    • ask_host_to_confirm_disclaimer

      boolean — This setting asks the host to confirm the disclaimer.

    • ask_participants_to_consent_disclaimer

      boolean — This field can be used if `recording_disclaimer` is set to true. This field indicates whether or not you would like to ask participants for consent when a recording starts. The value can be one of the following: * `true`: Ask participants for consent when a recording starts. * `false`: Do not ask participants for consent when a recording starts.

    • auto_delete_cmr

      boolean, default: false — The auto delete cloud recordings setting.

    • auto_delete_cmr_days

      integer, possible values: 30, 60, 90, 120 — When the `auto_delete_cmr` value is `true`, this value is the number of days before the auto-deletion of cloud recordings. * `30` - 30 days. * `60` - 60 days. * `90` - 90 days. * `120` - 120 days.

    • auto_recording

      string, possible values: "local", "cloud", "none", default: "local" — The automatic recording: `local` - Record on local. `cloud` - Record on cloud. `none` - Disabled.

    • cloud_recording

      boolean, default: false — The cloud recording.

    • display_participant_name

      boolean — This setting displays the participants' names in the recording.

    • host_pause_stop_recording

      boolean, default: false — The host can pause or stop the auto recording in the cloud.

    • ip_address_access_control

      object — This setting allows the cloud recording access only from specific IP address ranges.

      • enable

        boolean — If set to `true`, the cloud recordings of this account can only be accessed by the IP addresses defined in the `ip_addresses_or_ranges` property.

      • ip_addresses_or_ranges

        string — The IP addresses or ranges that have access to the cloud recordings. Separate multiple IP ranges with comma. Use n.n.n.n, n.n.n.n/n or n.n.n.n - n.n.n.n syntax where n is a number. Example: `46.33.24.184, 48.99.100.2/25` or `200.181.108.17 - 220.181.108.157`

    • local_recording

      boolean — The local recording.

    • optimize_recording_for_3rd_party_video_editor

      boolean — This setting optimizes recordings for a third-party video editor. This may increase the file size and the time it takes to generate recording files.

    • record_audio_file

      boolean, default: false — This setting records one audio file for all participants.

    • record_files_separately

      object — The account's [**Record active speaker, gallery view and shared screen separately**](https://support.zoom.us/hc/en-us/articles/360060316092-Changing-basic-and-advanced-cloud-recording-settings#h_01F4CYJTCTXNS2MXH00W9EFG6R) settings.

      • active_speaker

        boolean — This setting records the active speaker only.

      • gallery_view

        boolean — This setting records the gallery view only.

      • shared_screen

        boolean — This setting records the shared screen only.

    • record_gallery_view

      boolean, default: false — This setting records the gallery view.

    • record_speaker_view

      boolean, default: false — This setting records the active speaker view.

    • recording_audio_transcript

      boolean — The audio transcript.

    • recording_disclaimer

      boolean — The setting shows a disclaimer to participants before a recording starts This field has been deprecated. The replacement field is recording_notification_for_zoom_client.

    • recording_highlight

      boolean — This setting enables the [recording highlights](https://support.zoom.us/hc/en-us/articles/360060802432) feature.

    • recording_notification_for_zoom_client

      object — setting name: Recording notifications - Zoom clients

      • ask_host_to_confirm

        boolean — Child setting name is [Ask host to confirm before starting a recording], the value is option name you selected

      • disclaimer_to_participants

        string — Child setting name is [Show a disclaimer to participants when a recording starts], the value is option name you selected.

      • play_voice_prompt

        string — Child setting name is [Play voice prompt for], the value is option name you selected.

    • recording_password_requirement

      object — This object represents the minimum passcode requirements set for recordings via Account Recording Settings.

      • have_letter

        boolean — The passcode must contain at least one alphabetical letter (a, b, c..).

      • have_number

        boolean — The passcode must contain at least one number(1, 2, 3..).

      • have_special_character

        boolean — The passcode must contain at least one special character(!, @, #..).

      • length

        integer — The minimum required length for the passcode.

      • only_allow_numeric

        boolean — The passcode must contain only numeric characters.

    • recording_thumbnails

      boolean — This setting records thumbnails of the presenter when they are sharing their screen.

    • save_chat_text

      boolean, default: false — This setting saves chat text from the meeting.

    • save_close_caption

      boolean — This setting saves [closed captions](https://support.zoom.us/hc/en-us/articles/207279736) as a VTT (Video Track Text) file.

    • save_panelist_chat

      boolean — This setting saves the panelist chat to the recording. This setting also saves messages sent by panelists during a webinar to either all panelists or all panelists and attendees to the recording.

    • save_poll_results

      boolean — This setting saves poll results shared during the meeting or webinar. It also includes poll results shared during the meeting or webinar.

    • show_timestamp

      boolean, default: false — This setting shows the timestamp on the video.

    • smart_recording

      object — By selecting this option, your recording will have meeting smart chapters, and next steps. You are directing Zoom to access, process, and use your account's recording data for the purpose of analysis and insights.

      • create_next_steps

        boolean — By selecting this option, there will be a summary of actions to take after the recorded meeting.

      • create_recording_highlights

        boolean — By selecting this option, the meeting details in the audio transcript will be highlighted. Hosts can modify highlighted sections and generate a video summary (highlighted sections may have a 3-second offset) based on these sections. The summary is for informational purposes only and may not be complete.

      • create_smart_chapters

        boolean — By selecting this option, your recording will have chapters with overview. Hosts can edit the chapters.

  • schedule_meeting

    object

    • audio_type

      string, possible values: "both", "telephony", "voip", "thirdParty", default: "voip" — This setting determines how participants can join the audio portion of the meeting: `both` - Telephony and VoIP. `telephony` - Audio PSTN telephony only. `voip` - VoIP only. `thirdParty` - Third party audio conference.

    • continuous_meeting_chat

      object — Information about the **Enable continuous meeting chat** feature.

      • auto_add_invited_external_users

        boolean — Whether to enable the **Automatically add invited external users** setting.

      • can_add_external_users

        boolean — Whether to enable the **External users can be added** setting.

      • enable

        boolean — Whether to enable the **Enable continuous meeting chat** setting.

      • support_instant_meetings

        boolean — Whether to enable the **Enable continuous meeting chat** setting for instant meetings.

      • support_scheduled_meetings

        boolean — Whether to enable the **Enable continuous meeting chat** setting for scheduled meetings.

    • default_password_for_scheduled_meetings

      string — The passcode for already scheduled meetings

    • embed_password_in_join_link

      boolean — This setting encrypts the meeting passcode and includes it in the join meeting link to allow participants to join with just one click without having to enter the passcode.

    • force_pmi_jbh_password

      boolean — This setting requires a passcode for personal meetings if attendees can join before host.

    • host_video

      boolean — This setting starts meetings with host video on.

    • join_before_host

      boolean — This setting joins the meeting before host arrives.

    • meeting_password_requirement

      object — The account wide meeting or webinar [passcode requirements](https://support.zoom.us/hc/en-us/articles/360033559832-Meeting-and-webinar-passwords#h_a427384b-e383-4f80-864d-794bf0a37604).

      • consecutive_characters_length

        integer, possible values: 0, 4, 5, 6, 7, 8

      • have_letter

        boolean — The passcode must contain at least 1 letter (such as a,b,c...).

      • have_number

        boolean — The passcode must contain at least 1 number (such as 1,2,3...).

      • have_special_character

        boolean — The passcode must have at least one special character (!,@,#...).

      • have_upper_and_lower_characters

        boolean — The passcode must include both uppercase and lowercase characters.

      • length

        integer — The minimum length that the meeting/webinar passcode must have.

      • only_allow_numeric

        boolean — The passcode must only contain numbers and no other characters.

      • weak_enhance_detection

        boolean — This setting informs users if the provided passcode is weak.

    • participants_video

      boolean — This setting starts meetings with participants video on.

    • personal_meeting

      boolean — The personal meeting setting. `true` - Indicates that the **Enable [Personal Meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi)** setting is turned on. Users can choose to use a PMI for their meetings. `false` - Indicates that the **Enable Personal Meeting ID** setting is [turned off](https://support.zoom.us/hc/en-us/articles/201362843-Personal-meeting-ID-PMI-and-personal-link#h_aa0335c8-3b06-41bc-bc1f-a8b84ef17f2a). If this setting is disabled, meetings that were scheduled with PMI will be invalid. Scheduled meetings will need to be manually updated. For Zoom Phone only:If a user has been assigned a desk phone, **Elevate to Zoom Meeting** on desk phone will be disabled.

    • pmi_password

      string — The PMI passcode.

    • pstn_password_protected

      boolean — This setting generates and requires a passcode for participants who join by phone.

    • require_password_for_instant_meetings

      boolean — This setting requires a passcode for instant meetings. If you use PMI for your instant meetings, this option will be disabled. This setting is always enabled for free accounts and Pro accounts with a single host and cannot be modified for these accounts.

    • require_password_for_pmi_meetings

      string, possible values: "jbh_only", "all", "none" — This setting requires a passcode for the Personal Meeting ID (PMI). This setting is always enabled for free accounts and Pro accounts with a single host and cannot be modified for these accounts.

    • require_password_for_scheduled_meetings

      boolean — This setting requires a passcode for meetings which have already been scheduled.

    • require_password_for_scheduling_new_meetings

      boolean — This setting requires a passcode when scheduling new meetings.This setting is always enabled for free accounts and Pro accounts with a single host and cannot be modified for these accounts.

    • use_pmi_for_instant_meetings

      boolean — This setting uses a [Personal Meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi) when starting an instant meeting.

    • use_pmi_for_scheduled_meetings

      boolean — The usser can use a [Personal Meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi) when scheduling a meeting.

  • telephony

    object — User Settings: Telephony.

    • audio_conference_info

      string, default: "" — The third-party audio conference info.

    • show_international_numbers_link

      boolean — This setting shows the international numbers link on the invitation email.

    • telephony_regions

      object — This setting indicates where most of the participants call into or call from during a meeting.

      • allowed_values

        array — The telephony region options provided by Zoom to select from.

        Items:

        string

      • selection_values

        string — The account's selected telephony regions that indicate where most participants call into or call from during a meeting.

    • third_party_audio

      boolean — The third party audio conference.

  • tsp

    object — Account Settings: TSP.

    • call_out

      boolean — The call out.

    • call_out_countries

      array — The call out by countries or regions.

      Items:

    • global_dial_in_countries

      object — The user's **Global Dial-in Countries/Regions** settings.

      • allowed_countries

        array — The list of all available countries/regions that can be selected for displaying dial-in numbers in the meeting invitation.

        Items:

        • code

          string — The code of the country or region.

        • name

          string — The name of the country or region.

      • selected_countries

        array — The list of selected countries/regions whose dial-in numbers will be listed in the email invitation. You can adjust the order that the dial-in numbers appear in the email invitation.

        Items:

        • code

          string — The code of the country or region.

        • name

          string — The name of the country or region.

    • show_international_numbers_link

      boolean — This setting shows the international numbers link on the invitation email.

  • whiteboard

    object — Account settings - Whiteboard.

    • in_meeting_advanced_whiteboard

      boolean — This setting is enables an in-meeting whiteboard

    • out_meeting_advanced_whiteboard

      boolean — This setting is enables an out-of-meeting whiteboard.

  • authentication_options

    object

    • meeting_authentication

      object — The user's [meeting authentication settings](https://support.zoom.us/hc/en-us/articles/360037117472).

      • allow_authentication_exception

        boolean — Whether the [**Allow authentication exception**](https://support.zoom.us/hc/en-us/articles/360037117472#h_01F13A9N1FQFNVESC9C21NRHXY) setting is enabled. This lets hosts invite users who can bypass authentication.

      • authentication_options

        array — The user's [**Meeting Authentication Options**](https://support.zoom.us/hc/en-us/articles/360060549492-Allowing-only-authenticated-users-in-meetings#h_01F51KGPWJNQBDMFSJ3ZJQ4AA2) settings.

        Items:

        • default_option

          boolean — Whether the authentication option is the default authentication option.

        • domains

          string — A comma-separated list of approved authentication domains.

        • id

          string — The authentication option's ID.

        • name

          string — The authentication option's name.

        • type

          string, possible values: "enforce_login", "enforce_login_with_domains", "enforce_login_with_same_account" — The authentication type. * `enforce_login` - Only users logged in to Zoom can join meetings. * `enforce_login_with_domains` - Only users from specific domains can join meetings. The list of domains is defined in the `domains` field. * `enforce_login_with_same_account` - Only the Zoom account's users can join meetings.

        • visible

          boolean — Whether the authentication option is visible.

      • meeting_authentication

        boolean — Whether only authenticated users can join meetings.

    • recording_authentication

      object — The user's recording authentication settings.

      • authentication_options

        array — The user's authentication options.

        Items:

        • default_option

          boolean — Whether the authentication option is the default authentication option.

        • domains

          string — A comma-separated list of approved authentication domains.

        • id

          string — The authentication option's ID.

        • name

          string — The authentication option's name.

        • type

          string, possible values: "enforce_login", "enforce_login_with_domains", "internally" — The authentication type. * `enforce_login` - Only users logged in to Zoom can view the recordings. * `enforce_login_with_domains` - Only users from specific domains can view the recordings. The list of domains is defined in the `domains` field. * `internally` - Only the Zoom account's users can view the recordings.

        • visible

          boolean — Whether the authentication option is visible.

      • recording_authentication

        boolean — Whether only authenticated users can view cloud recordings.

One of:

  • allow_authentication_exception

    boolean — Whether the [**Allow authentication exception**](https://support.zoom.us/hc/en-us/articles/360037117472#h_01F13A9N1FQFNVESC9C21NRHXY) setting is enabled. This lets hosts invite users who can bypass authentication.

  • authentication_options

    array — The meeting authentication options

    Items:

    • default_option

      boolean — The authentication default option.

    • domains

      string — The authentication domains.

    • id

      string — The authentication ID.

    • name

      string — The authentication name.

    • type

      string, possible values: "enforce_login", "enforce_login_with_same_account", "enforce_login_with_domains" — The authentication type. Specify one of the following authentication types for the authentication profile: * `enforce_login`: This option allows any users to join the meeting or webinar, as long as they are signed into their Zoom account. * `enforce_login_with_domains`: This option, allows you to specify a rule so that only those Zoom users whose email addresses contain a certain domain, can join the meeting or webinar. You can either add multiple domains using a comma in between and/or use a wildcard for listing domains. * `enforce_login_with_same_account`: This option allows users to join the meeting or webinar with the same Zoom account.

    • visible

      boolean — This setting indicates if the authentication is visible.

  • meeting_authentication

    boolean — Only authenticated users can join meetings

  • authentication_options

    array — The authentication options.

    Items:

    • default_option

      boolean — The authentication default option.

    • domains

      string — The authentication domains.

    • id

      string — The authentication ID.

    • name

      string — The name of the authentication.

    • type

      string, possible values: "internally", "enforce_login", "enforce_login_with_domains" — The type of authentication.

    • visible

      boolean — The authentication is visible.

  • recording_authentication

    boolean — Only authenticated users can view cloud recordings

  • meeting_security

    object

    • auto_security

      boolean — Whether all meetings must be secured with at least one security option. This setting can only be disabled by Enterprise, ISV, Business (with more than 100 licenses), and Education accounts.

    • block_user_domain

      boolean — Whether users in specific domains are blocked from joining meetings and webinars.

    • block_user_domain_list

      array — The blocked domains.

      Items:

      string

    • embed_password_in_join_link

      boolean — Whether the meeting passcode is encrypted and included in the invitation link. The provided link will allow participants to join the meeting without having to enter the passcode.

    • encryption_type

      string, possible values: "enhanced_encryption", "e2ee" — The type of encryption used when starting a meeting: * `enhanced_encryption` - Enhanced encryption. Encryption data is stored in the cloud. * `e2ee` - End-to-end encryption. The encryption key is stored on the local device and cannot be obtained by anyone else. Enabling E2EE also [**disables** certain features](https://support.zoom.us/hc/en-us/articles/360048660871), such as cloud recording, live streaming, and allowing participants to join before the host.

    • end_to_end_encrypted_meetings

      boolean — Whether end-to-end encryption is enabled for meetings.

    • meeting_password

      boolean — Whether all instant and scheduled meetings that users can join via client or Zoom Rooms systems are passcode-protected. [Personal Meeting ID (PMI)](https://support.zoom.us/hc/en-us/articles/203276937) meetings are **not** included in this setting.

    • meeting_password_requirement

      object — The information about the meeting and webinar [passcode requirements](https://support.zoom.us/hc/en-us/articles/360033559832-Meeting-and-webinar-passwords#h_a427384b-e383-4f80-864d-794bf0a37604).

      • consecutive_characters_length

        integer, possible values: 0, 4, 5, 6, 7, 8 — The maximum length of consecutive characters (for example, `abcdef`) allowed in a passcode: * `4` through `8` - The maximum consecutive characters length. The length is `n` minus `1`, where `n` is the value. For example, if the value is `4`, there can only be a maximum of `3` consecutive characters in a passcode (for example, `abc1x@8fdh`). * `0` - No consecutive character restriction.

      • have_letter

        boolean — Whether passcodes must contain at least one letter character.

      • have_number

        boolean — Whether passcodes must contain at least one numeric character.

      • have_special_character

        boolean — Whether passcodes must contain at least one special character. For example, `!`, `@`, and/or `#` characters.

      • have_upper_and_lower_characters

        boolean — Whether passcodes must include uppercase and lowercase characters.

      • length

        integer — The minimum passcode length.

      • only_allow_numeric

        boolean — Whether passcodes must contain **only** numeric characters.

      • weak_enhance_detection

        boolean — Whether users are informed when the provided passcode is weak.

    • only_authenticated_can_join_from_webclient

      boolean — Whether to specify that only authenticated users can join the meeting from the web client.

    • phone_password

      boolean — Whether passcodes are required for participants joining by phone. If enabled and the meeting is passcode-protected, a numeric passcode is required for participants to join by phone. For meetings with alphanumeric passcodes, a numeric passcode will be generated.

    • pmi_password

      boolean — Whether all Personal Meeting ID (PMI) meetings that users can join via client or Zoom Rooms systems are passcode-protected.

    • require_password_for_scheduled_meeting

      boolean — Whether passcodes are required for meetings that have already been scheduled.

    • require_password_for_scheduled_webinar

      boolean — Whether passcodes are required for webinars that have already been scheduled.

    • waiting_room

      boolean — Whether participants are placed in the [**Waiting Room**](https://support.zoom.us/hc/en-us/articles/115000332726-Waiting-Room) when they join a meeting. If the **Waiting Room** feature is enabled, the [**Allow participants to join before host**](https://support.zoom.us/hc/en-us/articles/202828525-Allow-participants-to-join-before-host) setting is automatically disabled.

    • waiting_room_settings

      object — The information about the Waiting Room settings.

      • participants_to_place_in_waiting_room

        integer, possible values: 0, 1, 2 — The type of participants to be admitted to the Waiting Room: * `0` - All attendees. * `1` - Users who are not in your account. * `2` - Users who are not in your account and are not part of your [allowed domains list](https://support.zoom.us/hc/en-us/articles/360037117472-Configuring-authentication-profiles#h_e3cf0d5f-eec7-4c2a-ad29-ef2a5079a7da).

      • users_who_can_admit_participants_from_waiting_room

        integer, possible values: 0, 1 — The users who can admit participants from the Waiting Room: * `0` - Host and co-hosts only. * `1` - Host, co-hosts, and anyone who bypassed the Waiting Room if the host and co-hosts are not present.

      • whitelisted_domains_for_waiting_room

        string — If the `participants_to_place_in_waiting_room` field is `2`, a comma-separated list of the domains that can bypass the Waiting Room (`example.com,example2.com`).

    • webinar_password

      boolean — Whether to generate a passcode when scheduling webinars. Participants must use the generated passcode to join the scheduled webinar.

Example:

{
  "audio_conferencing": {
    "toll_free_and_fee_based_toll_call": {
      "allow_webinar_attendees_dial": true,
      "enable": true,
      "numbers": [
        {
          "code": "86",
          "country_code": "CN",
          "country_name": "China",
          "display_number": "+86 777 777 77",
          "number": "777 777 77"
        }
      ]
    },
    "toll_call": {
      "enable": true,
      "numbers": [
        {
          "code": "86",
          "country_code": "CN",
          "country_name": "China",
          "display_number": "+86 777 777 77",
          "number": "777 777 77"
        }
      ]
    },
    "call_me_and_invite_by_phone": {
      "enable": true,
      "require_press_1_for_call_me": "auto",
      "allow_webinar_attendees_call_me": true,
      "call_out_countries": {
        "allowed_countries": [
          {
            "code": "CN",
            "name": "China"
          }
        ],
        "selected_countries": [
          {
            "code": "CN",
            "name": "China"
          }
        ]
      }
    },
    "personal_audio_conference": true,
    "participant_phone_masking": {
      "enable": true,
      "masking_type": "mask_default"
    },
    "global_dial_in_countries": {
      "allowed_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ],
      "selected_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ],
      "include_toll_free": true
    }
  },
  "email_notification": {
    "alternative_host_reminder": true,
    "cancel_meeting_reminder": true,
    "cloud_recording_available_reminder": true,
    "jbh_reminder": true,
    "recording_available_reminder_alternative_hosts": true,
    "recording_available_reminder_schedulers": true,
    "schedule_for_reminder": true
  },
  "feature": {
    "concurrent_meeting": "Basic",
    "large_meeting": true,
    "large_meeting_capacity": 500,
    "meeting_capacity": 500,
    "webinar": true,
    "webinar_capacity": 500,
    "zoom_events": true,
    "zoom_events_capacity": 500,
    "zoom_events_unlimited": true,
    "zoom_events_unlimited_capacities": [
      500,
      100
    ],
    "zoom_events_pay_per_attendee": true,
    "zoom_sessions_pay_per_attendee": true,
    "zoom_phone": true,
    "zoom_revenue_accelerator": false,
    "zoom_whiteboard": false,
    "zoom_whiteboard_plus": false,
    "zoom_translated_captions": false,
    "zoom_customer_managed_key": false,
    "zoom_quality_management": false,
    "zoom_workforce_management": false,
    "zoom_scheduler": false,
    "zoom_clips_plus": false,
    "zoom_mail_calendar": false,
    "zoom_compliance_management": false,
    "zoom_docs": false,
    "license_info_list": [
      {
        "license_type": "ZOOM_WHITEBOARD",
        "license_option": 2,
        "subscription_id": "SUBREF-xxxxxx-xxxxxx"
      }
    ],
    "zoom_webinars_plus_unlimited_capacities": [
      100,
      500
    ],
    "zoom_webinars_plus_unlimited": true
  },
  "in_meeting": {
    "allow_host_to_enable_focus_mode": true,
    "allow_users_to_delete_messages_in_meeting_chat": true,
    "allow_live_streaming": true,
    "post_meeting_feedback": true,
    "whiteboard": true,
    "allow_participants_chat_with": 1,
    "allow_users_save_chats": 1,
    "annotation": true,
    "attention_mode_focus_mode": true,
    "auto_saving_chat": true,
    "breakout_room": true,
    "breakout_room_schedule": true,
    "chat": true,
    "meeting_question_answer": true,
    "closed_caption": true,
    "closed_captioning": {
      "auto_transcribing": true,
      "enable": true,
      "save_caption": true,
      "third_party_captioning_service": true,
      "view_full_transcript": true
    },
    "co_host": true,
    "custom_data_center_regions": true,
    "custom_live_streaming_service": true,
    "custom_service_instructions": "The custom live streaming service instructions",
    "data_center_regions": [
      "AU"
    ],
    "disable_screen_sharing_for_host_meetings": true,
    "disable_screen_sharing_for_in_meeting_guests": true,
    "e2e_encryption": true,
    "entry_exit_chime": "all",
    "far_end_camera_control": true,
    "feedback": true,
    "file_transfer": true,
    "group_hd": true,
    "webinar_group_hd": true,
    "join_from_desktop": true,
    "join_from_mobile": true,
    "language_interpretation": {
      "custom_languages": [
        "English"
      ],
      "enable_language_interpretation_by_default": true,
      "allow_participants_to_speak_in_listening_channel": true,
      "allow_up_to_25_custom_languages_when_scheduling_meetings": true,
      "enable": true,
      "languages": [
        "English"
      ]
    },
    "sign_language_interpretation": {
      "enable": true,
      "enable_sign_language_interpretation_by_default": true,
      "languages": [
        "American"
      ],
      "custom_languages": [
        "Language1"
      ]
    },
    "live_streaming_facebook": true,
    "live_streaming_youtube": true,
    "manual_captioning": {
      "allow_to_type": true,
      "auto_generated_captions": true,
      "full_transcript": true,
      "manual_captions": true,
      "save_captions": true,
      "third_party_captioning_service": true
    },
    "meeting_reactions": true,
    "meeting_reactions_emojis": "all",
    "allow_host_panelists_to_use_audible_clap": true,
    "webinar_reactions": true,
    "meeting_survey": true,
    "non_verbal_feedback": true,
    "polling": true,
    "private_chat": true,
    "record_play_voice": true,
    "remote_control": true,
    "remote_support": true,
    "request_permission_to_unmute_participants": true,
    "screen_sharing": true,
    "show_a_join_from_your_browser_link": true,
    "show_meeting_control_toolbar": true,
    "slide_control": true,
    "unchecked_data_center_regions": [
      "US"
    ],
    "virtual_background": true,
    "virtual_background_settings": {
      "allow_upload_custom": true,
      "allow_videos": true,
      "enable": true,
      "files": [
        {
          "id": "sdv34sa0jp-h80y98GBU",
          "is_default": true,
          "name": "example.png",
          "size": 1342,
          "type": "image"
        }
      ]
    },
    "waiting_room": true,
    "webinar_chat": {
      "allow_attendees_chat_with": 2,
      "allow_auto_save_local_chat_file": true,
      "allow_panelists_chat_with": 2,
      "allow_panelists_send_direct_message": true,
      "allow_users_save_chats": 1,
      "default_attendees_chat_with": 1,
      "enable": true
    },
    "webinar_live_streaming": {
      "custom_service_instructions": "The specific instructions",
      "enable": true,
      "live_streaming_reminder": true,
      "live_streaming_service": [
        "workplace_by_facebook"
      ]
    },
    "meeting_polling": {
      "advanced_polls": true,
      "allow_alternative_host_to_add_edit": true,
      "require_answers_to_be_anonymous": true,
      "allow_host_to_upload_image": true,
      "enable": true
    },
    "webinar_polling": {
      "advanced_polls": true,
      "allow_alternative_host_to_add_edit": true,
      "require_answers_to_be_anonymous": true,
      "allow_host_to_upload_image": true,
      "enable": true
    },
    "webinar_survey": true,
    "who_can_share_screen": "all",
    "who_can_share_screen_when_someone_is_sharing": "host",
    "participants_share_simultaneously": "multiple",
    "workplace_by_facebook": true,
    "transfer_meetings_between_devices": true,
    "allow_show_zoom_windows": false,
    "meeting_summary_with_ai_companion": {
      "enable": true,
      "auto_enable": true,
      "who_will_receive_summary": 1
    },
    "ai_companion_questions": {
      "enable": true,
      "auto_enable": true,
      "who_can_ask_questions": 1
    }
  },
  "profile": {
    "recording_storage_location": {
      "allowed_values": [
        "US"
      ],
      "value": "US"
    }
  },
  "recording": {
    "ask_host_to_confirm_disclaimer": true,
    "ask_participants_to_consent_disclaimer": true,
    "auto_delete_cmr": true,
    "auto_delete_cmr_days": 90,
    "record_files_separately": {
      "active_speaker": true,
      "gallery_view": true,
      "shared_screen": true
    },
    "display_participant_name": true,
    "recording_thumbnails": true,
    "optimize_recording_for_3rd_party_video_editor": true,
    "save_panelist_chat": true,
    "save_poll_results": true,
    "save_close_caption": true,
    "auto_recording": "cloud",
    "cloud_recording": true,
    "host_pause_stop_recording": true,
    "ip_address_access_control": {
      "enable": true,
      "ip_addresses_or_ranges": "46.33.24.184"
    },
    "local_recording": true,
    "record_audio_file": true,
    "record_gallery_view": true,
    "record_speaker_view": true,
    "recording_audio_transcript": true,
    "smart_recording": {
      "create_recording_highlights": true,
      "create_smart_chapters": true,
      "create_next_steps": true
    },
    "recording_password_requirement": {
      "have_letter": true,
      "have_number": true,
      "have_special_character": true,
      "length": 10,
      "only_allow_numeric": true
    },
    "save_chat_text": true,
    "show_timestamp": true,
    "recording_notification_for_zoom_client": {
      "disclaimer_to_participants": "All participants or Guest only",
      "play_voice_prompt": " All participants or Guest only or  No one",
      "ask_host_to_confirm": true
    }
  },
  "schedule_meeting": {
    "audio_type": "telephony",
    "default_password_for_scheduled_meetings": "1213434",
    "embed_password_in_join_link": true,
    "force_pmi_jbh_password": true,
    "host_video": true,
    "join_before_host": true,
    "meeting_password_requirement": {
      "consecutive_characters_length": 8,
      "have_letter": true,
      "have_number": true,
      "have_special_character": true,
      "have_upper_and_lower_characters": true,
      "length": 10,
      "only_allow_numeric": true,
      "weak_enhance_detection": true
    },
    "participants_video": true,
    "personal_meeting": true,
    "pmi_password": "113332424",
    "pstn_password_protected": true,
    "require_password_for_instant_meetings": true,
    "require_password_for_pmi_meetings": "jbh_only",
    "require_password_for_scheduled_meetings": true,
    "require_password_for_scheduling_new_meetings": true,
    "use_pmi_for_instant_meetings": true,
    "use_pmi_for_scheduled_meetings": true,
    "continuous_meeting_chat": {
      "enable": true,
      "support_instant_meetings": true,
      "support_scheduled_meetings": true
    }
  },
  "telephony": {
    "audio_conference_info": "test",
    "show_international_numbers_link": true,
    "telephony_regions": {
      "allowed_values": [
        "CNTB"
      ],
      "selection_values": "USTB"
    },
    "third_party_audio": true
  },
  "tsp": {
    "call_out": true,
    "call_out_countries": [
      {}
    ],
    "show_international_numbers_link": true,
    "global_dial_in_countries": {
      "allowed_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ],
      "selected_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ]
    }
  },
  "whiteboard": {
    "out_meeting_advanced_whiteboard": true,
    "in_meeting_advanced_whiteboard": true
  },
  "general_setting": {
    "auto_zoom_room_proximity_connect": true
  }
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `1120` <br> A valid invitation to join the Zoom account was not found for this user. <br> This error is thrown if you added a user in your account but the user did not accept the invitation on time and the invitation expired - thus making the userId invalid. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update user settings

  • Method: PATCH
  • Path: /users/{userId}/settings
  • Tags: Users

Update a user's settings. For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:write:admin,user:write

Granular Scopes: user:update:settings,user:update:settings:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: application/json

One of:

  • audio_conferencing

    object — The user's audio conference settings.

  • email_notification

    object

    • alternative_host_reminder

      boolean, default: false — When an alternative host is set or removed from a meeting.

    • cancel_meeting_reminder

      boolean, default: false — When a meeting is cancelled.

    • cloud_recording_available_reminder

      boolean — Whether to notify the host when a cloud recording is available.

    • jbh_reminder

      boolean, default: false — When attendees join meeting before host.

    • recording_available_reminder_alternative_hosts

      boolean — Whether to notify any alternative hosts when a cloud recording is available.

    • recording_available_reminder_schedulers

      boolean — Whether to notify the person who scheduled the meeting or webinar for the host when a cloud recording is available.

    • schedule_for_reminder

      boolean, default: false — This setting notifies the host there is a meeting is scheduled, rescheduled, or cancelled.

  • feature

    object

    • concurrent_meeting

      string, possible values: "Basic", "Plus", "None" — The user's assigned [Concurrent Meeting](https://support.zoom.us/hc/en-us/articles/206122046) type: * `Basic` * `Plus` * `None` **Note:** This feature requires a Concurrent Meeting Basic or Plus plan subscription.

    • large_meeting

      boolean — This setting enables the [large meeting](https://support.zoom.us/hc/en-us/articles/201362823-What-is-a-Large-Meeting-) feature for the user.

    • large_meeting_capacity

      integer — This field sets the meeting capacity for the user if the user has the **Large meeting** feature enabled. The value for the field can be 500, 1000, 3000, or 5000.

    • license_info_list

      array — A list of license information used to specify the appropriate license type, license option, and license subscription reference ID.

      Items:

      • license_option (required)

        integer, format: int64, possible values: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 2147483648, 549755813888, 1099511627776, 2199023255552, 8796093022208, 17592186044416, 281474976710656, 4503599627370496 — License option For the parameters with **licenseType** as **ZOOM_WHITEBOARD:** `2` - Zoom Whiteboard. `65536` - Zoom Whiteboard Plus. For the parameters with **licenseType** as **ZOOM_TRANSLATED_CAPTIONS**: `2048` - Zoom Translated Captions. For the parameters with **licenseType** as **ZOOM_SCHEDULER**: `2199023255552` - Zoom Scheduler. For the parameters with **licenseType** as **ZOOM_CLIPS**: `1` - Zoom Clips Plus. For the parameters with **licenseType** as **ZOOM_VISITOR_MANAGEMENT**: `2147483648` - Zoom Visitor Management. For the parameters with **licenseType** as **ZOOM_CMK**: `131072` - Zoom Customer Managed Key. For the parameters with **licenseType** as **ZOOM_DOCS**: `281474976710656` - Zoom Docs. For the parameters with **licenseType** as **ZOOM_REVENUE_ACCELERATOR**: `1` - Zoom Revenue Accelerator. For the parameters with **licenseType** as **ZOOM_COMPLIANCE_MANAGEMENT**: `8796093022208` - Zoom Compliance Management. `17592186044416` - Zoom Compliance Management Plus. For the parameters with **licenseType** as **ZOOM_WORKFORCE_MANAGEMENT**: `549755813888` - Zoom Workforce Management. For the parameters with **licenseType** as **ZOOM_QUALITY_MANAGEMENT**: `1099511627776` - Zoom Quality Management. For the parameters with **licenseType** as **ZOOM_HEALTHCARE_CLINICAL_NOTES**: `512` - Zoom Workplace for Clinicians Unlimited. `4503599627370496` - Zoom Workplace for Clinicians - Pay Per Notes. For the parameters with **licenseType** as **ZOOM_EVENTS_NEW_SAAS**: `2` - Zoom Events Unlimited - 100 attendees. `4` - Zoom Events Unlimited - 500 attendees. `8` - Zoom Events Unlimited - 1000 attendees. `16` - Zoom Events Unlimited - 3000 attendees. `32` - Zoom Events Unlimited - 5000 attendees. `64` - Zoom Events Unlimited - 10000 attendees. `128` - Zoom Events Unlimited - 20000 attendees. `256` - Zoom Events Unlimited - 30000 attendees. `512` - Zoom Events Unlimited - 50000 attendees. For the parameters with **licenseType** as **ZOOM_EVENTS_CONSUMPTION**: `1` - Zoom Events - Pay Per Attendee. For the parameters with **licenseType** as **ZOOM_WEBINARS_PLUS**: `2048` - Zoom Webinars Plus Unlimited - 100 attendees. `4096` - Zoom Webinars Plus Unlimited - 500 attendees. `8192` - Zoom Webinars Plus Unlimited - 1000 attendees. `16384` - Zoom Webinars Plus Unlimited - 3000 attendees. `32768` - Zoom Webinars Plus Unlimited - 5000 attendees. `65536` - Zoom Webinars Plus Unlimited - 10000 attendees. `131072` - Zoom Webinars Plus Unlimited - 20000 attendees. `262144` - Zoom Webinars Plus Unlimited - 30000 attendees. `524288` - Zoom Webinars Plus Unlimited - 50000 attendees. For the parameters with **licenseType** as **ZOOM_WEBINARS_PLUS_CONSUMPTION**: `1024` - Zoom Webinars Plus - Pay Per Attendee. For the parameters with **licenseType** as **ZOOM_CUSTOM_AI_COMPANION**: `256` - Zoom Custom AI Companion. `4096` - Zoom AI Companion. For the parameters with **licenseType** as **CX_INSIGHTS_LEADER**: `1099511627776` - CX Insights Leader. For the parameters with **licenseType** as **ZOOM_ENHANCED_MEDIA**: `4503599627370496` - Zoom Enhanced Media. For the parameters with **licenseType** as **EDU_STANDARD_STUDENT**: `1152921504606846976` - Education Standard Student.

      • license_type (required)

        string, possible values: "ZOOM_WHITEBOARD", "ZOOM_TRANSLATED_CAPTIONS", "ZOOM_SCHEDULER", "ZOOM_CLIPS", "ZOOM_VISITOR_MANAGEMENT", "ZOOM_CMK", "ZOOM_DOCS", "ZOOM_REVENUE_ACCELERATOR", "ZOOM_COMPLIANCE_MANAGEMENT", "ZOOM_WORKFORCE_MANAGEMENT", "ZOOM_QUALITY_MANAGEMENT", "ZOOM_HEALTHCARE_CLINICAL_NOTES", "ZOOM_EVENTS_NEW_SAAS", "ZOOM_EVENTS_CONSUMPTION", "ZOOM_WEBINARS_PLUS", "ZOOM_WEBINARS_PLUS_CONSUMPTION", "ZOOM_CUSTOM_AI_COMPANION", "CX_INSIGHTS", "ZOOM_ENHANCED_MEDIA", "EDU_STUDENT" — The corresponding type for the license that needs to be updated.

      • subscription_id

        string — The subscription ID associated with the corresponding license.

    • meeting_capacity

      integer — This field sets a user's meeting capacity. The user's meeting capacity denotes the maximum number of participants that can join a meeting scheduled by the user.

    • webinar

      boolean — This setting enables Webinar feature for the user.

    • webinar_capacity

      integer, possible values: 100, 500, 501, 1000, 1001, 3000, 5000, 10000 — The user's webinar capacity. This only applies to users with the [**Webinar**](https://support.zoom.us/hc/en-us/articles/200917029-Getting-started-with-webinar) feature enabled: * `100` * `500` * `501` * `1000` * `1001` * `3000` * `5000` * `10000`

    • zoom_clips_plus

      boolean — Whether the user has a Zoom Clips Plus license.

    • zoom_compliance_management

      boolean — Whether the user has a Zoom Compliance Management license.

    • zoom_customer_managed_key

      boolean — Whether the user has a Zoom Customer Managed Key license.

    • zoom_docs

      boolean — Whether the user has a Zoom Docs license.

    • zoom_events

      boolean — Whether to enable the Zoom Events feature for the user.

    • zoom_events_capacity

      integer, possible values: 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000 — The user's Zoom Events plan capacity: `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`.

    • zoom_events_pay_per_attendee

      boolean — Whether to enable the Zoom Events Pay Per Attendee feature for the user.

    • zoom_events_unlimited

      boolean — Whether to enable the Zoom Events Unlimited feature for the user.

    • zoom_events_unlimited_capacities

      array — The capacity list of user's Zoom Events Unlimited plan: `100`, `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`.

      Items:

      integer, possible values: 100, 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000

    • zoom_huddles

      boolean — Whether the user has a Zoom Huddles license.

    • zoom_iq_for_sales

      boolean — Whether the user has a Zoom Revenue Accelerator license. For information about a Zoom Revenue Accelerator license, contact [Zoom Support](https://support.zoom.us/hc/en-us/articles/201362003).

    • zoom_mail_calendar

      boolean — Whether the user has a Zoom Mail Calendar license.

    • zoom_phone

      boolean — The Zoom phone feature. If the value is set to false, will remove user from Zoom Phone. All numbers and phones assigned to the users will become unassigned.

    • zoom_quality_management

      boolean — Whether the user has a Zoom Quality Management license.

    • zoom_revenue_accelerator

      boolean — Whether the user has a Zoom Revenue Accelerator license. For information about a Zoom Revenue Accelerator license, contact [Zoom Support](https://support.zoom.us/hc/en-us/articles/201362003).

    • zoom_scheduler

      boolean — Whether the user has a Zoom Scheduler license.

    • zoom_sessions_pay_per_attendee

      boolean — Whether to enable the Zoom Sessions Pay Per Attendee feature for the user.

    • zoom_sessions_unlimited

      boolean — Whether to enable the Zoom Sessions Unlimited feature for the user.

    • zoom_sessions_unlimited_capacities

      array — The capacity list of user's Zoom Sessions Unlimited plan: `100`, `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`.

      Items:

      integer, possible values: 100, 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000

    • zoom_translated_captions

      boolean — Whether the user has a Zoom Translated Captions license.

    • zoom_webinars_plus_unlimited

      boolean — Whether to enable the Zoom Webinars Plus Unlimited feature for the user.

    • zoom_webinars_plus_unlimited_capacities

      array — The capacity list of user's Zoom Webinars Plus Unlimited plan - `100`, `500`, `1000`, `3000`, `5000`, `10000`, `20000`, `30000`, or `50000`.

      Items:

      integer, possible values: 100, 500, 1000, 3000, 5000, 10000, 20000, 30000, 50000

    • zoom_whiteboard

      boolean — Whether the user has a Zoom Whiteboard license.

    • zoom_whiteboard_plus

      boolean — Whether the user has a Zoom Whiteboard Plus license.

    • zoom_workforce_management

      boolean — Whether the user has a Zoom Workforce Management license.

  • in_meeting

    object

    • allow_host_panelists_to_use_audible_clap

      boolean — Whether to allow host and panelist to use audible clap.

    • allow_host_to_enable_focus_mode

      boolean — Whether the host can enable the [**Focus Mode**](https://support.zoom.us/hc/en-us/articles/360061113751-Using-focus-mode) when scheduling a meeting. This value defaults to `null`.

    • allow_live_streaming

      boolean — Allow livestreaming.

    • allow_participants_chat_with

      integer, possible values: 1, 2, 3, 4 — Who participants can chat with: * `1` &mdash; The participant cannot use chat. * `2` &mdash; The participant can chat with the host and co-hosts only. * `3` &mdash; The participant can chat with other participants publicly. * `4` - The participant can chat with other participants publicly and privately. **Note:** This setting is only available with client versions 5.7.3 and above.

    • allow_show_zoom_windows

      boolean — This setting enables the [**Show Zoom windows during screen share**](https://support.zoom.us/hc/en-us/articles/360061383571-Showing-Zoom-windows-during-screen-share) feature.

    • allow_users_save_chats

      integer, possible values: 1, 2, 3 — How participants can save meeting chats: * `1` &mdash; Participants cannot save meeting chats. * `2` &mdash; Participants can only save host and co-host meeting chats. * `3` &mdash; Participants can save all meeting chats.

    • allow_users_to_delete_messages_in_meeting_chat

      boolean — If the value of this field is set to `true`, it allows users to delete messages in the in-meeting chat.

    • annotation

      boolean, default: false — This setting allows meeting participants to use the [annotation tools](https://support.zoom.us/hc/en-us/articles/115005706806). This value defaults to `false`.

    • attendee_on_hold

      boolean, default: false — This setting allows the host to put an attendee on hold. This value defaults to `false`. **This field has been deprecated and is no longer supported.**

    • attention_mode_focus_mode

      boolean, default: false — Whether the [**Focus Mode**](https://support.zoom.us/hc/en-us/articles/360061113751-Using-focus-mode) feature is enabled. When enabled, this feature only displays the host and co-hosts' video and profile pictures during a meeting. This value defaults to `false`.

    • auto_answer

      boolean — This setting allows the user to view and add contacts to the [**Auto-answer group in chat**](https://support.zoom.us/hc/en-us/articles/203736135-Auto-answering-invitations-to-meetings) feature. Calls from members of the **Auto Answer Group** will be automatically answered the user.

    • auto_saving_chat

      boolean, default: false — This setting automatically saves all in-meeting chats. This value defaults to `false`.

    • breakout_room

      boolean, default: false — This setting allows the meeting host to split meeting participants into separate breakout rooms.

    • breakout_room_schedule

      boolean — This setting allows the host to assign participants to breakout rooms when scheduling. This feature is **only** available in version 4.5.0 or higher.

    • chat

      boolean, default: false — This setting enables chat during meeting for all participants. This value defaults to `false`.

    • closed_caption

      boolean, default: false — This setting enables closed captions. This value defaults to `false`.

    • closed_captioning

      object — The information about the user's closed captioning settings.

      • auto_transcribing

        boolean — This setting allows a live transcription service to transcribe meetings.

      • enable

        boolean — This setting allows the host to type closed captions or assign a participant or 3rd-party service to provide closed captioning.

      • save_caption

        boolean — This setting allows participants to save closed captions or transcripts.

      • third_party_captioning_service

        boolean — This setting allows the use of an API token to integrate with third-party closed captioning services.

      • view_full_transcript

        boolean — This setting allows the viewing of full transcripts in the in-meeting side panel.

    • co_host

      boolean, default: false — This setting allows the host to add co-hosts. This value defaults to `false`.

    • custom_data_center_regions

      boolean — This setting uses custom [data center regions](https://support.zoom.us/hc/en-us/articles/360042411451-Selecting-data-center-regions-for-meetings-webinars): * `true` &mdash; Users can [select data center regions](https://support.zoom.us/hc/en-us/articles/360042411451-Selecting-data-center-regions-for-hosted-meetings-and-webinars) to use for hosting real-time meeting traffic. The data center regions can be provided in the `data_center_regions` field. * `false` &mdash; Only use the default data center regions.

    • custom_live_streaming_service

      boolean — This setting allows custom livestreaming.

    • custom_service_instructions

      string — The custom livestreaming service instructions.

    • data_center_regions

      array — If the value of `custom_data_center_regions` is `true`, a comma-separated list of the following [data center regions](https://support.zoom.us/hc/en-us/articles/360059254691-Datacenter-abbreviation-list) to opt in to: * `AU` &mdash; Australia. * `LA` &mdash; Latin America. * `CA` &mdash; Canada. * `CN` &mdash; China. * `DE` &mdash; Germany. * `HK` &mdash; Hong Kong SAR. * `IN` &mdash; India. * `IE` &mdash; Ireland. * `TY` &mdash; Japan. * `MX` &mdash; Mexico. * `NL` &mdash; Netherlands. * `SG` &mdash; Singapore. * `US` &mdash; United States.

      Items:

      string, possible values: "AU", "LA", "CA", "CN", "DE", "HK", "IN", "IE", "TY", "MX", "NL", "SG", "US"

    • disable_screen_sharing_for_host_meetings

      boolean — This setting enables the **Disable desktop screen sharing for meetings you host** setting.

    • disable_screen_sharing_for_in_meeting_guests

      boolean — This setting enables the **Disable screen sharing when guests are in the meeting** setting.

    • e2e_encryption

      boolean — This setting requires [AES encryption](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard) for meetings.

    • entry_exit_chime

      string, possible values: "host", "all", "none", default: "all" — When to play the meeting entry/exit sound notification: * `host` &mdash; Only when the host joins or leaves. * `all` &mdash; When any participant joins or leaves. * `none` - Disable the entry/exit sound notification. This value defaults to `all`.

    • far_end_camera_control

      boolean, default: false — This setting allows another user to take control of the user's camera. This value defaults to `false`.

    • feedback

      boolean, default: false — This field enables the [**Feedback to Zoom**](https://support.zoom.us/hc/en-us/articles/115005838023-Feedback-to-Zoom) setting. This value defaults to `false`.

    • file_transfer

      boolean — This setting indicates whether [in-meeting file transfer](https://support.zoom.us/hc/en-us/articles/209605493-In-meeting-file-transfer) setting has been enabled for the user or not.

    • group_hd

      boolean, default: false — This setting enables the group HD video in Meeting. This value defaults to `false`.

    • join_from_desktop

      boolean — This setting allows participants to join a meeting directly from their desktop browser. Note that the meeting experience from the desktop browser is limited.

    • join_from_mobile

      boolean — This setting allows participants to join a meeting directly from their mobile browser. Note that the meeting experience from the mobile browser is limited.

    • language_interpretation

      object — The information about the [language interpretation](https://support.zoom.us/hc/en-us/articles/360034919791-Using-Language-Interpretation-in-your-meeting-or-webinar) settings.

      • allow_participants_to_speak_in_listening_channel

        boolean — Whether to allow participants to speak in listening channel.

      • allow_up_to_25_custom_languages_when_scheduling_meetings

        boolean — Whether to allow up to 25 custom languages when scheduling meetings.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — This setting allows the hosts to assign participants as interpreters who can interpret one language into another in real-time.

      • enable_language_interpretation_by_default

        boolean — Whether enable language interpretation by default.

    • live_streaming_facebook

      boolean — This setting allows Facebook livestreaming.

    • live_streaming_youtube

      boolean — This setting allows YouTube to livestreaming.

    • manual_captioning

      object — The information about manual captioning settings.

    • meeting_polling

      object — The information about the account's meeting polling settings.

      • advanced_polls

        boolean — Whether to allow the host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. The host can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow host to upload an image for each question.

      • enable

        boolean — Whether to allow the host to add polls before or during a meeting.

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • meeting_question_answer

      boolean — This setting allows participants to ask questions for the host and participants to answer.

    • meeting_reactions

      boolean — Whether meeting participants can [communicate using the emoji reactions](https://support.zoom.us/hc/en-us/articles/115001286183-Nonverbal-feedback-and-meeting-reactions) located in the **Reactions** menu in the meeting toolbar.

    • meeting_reactions_emojis

      string, possible values: "all", "selected" — Users can choose from the following meeting reaction options: * `all` &mdash; All emojis: Allow meeting participants to use any emoji available in Zoom chat as a reaction in a meeting. * `selected` &mdash; Selected emojis: Allow meeting participants to use the 6 standard meeting reaction emojis: Clapping Hands, Thumbs Up, Heart, Tears of Joy, Open Mouth, Party Popper (Tada, Celebration)

    • meeting_survey

      boolean — This setting allows the host to present a survey to participants once a meeting has ended. This feature is only available in version 5.7.3 or higher.

    • non_verbal_feedback

      boolean, default: false — This setting enables the [**Non-verbal feedback**](https://support.zoom.us/hc/en-us/articles/115001286183-Nonverbal-feedback-and-meeting-reactions-) feature. This value defaults to `false`.

    • participants_share_simultaneously

      string, possible values: "multiple", "one" — This setting indicates how many participants can share at the same time. The value can be one of the following: `one`: Only one participant can share at a time . `multiple`: Multiple participants can share simultaneously (dual monitors recommended).

    • polling

      boolean, default: false — This setting adds polls to the meeting controls. This value defaults to `false`.

    • post_meeting_feedback

      boolean — Whether to display a thumbs up or thumbs down feedback survey at the end of each meeting.

    • private_chat

      boolean, default: false — This setting [enables private chat](https://support.zoom.us/hc/en-us/articles/360060835932-Enabling-and-disabling-private-chat) between participants during meetings. This value defaults to `false`.

    • record_play_voice

      boolean — This setting allows users to record and play their own voice.

    • remote_control

      boolean, default: false — This setting enables the [**Remote control**](https://support.zoom.us/hc/en-us/articles/201362673-Requesting-or-giving-remote-control) feature. This value defaults to `false`.

    • remote_support

      boolean, default: false — This setting enables the [**Remote support**](https://support.zoom.us/hc/en-us/articles/360060951012-Enabling-remote-support) feature. This value defaults to `false`.

    • request_permission_to_unmute_participants

      boolean — This setting indicates whether the [**Request permission to unmute participants**](https://support.zoom.us/hc/en-us/articles/203435537-Muting-and-unmuting-participants-in-a-meeting#h_01EGK4XFWS1SJGZ71MYGKF7260) option has been enabled for the user or not.

    • screen_sharing

      boolean — This setting allows host and participants to share their screen or content during meetings

    • share_dual_camera

      boolean, default: false — This setting allows the use of shared dual cameras. This value defaults to `false`. **This field is deprecated.**

    • show_a_join_from_your_browser_link

      boolean — This setting allows participants to join a meeting directly from their browser and bypass the Zoom application download process. This is useful for participants who cannot download, install, or run applications. Note that the meeting experience from the browser is limited.

    • show_meeting_control_toolbar

      boolean — This setting allows you to always display [in-meeting controls](https://support.zoom.us/hc/en-us/articles/360021921032-Zoom-Room-meeting-controls-and-settings#h_01EQCC03TCPRC72VKXZ7W47FDX).

    • sign_language_interpretation

      object — This setting allows hosts to assign participants as sign language interpreters who can interpret one language into sign language in real-time. Hosts can assign interpreters when scheduling, or during the meeting itself. This feature is only available with version 5.11.3 or later.

      • custom_languages

        array — A list of user-defined supported languages.

        Items:

        string

      • enable

        boolean — Whether to allow hosts to assign participants as sign language interpreters who can interpret one language into another in real-time.

      • enable_sign_language_interpretation_by_default

        boolean — Whether to enable sign language interpretation view by default in scheduler.

      • languages

        array — A list of system-supported languages.

        Items:

        string, possible values: "American", "Chinese", "French", "German", "Japanese", "Russian", "Brazilian", "Spanish", "Mexican", "British"

    • slide_control

      boolean — Whether the person sharing during a presentation can allow others to control the slide presentation. This feature is only available in version 5.8.3 or higher.

    • virtual_background

      boolean, default: false — This setting enables virtual backgrounds. This value defaults to `false`.

    • virtual_background_settings

      object — The user's virtual background settings.

      • allow_upload_custom

        boolean — This setting allows the user to upload custom virtual backgrounds.

      • allow_videos

        boolean — This setting allows the use of videos for virtual backgrounds.

      • enable

        boolean — This setting enables virtual backgrounds.

      • files

        array — The information about the virtual background files.

        Items:

        • id

          string — The virtual background file's ID.

        • is_default

          boolean — Whether the file is the default Virtual Background file.

        • name

          string — The virtual background file's name.

        • size

          integer — The virtual background file's size, in bytes.

        • type

          string — The virtual background file's type.

    • waiting_room

      boolean, default: false — This setting enables the [**Waiting Room**](https://support.zoom.us/hc/en-us/articles/115000332726-Waiting-Room) feature. This value defaults to `false`.

    • webinar_chat

      object — The information about the user's webinar chat settings.

      • allow_attendees_chat_with

        integer, possible values: 1, 2, 3 — This setting allows webinar attendees to chat with: * `1` &mdash; No one. * `2` &mdash; Host and all panelists. * `3` &mdash; Everyone.

      • allow_auto_save_local_chat_file

        boolean — This setting automatically saves chat messages to a local file on the host's computer when the webinar ends.

      • allow_panelists_chat_with

        integer, possible values: 1, 2 — This setting indicates who the webinar panelists can chat with: * `1` &mdash; Host and all panelists. * `2` &mdash; Everyone.

      • allow_panelists_send_direct_message

        boolean — This setting allows webinar panelists to send direct messages to other panelists.

      • allow_users_save_chats

        integer, possible values: 0, 1, 2 — This setting indicates how the webinar attendees can save chats: * `0` &mdash; Attendees cannot save chats. * `1` &mdash; Attendees can only save host and panelist chats. * `2` &mdash; Attendees can save all chats.

      • default_attendees_chat_with

        integer, possible values: 1, 2 — By default, allow webinar attendees to chat with: * `1` &mdash; Host and all panelists. * `2` &mdash; Everyone.

      • enable

        boolean — This setting allows the webinar participants to send chat messages.

    • webinar_group_hd

      boolean, default: false — This setting enables the group HD video in Webinar. This value defaults to `false`.

    • webinar_live_streaming

      object

      • custom_service_instructions

        string — The specific instructions to allow your account's meeting hosts to configure a custom livestream.

      • enable

        boolean — Whether webinar livestreaming is enabled.

      • live_streaming_reminder

        boolean — This setting notifies users to watch the livestream. This does not apply to custom RTMP (real-time messaging protocol).

      • live_streaming_service

        array — The available livestreaming services: * `facebook` * `workplace_by_facebook` * `youtube` * `custom_live_streaming_service`

        Items:

        string, possible values: "facebook", "workplace_by_facebook", "youtube", "custom_live_streaming_service"

    • webinar_polling

      object — The information about the user's webinar polling settings.

      • advanced_polls

        boolean — Whether to allow the host to create advanced polls and quizzes. Advanced polls and quizzes include single choice, multiple choice, drop down, matching, short answer, long answer, rank order, and fill-in-the-blank questions. The host can also set the correct answers for quizzes they create.

      • allow_alternative_host_to_add_edit

        boolean — Whether to allow alternative hosts to add or edit polls and quizzes.

      • allow_host_to_upload_image

        boolean — Whether to allow host to upload an image for each question.

      • enable

        boolean — This setting allows the host to add polls before or during a webinar.

      • require_answers_to_be_anonymous

        boolean — Whether to require answers to be anonymous.

    • webinar_reactions

      boolean — Setting this field to true allow you to use [webinar reactions](https://support.zoom.us/hc/en-us/articles/4803536268429).

    • webinar_survey

      boolean — This setting allows the host to present surveys to attendees once a webinar has ended.

    • whiteboard

      boolean — Whether to enable the [**Zoom Whiteboard**](https://support.zoom.us/hc/en-us/articles/4410916881421) feature.

    • who_can_share_screen

      string, possible values: "host", "all" — This setting indicates who can share their screen or content during meetings. The value can be one of the following: `host`: Only host can share the screen. `all`: Both hosts and attendees can share their screen during meetings. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • who_can_share_screen_when_someone_is_sharing

      string, possible values: "host", "all" — This setting indicates who is allowed to start sharing screen when someone else in the meeting is sharing their screen. The value can be one of the following: `host`: Only a host can share the screen when someone else is sharing. `all`: Anyone in the meeting is allowed to start sharing their screen when someone else is sharing. For Webinar, the hosts and panelists can start screen sharing, but not the attendees.

    • workplace_by_facebook

      boolean — This setting allows Workplace by Facebook livestreaming.

  • profile

    object

  • recording

    object

    • ask_host_to_confirm_disclaimer

      boolean — This setting asks the host to confirm the disclaimer.

    • ask_participants_to_consent_disclaimer

      boolean — This field can be used if `recording_disclaimer` is set to true. This field indicates whether or not you would like to ask participants for consent when a recording starts. The value can be one of the following: * `true`: Ask participants for consent when a recording starts. * `false`: Do not ask participants for consent when a recording starts.

    • auto_delete_cmr

      boolean, default: false — The auto delete cloud recordings setting.

    • auto_delete_cmr_days

      integer, possible values: 30, 60, 90, 120 — When the `auto_delete_cmr` value is `true`, this value is the number of days before the auto-deletion of cloud recordings: * `30` &mdash; 30 days. * `60` &mdash; 60 days. * `90` &mdash; 90 days. * `120` &mdash; 120 days.

    • auto_recording

      string, possible values: "local", "cloud", "none", default: "local" — The automatic recording: `local` - Record on local. `cloud` - Record on cloud. `none` - Disabled.

    • cloud_recording

      boolean, default: false — The cloud recording.

    • display_participant_name

      boolean — This setting allows you to display the participants' names in the recording.

    • host_pause_stop_recording

      boolean, default: false — The host can pause or stop the auto recording in the cloud.

    • ip_address_access_control

      object — The setting to allow cloud recording access only from specific IP address ranges.

      • enable

        boolean — If set to `true`, the cloud recordings of this account can only be accessed by the IP addresses defined in the `ip_addresses_or_ranges` property.

      • ip_addresses_or_ranges

        string — The IP addresses or ranges that have access to the cloud recordings. Separate multiple IP ranges with comma. Use n.n.n.n, n.n.n.n/n or n.n.n.n - n.n.n.n syntax where n is a number. Example: `46.33.24.184, 48.99.100.2/25` or `200.181.108.17 - 220.181.108.157`

    • local_recording

      boolean — The local recording.

    • optimize_recording_for_3rd_party_video_editor

      boolean — This setting optimizes recordings for a third-party video editor. This may increase the file size and the time it takes to generate recording files.

    • record_audio_file

      boolean, default: false — This setting records one audio file for all participants.

    • record_files_separately

      object — The account's [**Record active speaker, gallery view and shared screen separately**](https://support.zoom.us/hc/en-us/articles/360060316092-Changing-basic-and-advanced-cloud-recording-settings#h_01F4CYJTCTXNS2MXH00W9EFG6R) settings.

      • active_speaker

        boolean — The record the active speaker only setting.

      • gallery_view

        boolean — The record the gallery view only setting.

      • shared_screen

        boolean — The record the shared screen only setting.

    • record_gallery_view

      boolean, default: false — This setting records the gallery view.

    • record_speaker_view

      boolean, default: false — This setting records the active speaker view.

    • recording_audio_transcript

      boolean — The audio transcript.

    • recording_disclaimer

      boolean — This setting shows a disclaimer to participants before a recording starts. This field has been deprecated. The replacement field is recording_notification_for_zoom_client

    • recording_highlight

      boolean — This setting enables the [recording highlights](https://support.zoom.us/hc/en-us/articles/360060802432) feature.

    • recording_notification_for_zoom_client

      object — You will update the setting name: Recording notifications - Zoom clients

      • ask_host_to_confirm

        boolean — Update Child setting name is [Ask host to confirm before starting a recording], true: enable, false: disable

      • disclaimer_to_participants

        string, possible values: "All participants", "Guest only" — Update child setting name is [Show a disclaimer to participants when a recording starts]. All participants or Guest only.

      • play_voice_prompt

        string, possible values: "All participants", "Guest only", "No one" — Update child setting name is [Play voice prompt for]. All participants or Guest only or No one

    • recording_password_requirement

      object — This object represents the minimum passcode requirements set for recordings via Account Recording Settings.

      • have_letter

        boolean — The passcode must contain at least one alphabetical letter (a, b, c..).

      • have_number

        boolean — The passcode must contain at least one number(1, 2, 3..).

      • have_special_character

        boolean — The passcode must contain at least one special character(!, @, #..).

      • length

        integer — The minimum required length for the passcode.

      • only_allow_numeric

        boolean — The passcode must contain only numeric characters.

    • recording_thumbnails

      boolean — This setting records the thumbnails of the presenter when they are sharing their screen.

    • save_chat_text

      boolean, default: false — This setting saves the chat text from the meeting.

    • save_close_caption

      boolean — This setting saves [closed captions](https://support.zoom.us/hc/en-us/articles/207279736) as a VTT (Video Track Text) file.

    • save_panelist_chat

      boolean — This setting saves the panelist chat to the recording. This setting saves messages sent by panelists during a webinar to either all panelists or all panelists and attendees to the recording.

    • save_poll_results

      boolean — This setting saves the poll results shared during the meeting or webinar. This also includes poll results shared during the meeting or webinar.

    • show_timestamp

      boolean, default: false — The show timestamp on the video.

    • smart_recording

      object — By selecting this option, your recording will have meeting smart chapters, and next steps. You are directing Zoom to access, process, and use your account's recording data for the purpose of analysis and insights.

      • create_next_steps

        boolean — By selecting this option, there will be a summary of actions to take after the recorded meeting.

      • create_recording_highlights

        boolean — By selecting this option, meeting details in the audio transcript will be highlighted. Hosts can modify highlighted sections and generate a video summary (highlighted sections may have a 3-second offset) based on these sections. The summary is for informational purposes only and may not be complete.

      • create_smart_chapters

        boolean — By selecting this option, your recording will have chapters with overview. Hosts can edit the chapters.

  • schedule_meeting

    object

    • audio_type

      string, possible values: "both", "telephony", "voip", "thirdParty", default: "voip" — This setting determines how participants can join the audio portion of the meeting: `both` - Telephony and VoIP. `telephony` - Audio PSTN telephony only. `voip` - VoIP only. `thirdParty` - Third party audio conference.

    • default_password_for_scheduled_meetings

      string — The passcode for already scheduled meetings.

    • embed_password_in_join_link

      boolean — This setting encrypts the meeting passcode and includes the join meeting link to allow participants to join with just one click without having to enter the passcode.

    • force_pmi_jbh_password

      boolean — This setting requires a passcode for personal meetings if attendees can join before host.

    • host_video

      boolean — The start meetings with host video on setting.

    • join_before_host

      boolean — This setting joins the meeting before the host arrives.

    • meeting_password_requirement

      object — The Account wide meeting/webinar [passcode requirements](https://support.zoom.us/hc/en-us/articles/360033559832-Meeting-and-webinar-passwords#h_a427384b-e383-4f80-864d-794bf0a37604).

      • consecutive_characters_length

        integer, possible values: 0, 4, 5, 6, 7, 8 — This setting specifies the max length of consecutive characters(abcde...) that can be used in a passcode. If you set the value of this field to `0`, no restriction will be applied on consecutive characters. If you would like to set this restriction, you can specify a number between 4 and 8 that define the maximum allowed length for consecutive characters in a passcode. The max allowed length will be `n-1` where `n` refers to the value you provide for this field. For instance, if you provide `4` as the value, there can only be a maximum of `3` consecutive characters in a passcode(example: abc1x@8fdh).

      • have_letter

        boolean — The passcode must contain at least 1 letter (such as a,b,c...).

      • have_number

        boolean — The passcode must contain at least one number (such as 1,2,3...).

      • have_special_character

        boolean — The passcode must have at least one special character (!,@,#...).

      • have_upper_and_lower_characters

        boolean — The passcode must include both uppercase and lowercase characters.

      • length

        integer — The minimum length that the meeting or webinar passcode must have.

      • only_allow_numeric

        boolean — The passcode must only contain numbers and no other characters.

      • weak_enhance_detection

        boolean — This setting informs users if the provided passcode is weak.

    • participants_video

      boolean — The start meetings with participants video on setting.

    • personal_meeting

      boolean — The personal meeting setting. `true`: Indicates that the **&quot;Enable [Personal Meeting ID (PMI)](https://marketplace.zoom.us/docs/api-reference/using-zoom-apis#understanding-personal-meeting-id-pmi)&quot;** setting is turned on. Users can choose to use a PMI for their meetings. `false`: Indicates that the **&quot;Enable Personal Meeting ID&quot;** setting is [turned off](https://support.zoom.us/hc/en-us/articles/201362843-Personal-meeting-ID-PMI-and-personal-link#h_aa0335c8-3b06-41bc-bc1f-a8b84ef17f2a). If this setting is disabled (`false`), meetings that were scheduled with a PMI will be invalid. Scheduled meetings must be manually updated. For Zoom Phone only: If a user has been assigned a desk phone, **&quot;Elevate to Zoom Meeting&quot;** on desk phone will be disabled.

    • pmi_password

      string — The PMI passcode.

    • pstn_password_protected

      boolean — This setting generates and requires the passcode for participants joining by phone.

    • require_password_for_instant_meetings

      boolean — This setting requires a passcode for instant meetings. If you use a PMI for your instant meetings, this option will be disabled. This setting is always enabled for free accounts and Pro accounts with a single host and cannot be modified for these accounts.

    • require_password_for_pmi_meetings

      string, possible values: "jbh_only", "all", "none" — This setting requires a passcode for Personal Meeting ID (PMI). This setting is always enabled for free accounts and Pro accounts with a single host and cannot be modified for these accounts.

    • require_password_for_scheduled_meetings

      boolean — This setting requires a passcode for meetings that have already been scheduled.

    • require_password_for_scheduling_new_meetings

      boolean — This setting requires a passcode when scheduling new meetings. This setting is always enabled for free accounts and Pro accounts with a single host and cannot be modified for these accounts.

    • use_pmi_for_instant_meetings

      boolean — This setting indicates the use of a [Personal Meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi) when starting an instant meeting.

    • use_pmi_for_scheduled_meetings

      boolean — This setting indicates the use of a [Personal Meeting ID (PMI)](https://developers.zoom.us/docs/api/rest/using-zoom-apis/#understanding-personal-meeting-id-pmi) when scheduling a meeting.

  • telephony

    object — User Settings: Telephony.

    • audio_conference_info

      string, default: "" — The third-party audio conference info.

    • show_international_numbers_link

      boolean — This setting shows the international numbers link on the invitation email.

    • telephony_regions

      object — This setting indicates where most of the participants call into or call from during a meeting.

      • selection_values

        string — The account's selected telephony regions that indicate where most participants call into or call from during a meeting.

    • third_party_audio

      boolean — The third-party audio conference.

  • tsp

    object — Account Settings: TSP.

    • call_out

      boolean — The call out.

    • call_out_countries

      array — The call out countries or regions setting

      Items:

    • global_dial_in_countries

      object — The user's **Global Dial-in Countries/Regions** settings.

      • selected_countries

        array — The list of selected countries/regions whose dial-in numbers will be listed in the email invitation. You can adjust the order that the dial-in numbers appear in the email invitation.

        Items:

        • code

          string — The code of the country or region.

        • name

          string — The name of the country or region.

    • show_international_numbers_link

      boolean — This setting shows the international numbers link on the invitation email.

One of:

  • authentication_option

    object — The meeting authentication options.

    • action

      string, possible values: "update", "show", "hide" — The authentication action.

    • default_option

      boolean — The authentication default option.

    • domains

      string — The authentication domains.

    • id

      string — The authentication ID.

    • name

      string — The authentication name.

    • type

      string, possible values: "enforce_login", "enforce_login_with_same_account", "enforce_login_with_domains" — The authentication type. Specify one of the following authentication types for the authentication profile: * `enforce_login`: This option allows any users to join the meeting or webinar, as long as they are signed into their Zoom account. * `enforce_login_with_domains`: This option, allows you to specify a rule so that only those Zoom users whose email addresses contain a certain domain, can join the meeting or webinar. You can either add multiple domains using a comma in between and/or use a wildcard for listing domains. * `enforce_login_with_same_account`: This option allows users to join the meeting or webinar with the same Zoom account.

  • meeting_authentication

    boolean — Only authenticated users can join meetings

  • authentication_option

    object — The authentication options.

    • action

      string, possible values: "update", "show", "hide" — The authentication action.

    • default_option

      boolean — The authentication default option.

    • domains

      string — The authentication domains.

    • id

      string — The authentication ID.

    • name

      string — The authentication name.

    • type

      string, possible values: "internally", "enforce_login", "enforce_login_with_domains" — The authentication type.

  • recording_authentication

    boolean — Only authenticated users can view cloud recordings

  • meeting_security

    object

    • auto_security

      boolean — Whether to require that all meetings are secured with at least one security option. This setting can only be disabled by Enterprise, ISV, Business (with more than 100 licenses), and Education accounts.

    • block_user_domain

      boolean — Whether to block users in specific domains from joining meetings and webinars.

    • block_user_domain_list

      array — The domain to block, up to 20 domains. For example, the `*.example.com` domain.

      Items:

      string

    • embed_password_in_join_link

      boolean — Whether the meeting passcode will be encrypted and included in the invitation link. The provided link will allow participants to join the meeting without having to enter the passcode.

    • encryption_type

      string, possible values: "enhanced_encryption", "e2ee" — The type of encryption to use when starting a meeting: * `enhanced_encryption` &mdash; Use enhanced encryption. Encryption data is stored in the cloud. * `e2ee` &mdash; End-to-end encryption. The encryption key is stored on the local device and cannot be obtained by anyone else. Enabling E2EE also [**disables** certain features](https://support.zoom.us/hc/en-us/articles/360048660871), such as cloud recording, live streaming, and allowing participants to join before the host.

    • end_to_end_encrypted_meetings

      boolean — Whether to enable end-to-end encryption for meetings. If enabled, you can specify the type of encryption in the `encryption_type` field.

    • meeting_password

      boolean — Whether all instant and scheduled meetings that users can join via client or Zoom Rooms systems are passcode-protected. [Personal Meeting ID (PMI)](https://support.zoom.us/hc/en-us/articles/203276937) meetings are **not** included in this setting.

    • meeting_password_requirement

      object — The information about the meeting and webinar [passcode requirements](https://support.zoom.us/hc/en-us/articles/360033559832-Meeting-and-webinar-passwords#h_a427384b-e383-4f80-864d-794bf0a37604).

      • consecutive_characters_length

        integer, possible values: 0, 4, 5, 6, 7, 8 — The maximum length of consecutive characters (for example, `abcdef`) allowed in a passcode: * `4` through `8` &mdash; The maximum consecutive characters length. The length is `n` minus `1`, where `n` is the provided value. For example, if you provide the `4` value, there can only be a maximum of `3` consecutive characters in a passcode (for example, `abc1x@8fdh`). * `0` &mdash; Do not apply a consecutive character restriction.

      • have_letter

        boolean — Whether the passcode must contain at least one letter character.

      • have_number

        boolean — Whether the passcode must contain at least one numeric character.

      • have_special_character

        boolean — Whether the passcode must contain at least one special character. For example, `!`, `@`, and/or `#` characters.

      • have_upper_and_lower_characters

        boolean — Whether the passcode must include uppercase and lowercase characters.

      • length

        integer — The passcode's minimum length.

      • only_allow_numeric

        boolean — Whether the passcode must contain **only** numeric characters.

      • weak_enhance_detection

        boolean — Whether users will be informed when the provided passcode is weak.

    • only_authenticated_can_join_from_webclient

      boolean — Whether to specify that only authenticated users can join the meeting from the web client.

    • phone_password

      boolean — Whether to require a passcode for participants joining by phone. If enabled and the meeting is passcode-protected, a numeric passcode is required for participants to join by phone. For meetings with alphanumeric passcodes, a numeric passcode will be generated.

    • pmi_password

      boolean — Whether all Personal Meeting ID (PMI) meetings that users can join via client or Zoom Rooms systems are passcode-protected.

    • require_password_for_scheduled_meeting

      boolean — Whether to require a passcode for meetings that have already been scheduled.

    • require_password_for_scheduled_webinar

      boolean — Whether to require a passcode for webinars that have already been scheduled.

    • waiting_room

      boolean — Whether participants are placed in the [**Waiting Room**](https://support.zoom.us/hc/en-us/articles/115000332726-Waiting-Room) when they join a meeting. If the **Waiting Room** feature is enabled, the [**Allow participants to join before host**](https://support.zoom.us/hc/en-us/articles/202828525-Allow-participants-to-join-before-host) setting is automatically disabled.

    • waiting_room_settings

      object — The information about the waiting room settings.

      • participants_to_place_in_waiting_room

        integer, possible values: 0, 1, 2 — The type of participants to be admitted to the Waiting Room: * `0` &mdash; All attendees. * `1` &mdash; Users who are not in your account. * `2` &mdash; Users who are not in your account and are not part of your [allowed domains list](https://support.zoom.us/hc/en-us/articles/360037117472-Configuring-authentication-profiles#h_e3cf0d5f-eec7-4c2a-ad29-ef2a5079a7da).

      • users_who_can_admit_participants_from_waiting_room

        integer, possible values: 0, 1 — The users who can admit participants from the Waiting Room: * `0` &mdash; Host and co-hosts only. * `1` &mdash; Host, co-hosts, and anyone who bypassed the Waiting Room if the host and co-hosts are not present.

      • whitelisted_domains_for_waiting_room

        string — If the `participants_to_place_in_waiting_room` field is `2`, a comma-separated list of the domains that can bypass the Waiting Room (`&quot;example.com,example2.com&quot;`).

    • webinar_password

      boolean — Whether to generate a passcode when scheduling webinars. Participants must use the generated passcode to join the scheduled webinar.

Example:

{
  "audio_conferencing": {
    "participant_phone_masking": true,
    "global_dial_in_countries": {
      "selected_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ],
      "include_toll_free": true
    }
  },
  "email_notification": {
    "alternative_host_reminder": true,
    "cancel_meeting_reminder": true,
    "cloud_recording_available_reminder": true,
    "jbh_reminder": true,
    "recording_available_reminder_alternative_hosts": true,
    "recording_available_reminder_schedulers": true,
    "schedule_for_reminder": true
  },
  "feature": {
    "concurrent_meeting": "Plus",
    "large_meeting": true,
    "large_meeting_capacity": 500,
    "meeting_capacity": 100,
    "webinar": true,
    "webinar_capacity": 100,
    "zoom_events": true,
    "zoom_events_capacity": 500,
    "zoom_events_unlimited": true,
    "zoom_events_unlimited_capacities": [
      100,
      500
    ],
    "zoom_webinars_plus_unlimited": true,
    "zoom_webinars_plus_unlimited_capacities": [
      100,
      500
    ],
    "zoom_events_pay_per_attendee": true,
    "zoom_sessions_pay_per_attendee": true,
    "zoom_phone": true,
    "zoom_revenue_accelerator": false,
    "zoom_whiteboard": false,
    "zoom_whiteboard_plus": false,
    "zoom_translated_captions": false,
    "zoom_customer_managed_key": false,
    "zoom_quality_management": false,
    "zoom_workforce_management": false,
    "zoom_scheduler": false,
    "zoom_clips_plus": false,
    "zoom_mail_calendar": false,
    "zoom_compliance_management": false,
    "zoom_docs": false,
    "license_info_list": [
      {
        "license_type": "ZOOM_WHITEBOARD",
        "license_option": 2,
        "subscription_id": "SUBREF-xxxxxx-xxxxxx"
      }
    ]
  },
  "in_meeting": {
    "allow_host_to_enable_focus_mode": true,
    "allow_users_to_delete_messages_in_meeting_chat": true,
    "allow_live_streaming": true,
    "post_meeting_feedback": true,
    "whiteboard": true,
    "allow_participants_chat_with": 4,
    "allow_users_save_chats": 3,
    "annotation": true,
    "attendee_on_hold": true,
    "attention_mode_focus_mode": true,
    "auto_saving_chat": true,
    "breakout_room": true,
    "breakout_room_schedule": true,
    "chat": true,
    "meeting_question_answer": true,
    "closed_caption": true,
    "closed_captioning": {
      "auto_transcribing": true,
      "enable": true,
      "save_caption": true,
      "third_party_captioning_service": true,
      "view_full_transcript": true
    },
    "co_host": true,
    "custom_data_center_regions": true,
    "custom_live_streaming_service": true,
    "custom_service_instructions": "The custom livestreaming service instructions",
    "data_center_regions": [
      "US"
    ],
    "disable_screen_sharing_for_host_meetings": true,
    "disable_screen_sharing_for_in_meeting_guests": true,
    "e2e_encryption": true,
    "entry_exit_chime": "all",
    "far_end_camera_control": true,
    "feedback": true,
    "file_transfer": true,
    "group_hd": true,
    "webinar_group_hd": true,
    "join_from_desktop": true,
    "join_from_mobile": true,
    "language_interpretation": {
      "custom_languages": [
        "English"
      ],
      "enable_language_interpretation_by_default": true,
      "allow_participants_to_speak_in_listening_channel": true,
      "allow_up_to_25_custom_languages_when_scheduling_meetings": true,
      "enable": true
    },
    "sign_language_interpretation": {
      "enable": true,
      "enable_sign_language_interpretation_by_default": true,
      "languages": [
        "American"
      ],
      "custom_languages": [
        "Language1"
      ]
    },
    "live_streaming_facebook": true,
    "live_streaming_youtube": true,
    "manual_captioning": {
      "allow_to_type": true,
      "auto_generated_captions": true,
      "full_transcript": true,
      "manual_captions": true,
      "save_captions": true,
      "third_party_captioning_service": true
    },
    "meeting_reactions": true,
    "meeting_reactions_emojis": "all",
    "allow_host_panelists_to_use_audible_clap": true,
    "webinar_reactions": true,
    "meeting_survey": true,
    "non_verbal_feedback": true,
    "polling": true,
    "private_chat": true,
    "record_play_voice": true,
    "remote_control": true,
    "remote_support": true,
    "request_permission_to_unmute_participants": true,
    "screen_sharing": true,
    "show_a_join_from_your_browser_link": true,
    "show_meeting_control_toolbar": true,
    "slide_control": true,
    "virtual_background": true,
    "virtual_background_settings": {
      "allow_upload_custom": true,
      "allow_videos": true,
      "enable": true,
      "files": [
        {
          "id": "efwwf-f320fg34dsv34-5",
          "is_default": true,
          "name": "test.png",
          "size": 1432,
          "type": "image"
        }
      ]
    },
    "waiting_room": true,
    "webinar_chat": {
      "allow_attendees_chat_with": 1,
      "allow_auto_save_local_chat_file": true,
      "allow_panelists_chat_with": 2,
      "allow_panelists_send_direct_message": true,
      "allow_users_save_chats": 1,
      "default_attendees_chat_with": 2,
      "enable": true
    },
    "webinar_live_streaming": {
      "custom_service_instructions": "The specific instructions",
      "enable": true,
      "live_streaming_reminder": true,
      "live_streaming_service": [
        "facebook"
      ]
    },
    "meeting_polling": {
      "advanced_polls": true,
      "allow_alternative_host_to_add_edit": true,
      "require_answers_to_be_anonymous": true,
      "allow_host_to_upload_image": true,
      "enable": true
    },
    "webinar_polling": {
      "advanced_polls": true,
      "allow_alternative_host_to_add_edit": true,
      "require_answers_to_be_anonymous": true,
      "allow_host_to_upload_image": true,
      "enable": true
    },
    "webinar_survey": true,
    "who_can_share_screen": "all",
    "who_can_share_screen_when_someone_is_sharing": "all",
    "participants_share_simultaneously": "multiple",
    "workplace_by_facebook": true,
    "auto_answer": false,
    "allow_show_zoom_windows": false
  },
  "profile": {
    "recording_storage_location": {
      "allowed_values": [
        "US"
      ],
      "value": "US"
    }
  },
  "recording": {
    "ask_host_to_confirm_disclaimer": true,
    "ask_participants_to_consent_disclaimer": true,
    "auto_delete_cmr": true,
    "auto_delete_cmr_days": 90,
    "record_files_separately": {
      "active_speaker": true,
      "gallery_view": true,
      "shared_screen": true
    },
    "display_participant_name": true,
    "recording_thumbnails": true,
    "optimize_recording_for_3rd_party_video_editor": true,
    "save_panelist_chat": true,
    "save_poll_results": true,
    "save_close_caption": true,
    "auto_recording": "cloud",
    "cloud_recording": true,
    "host_pause_stop_recording": true,
    "ip_address_access_control": {
      "enable": true,
      "ip_addresses_or_ranges": "46.33.24.184"
    },
    "local_recording": true,
    "record_audio_file": true,
    "record_gallery_view": true,
    "record_speaker_view": true,
    "recording_audio_transcript": true,
    "smart_recording": {
      "create_recording_highlights": true,
      "create_smart_chapters": true,
      "create_next_steps": true
    },
    "recording_password_requirement": {
      "have_letter": true,
      "have_number": true,
      "have_special_character": true,
      "length": 10,
      "only_allow_numeric": true
    },
    "save_chat_text": true,
    "show_timestamp": true,
    "recording_notification_for_zoom_client": {
      "disclaimer_to_participants": "All participants",
      "play_voice_prompt": "All participants",
      "ask_host_to_confirm": true
    }
  },
  "schedule_meeting": {
    "audio_type": "both",
    "default_password_for_scheduled_meetings": "111111",
    "embed_password_in_join_link": true,
    "force_pmi_jbh_password": true,
    "host_video": true,
    "join_before_host": true,
    "meeting_password_requirement": {
      "consecutive_characters_length": 8,
      "have_letter": true,
      "have_number": true,
      "have_special_character": true,
      "have_upper_and_lower_characters": true,
      "length": 10,
      "only_allow_numeric": true,
      "weak_enhance_detection": true
    },
    "participants_video": true,
    "personal_meeting": true,
    "pmi_password": "123456",
    "pstn_password_protected": true,
    "require_password_for_instant_meetings": true,
    "require_password_for_pmi_meetings": "all",
    "require_password_for_scheduled_meetings": true,
    "require_password_for_scheduling_new_meetings": true,
    "use_pmi_for_instant_meetings": true,
    "use_pmi_for_scheduled_meetings": true
  },
  "telephony": {
    "audio_conference_info": "test",
    "show_international_numbers_link": true,
    "telephony_regions": {
      "selection_values": "CNTB"
    },
    "third_party_audio": true
  },
  "tsp": {
    "call_out": true,
    "call_out_countries": [
      {}
    ],
    "show_international_numbers_link": true,
    "global_dial_in_countries": {
      "selected_countries": [
        {
          "code": "CN",
          "name": "China"
        }
      ]
    }
  }
}

Responses

Status: 204 **HTTP Status Code:** `200` User settings updated
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `1108` <br> Only Licensed or On-prem users can enable the large meeting feature.<br><br> <br> **Error Code:** `1204` <br> You can't enable the Webinar feature because you already have the Zoom Events feature.<br><br> <br> **Error Code:** `1205` <br> You can't enable the Zoom Events feature because you already have the Webinar feature.<br><br> <br> **Error Code:** `1206` <br> You can only enable the Zoom Events feature for Licensed or On-prem users.<br><br> <br> **Error Code:** `1120` <br> A valid invitation to join the Zoom account was not found for this user. <br> This error is thrown if you added a user in your account but the user did not accept the invitation on time and the invitation expired - thus making the userId invalid.<br><br> <br> **Error Code:** `1122` <br> Webinar feature can only be enabled for Licensed or On-prem users.<br><br> <br> **Error Code:** `200` <br> You can't add paid users.<br> You can add max $maxNumber paid users.<br> You can add max $maxNumber free users.<br> You can add max $maxNumber Webinar 100 users.<br> You can add max $maxNumber Webinar 500 users.<br> You can add max $maxNumber Webinar 1000 users.<br> You can add max $maxNumber Webinar 3000 users.<br> You can add max $maxNumber Webinar 5000 users.<br> You can add max $maxNumber Webinar 10000 users.<br> You can add max $maxNumber Large 100 users.<br> You can add max $maxNumber Large 200 users.<br> You can add max $maxNumber Large 300 users.<br> You can add max $maxNumber Large 500 users.<br> You can add max $maxNumber Large 1000 users.<br> You can add max $maxNumber paid users.<br><br> <br> **Error Code:** `300` <br> You cannot downgrade the Zoom Events feature to "$downgradeCapacity" capacity because there is an upcoming Zoom Events scheduled with "$maxCapacity" capacity. <br> You cannot remove the Zoom Events feature for this user because the user has an upcoming Zoom Events scheduled. <br> You cannot assign a Zoom Customer Managed Key license for a single user. <br> You can't enable Zoom Events/Zoom Events Unlimited/Zoom Sessions Unlimited feature for a user at the same time for a user. <br> You can't remove the Zoom Events/Zoom Events SAAS/Zoom Events Consumption feature for this user because the user has an upcoming Zoom Events scheduled. <br> You can't downgrade the Zoom Events to "$downgradeCapacity" capacity because there is an upcoming Zoom Events scheduled with "$maxCapacity" capacity. <br> You can only enable Zoom Events Unlimited/Zoom Sessions Unlimited feature for Licensed or On-prem users. <br> You can only enable Zoom Events Pay Per Attendee/Zoom Sessions Pay Per Attendee feature for Licensed or On-prem users. <br> You can add max "$maxCapacity" users for this Zoom Events Unlimited plan. <br> You can add max "$maxCapacity" users for this Zoom Sessions Unlimited plan. <br> You can't downgrade Zoom Events Unlimited plan to Zoom Sessions Unlimited plan. <br> You can't enable Zoom Events/Zoom Events Unlimited/Zoom Sessions Unlimited feature and Webinar feature at the same time. <br> The events plan you want to assign does not exist. <br> You can't enable Zoom Events and Zoom Events Unlimited feature for a user at the same time for a user. <br> You can't enable Zoom Events Pay Per Attendee and Zoom Sessions Pay Per Attendee feature for a user at the same time for a user. <br> You can't remove all Zoom Events features for this user because the user has an upcoming Zoom Events scheduled.<br> You can add max "$maxCapacity" users for this "${planName}" plan.<br> <br> **Error Code:** `1207` <br> You can only enable the "Concurrent Meeting" feature for Licensed users or On-prem users.<br><br> <br> **Error Code:** `1208` <br> You can't enable the "Concurrent Meeting Basic" feature.<br><br> <br> **Error Code:** `1209` <br> You can add a maximum of {0} "Concurrent Meeting Basic" users.<br><br> <br> **Error Code:** `1210` <br> You can't enable the "Concurrent Meeting Plus" feature.<br><br> <br> **Error Code:** `1211` <br> You can add a maximum of {0} "Concurrent Meeting Plus" users.<br><br> <br> **Error Code:** `1228` <br> Unable to assign "Zoom IQ for Sales" license because you have reached the limit of licensed users allowed on this account or this account does not have the "Zoom IQ for Sales" plan.<br/>Unable to assign "Zoom Whiteboard" license because you have reached the limit of licensed users allowed on this account or this account does not have the "Zoom Whiteboard" plan.<br><br> <br> **Error Code:** `1233` <br> You cannot enable the "Zoom IQ for Sales" for that Zoom Rooms user. <br>You cannot enable the "Zoom Whiteboard" for that Zoom Rooms user.<br><br> <br> **Error Code:** `1234` <br> You cannot enable the "Zoom IQ for Sales" for an On-Prem user. <br><br> <br> **Error Code:** `1242` <br> You cannot set "Zoom Whiteboard" and "Zoom Whiteboard Plus" at the same time. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Upload Virtual Background files

  • Method: POST
  • Path: /users/{userId}/settings/virtual_backgrounds
  • Tags: Users

Use this API to upload a Virtual Background files to a user's profile. For user-level apps, pass the me value instead of the userId parameter.

Note:

  • A user profile cannot exceed more than 10 Virtual Background files.
  • You can only upload image files that are in JPG/JPEG, GIF or PNG format.
  • Video files must be in MP4 or MOV file format with a minimum resolution of 480 by 360 pixels (360p) and a maximum resolution of 1920 by 1080 pixels (1080p).
  • The Virtual Background file size cannot exceed 15 megabytes (MB).

Prerequisites:

Scopes: user:write:admin,user:write

Granular Scopes: user:write:virtual_background_files,user:write:virtual_background_files:admin

Rate Limit Label: MEDIUM

Request Body

Content-Type: multipart/form-data
  • file

    string — The Virtual Background's file path.

Example:

{
  "file": "profile.png"
}

Responses

Status: 201 **HTTP Status Code:** `201` **Created**
Content-Type: application/json
  • id

    string — The virtual background file's ID.

  • is_default

    boolean — Whether the virtual background file is set as the default virtual background: * `true` &mdash; The default virtual background. * `false` &mdash; Not the default virtual background.

  • name

    string — The virtual background file's name.

  • size

    integer — The virtual background file's size, in bytes.

  • type

    string, possible values: "image", "video" — The virtual background file's file type: * `image` &mdash; An image file. * `video` &mdash; A video file.

Example:

{
  "id": "_l0MP1U7Qn2JgJ4oEJbVZQ",
  "is_default": true,
  "name": "profile.png",
  "size": 7221,
  "type": "image"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `120` <br> No file uploaded, verify that a file has been uploaded.<br> File size cannot exceed 15M.<br> A maximum of 10 files are allowed for a user.<br> Only jpg/jpeg, gif or png image file can be uploaded. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Delete Virtual Background files

  • Method: DELETE
  • Path: /users/{userId}/settings/virtual_backgrounds
  • Tags: Users

Use this API to delete a user's Virtual Background files. For user-level apps, pass the me value instead of the userId parameter.

Prerequisites:

Scopes: user:write:admin,user:write

Granular Scopes: user:delete:virtual_background_files,user:delete:virtual_background_files:admin

Rate Limit Label: LIGHT

Responses

Status: 204 **HTTP Status Code:** `204` * No content. * Deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `300` <br> Invalid parameter: file_ids <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> * User does not exist. * User "{userId}" does not exist or does not belong to this account. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Update user status

  • Method: PUT
  • Path: /users/{userId}/status
  • Tags: Users

Deactivate an active user or to reactivate a deactivated user. For user-level apps, pass the me value instead of the userId parameter.

An account owner or admins can deactivate as well as activate a user in a Zoom account. Deactivating a user removes all licenses associated with a user, and prevents the deactivated user from logging into their Zoom account. A deactivated user can be reactivated. Reactivating a user grants the user access to log in to their Zoom account.

Scopes: user:write:admin,user:write

Granular Scopes: user:update:status,user:update:status:admin

Rate Limit Label: LIGHT

Request Body

Content-Type: application/json
  • action (required)

    string, possible values: "activate", "deactivate", "clock_in", "clock_out" — The action types. `activate` - Activate a deactivated user. `deactivate` - Deactivate a user. `clock_in` - Clock in a user. `clock_out` - Clock out a user.

Example:

{
  "action": "deactivate"
}

Responses

Status: 200 OK
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `200` <br> Zoom Room and Admin users' status cannot be activated or deactivated. <br> **Error Code:** `300` <br> You cannot deactivate this user because the user has an upcoming Zoom Events scheduled. <br> **Error Code:** `3412` <br> * Your request to activate the user was not approved at this time because your account has reached the permitted maximum number of $maxAllowedNumber "Basic" users. Remove the existing "Basic" user(s) from your "Users" list or the "Pending Users" list before attempting to activate this user. * Your request to activate the user was not approved at this time because your account has reached the permitted maximum number of $maxAllowedNumber no-meeting-license users. Remove the existing no-meeting-license user(s) from your "Users" list or the "Pending Users" list before attempting to activate this user. <br> **Error Code:** `2033` <br> Your request to activate the "Basic" user was not approved because you have already reached the maximum "Basic" user limit allowed in your account. For additional help regarding this issue, contact the Zoom Customer Support team. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Get a user's token

  • Method: GET
  • Path: /users/{userId}/token
  • Tags: Users

Gets a user's Zoom token or Zoom Access Key (ZAK).

For user-level apps, pass the me value instead of the userId parameter.

Scopes: user:read,user:write,user:read:admin,user:write:admin,user_profile

Granular Scopes: user:read:token,user:read:token:admin

Rate Limit Label: LIGHT

Responses

Status: 200 **HTTP Status Code:** `200` If the request uses `type=token` and the account is not on the allowlist, the response will be: "Token is no longer supported. Please use ZAK token instead." If the account is on the allowlist with `type=token`, or if `type=zak` is used, the token will be returned.
Content-Type: application/json
  • token

    string — The user's ZAK or token value.

Example:

{
  "token": "6IjAwMDAwMSIsInptX3NrbSI6InptX"
}
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `124` <br> Access token is expired. Invalid access token. <br> **Error Code:** `2300` <br> This API endpoint is not recognized. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).

Revoke a user's SSO token

  • Method: DELETE
  • Path: /users/{userId}/token
  • Tags: Users

Revokes a user's SSO token. For user-level apps, pass the me value instead of the userId parameter.

After calling this API, the SSO user will be logged out of their current Zoom session.

Scopes: user:write:admin,user:write

Granular Scopes: user:delete:token,user:delete:token:admin

Rate Limit Label: LIGHT

Responses

Status: 204 **HTTP Status Code:** `204` Token deleted.
Status: 400 **HTTP Status Code:** `400` <br> Bad Request **Error Code:** `124` <br> Access token is expired. Invalid access token. <br> **Error Code:** `2300` <br> This API endpoint is not recognized. <br>
Status: 404 **HTTP Status Code:** `404` <br> Not Found **Error Code:** `1001` <br> User does not exist: $userId. <br>
Status: 429 **HTTP Status Code:** `429` <br> Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/).