Side Effects: Site Admin Changes on the API
Many customers' uses of Webex services will have specific business and/or security requirements that can impact an integration using the Webex APIs. For example, enforcing the use of meeting passwords, or requiring attendees to login before joining a meeting are policies that may be set using options in the Site Admin tool. As long as, the API integration sets properties and options consistent with the settings in the Site Admin tool, there is no issue.
However, because many times the site administrator is not the developer, and in fact, the developer may not even be aware of the Site Admin tool, changes can be made that have a negative impact on an integration. There are three areas in the Webex Site Admin tool that have options which can cause potential issue for the Webex API. If any of these options are selected, the API integration will need to include code to accommodate the requirement, otherwise errors will occur.
Below is a list of the three areas and the options available with descriptions.
- Under Security Options
- Under Strict Password Criteria
- Under Tracking Codes
Under Security Options:
Require login before site access
All users must log in before using the Webex service site. If this option is selected, all users must have a user account to host or attend a meeting. If the API integration does not (also) require that attendees log in before joining a meeting, an "Access Denied" error will occur.
Require approval of "Forget Password?" request
All requests to send a forgotten password must be approved. This does not usually impact the API because once the API is turned on, this link is not available by default.
All meetings must be unlisted
All meetings must be unlisted - that is, they will not appear on the meeting or training calendar. To join an unlisted meeting or other service session, attendees must provide a unique meeting number that they receive from the host. This does not usually impact the API, because meetings created by the API are unlisted for anyone but the host by default. But, a meeting created by the API in this environment should not use the option to list the meeting publicly.
Require attendee email address
All attendees must provide their email addresses to join a meeting or other service session. If the Join Meeting command is issued without the email address for the attendee, a URL API "InvalidEmailAddress" error will occur.
All meetings must have a password
Users must specify a password for any scheduled or instant meetings or other service sessions that they host. If the URL API integration does not require or allow for a password to be supplied for a meeting, a "MeetingPasswordIsRequired" error will occur.
- If the "All meetings must have a password" option is NOT checked and no password is supplied, no error will occur.
- If the "All meetings must have a password" option is checked and no password is supplied, a "MeetingPasswordIsRequired" error will be returned.
- If the "All meetings must have a password" option is checked and an invalid password is supplied, one of the following API error messages will be returned:
- TryAnotherPassword -- password doesn't meet Site Admin specified strict criteria
- PasswordShouldExceedChars -- password contains too few characters
- PasswordExceedsMaxLengthOf16 -- password contains too many characters
- InvalidPasswordCharacters-- password contains spaces or any of the following characters: \ ` " / & < > = [ ]
Under Strict Password Criteria:
Require mixed case
Passwords must contain at least one uppercase and one lowercase letter.
Minimum length
Passwords must contain a minimum number of characters. To specify a minimum number of characters, type it in the box.
Minimum number of numeric
Passwords must contain a minimum number of numbers. To specify a minimum number of numbers, type it in the box.
Minimum number of alpha
Passwords must contain a minimum number of letters. To specify a minimum number of letters, type it in the box.
Minimum number of special characters
Passwords must contain a minimum number of special characters, such as $, %, #, @. To specify a minimum number of special characters, type it in the box. For any of the above settings, unless the option is checked and set with a value greater than 0, there is no impact to the API. However, if the option is checked and the password supplied doesn't meet the criteria, a "TryAnotherPassword" error will be returned.
Under Tracking codes:
Require for Meeting
If you select this option, the tracking code label appears on the Schedule a Meeting page. Users must provide a code value when scheduling a meeting. This option is useful, if you want to track variable time-based usage of your Webex service site. If this option is selected, meetings scheduled by the API must also provide a tracking code value.
Require for User Profile
If you select this option, the tracking code label appears on the My Profile page for each user who has an account. When creating a new account using Site Administration, you must provide a code value. If your Webex service site uses the account signup option, users must provide a code value when registering for an account.
For existing user accounts, users must provide a code value the next time they log in to your Webex service site. This option is useful if you want to track the number of users in each department who use your Webex service site. If this option is selected, user accounts created through the API must also provide a tracking code value.
Require from code list
Optional. To require users to select a tracking code from a list of values that you specify, instead of typing a value, click Add/Edit. URL API Error messages for Tracking codes are:
For creating a User (m.php?AT=SU):
- RefCodeDoesNotExist&Refcode=TC[1..10] The Site Administration->Tracking Codes page specified a Required Host Profile Tracking Code value to be Selected from List but the TCn value does not match any value in the list.
- RefCodeIsRequiredForTC[1..10] The Site Administration->Tracking Codes page specified a Required Host Profile Tracking Code but the TCn value is not provided.
For scheduling a meeting (m.php?AT=SM):
- RefCodeDoesNotExist&RN=TC[1..10] The Site Administration->Tracking Codes page specified a Required Schedule Tracking Code value to be Selected from List but the TCn value does not match any value in the list.
- RefCodeIsRequired&RN=TC[1..10] The Site Administration->Tracking Codes page specified a Required Schedule Tracking Code but the TCn value is not provided.