BlueJeans is being sunset. Please refer to more details

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
email 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
}