How to Manage BlueJeans Meetings
The first step for BlueJeans meeting to schedule or manage a session is to authenticate your application for a session. When an application authenticates, the BlueJeans returns a string called an access token, which will allow you to call the API using your passkey. use the following step to authenticate your application.
Authenticating
To make calls to a meaningful API, your application first needs to create a session. A BlueJeans session is the result of successful authentication, such as logging into a website or application. When an application authenticates, the BlueJeans returns a string called an access token, which will allow you to call the API using your passkey.
Curl Command
HTTP Method: POST
URL Path
[POST] https://api.bluejeans.com/oauth2/token?Password
The example URL is as follows:
https://api.bluejeans.com/oauth2/token?Password"
-H "accept: application/json" -H "content-type: application/json"
-d "{ \"grant_type\": \"password\", \"username\": \"myusername\", \"password\": \"mypwrd\"}"
This API authenticates a user based upon a username and password. Call this API and provide a valid username and password.
HTTP Header
BlueJeans REST API messages must contain certain formatting values in order to be recognized as a valid call. Make sure that every REST call includes the following HTTP header fields:
Header |
Value |
---|---|
Content-Type | application/json |
Accept | application/json |
Body
{
"grant_type": "password",
"username": "myusername",
"password": “my password”
}
Response
{
"access_token": "7db84************************2a31",
"expires_in": 120960,
"scope": {
"user": ******,
"partitionName": "*****",
"partition": {
"id": xxx,
"name": "xxx"
},
},
“refresh_token”:""
}
You will get the response with the access token. Use the access to schedule the meeting, then click on the "Authorize" button or lock button beside any API's.
Parameter Name |
Description |
---|---|
grant_type | string constant, "client_credentials" to designate the type of authentication method. |
username | the username for the BlueJeans account |
password | the password for this account |
access_token | Access token is a time-bound software passkey, which is required to make BlueJeans API call. |
expires_in |
Provides the duration (in seconds) for the access_token. |
scope | scope object contains information related to the breadth of access that the access_token can engage. |
user | this is the unique integer id (user_id) number for the user account that made this Authentication request |
partitionName | this is BlueJeans internal reference |
partition | this is JSON is also BlueJeans internal information. |
Scheduling
BlueJeans meetings provide an ability to schedule the meetings using Rest API and Web scheduler. To schedule a meeting using the Web Scheduler type, you can see it here.
To schedule a meeting using the Rest API, do the following authenticating and scheduling.
The next step is where you submit the API request to create a meeting for a set date and time.
Along with the following API call, you need to pass the access token that you received in the authentication step.
Users can schedule meetings for their accounts. An administrator user can schedule a meeting on behalf of any user. In both cases, the unique BlueJeans user ID must be provided as part of the API request.
It is important to set the endPointType
and endPointVersion
scheduling fields. endPointType
must be "REST_API
". This allows the BlueJeans web client to view and edit the meeting. The endPointVersion
must be "1.0" so that all feature options can be accessed from the web client.
The example below shows that a meeting with these attributes was successfully scheduled
Curl Command
HTTP Method: POST
URL Path
[POST] https://api.bluejeans.com/v1/user/{user_id}/scheduled_meeting
The example URL is as follows:
"https://api.bluejeans.com/v1/user/{******}/scheduled_meeting?email=false"
-H "accept: application/json"
-H "content-type: application/json"
-H "authorization-type: Bearer access_token"
This API authenticates a user based on the username and password. Call this API and provide a valid username and password.
HTTP Header
BlueJeans REST API messages must contain certain formatting values in order to be recognized as a valid call. Make sure that every REST call includes the following HTTP header fields:
Header |
Value |
---|---|
Content-Type | application/json |
Accept | application/json |
Authorization | Bearer access_token |
Body
{
"title": "My First API Scheduled Meeting",
"description": "I am using BlueJeans' APIs to schedule this meeting",
"start": 1507244400000,
"end": 1507246200000,
"timezone": "America/Los_Angeles",
"addAttendeePasscode": true,
"endPointVersion": "1.0",
"endPointType": "REST_API",
"attendees": [
{
"email": "******@bluejeans.com"
}
],
"advancedMeetingOptions": {
"autoRecord": false,
"muteParticipantsOnEntry": false,
"encryptionType": "NO_ENCRYPTION",
"moderatorLess": true,
"videoBestFit": true,
"disallowChat": false,
"publishMeeting": true,
"showAllAttendeesInMeetingInvite": true
}
}
Response
{
"id": 124*****,
"uuid": "55c9153b-2be5-4ca0-abd7-774900344339",
"title": "My First API Scheduled Meeting",
"description": "I am using BlueJeans APIs to schedule this meeting",
"start": 1507244400000,
"end": 1507246200000,
"timezone": "America/Los_Angeles",
"advancedMeetingOptions": {
"videoBestFit": true,
"publishMeeting": true,
"encryptionType": "NO_ENCRYPTION",
"moderatorLess": true,
"allowStream": false,
"autoRecord": false,
"disallowChat": false,
"muteParticipantsOnEntry": false,
"showAllAttendeesInMeetingInvite": true,
"editability": {
"autoRecord": true,
"enforceMeetingEncryption": true,
"videoBestFit": true,
"enforceMeetingEncryptionAllowPSTN": true,
"disallowChat": true,
"muteParticipantsOnEntry": true,
"moderatorLess": true,
"showAllAttendeesInMeetingInvite": true
}
},
"notificationUrl": null,
"notificationData": null,
"moderator": {
"id": userID,
"username": "username",
"firstname": "",
"lastname": "",
"profile_pic_url": ""
},
"numericMeetingId": "MeetingID",
"attendeePasscode": "Passcode",
"addAttendeePasscode": true,
"deleted": false,
"allow720p": false,
"status": null,
"locked": false,
"sequenceNumber": 0,
"icsUid": "IiN1S_EUsH46Krwt@xun48xfWzzi2nzd",
"endPointType": "REST_API",
"endPointVersion": "1.0",
"attendees": [
{
"meeting": {
"id": 1240507****
},
"email": "email ID",
"followupEmailSentDate": null,
"inviteeid": user ID,
"firstname": "",
"lastname": "",
"profile_pic_url": ""
}
],
"isLargeMeeting": false,
"created": 1507235408569,
"lastModified": 1507235408607,
"isExpired": false,
"parentMeetingId": null,
"parentMeetingUUID": null,
"nextOccurrence": null,
"timelessMeeting": false,
"endlessMeeting": false,
"first": {
"start": 1507244400000,
"end": 1507246200000
},
"last": {
"start": 1507244400000,
"end": 1507246200000
},
"next": {
"start": 1507244400000,
"end": 1507246200000
},
"nextStart": 1507244400000,
"nextEnd": 1507246200000,
"isPersonalMeeting": false,
"inviteeJoinOption": 0
}
Note
- Date: July 1, 2022
- Starting: 2:00 pm (1656664200000 milliseconds since epoch)
- Ending: 2:30 pm (1656666000000 milliseconds since epoch)
Parameter Name |
Description |
---|---|
title | the title for your meeting. |
description | a short description for the meeting |
start and end | Integer (millisec. since epoch) : the expected starting and ending times of the scheduled meeting |
timezone | the global timezone for the meeting, formatted like: "America/Los_Angeles" |
addAttendeePasscode | boolean : if true, have BlueJeans assign a random integer as a passcode presented before a participant can join the meeting |
endPointVerson | a string designating the version of the endpoint that is making this scheduling request |
endPointType | the string name of this endpoint making the scheduling request. You must use provide a value here |
fully qualified email address for an intended participants | |
advancedMeetingOptions | boolean : when the meeting starts, begin recording automatically |
muteParticipantsOnEntry | boolean : when a participant joins the meeting, mute his/her audio feed |
id | This is an internal software handle for the meeting event. |
uuid | The uuid is an internal global unique identifier for the meeting event |
numericMeetingId | Meeting ID that people will enter into their browsers or mobile clients, or onto conference room control pads. |
attendeePasscode | If the meeting is protected by a passcode, all participants must enter this value prior to connect on video/audio |
parentMeetingId | The internal software handle for the meeting immediately prior in the recurrence chain of meetings |
parentMeetingUUID | The internal global unique identifier for the meeting immediately prior in the recurrence chain |
first | A JSON object containing the start and end times of the first meeting in the recurrence chain |
next | A JSON object containing the start and end times of the next meeting in the recurrence chain |
Edit Meeting
Scheduling meetings is important, but it's also important to have the ability to change the meeting time or location if needed. The easier way to update values in a JSON object. To change the date and/or time of the scheduled meeting, see the example below.
Curl Command
HTTP Method: PUT
URL Path
[POST] https://api.bluejeans.com/v1/user/{user_id}/scheduled_meeting
-H "accept: application/json"
-H "content-type: application/json"
-H "authorization-type: Bearer access_token"
This endpoint changes the settings for a meeting. For example, use for rescheduling.
HTTP Header
BlueJeans REST API messages must contain certain formatting values in order to be recognized as a valid call. Make sure that every REST call includes the following HTTP header fields:
Header |
Value |
---|---|
Content-Type | application/json |
Accept | application/json |
Authorization | Bearer access_token |
Body
{
"start": 1567983600000,
"end": 1567987200000
}
Response
{
"id": 12405075,
"uuid": "55c9153b-2be5-4ca0-abd7-774900344339",
"title": "My First API Scheduled Meeting",
"description": "I am using BlueJeans APIs to schedule this meeting",
"start": 1567983600000,
"end": 1567987200000,
"timezone": "America/Los_Angeles",
"advancedMeetingOptions": {
"videoBestFit": true,
"publishMeeting": true,
"encryptionType": "NO_ENCRYPTION",
"moderatorLess": true,
"allowStream": false,
"autoRecord": false,
"disallowChat": false,
"muteParticipantsOnEntry": false,
"showAllAttendeesInMeetingInvite": true,
"editability": {
"autoRecord": true,
"enforceMeetingEncryption": true,
"videoBestFit": true,
"enforceMeetingEncryptionAllowPSTN": true,
"disallowChat": true,
"muteParticipantsOnEntry": true,
"moderatorLess": true,
"showAllAttendeesInMeetingInvite": true
}
},
"notificationUrl": null,
"notificationData": null,
"moderator": {
"id": userID,
"username": "username",
"firstname": "",
"lastname": "",
"profile_pic_url": ""
},
"numericMeetingId": "MeetingID",
"attendeePasscode": "****",
"addAttendeePasscode": true,
"deleted": false,
"allow720p": false,
"status": null,
"locked": false,
"sequenceNumber": 0,
"icsUid": "IiN1S_EUsH46Krwt@xun48xfWzzi2nzd",
"endPointType": "1.0",
"endPointVersion": "REST_API",
"attendees": [
{
"meeting": {
"id": 12405075
},
"email": "email ID",
"followupEmailSentDate": null,
"inviteeid": user ID,
"firstname": "",
"lastname": "",
"profile_pic_url": ""
}
],
"isLargeMeeting": false,
"created": 1507235408569,
"lastModified": 1507235408607,
"isExpired": false,
"parentMeetingId": null,
"parentMeetingUUID": null,
"nextOccurrence": null,
"timelessMeeting": false,
"endlessMeeting": false,
"first": {
"start": 1507244400000,
"end": 1507246200000
},
"last": {
"start": 1567983600000,
"end": 1567987200000
},
"next": {
"start": 1567983600000,
"end": 1567987200000
},
"nextStart": 1567983600000,
"nextEnd": 1567987200000,
"isPersonalMeeting": false,
"inviteeJoinOption": 0
}