Chilkat Online Tools

Objective-C / Zoom API / Get locked settings

Back to Collection Items

#import <CkoHttp.h>
#import <CkoJsonObject.h>
#import <CkoHttpResponse.h>
#import <CkoStringBuilder.h>
#import <NSString.h>

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

CkoHttp *http = [[CkoHttp alloc] init];
BOOL success;

CkoJsonObject *queryParams = [[CkoJsonObject alloc] init];
[queryParams UpdateString: @"option" value: @"quis officia in reprehenderit"];
[queryParams UpdateString: @"custom_query_fields" value: @"quis officia in reprehenderit"];

// Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = @"<access_token>";

CkoHttpResponse *resp = [http QuickRequestParams: @"GET" url: @"https://api.zoom.us/v2/accounts/:accountId/lock_settings" json: queryParams];
if (http.LastMethodSuccess == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

CkoStringBuilder *sbResponseBody = [[CkoStringBuilder alloc] init];
[resp GetBodySb: sbResponseBody];

CkoJsonObject *jResp = [[CkoJsonObject alloc] init];
[jResp LoadSb: sbResponseBody];
jResp.EmitCompact = NO;

NSLog(@"%@",@"Response Body:");
NSLog(@"%@",[jResp Emit]);

int respStatusCode = [resp.StatusCode intValue];
NSLog(@"%@%d",@"Response Status Code = ",respStatusCode);
if (respStatusCode >= 400) {
    NSLog(@"%@",@"Response Header:");
    NSLog(@"%@",resp.Header);
    NSLog(@"%@",@"Failed.");

    return;
}

// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)

// {
//   "schedule_meeting": {
//     "host_video": true,
//     "participant_video": true,
//     "audio_type": true,
//     "join_before_host": false,
//     "enforce_login": false,
//     "enforce_login_with_domains": false,
//     "enforce_login_domains": "ut Excepteur aute",
//     "not_store_meeting_topic": false,
//     "require_password_for_scheduling_new_meetings": true,
//     "require_password_for_instant_meetings": false,
//     "require_password_for_pmi_meetings": false,
//     "use_pmi_for_scheduled_meetings": true,
//     "use_pmi_for_instant_meetings": false,
//     "meeting_authentication": false,
//     "embed_password_in_join_link": false
//   },
//   "in_meeting": {
//     "e2e_encryption": true,
//     "chat": true,
//     "private_chat": false,
//     "auto_saving_chat": false,
//     "entry_exit_chime": "in ut",
//     "feedback": true,
//     "post_meeting_feedback": true,
//     "co_host": true,
//     "polling": true,
//     "attendee_on_hold": false,
//     "show_meeting_control_toolbar": true,
//     "allow_show_zoom_windows": false,
//     "annotation": true,
//     "whiteboard": false,
//     "remote_control": false,
//     "webinar_question_answer": true,
//     "anonymous_question_answer": true,
//     "breakout_room": false,
//     "closed_caption": false,
//     "far_end_camera_control": false,
//     "group_hd": true,
//     "virtual_background": false,
//     "alert_guest_join": true,
//     "auto_answer": true,
//     "sending_default_email_invites": true,
//     "use_html_format_email": false,
//     "dscp_marking": true,
//     "stereo_audio": false,
//     "original_audio": false,
//     "screen_sharing": true,
//     "custom_data_center_regions": true,
//     "meeting_reactions": false,
//     "file_transfer": false,
//     "request_permission_to_unmute": false,
//     "allow_live_streaming": true,
//     "attention_mode_focus_mode": false,
//     "webinar_live_streaming": false,
//     "webinar_chat": true,
//     "save_caption": false,
//     "slide_control": true,
//     "meeting_survey": false,
//     "webinar_polling": true,
//     "webinar_survey": false
//   },
//   "email_notification": {
//     "cloud_recording_available_reminder": true,
//     "jbh_reminder": false,
//     "cancel_meeting_reminder": false,
//     "alternative_host_reminder": true,
//     "schedule_for_reminder": true
//   },
//   "recording": {
//     "local_recording": false,
//     "cloud_recording": false,
//     "auto_recording": "est moll",
//     "cloud_recording_download": false,
//     "account_user_access_recording": false,
//     "host_delete_cloud_recording": true,
//     "auto_delete_cmr": true,
//     "recording_authentication": "ut ipsum labore pari",
//     "prevent_host_access_recording": true,
//     "ip_address_access_control": {
//       "enable": true,
//       "ip_addresses_or_ranges": "ea"
//     }
//   },
//   "telephony": {
//     "third_party_audio": true,
//     "telephony_regions": true
//   },
//   "tsp": {
//     "call_out": false,
//     "show_international_numbers_link": true
//   },
//   "other_options": {
//     "blur_snapshot": true
//   },
//   "audio_conferencing": {
//     "toll_free_and_fee_based_toll_call": false
//   }
// }

// Sample code for parsing the JSON response...
// Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code

BOOL Host_video = [jResp BoolOf: @"schedule_meeting.host_video"];
BOOL Participant_video = [jResp BoolOf: @"schedule_meeting.participant_video"];
BOOL Audio_type = [jResp BoolOf: @"schedule_meeting.audio_type"];
BOOL Join_before_host = [jResp BoolOf: @"schedule_meeting.join_before_host"];
BOOL Enforce_login = [jResp BoolOf: @"schedule_meeting.enforce_login"];
BOOL Enforce_login_with_domains = [jResp BoolOf: @"schedule_meeting.enforce_login_with_domains"];
NSString *Enforce_login_domains = [jResp StringOf: @"schedule_meeting.enforce_login_domains"];
BOOL Not_store_meeting_topic = [jResp BoolOf: @"schedule_meeting.not_store_meeting_topic"];
BOOL Require_password_for_scheduling_new_meetings = [jResp BoolOf: @"schedule_meeting.require_password_for_scheduling_new_meetings"];
BOOL Require_password_for_instant_meetings = [jResp BoolOf: @"schedule_meeting.require_password_for_instant_meetings"];
BOOL Require_password_for_pmi_meetings = [jResp BoolOf: @"schedule_meeting.require_password_for_pmi_meetings"];
BOOL Use_pmi_for_scheduled_meetings = [jResp BoolOf: @"schedule_meeting.use_pmi_for_scheduled_meetings"];
BOOL Use_pmi_for_instant_meetings = [jResp BoolOf: @"schedule_meeting.use_pmi_for_instant_meetings"];
BOOL Meeting_authentication = [jResp BoolOf: @"schedule_meeting.meeting_authentication"];
BOOL Embed_password_in_join_link = [jResp BoolOf: @"schedule_meeting.embed_password_in_join_link"];
BOOL E2e_encryption = [jResp BoolOf: @"in_meeting.e2e_encryption"];
BOOL Chat = [jResp BoolOf: @"in_meeting.chat"];
BOOL Private_chat = [jResp BoolOf: @"in_meeting.private_chat"];
BOOL Auto_saving_chat = [jResp BoolOf: @"in_meeting.auto_saving_chat"];
NSString *Entry_exit_chime = [jResp StringOf: @"in_meeting.entry_exit_chime"];
BOOL Feedback = [jResp BoolOf: @"in_meeting.feedback"];
BOOL Post_meeting_feedback = [jResp BoolOf: @"in_meeting.post_meeting_feedback"];
BOOL Co_host = [jResp BoolOf: @"in_meeting.co_host"];
BOOL Polling = [jResp BoolOf: @"in_meeting.polling"];
BOOL Attendee_on_hold = [jResp BoolOf: @"in_meeting.attendee_on_hold"];
BOOL Show_meeting_control_toolbar = [jResp BoolOf: @"in_meeting.show_meeting_control_toolbar"];
BOOL Allow_show_zoom_windows = [jResp BoolOf: @"in_meeting.allow_show_zoom_windows"];
BOOL Annotation = [jResp BoolOf: @"in_meeting.annotation"];
BOOL Whiteboard = [jResp BoolOf: @"in_meeting.whiteboard"];
BOOL Remote_control = [jResp BoolOf: @"in_meeting.remote_control"];
BOOL Webinar_question_answer = [jResp BoolOf: @"in_meeting.webinar_question_answer"];
BOOL Anonymous_question_answer = [jResp BoolOf: @"in_meeting.anonymous_question_answer"];
BOOL Breakout_room = [jResp BoolOf: @"in_meeting.breakout_room"];
BOOL Closed_caption = [jResp BoolOf: @"in_meeting.closed_caption"];
BOOL Far_end_camera_control = [jResp BoolOf: @"in_meeting.far_end_camera_control"];
BOOL Group_hd = [jResp BoolOf: @"in_meeting.group_hd"];
BOOL Virtual_background = [jResp BoolOf: @"in_meeting.virtual_background"];
BOOL Alert_guest_join = [jResp BoolOf: @"in_meeting.alert_guest_join"];
BOOL Auto_answer = [jResp BoolOf: @"in_meeting.auto_answer"];
BOOL Sending_default_email_invites = [jResp BoolOf: @"in_meeting.sending_default_email_invites"];
BOOL Use_html_format_email = [jResp BoolOf: @"in_meeting.use_html_format_email"];
BOOL Dscp_marking = [jResp BoolOf: @"in_meeting.dscp_marking"];
BOOL Stereo_audio = [jResp BoolOf: @"in_meeting.stereo_audio"];
BOOL Original_audio = [jResp BoolOf: @"in_meeting.original_audio"];
BOOL Screen_sharing = [jResp BoolOf: @"in_meeting.screen_sharing"];
BOOL Custom_data_center_regions = [jResp BoolOf: @"in_meeting.custom_data_center_regions"];
BOOL Meeting_reactions = [jResp BoolOf: @"in_meeting.meeting_reactions"];
BOOL File_transfer = [jResp BoolOf: @"in_meeting.file_transfer"];
BOOL Request_permission_to_unmute = [jResp BoolOf: @"in_meeting.request_permission_to_unmute"];
BOOL Allow_live_streaming = [jResp BoolOf: @"in_meeting.allow_live_streaming"];
BOOL Attention_mode_focus_mode = [jResp BoolOf: @"in_meeting.attention_mode_focus_mode"];
BOOL Webinar_live_streaming = [jResp BoolOf: @"in_meeting.webinar_live_streaming"];
BOOL Webinar_chat = [jResp BoolOf: @"in_meeting.webinar_chat"];
BOOL Save_caption = [jResp BoolOf: @"in_meeting.save_caption"];
BOOL Slide_control = [jResp BoolOf: @"in_meeting.slide_control"];
BOOL Meeting_survey = [jResp BoolOf: @"in_meeting.meeting_survey"];
BOOL Webinar_polling = [jResp BoolOf: @"in_meeting.webinar_polling"];
BOOL Webinar_survey = [jResp BoolOf: @"in_meeting.webinar_survey"];
BOOL Cloud_recording_available_reminder = [jResp BoolOf: @"email_notification.cloud_recording_available_reminder"];
BOOL Jbh_reminder = [jResp BoolOf: @"email_notification.jbh_reminder"];
BOOL Cancel_meeting_reminder = [jResp BoolOf: @"email_notification.cancel_meeting_reminder"];
BOOL Alternative_host_reminder = [jResp BoolOf: @"email_notification.alternative_host_reminder"];
BOOL Schedule_for_reminder = [jResp BoolOf: @"email_notification.schedule_for_reminder"];
BOOL Local_recording = [jResp BoolOf: @"recording.local_recording"];
BOOL Cloud_recording = [jResp BoolOf: @"recording.cloud_recording"];
NSString *Auto_recording = [jResp StringOf: @"recording.auto_recording"];
BOOL Cloud_recording_download = [jResp BoolOf: @"recording.cloud_recording_download"];
BOOL Account_user_access_recording = [jResp BoolOf: @"recording.account_user_access_recording"];
BOOL Host_delete_cloud_recording = [jResp BoolOf: @"recording.host_delete_cloud_recording"];
BOOL Auto_delete_cmr = [jResp BoolOf: @"recording.auto_delete_cmr"];
NSString *Recording_authentication = [jResp StringOf: @"recording.recording_authentication"];
BOOL Prevent_host_access_recording = [jResp BoolOf: @"recording.prevent_host_access_recording"];
BOOL Enable = [jResp BoolOf: @"recording.ip_address_access_control.enable"];
NSString *Ip_addresses_or_ranges = [jResp StringOf: @"recording.ip_address_access_control.ip_addresses_or_ranges"];
BOOL Third_party_audio = [jResp BoolOf: @"telephony.third_party_audio"];
BOOL Telephony_regions = [jResp BoolOf: @"telephony.telephony_regions"];
BOOL Call_out = [jResp BoolOf: @"tsp.call_out"];
BOOL Show_international_numbers_link = [jResp BoolOf: @"tsp.show_international_numbers_link"];
BOOL Blur_snapshot = [jResp BoolOf: @"other_options.blur_snapshot"];
BOOL Toll_free_and_fee_based_toll_call = [jResp BoolOf: @"audio_conferencing.toll_free_and_fee_based_toll_call"];

Curl Command

curl -G -d "option=quis%20officia%20in%20reprehenderit"
	-d "custom_query_fields=quis%20officia%20in%20reprehenderit"
	-H "Authorization: Bearer <access_token>"
https://api.zoom.us/v2/accounts/:accountId/lock_settings

Postman Collection Item JSON

{
  "name": "Get locked settings",
  "request": {
    "method": "GET",
    "header": [
    ],
    "url": {
      "raw": "{{baseUrl}}/accounts/:accountId/lock_settings?option=quis officia in reprehenderit&custom_query_fields=quis officia in reprehenderit",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "accounts",
        ":accountId",
        "lock_settings"
      ],
      "query": [
        {
          "key": "option",
          "value": "quis officia in reprehenderit",
          "description": "Optional query parameters: \n* `meeting_security` — Use this query parameter to view the meeting security settings applied to the user's account."
        },
        {
          "key": "custom_query_fields",
          "value": "quis officia in reprehenderit",
          "description": "Provide the name of the field by which you would like to filter the response. For example, if you provide \"host_video\" as the value of this field, you will get a response similar to the following:<br>\n{\n    \"schedule_meeting\": {\n        \"host_video\": false\n    }\n}\n<br>You can provide multiple values by separating them with commas(example: \"host_video,participant_video”)."
        }
      ],
      "variable": [
        {
          "key": "accountId",
          "value": "quis officia in reprehenderit",
          "description": "(Required) Unique Identifier of the account. To retrieve locked settings of the master account or a regular account, provide \"me\" as the value of this field. <br> To retrieve locked settings of a sub account, provide the Account ID of the sub account in this field."
        }
      ]
    },
    "description": "[Account Locked Settings](https://support.zoom.us/hc/en-us/articles/115005269866) allow you turn settings on or off for all users in your account. No user except the account admin or account owner can change these settings. With lock settings, you force the settings on for all users.\nUse this API to retrieve an account's locked settings. \n\n**Note:** This API can be used by Zoom Accounts that are on a Pro or a higher plan as well accounts that have master and sub accounts options enabled. <br><br>\n**Prerequisites:**\n* Pro or a higher paid account. <br>\n\n**Scope**: `account:read:admin`.\n<br> **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `Medium`<br>\n\n\n\n\n\n**Scope:** account:read:admin"
  },
  "response": [
    {
      "name": "**Error Code:** `200`<br>\nOnly available for paid account:$accountId.\n\n**HTTP Status Code:** `200`<br>\nLocked settings for the Account returned.\n\n",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/accounts/:accountId/lock_settings?option=quis officia in reprehenderit&custom_query_fields=quis officia in reprehenderit",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "accounts",
            ":accountId",
            "lock_settings"
          ],
          "query": [
            {
              "key": "option",
              "value": "quis officia in reprehenderit"
            },
            {
              "key": "custom_query_fields",
              "value": "quis officia in reprehenderit"
            }
          ],
          "variable": [
            {
              "key": "accountId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) Unique Identifier of the account. To retrieve locked settings of the master account or a regular account, provide \"me\" as the value of this field. <br> To retrieve locked settings of a sub account, provide the Account ID of the sub account in this field."
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n \"schedule_meeting\": {\n  \"host_video\": true,\n  \"participant_video\": true,\n  \"audio_type\": true,\n  \"join_before_host\": false,\n  \"enforce_login\": false,\n  \"enforce_login_with_domains\": false,\n  \"enforce_login_domains\": \"ut Excepteur aute\",\n  \"not_store_meeting_topic\": false,\n  \"require_password_for_scheduling_new_meetings\": true,\n  \"require_password_for_instant_meetings\": false,\n  \"require_password_for_pmi_meetings\": false,\n  \"use_pmi_for_scheduled_meetings\": true,\n  \"use_pmi_for_instant_meetings\": false,\n  \"meeting_authentication\": false,\n  \"embed_password_in_join_link\": false\n },\n \"in_meeting\": {\n  \"e2e_encryption\": true,\n  \"chat\": true,\n  \"private_chat\": false,\n  \"auto_saving_chat\": false,\n  \"entry_exit_chime\": \"in ut\",\n  \"feedback\": true,\n  \"post_meeting_feedback\": true,\n  \"co_host\": true,\n  \"polling\": true,\n  \"attendee_on_hold\": false,\n  \"show_meeting_control_toolbar\": true,\n  \"allow_show_zoom_windows\": false,\n  \"annotation\": true,\n  \"whiteboard\": false,\n  \"remote_control\": false,\n  \"webinar_question_answer\": true,\n  \"anonymous_question_answer\": true,\n  \"breakout_room\": false,\n  \"closed_caption\": false,\n  \"far_end_camera_control\": false,\n  \"group_hd\": true,\n  \"virtual_background\": false,\n  \"alert_guest_join\": true,\n  \"auto_answer\": true,\n  \"sending_default_email_invites\": true,\n  \"use_html_format_email\": false,\n  \"dscp_marking\": true,\n  \"stereo_audio\": false,\n  \"original_audio\": false,\n  \"screen_sharing\": true,\n  \"custom_data_center_regions\": true,\n  \"meeting_reactions\": false,\n  \"file_transfer\": false,\n  \"request_permission_to_unmute\": false,\n  \"allow_live_streaming\": true,\n  \"attention_mode_focus_mode\": false,\n  \"webinar_live_streaming\": false,\n  \"webinar_chat\": true,\n  \"save_caption\": false,\n  \"slide_control\": true,\n  \"meeting_survey\": false,\n  \"webinar_polling\": true,\n  \"webinar_survey\": false\n },\n \"email_notification\": {\n  \"cloud_recording_available_reminder\": true,\n  \"jbh_reminder\": false,\n  \"cancel_meeting_reminder\": false,\n  \"alternative_host_reminder\": true,\n  \"schedule_for_reminder\": true\n },\n \"recording\": {\n  \"local_recording\": false,\n  \"cloud_recording\": false,\n  \"auto_recording\": \"est moll\",\n  \"cloud_recording_download\": false,\n  \"account_user_access_recording\": false,\n  \"host_delete_cloud_recording\": true,\n  \"auto_delete_cmr\": true,\n  \"recording_authentication\": \"ut ipsum labore pari\",\n  \"prevent_host_access_recording\": true,\n  \"ip_address_access_control\": {\n   \"enable\": true,\n   \"ip_addresses_or_ranges\": \"ea\"\n  }\n },\n \"telephony\": {\n  \"third_party_audio\": true,\n  \"telephony_regions\": true\n },\n \"tsp\": {\n  \"call_out\": false,\n  \"show_international_numbers_link\": true\n },\n \"other_options\": {\n  \"blur_snapshot\": true\n },\n \"audio_conferencing\": {\n  \"toll_free_and_fee_based_toll_call\": false\n }\n}"
    },
    {
      "name": "**HTTP Status Code:** `400`<br>\n**Error Code:** `2001`<br>\nAccount does not exist: $subAccountId.",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/accounts/:accountId/lock_settings?option=quis officia in reprehenderit&custom_query_fields=quis officia in reprehenderit",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "accounts",
            ":accountId",
            "lock_settings"
          ],
          "query": [
            {
              "key": "option",
              "value": "quis officia in reprehenderit"
            },
            {
              "key": "custom_query_fields",
              "value": "quis officia in reprehenderit"
            }
          ],
          "variable": [
            {
              "key": "accountId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) Unique Identifier of the account. To retrieve locked settings of the master account or a regular account, provide \"me\" as the value of this field. <br> To retrieve locked settings of a sub account, provide the Account ID of the sub account in this field."
            }
          ]
        }
      },
      "status": "Bad Request",
      "code": 400,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}