Developer Zone

API Documentation

How API works?

ClickMeeting is a communication platform that offers the ability to create and manage virtual meetings, conference rooms and teleconference centers. The API documentation below is intended for ClickMeeting account users who want to integrate their accounts with their own platform solutions.

ClickMeeting is a dispersed worldwide infostructure with a CLOUD structure of farm web servers, FMiS and FMSS, supporting a reliable platform for online meetings and conferences.

Main API functionalities:

Creation and management of virtual conference meeting rooms and the generation of meeting-access tokens

ClickMeeting API uses HTTP protocol and is based on REST architecture. Supported data formats are: JSON (by default), XML, JS, PHP, PRINTR. More available upon request. Data format can be chosen with each request, identifying it with the corresponding website extension.

For example:
GET: https://api.clickmeeting.com/v1/conferences.xml

API uses standard HTTP protocol methods such as: GET, POST, DELETE, PUT.

Application of each method in the system:

  • GET: used for requesting data for system objects.
  • POST: request used for new object creation.
  • DELETE: request used for deleting an object.
  • PUT: request used for modifying an object.

More information on REST architecture available at:
http://en.wikipedia.org/wiki/Representational_State_Transfer

Character encoding

Use UTF-8 encoding when working with CM API

Authorization and API access

The API is located at: https://api.clickmeeting.com/v1/
For security reasons, the API is available under SSL certificate.

Every API request must be authenticated by an API key, which can be generated by logging in to a ClickMeeting users account and navigating to the Settings tab.

Generate API key

The API key will be transmitted as a variable with every request made. Name of the variable: ‘api_key’.
Should you wish to generate a new API key, please proceed according to the instruction above. Once you generate a new API key, make sure you update it on your application side.

Should you require assistance or have questions, please contact our Support Department via the inquiry form available at: http://www.clickmeeting.com/contact_us.html or via email devzone@clickmeeting.com

For some great examples of our API usage in most popular programming languages go to our GitHub page.

1.1 My virtual conference rooms.

The main function of API is to create and manage meetings and webinars without having to log in to the specific ClickMeeting account. This provides an easy way to integrate ClickMeeting with your own solution. For example, you could charge fees for accessing your webinars with the use of tokens or passwords. This is one of many possible uses of API.

1.1.1 Generating a list of meeting rooms (meetings and webinars)

GET https://api.clickmeeting.com/v1/conferences
the authorization by providing an api_key variable as required.

Tip: If you fail to provide the file extension at the end of your request, you will receive the data in the default format JSON. You can specify that you wish to receive the end data in, for example, XML format by adding the .xml extension (…/conferences.xml). Available file extensions are listed in the first part of this document.

Should your request be successfully authorized, you will receive the table with two elements:
‘active_conferences’ – table of all active rooms
‘inactive_conferences’ – table of inactive rooms, further participation not possible.
Tip: The data for specific room consists of all elements that are included while creating a new room. This is described in part 1.1.2 of this document.

Important: Conference rooms that are inactive for more than 6 months will be removed from the list automatically and stored in a ClickMeeting database.

Possible answer codes:

  • 200 OK – data received correctly
  • 401 Unauthorized – authorization failed

 

1.1.2 Adding new conference room

POST https://api.clickmeeting.com/v1/conferences
The authorization of this request requires providing a variable api_key.

Before we proceed to the list of parameters required for creating a new room, it is important to highlight that there are two types of rooms: time scheduled and permanent. The quantity of each room type available for creation depends on what type of ClickMeeting account you have. In order to determine the limits of your account, please contact our Support Staff.

Room setup parameters:

  • ‘name’ (string) – name of the room that will be visible to attendees. This name will be part of your meeting room url.
  • ‘room_type’ (string) – describes type of room. Possible values: meeting oraz webinar.

Important: Type ‘webinar’ is available only in ClickWebinar packages. Upgrade your account from ClickMeeting to ClickWebinar to schedule webinars.

  • ‘permanent_room’ (int) – Possible values are 0/1 (scheduled/permanent). This value determines whether you create a one-time scheduled meeting or a permanent (endless) conference room.
  • ‘access_type’ (int) – Possible values:
    1. Describes open access room, not protected by password or token.
    2. Password protected. Access to the conference room granted based on password provided in advance.
    3. Token protected. Each invitee receives a unique token that grants access to the conference room. Access token is single-use, so it can be used only once by one person.

