Login to follow
Zoom Integration Via Api

Zoom Integration Via Api (ODC)

Stable version 0.1.0 (Compatible with ODC)
Uploaded on 13 November 2025 by Ayush Jain
Zoom Integration Via Api

Zoom Integration Via Api (ODC)

Documentation
0.1.0

Zoom Integration Documentation with OutSystems ODC Application

Step 1: Create a Zoom Developer Account

  1. Go to Zoom App Marketplace.
  2. Sign in with your Zoom account. If you don’t have one, create a Zoom account first.
  3. Once signed in, click on your profile icon and go to "Manage" > "Developer Portal".

Step 2: Create an App

  1. In the Developer Portal, click “Build App”.
  2. Choose the app type:
    • For scheduling meetings via API, choose OAuth (recommended for secure integrations).
  3. Click “Create” and give your app a name.

Step 3: Configure OAuth App

  1. App Credentials:
    • Zoom will generate a Client ID and Client Secret.
  2. Redirect URL for OAuth:
    • Add the URL where Zoom should redirect after authentication (e.g., your app’s callback URL).

Step 4: Set App Permissions (Scopes)

To schedule meetings, you need the following scopes:

  • user:read:admin – to read user info.
  • meeting:write:admin – to create and manage meetings.
  • Optionally:
    • calendar:read – if integrating with calendar.
    • recording:read – if accessing meeting recordings.

Step 5: Get Client ID, Client Secret and Application id

  • After creating the app, Zoom will provide:
    • Client ID
    • Client Secret
    • Application id

Step 6: Get Access Token for Api Calls: (before each Api call)

Post: https://zoom.us/oauth/token

Authorization: "Basic "+Base64 Encoded (ClientID+":"+ClientSecret)

Content-Type: application/x-www-form-urlencoded

Request: grant_type=account_credentials&account_id=oQsHWNPj******************** (send this in body from Request input parameter)

Response (Save/Update this token for Api calls):

{

"access_token": "eyJzdiI6IjAwMDAwMiIsImFsZyI6IkhTNTEyIiwid******************************",

"token_type": "bearer",

"expires_in": 3600,

"scope": "xyz”,

"api_url": "https://api-us.zoom.us"

}

Step 7: Schedule Meeting:

Post: https://api.zoom.us/v2/users/me/meetings

Authorization: "Bearer " + TokenResponse.Access_token

Content-Type: application/json

Request:


{

"topic": "Team Sync",

"type": 2, // 1: Instant, 2: Scheduled, 3: Recurring with no fixed time, 8: Recurring with fixed time

"start_time": "2025-11-08T10:00:00Z",

"duration": 60,

"timezone": "Asia/Kolkata",

"password": "123456",

"agenda": "Weekly team sync-up",

"settings": {

"host_video": true,

"participant_video": false,

"cn_meeting": false,

"in_meeting": false,

"join_before_host": true,

"mute_upon_entry": true,

"watermark": false,

"use_pmi": false,

"approval_type": 2, // 0: Automatically, 1: Manually, 2: No registration

"registration_type": 1,

"audio": "both", // "telephony", "voip", "both"

"auto_recording": "cloud", // "local", "cloud", "none"

"enforce_login": false,

"enforce_login_domains": "",

"alternative_hosts": "host1@example.com,host2@example.com",

"close_registration": false,

"show_share_button": true,

"allow_multiple_devices": true,

"registrants_email_notification": true,

"meeting_authentication": false

}

}


Response:

{

"uuid": "gkwifBt7****************",

"id": 81909117571,

"host_id": "MruJZfAoTp****************",

"host_email": "Ayush**********@outlook.com",

"topic": "pop",

"type": 2,

"status": "waiting",

"start_time": "2025-11-10T15:00:00Z",

"duration": 60,

"timezone": "Asia/Kolkata",

"agenda": "Weekly team sync-up",

"created_at": "2025-11-08T02:57:03Z",

"start_url": "https://us05web.zoom.us/s/81909117571?zak=eyJ0eXAiOiJ********************************** ",

"join_url": "https://us05web.zoom.us/j/81909117571?pwd=********************************",

"password": "123456",

"h323_password": "123456",

"pstn_password": "123456",

"encrypted_password": "ToFGVGT0QCO1*************************",

"settings": {

"host_video": true,

"participant_video": false,

"cn_meeting": false,

"in_meeting": false,

"join_before_host": true,

"jbh_time": 0,

"mute_upon_entry": true,

"watermark": false,

"use_pmi": false,

"approval_type": 2,

"audio": "both",

"auto_recording": "none",

"auto_add_recording_to_video_management": {

"enable": false

},

"enforce_login": false,

"enforce_login_domains": "",

"alternative_hosts": "",

"alternative_host_update_polls": false,

"alternative_host_manage_meeting_summary": false,

"alternative_host_manage_cloud_recording": false,

"close_registration": false,

"show_share_button": false,

"allow_multiple_devices": false,

"registrants_confirmation_email": true,

"waiting_room": true,

"waiting_room_options": {

"mode": "follow_setting"

},

"request_permission_to_unmute_participants": false,

"registrants_email_notification": true,

"meeting_authentication": false,

"encryption_type": "enhanced_encryption",

"approved_or_denied_countries_or_regions": {

"enable": false

},

"breakout_room": {

"enable": false

},

"internal_meeting": false,

"continuous_meeting_chat": {

"enable": false,

"auto_add_invited_external_users": false,

"auto_add_meeting_participants": false

},

"participant_focused_meeting": false,

"push_change_to_calendar": false,

"resources": [],

"allow_host_control_participant_mute_state": false,

"alternative_hosts_email_notification": true,

"show_join_info": false,

"device_testing": false,

"focus_mode": false,

"meeting_invitees": [],

"private_meeting": false,

"email_notification": true,

"host_save_video_order": false,

"sign_language_interpretation": {

"enable": false

},

"email_in_attendee_report": false

},

"creation_source": "open_api",

"pre_schedule": false

}

Steps: 8 Get all meetings:

Get: https://api.zoom.us/v2/users/me/meetings

Authorization: "Bearer " + TokenResponse.Access_token

Content-Type: application/json

Response:

{

"page_size": 30,

"total_records": 9,

"next_page_token": "",

"meetings": [

{

"uuid": "VTA++Nw6**********************",

"id": 8212911**********,

"host_id": "MruJZfAoTp**************",

"topic": "ODC Sync",

"type": 2,

"start_time": "2025-11-07T10:46:03Z",

"duration": 60,

"timezone": "Asia/Calcutta",

"created_at": "2025-11-07T10:46:04Z",

"join_url": "https://us05web.zoom.us/j/82129110059?pwd=********************"

},

]

}

📌 Developer Credit

Developed by: Ayush Jain (AJ)
Description:
A unified solution for all your Zoom integration needs — including meeting scheduling, viewing meetings, sending invites, managing recordings, and using multiple host functionalities — built seamlessly within OutSystems ODC.