Zoom Account API

The Account API from Zoom — 10 operation(s) for account.

Operations 10

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /ma/account/billing/update Update a sub account's billing information · Account billing update #
Ask an LLM
“Can a master account change the billing address on one of its sub accounts?”
“Which billing contact fields can I update for a sub account?”
Tell an agent
Update the billing phone for sub account {account_id} to {phone_number}.
Set sub account {account_id}'s billing address to {address}, {city}, {state} {zip}.
POST /ma/account/create Create a sub account under the master account · Account create #
Ask an LLM
“How do I create a new sub account under my master account?”
“What privilege does a master account need before it can create sub accounts?”
Tell an agent
Create a sub account owned by {first_name} {last_name} at {email} with password {password}.
Open a new sub account for {email} ({first_name} {last_name}), password {password}, capacity {meeting_capacity}.
POST /ma/account/delete Delete a sub account · Account delete #
Ask an LLM
“Can I remove a sub account from under my master account?”
“What identifies the sub account I want to delete?”
Tell an agent destructive · confirm first
Delete sub account {account_id}.
Remove the sub account {account_id} from the master account.
POST /ma/account/get Get a sub account's details · Account get #
Ask an LLM
“Who owns a particular sub account under my master account?”
“Can I look up one sub account by its account ID?”
Tell an agent
Get the details of sub account {account_id}.
Show me the owner of sub account {account_id}.
POST /ma/account/list List all sub accounts · Account list #
Ask an LLM
“Which sub accounts sit under my master account?”
“Can I see every sub account the master account manages?”
Tell an agent
List all sub accounts under the master account.
List sub accounts using API key {api_key} and secret {api_secret}.
POST /ma/account/plan/add Add an additional plan to a sub account · Account plan add #
Ask an LLM
“Can I add an extra plan to a sub account that the master account pays for?”
“Is adding a base plan allowed, or only additional plans?”
Tell an agent
Add the additional plan {plan} to sub account {account_id}.
Attach add-on plan {plan} to paid sub account {account_id}.
POST /ma/account/plan/get Get a sub account's plans · Account plan get #
Ask an LLM
“What plans is a sub account currently on?”
“Can I check a sub account's subscription details?”
Tell an agent
Get the plan information for sub account {account_id}.
Show which plans sub account {account_id} is subscribed to.
POST /ma/account/plan/subscribe Subscribe a sub account to plans · Account plan subscribe #
Ask an LLM
“How do I start a paid subscription for a sub account?”
“Can I bundle webinar, recording and audio plans into a sub account's subscription?”
Tell an agent
Subscribe sub account {account_id} to base plan {plan_base}, billing {first_name} {last_name} at {phone_number}.
Subscribe {account_id} to {plan_base} with webinar plan {plan_webinar}, billed to {address}, {city}, {state} {zip}, {country}.
POST /ma/account/plan/update Change a sub account's base or additional plan · Account plan update #
Ask an LLM
“Can I upgrade the base plan on a sub account the master account pays for?”
“What is the difference between updating a base plan and an additional plan here?”
Tell an agent
Change sub account {account_id}'s {type} plan to {plan}.
Switch the existing plan of type {type} on {account_id} to {plan}.
POST /ma/account/update Update a sub account's settings · Account update #
Ask an LLM
“Can I change meeting capacity or login enforcement for an existing sub account?”
“Which options can I toggle on a sub account after it's created?”
Tell an agent
Set meeting capacity on sub account {account_id} to {meeting_capacity}.
Restrict sub account {account_id} logins to domains {enforce_login_domains}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zoom-account-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zoom-account-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Zoom REST Account API
  description: API Description
  contact:
    name: Zoom Developers
    url: https://zoom.us/developer
    email: developer@zoom.us
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  version: 1.0.0
servers:
- url: https://api.zoom.us/v1
security:
- api_key: []
- api_secret: []
tags:
- name: Account
  description: Account operations