Additional Parameters:

  • ‘custom_room_url_name’ (string) – room url is built according to the example: http://{LOGIN}.clickmeeting.com/{ROOM_NAME}/. Should you fail to provide ROOM_NAME parameter, it will be made based on required NAME parameter.
  • ‘lobby_description’ (string) – Lobby is part of each room created. That means all attendees wait in the lobby until the organizer starts the meeting. A customized message may be displayed in the lobby. Maximum number of characters is 160. You should encode text in UTF-8.
  • ‘starts_at’ (string „YYYY-mm-dd H:i:s” or ISO 8601) – this parameter indicates the meeting start time and date. For permanent room type, this parameter is not necessary. Should you fail to provide start date, the system will default to the date when the room was physically created.
  • ‘duration’ (int) – this parameter indicates the duration of the meeting and is expressed in hours.
  • ‘timezone’ (string) – this parameter indicates the time zone for the start date of the meeting starts_at. ex. “America/New_York” For list of time zones click here
  • ‘password’ (string) – this parameter is required if the access type is described as ‘password protected’(acces_type=2).

If the request returns successfully, you will receive a table showing attributes of the room created.
One of those returned attributes will be embed_room_url which includes JavaScript code that, once placed on your website, will display the created meeting room. That way you are able to present your meeting rooms under your domain. Together with the rebranding tool in your ClickMeeting/ClickWebinar account, you can impress your audience with a fully personalized meeting room.

Description of successful request attributes.

  • id – ID representing room object in ClickMeeting backend
  • room_type – type of room (meeting / webinar)
  • room_pin – PIN number, unique for meeting/conference room, alias for meeting url.
  • name – room name.
  • name_url – room name in url address
  • room_url – conference room url (if type of room is the meeting URL will be created in clickmeeting.com domain, if the webinar in clickwebinar.com domain)
  • embed_room_url – JavaScript code for embedding conference room on your website
  • access_type – Access type (1 – open, 2 – password protected, 3–token protected)
  • password – Password if access_type equals 2
  • lobby_description – lobby message
  • status – active / inactive
  • timezone – time zone for meeting duration
  • timezone_offset – time difference to GMT 0. The difference is given in seconds
  • permanent_room – Indicates room type (scheduled / permanent)
  • phone_presenter_pin – presenter’s PIN for telephone conference access
  • phone_listener_pin – participant’s PIN for teleconference access.

Possible answer codes:

  • 201 Created – room created
  • 401 Unauthorized – authorization failed
  • 403 Forbidden – no rights to perform specific action
  • 422 Unprocessed Entity –parameters provided are incorrect
  • 500 Internal Server Error – unknown error occurrence

 

2.1 Conference room management

If you have already created rooms in your account, you can easily edit their settings, delete them, or simply retrieve data, such as details of views of the CRM system.

2.2.1 Downloading data of a particular room

GET https://api.clickmeeting.com/v1/conferences/:room_id
The authorization of this request requires providing a variable api_key.
By room_id, we mean room ID for which we are requesting data (INT).
Example: https://api.clickmeeting.com/v1/conferences/123.json
If the authorization is successful, returned data will be available in the format as described in section ‘Description of successful request attributes’ above.

Possible answer codes:

  • 200 OK – requested data returned
  • 401 Unauthorized – authorization failed
  • 404 Not Found – no room_id found

 

2.2.2 Editing Room Parametres

PUT https://api.clickmeeting.com/v1/conferences/:room_id
The authorization of this request requires providing a variable api_key.
The following attributes can be changed:

  • ‘name’
  • ‘room_type’
  • ‘permanent_room’
  • ‘access_type’
  • ‘password’
  • ‘lobby_description’
  • ‘starts_at’
  • ‘duration’
  • ‘timezone’ For list of time zones click here
  • ‘status’ – (possible values: active / inactive)

The above parameters were described in details in section 1.1.2.
Possible Answer Codes:

  • 200 OK – Data modified successfully
  • 401 Unauthorized – Authorization failed
  • 403 Forbidden – No permission for performing the action
  • 404 Not Found – No room_id found
  • 422 Unprocessed Entity – Given parameters are incorrect
  • 500 Internal Server Error – Unknown error


