Find an API

Search public APIs with auth details & Postman guides

← All APIs

Zoom API

zoom · Company

Company No Auth Free & Open telecom

The Zoom API allows developers to access information from Zoom. You can use this API to build private services or public applications on the [Zoom App Marketplace](http://marketplace.zoom.us). To learn how to get your credentials and create private/public applications, read our [Authorization Guide](https://marketplace.zoom.us/docs/guides/authorization/credentials). All endpoints are available via `https` and are located at `api.zoom.us/v2/`. For instance you can list all users on an account vi

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET List sub accounts

List all the sub accounts that have been created by a master account. Zoom allows only [approved partners](https://marketplace.zoom.us/docs/api-reference/master-account-apis) to use master APIs and manage sub accounts. Email the partner programs team at **[email protected]** for more de

https://api.apis.guru/v2/specs/zoom.us/2.0.0/accounts?page_size=30&page_number=1&next_page_token=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/zoom.us/2.0.0/accounts?page_size=30&page_number=1&next_page_token=example"
import requests
params = {
    "page_size": "30",
    "page_number": "1",
    "next_page_token": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/zoom.us/2.0.0/accounts",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/zoom.us/2.0.0/accounts');
url.searchParams.set('page_size', '30');
url.searchParams.set('page_number', '1');
url.searchParams.set('next_page_token', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/zoom.us/2.0.0/accounts")
	q := baseURL.Query()
	q.Set("page_size", "30")
	q.Set("page_number", "1")
	q.Set("next_page_token", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/zoom.us/2.0.0/accounts")
uri.query = URI.encode_www_form({
  "page_size" => "30",
  "page_number" => "1",
  "next_page_token" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/zoom.us/2.0.0/accounts?" . http_build_query([
    "page_size" => "30",
    "page_number" => "1",
    "next_page_token" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET List archived files

Zoom’s [archiving solution](https://support.zoom.us/hc/en-us/articles/360050431572-Archiving-Meeting-and-Webinar-data) allows account administrators to set up an automated mechanism to record, collect and archive meeting data to a 3rd party platform of their choice and hence, satisfy FINRA and/ or o

https://api.apis.guru/v2/specs/zoom.us/2.0.0/archive_files?to=2024-12-31&from=2024-01-01&page_size=30&next_page_token=example&query_data_type=meeting_start_time

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/zoom.us/2.0.0/archive_files?to=2024-12-31&from=2024-01-01&page_size=30&next_page_token=example&query_data_type=meeting_start_time"
import requests
params = {
    "to": "2024-12-31",
    "from": "2024-01-01",
    "page_size": "30",
    "next_page_token": "example",
    "query_data_type": "meeting_start_time"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/zoom.us/2.0.0/archive_files",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/zoom.us/2.0.0/archive_files');
url.searchParams.set('to', '2024-12-31');
url.searchParams.set('from', '2024-01-01');
url.searchParams.set('page_size', '30');
url.searchParams.set('next_page_token', 'example');
url.searchParams.set('query_data_type', 'meeting_start_time');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/zoom.us/2.0.0/archive_files")
	q := baseURL.Query()
	q.Set("to", "2024-12-31")
	q.Set("from", "2024-01-01")
	q.Set("page_size", "30")
	q.Set("next_page_token", "example")
	q.Set("query_data_type", "meeting_start_time")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/zoom.us/2.0.0/archive_files")
uri.query = URI.encode_www_form({
  "to" => "2024-12-31",
  "from" => "2024-01-01",
  "page_size" => "30",
  "next_page_token" => "example",
  "query_data_type" => "meeting_start_time"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/zoom.us/2.0.0/archive_files?" . http_build_query([
    "to" => "2024-12-31",
    "from" => "2024-01-01",
    "page_size" => "30",
    "next_page_token" => "example",
    "query_data_type" => "meeting_start_time"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET Search company contacts

A user under an organization's Zoom account has internal users listed under Company Contacts in the Zoom Client. Use this API to search users that are in the company contacts of a Zoom account. Using the `search_key` query parameter, provide either first name, last name or the email address of the u

https://api.apis.guru/v2/specs/zoom.us/2.0.0/contacts?page_size=1&search_key=example&next_page_token=example&query_presence_status=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/zoom.us/2.0.0/contacts?page_size=1&search_key=example&next_page_token=example&query_presence_status=example"
import requests
params = {
    "page_size": "1",
    "search_key": "example",
    "next_page_token": "example",
    "query_presence_status": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/zoom.us/2.0.0/contacts",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/zoom.us/2.0.0/contacts');
url.searchParams.set('page_size', '1');
url.searchParams.set('search_key', 'example');
url.searchParams.set('next_page_token', 'example');
url.searchParams.set('query_presence_status', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/zoom.us/2.0.0/contacts")
	q := baseURL.Query()
	q.Set("page_size", "1")
	q.Set("search_key", "example")
	q.Set("next_page_token", "example")
	q.Set("query_presence_status", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/zoom.us/2.0.0/contacts")
uri.query = URI.encode_www_form({
  "page_size" => "1",
  "search_key" => "example",
  "next_page_token" => "example",
  "query_presence_status" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/zoom.us/2.0.0/contacts?" . http_build_query([
    "page_size" => "1",
    "search_key" => "example",
    "next_page_token" => "example",
    "query_presence_status" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with Zoom API?

Zoom API is a Company API. Developers commonly use company APIs for:

  • enriching CRM records with company firmographics
  • building lead-generation and prospecting tools
  • verifying business identity and registration details
  • monitoring competitors and market intelligence
  • powering B2B data enrichment pipelines

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Zoom API is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