{"id":21319504,"url":"https://github.com/zoom/zoom-api-jwt","last_synced_at":"2025-07-12T04:31:53.064Z","repository":{"id":48096964,"uuid":"138790994","full_name":"zoom/zoom-api-jwt","owner":"zoom","description":"Sample NodeJS app to call Zoom's APIs using Json Web Token (JWT)","archived":false,"fork":false,"pushed_at":"2021-08-06T21:17:21.000Z","size":30,"stargazers_count":76,"open_issues_count":2,"forks_count":49,"subscribers_count":7,"default_branch":"master","last_synced_at":"2023-02-26T10:17:09.905Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zoom.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-06-26T20:41:19.000Z","updated_at":"2022-11-22T07:01:31.000Z","dependencies_parsed_at":"2022-08-12T18:31:39.934Z","dependency_job_id":null,"html_url":"https://github.com/zoom/zoom-api-jwt","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoom%2Fzoom-api-jwt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoom%2Fzoom-api-jwt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoom%2Fzoom-api-jwt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoom%2Fzoom-api-jwt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zoom","download_url":"https://codeload.github.com/zoom/zoom-api-jwt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225795416,"owners_count":17525316,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-21T19:42:27.855Z","updated_at":"2024-11-21T19:42:28.509Z","avatar_url":"https://github.com/zoom.png","language":"JavaScript","readme":"# Make Zoom API call using JWT\n\n\u003e With this app, you can learn how to generate JWT and use the JWT to authenticate and make a Zoom API call. Follow the steps below to install the app and run it on your computer. \n\n## Getting Started\n\n### Install\n\nClone the repo using git clone.\n`git clone https://github.com/zoom/zoom-api-jwt.git`\n\n\u003e Install the dependent node modules by typing `npm-install` in your terminal.\n\n The app requires the following modules:\n\n \u003ejsonwebtoken : Provides a way to generate JWT with jwt.sign() method. \n \u003erequest-promise: Provides a way to Request call objects with .then() method.\n \u003eexpress: Web application framework for Node.js.\n\n### Quick Start\n\nTo generate JWT, you have to provide your API Key and API Secret credentials. You can locate these credentials in your app’s configuration by going to `Zoom Marketplace \u003e Manage \u003e \u003cYourApp\u003e \u003e App Credentials`. If you haven’t already registered your app in the marketplace, you will have to create an app here to get your credentials. For the purpose of this sample app, you only need your credentials and you do not have to fill out any additional information while registering the app.\n\n\u003e In the config.js file, input your client API Key \u0026 Secret credentials.\n\n``` \nconst config = {\n    production:{\t\n        APIKey: 'Your environment API Key',\n        APISecret: 'Your environment API Secret'\n    }\n};\n```\n\n\u003e Start the node app.\nType `node index.js` in your terminal from within the project directory.\n\n\u003e Enter your email and view the API's response.\n When you run the app, you will see a form that asks for an email address. Provide your Zoom email address and you will see your JWT and other information related to your account. \n\nThe following code snippet generates the JWT using your Client Credentials:\n\n``` \nconst payload = {\n    iss: config.APIKey,\n    exp: (new Date()).getTime() + 5000\n};\n\nconst token = jwt.sign(payload, config.APISecret);\n```\n\nAfter you submit an email address, it will post the entered information and the email will be used to make a **Retrieve User** Zoom API call and you will be redirected to localhost:3000/userinfo page that displays the API response - information related to the user. This is achieved through an HTTP POST method. You can make API calls to other ZOOM endpoints by replacing the uri shown in the snippet below with another uri of your choice. You can find more about ZOOM APIs here. \n\n```\nconst options = {\n    uri: `https://api.zoom.us/v2/users/${email}`, \n    qs: {\n        'status': 'active' \n    },\n    auth: {\n        'bearer': token\n    },\n    headers: {\n        'User-Agent': 'Zoom-api-Jwt-Request',\n        'content-type': 'application/json'\n    },\n    json: true // Parse the JSON string in the response\n};\n```\n\n### For more Information about Zooms API and JWT\n\nDocumentation for JWT is available [here](https://marketplace.zoom.us/docs/guides/authorization/jwt). You can learn more about Zoom API [here](https://marketplace.zoom.us/docs/api-reference/introduction).\n\n## Need help?\n\nIf you're looking for help, try [Developer Support](https://devsupport.zoom.us) or our [Developer Forum](https://devforum.zoom.us). Priority support is also available with [Premier Developer Support](https://zoom.us/docs/en-us/developer-support-plans.html) plans.\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoom%2Fzoom-api-jwt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzoom%2Fzoom-api-jwt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoom%2Fzoom-api-jwt/lists"}