paths:
  /ma/account/billing/update:
    post:
      tags:
      - Account
      description: Update Billing Information for a sub account of the master account on Zoom.
      operationId: accountBillingUpdate
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
                first_name:
                  type: string
                  description: Sold To Contact’s first name.
                last_name:
                  type: string
                  description: Sold To Contact’s last name.
                phone_number:
                  type: string
                  description: Sold To Contact’s phone number.
                address:
                  type: string
                  description: Sold To Contact’s address.
                apt:
                  type: string
                  description: Sold To Contact’s Apt/Suite.
                city:
                  type: string
                  description: Sold To Contact’s city.
                country:
                  type: string
                  description: Sold To Contact’s country. For this parameter value please refer to the id value in country list JSON file
                state:
                  type: string
                  description: Sold To Contact’s state. If country value is "US" or "CA", for this parameter value please refer to the id value in state list JSON file
                zip:
                  type: string
                  description: Sold To Contact’s zip/postal.
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                id: 'unique_id '
                updated_at: 2012-11-25 12:00:00+00:00
      summary: Account billing update
      x-summary-source: derived
  /ma/account/create:
    post:
      tags:
      - Account
      description: 'Create a sub account of the master account on Zoom, return the created sub account id and owner id.


        Your account must be a master account and have this privilege to create sub account. Zoom only assign this privilege to trusted partner.


        User will not receive the confirmation email.'
      operationId: accountCreate
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - email
              - first_name
              - last_name
              - password
              type: object
              properties:
                email:
                  type: string
                  description: A valid email address. It must be unique in Zoom service. If an email address is existed, a "user existing" error message will be return.
                first_name:
                  type: string
                  description: User’s first name.
                last_name:
                  type: string
                  description: User’s last name.
                password:
                  type: string
                  description: User’s password.
                enable_share_rc:
                  type: boolean
                  description: Enable Share Virtual Room Connector.
                  default: false
                share_rc:
                  type: string
                  description: Virtual Room Connector, multiple value separated by comma.
                enable_share_mc:
                  type: boolean
                  description: Enable Share Meeting Connector.
                  default: false
                share_mc:
                  type: string
                  description: Meeting Connector, multiple value separated by comma.
                pay_mode:
                  type: string
                  description: Who will pay for this account? 0 means Sub Account Holders Pays, 1 means Master Account Holder Pays.
                  default: '1'
                collection_method:
                  type: string
                  description: Collection Method? 0 means Automatic (billing online), 1 means Manual (send invoice).
                  default: '1'
                enable_pstn:
                  type: boolean
                  description: The value should be true or false, by default is true.
                  default: true
                enable_enforce_login:
                  type: boolean
                  description: Only signed-in users can join this meeting.
                  default: false
                enable_enforce_login_sd:
                  type: boolean
                  description: Only signed-in users with specified domains can join meetings.
                  default: false
                enforce_login_domains:
                  type: string
                  description: Domains of signed-in users.
                meeting_capacity:
                  type: string
                  description: Account’ meeting capacity, max of 100.
                disable_cmr_reminder:
                  type: boolean
                  description: Disable cloud recording reminder.
                  default: false
                enable_only_host_download_cmr:
                  type: boolean
                  description: Enable Only the host can download cloud recordings.
                  default: false
                enable_same_account_access_cmr:
                  type: boolean
                  description: Enable Only users on my account can access cloud recordings.
                  default: false
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                id: unique_id
                owner_id: unique_id
                owner_email: email_address
                created_at: 2012-11-25 12:00:00+00:00
      summary: Account create
      x-summary-source: derived
  /ma/account/delete:
    post:
      tags:
      - Account
      description: Delete the sub account.
      operationId: accountDelete
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                id: unique_id
                deleted_at: 2012-11-25 12:00:00+00:00
      summary: Account delete
      x-summary-source: derived
  /ma/account/get:
    post:
      tags:
      - Account
      description: 'Get a sub account of the master account on Zoom, return the created sub account id and owner id.


        Your account must be a master account and have this privilege to get sub account. Zoom only assign this privilege to trusted partner.


        This API will let the master account owner to get sub account API key pair. This is a private feature and needs to be enabled by zoom support. If you need this function, please open a case with support to enable this API.'
      operationId: accountGet
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                id: unique_id
                owner_id: unique_id
                owner_email: email_address
                created_at: 2012-11-25 12:00:00+00:00
      summary: Account get
      x-summary-source: derived
  /ma/account/list:
    post:
      tags:
      - Account
      description: List all the sub account under the master account.
      operationId: accountList
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - api_key
              - api_secret
              type: object
              properties:
                api_key:
                  type: string
                  description: Your API Key
                api_secret:
                  type: string
                  description: Your API Secret
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                page_count: 1
                page_number: 1
                page_size: 30
                total_records: 3
                subAccounts:
                - id: unique_id
                  owner_email: email_address
                  created_at: 2015-01-27T140508Z
      summary: Account list
      x-summary-source: derived
  /ma/account/plan/add:
    post:
      tags:
      - Account
      description: 'Add a plan for a sub account of the master account on Zoom.


        Only for the sub account which is a paid account and paid by master account.


        Only add an Additional plan for a sub account.'
      operationId: accountPlanAdd
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              - plan
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
                plan:
                  type: string
                  description: Additional Plan. See [Plans](#plans) for more details
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                id: unique_id
                updated_at: 2012-11-25 12:00:00+00:00
      summary: Account plan add
      x-summary-source: derived
  /ma/account/plan/get:
    post:
      tags:
      - Account
      description: Get plans information for a sub account of the master account on Zoom.
      operationId: accountPlanGet
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                email: email_address
                first_name: Zoomie
                last_name: Userton
                phone_number: '123456789'
                address: address
                apt: apt
                city: city
                state: state
                zip: '12345'
                country: country
                plan_base:
                  type: monthly
                  hosts: 9
                plan_zoom_rooms:
                  type: zroom_monthly
                  hosts: 9
                plan_room_connector:
                  type: roomconnector_yearly
                  hosts: 9
                plan_large_meeting:
                - type: large100_monthly
                  hosts: 9
                - type: large200_monthly
                  hosts: 9
                - type: large300_yearly
                  hosts: 9
                - type: large500_yearly
                  hosts: 9
                plan_webinar:
                - type: webinar100_monthly
                  hosts: 9
                - type: webinar500_yearly
                  hosts: 9
                - type: webinar1000_yearly
                  hosts: 9
                - type: webinar3000_monthly
                  hosts: 9
                - type: webinar5000_monthly
                  hosts: 9
                - type: webinar10000_monthly
                  hosts: 9
                plan_recording: cmr_monthly_commitment_500
                plan_audio:
                  type: tollfree_monthly_commitment_100
                  tollfree_country: AT
                  premium_country: TW
                  callout: 1
                  ddi_numbers: 66
      summary: Account plan get
      x-summary-source: derived
  /ma/account/plan/subscribe:
    post:
      tags:
      - Account
      description: Subscribe plans for a sub account of the master account on Zoom.
      operationId: accountPlanSubscribe
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              - address
              - city
              - country
              - first_name
              - last_name
              - phone_number
              - plan_base
              - state
              - zip
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
                first_name:
                  type: string
                  description: Sold To Contact’s first name.
                last_name:
                  type: string
                  description: Sold To Contact’s last name.
                phone_number:
                  type: string
                  description: Sold To Contact’s phone number.
                address:
                  type: string
                  description: Sold To Contact’s address.
                apt:
                  type: string
                  description: Sold To Contact’s Apt/Suite.
                city:
                  type: string
                  description: Sold To Contact’s city.
                country:
                  type: string
                  description: Sold To Contact’s country. For this parameter value please refer to the id value in country list JSON file
                state:
                  type: string
                  description: Sold To Contact’s state. If country value is "US" or "CA", for this parameter value please refer to the id value in state list JSON file
                zip:
                  type: string
                  description: Sold To Contact’s zip/postal.
                plan_base:
                  type: string
                  description: Base Plan.  See [Plans](#plans) for more details
                plan_zoom_rooms:
                  type: string
                  description: Additional Zoom Rooms Plan.  See [Plans](#plans) for more details
                plan_room_connector:
                  type: string
                  description: Additional H.323/SIP Room Connector Plan.  See [Plans](#plans) for more details
                plan_large_meeting:
                  type: string
                  description: Additional Large Meeting Plan.  See [Plans](#plans) for more details
                plan_webinar:
                  type: string
                  description: Additional Webinar Plan.  See [Plans](#plans) for more details
                plan_recording:
                  type: string
                  description: Additional Cloud Recording Plan.  See [Plans](#plans) for more details
                plan_audio:
                  type: string
                  description: Additional Audio Conferencing Plan.  See [Plans](#plans) for more details
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                email: email_address
                first_name: Zoomie
                last_name: Userton
                phone_number: '123456789'
                address: address
                apt: apt
                city: city
                state: state
                zip: '12345'
                country: country
                plan_base:
                  type: monthly
                  hosts: 9
                plan_zoom_rooms:
                  type: zroom_monthly
                  hosts: 9
                plan_room_connector:
                  type: roomconnector_yearly
                  hosts: 9
                plan_large_meeting:
                - type: large200_monthly
                  hosts: 9
                - type: large300_yearly
                  hosts: 9
                - type: large500_yearly
                  hosts: 9
                plan_webinar:
                - type: webinar100_monthly
                  hosts: 9
                - type: webinar500_yearly
                  hosts: 9
                - type: webinar1000_yearly
                  hosts: 9
                - type: webinar3000_monthly
                  hosts: 9
                - type: webinar5000_monthly
                  hosts: 9
                - type: webinar10000_monthly
                  hosts: 9
                plan_recording: cmr_monthly_commitment_500
                plan_audio:
                  type: tollfree_monthly_commitment_100
                  tollfree_country: AT
                  premium_country: TW
                  callout: 1
                  ddi_numbers: 66
      summary: Account plan subscribe
      x-summary-source: derived
  /ma/account/plan/update:
    post:
      tags:
      - Account
      description: 'Update a plan for a sub account of the master account on Zoom.


        Only for the sub account which is a paid account and paid by master account.


        Could update a base plan or an additional plan.'
      operationId: accountPlanUpdate
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              - plan
              - type
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
                type:
                  type: string
                  description: Plan Type. 1 means Base Plan, 2 means Additional Plan.
                  default: '1'
                plan:
                  type: string
                  description: A Base Plan or an Additional Plan. See [Plans](#plans) for more details
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                id: w40hUJRpRmmkx4uPXczdHg
                updated_at: 2012-11-25 12:00:00+00:00
      summary: Account plan update
      x-summary-source: derived
  /ma/account/update:
    post:
      tags:
      - Account
      description: Update a sub account of the master account on Zoom, return the updated sub account id.
      operationId: accountUpdate
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - account_id
              type: object
              properties:
                account_id:
                  type: string
                  description: The sub account ID.
                enable_share_rc:
                  type: string
                  description: Enable Share Virtual Room Connector.
                share_rc:
                  type: string
                  description: Virtual Room Connector, multiple value separated by comma.
                enable_share_mc:
                  type: string
                  description: Enable Share Meeting Connector.
                share_mc:
                  type: string
                  description: Meeting Connector, multiple value separated by comma.
                pay_mode:
                  type: string
                  description: Who will pay for this account? 0 means Sub Account Holders Pays, 1 means Master Account Holder Pays.
                collection_method:
                  type: string
                  description: Collection Method? 0 means Automatic (billing online), 1 means Manual (send invoice).
                enable_pstn:
                  type: boolean
                  description: The value should be true or false, by default is true.
                  default: true
                enable_call_out:
                  type: boolean
                  description: The value should be true or false. If it is true, the user under this account will follow MA call out type.
                  default: false
                enable_enforce_login:
                  type: boolean
                  description: Only signed-in users can join this meeting.
                  default: false
                enable_enforce_login_sd:
                  type: boolean
                  description: Only signed-in users with specified domains can join meetings.
                  default: false
                enforce_login_domains:
                  type: string
                  description: Domains of signed-in users.
                meeting_capacity:
                  type: string
                  description: Account’ meeting capacity, max of 100.
                disable_cmr_reminder:
                  type: boolean
                  description: Disable cloud recording reminder.
                  default: false
                enable_only_host_download_cmr:
                  type: boolean
                  description: Enable Only the host can download cloud recordings.
                  default: false
                enable_same_account_access_cmr:
                  type: boolean
                  description: Enable Only users on my account can access cloud recordings.
                  default: false
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              example:
                id: unique_id
                updated_at: 2012-11-25 12:00:00+00:00
      summary: Account update
      x-summary-source: derived
components:
  securitySchemes:
    api_key:
      type: apiKey
      name: api_key
      in: query
    api_secret:
      type: apiKey
      name: api_secret
      in: query
externalDocs:
  description: Zoom REST API Documentation
  url: https://zoom.github.io/api