Get credentials

View as Markdown

Create your API Key to access Build platform APIs and webhooks.

Credentials

  • API keys — Use for Server-to-server (S2S) calls. Keys stay on your backend.
  • SDK credentials - Use to authorize SDK calls from your client, to start and join Video SDK or Cobrowse SDK sessions.
  • API credentials — Use to generate short-lived client-to-backend API credentials. Use a JWT as it's short-lived and doesn't expose your secret.

Never embed raw API keys or secrets in client-side code.

Create API Key

  1. In Platform Studio, click Credentials.
  2. Click Create next to API Keys.
  3. Enter a Name. This is optional and internal only. If you don't chose a name, Platform Studio uses a default.
  4. Expires after. Choose an expiration option: Never, 30 days, 90 days, 180 days, 1 year.
  5. IP allowlist. Enter any IP addresses that you want to allow, or empty to allow all.
  6. Permissions. Choose scopes for APIs. These depend on your product. You can choose multiple permissions for multiple products for one key, or limit permissions as needed.
  7. Click Create key.
  8. API key created. You'll see a modal dialog with the key and the instructions: This is your new API key. Make sure to copy it before closing this dialog. For security reasons, it will not be shown again. Copy your key and put it in a key manager.
  9. Click Close. You'll get a confirmation dialog to confirm that you copied your key before the modal closes: Have you saved your key? It cannot be shown again once this dialog closes. You will not be able to access your key again. Click Close anyway or Go back.

Table of API keys

Click an action to manage your key:

  • Edit - Change the name and permissions. You can't change the expiration time.
  • Disable/re-enable - Choose to disable or re-enable a key.
  • Revoke your key - Choose to revoke your key. Applications using this key will immediately lose access. This action cannot be undone. This also removes the key from the table.

Review credential details

Click a key name to review the details about it.

  • Name - The key name.
  • ID - The ID, for internal support.
  • User ID - The ID of the user who created the key.
  • Permissions - The permissions the key has.
  • Status - The key status, Active or disabled.
  • Expires - The expiration date and time, or "Never".
  • Created - The date and time the key was created.
  • Updated - The date and time the key was updated.

Create JWT for API credentials

Create the JWT from your API key and secret. To generate it, choose an expiration time and click Generate under Generate test API credential token.

Expiration time

  • Expire in - Choose the time for the key to expire. 90 minutes, 1 day, or 1 week.
  • Expiration time - The expiration time for your JWT. For example: Your JWT token will expire at HH:MM PM, MONTH DD, YYYY.

Copy JWT

Copy your JWT from the JWT Token field.

Regnerate API Secret

Click Regenerate to regenerate your API Secret, if needed.

Make your first API call on Platform Studio

Use the Platform Studio  playground to make API calls to Zoom AI Services and explore their capabilities before integrating them into your application.

Select an AI Services API, configure its input and options, and run the request to view the results.

  1. Sign in to Platform Studio . Under AI Services, you can access Scribe, Summarize, and Translate.
  2. Select an AI Services API to make your first API call and explore its features.
    • Scribe API: In Input, make a recording, use a sample conversation, or enter a URL for a public audio or video file. Configure the language, model, and features, then select Run. View the results in Output in preview mode or as raw data.
    • Summarize API: In Input, use a sample transcript, paste transcript text, or upload a transcript. Configure the output language, then select Run. View the results in Output in preview mode or as raw data.
    • Translate API: In Input, paste at least 4,000 characters or upload a text file. Configure the source and target languages, then select Run. View the results in Output in preview mode or as raw data.

Example programmatic API call

Here is an example for how to call a Scribe API outside of the playground.

You can authenticate in the following ways:

  • Bearer token: Authorization: Bearer TOKEN using your API Key or JWT.
  • Custom header: x-api-key: ZOOM_API_KEY using your API Key.

When you send both the x-api-key custom header and a Bearer token, the x-api-key takes precedence.

Get your API key or JWT from Platform Studio.

Authenticate with Bearer token

This example calls the synchronous transcription endpoint for the Scribe API. Replace TOKEN with your JWT or API Key.

curl -X POST https://api.zoom.us/v2/aiservices/scribe/transcribe \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "file": "https://www.mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Samples/AFsp/M1F1-Alaw-AFsp.wav",
    "config": {
      "language": "en-US",
      "output_format": "json"
        }
    }'

You should get a response code of 200 OK and a response body that resembles the code that follows.

{
  "request_id": "AIAPISERVICE_a6ca3e...",
  "duration_sec": 5.869,
  "result": {
    "text_display": "Seed is needed to plant the spring corn.",
    "text_lexical": "seed is needed to plant the spring corn.",
    "segments": [
      {
        "start": 0,
        "end": 2.934,
        "channel": 0,
        "speaker": "Speaker 1",
        "text": "Seed is needed to plant the spring corn.",
        "words": [
          {
            "word": "Seed",
            "start": 0,
            "end": 0.366
          },
          // ...
        ]
      }
    ],
  }
}

Authenticate with Custom header

You can also authenticate by adding your API key to the custom x-api-key header.

curl --fail-with-body https://openapi-gateway.zoomdev.us/v2/aiservices/translator/translate \
  -H "x-api-key: ZOOM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "We'\''re launching the developer preview this week, get ready to try it out!",
    "config": {
      "source_language": "en-US",
      "target_languages": ["zh-CN"]
        }
    }'