Cannot Obtain Auth Token for Account-Level App

API Endpoint(s) and/or Zoom API Event(s)

GET /v2/meetings/:meetingId/recordings

Description

I am trying to generate a valid access token for making API calls with my Account-Level “General” app to fetch meeting recordings (via the /recordings endpoint).

I have four apps connected to my Zoom account: three Server-to-Server OAuth apps (Account-Level) and one General (Account-Level) app. Using the S2S credentials, I am able to generate valid tokens and make requests to appropriate endpoints for those apps. However, when attempting to fetch recordings using the Account-level app, I run into issues generating a token for this specific app.

I suspect the account-level app may use a different OAuth flow compared to the S2S apps, but attempts to use its Client ID and Client Secret with the /oauth/token endpoint have failed. Previous calls for S2S to this endpoint have used an Account ID which I do not seem to have for this app.

My ultimate goal is to retrieve meeting recordings using the /recordings endpoint via my General app as it has greater scopes than my S2S are entitled to.


Error

  1. Error Message:
    When using the Account-level app’s Client ID and Client Secret to call https://zoom.us/oauth/token, I receive:

    {
      "reason": "Invalid client_id or client_secret",
      "error": "invalid_client"
    }
    
  2. When using an access token generated from my Server-to-Server OAuth apps for the /recordings endpoint, I receive:

    {
      "code": 124,
      "message": "Invalid access token."
    }
    

How To Reproduce

Step 1: Generate an Access Token
Request URL:

POST https://zoom.us/oauth/token  
Authorization: Basic base64Encode(clientId:clientSecret)  
Content-Type: application/x-www-form-urlencoded  
Body: grant_type=client_credentials  

App Type: General Account-Level
Issue: Returns “invalid_client” error.

Step 2: Call /recordings endpoint
Request URL:

GET https://api.zoom.us/v2/meetings/:meetingId/recordings  
Headers:  
Authorization: Bearer {accessToken}  

Authentication Method: Access token generated using Server-to-Server OAuth app credentials.
Issue: Returns “Invalid access token” error.


If anyone has insights on how to generate valid tokens for a General Account-Level app, that would be greatly appreciated! I’m specifically looking for the correct authentication flow for an app with only a client_id and client_secret.

hi @afarmer ,

Yes, server to server auth is different and more simple
You need to request an access token
have a look at

all the best

John