2.2.3 Deleting Room

DELETE https://api.clickmeeting.com/v1/conferences/:room_id
Request authorization requires that you provide an api_key variable.

Important: Rooms are deleted permanently through API and from the account level. For security reasons, ClickMeeting stores deleted rooms for one month and then deletes them permanently. To recover a deleted room, please contact our Support Staff for assistance.

Possible Answer Codes:

  • 200 OK – Room deleted successfully
  • 401 Unauthorized – Authorization failed
  • 404 Not Found – No room_id found
  • 500 Internal Server Error – Unknown error


2.2.4 Access token generation

POST https://api.clickmeeting.com/v1/conferences/:room_id/tokens
The authorization of this request requires providing a variable api_key.

If the attribute access_type is set to 3 for the specific room, you can generate access tokens for meeting or webinar participants.
Tip: Access token usage could be a form for paid access to your meetings or webinars. You can sell the access token via CRM or email marketing platforms.

Important: The maximum number of tokens for a single event is equal to twice the number of maximum meeting/webinar attendees.

Required parameters:

  • ‘how_many’ (int) – indicates the number of tokens we want to generate for specific rooms in the API request. Up to 1000 tokens can be generated per single request to API, bearing in mind the maximum number of access tokens available per room in account type (see above).

Possible Answer Codes:

  • 201 Created – Tokens generated successfully
  • 401 Unauthorized – Authorization failed
  • 403 Forbidden – No permission to perform the action
  • 404 Not Found – No room_id found
  • 422 Unprocessed Entity – Given parameters are incorrect
  • 500 Internal Server Error – Unknown error

2.2.5 Downloading generated access tokens

GET https://api.clickmeeting.com/v1/conferences/:room_id/tokens
The authorization of this request requires providing a variable api_key.

If attribute access_type was set to value 3 (token protected) we can download the list of generated tokens for the particular event room.

Attributes Description:

  • ‘token’ (string) – includes token the user can use to enter the room
  • ‘sent_to_email’ (string) – If the meeting invitation was sent via ClickMeeting, this attribute will include the email address of the person to whom the token was sent via invitation. This solution helps avoid sending the same token to two different invitees.
  • ‘first_use_date’ (string) – date when the token was used for the first time

Possible Answer Codes:

  • 200 OK – Data returned
  • 401 Unauthorized – Authorization failed
  • 403 Forbidden – No permission to perform the action
  • 404 Not Found – No room_id found
  • 500 Internal Server Error – Unknown error

2.2.6 Auto-login url to meeting/webinar room

POST https://api.clickmeeting.com/v1/conferences/:room_id/room/autologin_hash
The authorization of this request requires providing a variable api_key.

Required parameters:

  •  ’email‘ (string) – email address.
  •  ’nickname‘ (string) – username.
  •  ’role‘ (string) – describes type of role. Possible values: listener, presenter or host.

Additional Parameters:

  •  ’password‘ (string) – if room attribute access_type was set to value 2 (password protected) set this parameter with room password.
  •  ’token‘ (string) – if room attribute access_type was set to value 3 (token protected) set this parameter with room token.

Description of successful request attributes:

  •  ’autologin_hash‘ (string) – build auto-login url as <room_url>?l=<autologin_hash>
    Example: http://example.clickmeeting.com/my_room?l=MTc0Njc4MjM2NDgyMTUyNjIzSEhG

2.2.7 Get time zone list

GET https://api.clickmeeting.com/v1/time_zone_list
The authorization of this request requires providing a variable api_key.

Possible Answer Codes:

  • 200 OK – Data returned
  • 401 Unauthorized – Authorization failed
  • 403 Forbidden – No permission to perform the action
  • 500 Internal Server Error – Unknown error

2.2.7 Get time zone list by country

GET https://api.clickmeeting.com/v1/time_zone_list
The authorization of this request requires providing a variable api_key.

Required parameters:

  •  ’country‘ (string) – ISO 2 country code.

Possible Answer Codes:

  • 200 OK – Data returned
  • 401 Unauthorized – Authorization failed
  • 403 Forbidden – No permission to perform the action
  • 500 Internal Server Error – Unknown error