Please see the full REST API documentation for API implementation details.

Resource: Room Members

The room members resource describes the relationship between Lucid members and the rooms to which they belong. Each resource defines a typed association that includes the member's role in the specific room.


Properties

#
Field Type Notes
room_member_id integer
member_id integer
member_name plain text
member_email email address
room_id tuple room: {room_id, name}
role_id tuple role: {role_id, name}
create_ts timestamp
update_ts timestamp

Listing Room Members

#
GET /lucid/api/v1/rooms/:room_id/room_members
Query parameter Notes
fields See Field Filtering
envelope See Enveloping

The Lucid Meetings API also provides subsets of room members via the following collections.

GET /lucid/api/v1/rooms/:room_id/managers
GET /lucid/api/v1/rooms/:room_id/members
GET /lucid/api/v1/rooms/:room_id/observers
GET /lucid/api/v1/rooms/:room_id/guests

Sample Request

GET /lucid/api/v1/rooms/74/room_members?fields=member_id,member_name,room_member_id
Content-Type: application/json; charset=utf-8 
Content-Length: 578 
X-Requestor: jtkeith@lucidmeetings.com
X-Rate-Limit-Limit: 100
X-Rate-Limit-Remaining: 97
X-Rate-Limit-Used: 1
X-Rate-Limit-Reset: 41
[
  {
    "room_member_id": 224,
    "member_id": 75,
    "member_name": "Sally Johnson"
  },
  {
    "room_member_id": 333,
    "member_id": 157,
    "member_name": "Carol Jones"
  },
  ... more room members ...
]

Listing Room Members (Export)

#

The default content-type for retrieving a collection of room members is application/json, which delivers a json representation of the room member model data. The Lucid API also supports alternate, spreadsheet views of a room member collection. To retrieve room members in a different format, specify the format as noted below.

GET /lucid/api/v1/rooms/:room_id/room_members
Query parameter Notes
format One of the following: xlsx

Sample Request

GET /lucid/api/v1/rooms/74/room_members?format=xlsx
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
Content-Disposition: attachment;filename="Engineering Team (people).xlsx"
Content-Length: 7023
File Content...

Getting a Single Room Member

#
GET /lucid/api/v1/room_members/:room_member_id
Query parameter Notes
fields See Field Filtering
envelope See Enveloping

Sample Request

GET /lucid/api/v1/room_members/147
Content-Type: application/json; charset=utf-8 
Content-Length: 316 
X-Requestor: jtkeith@lucidmeetings.com
X-Rate-Limit-Limit: 100
X-Rate-Limit-Remaining: 99
X-Rate-Limit-Used: 1
X-Rate-Limit-Reset: 60
{
  "room_member_id": 147,
  "member_id": 1,
  "member_name": "Bob Smith",
  "member_email": "bsmith@example.com",
  "room_id": {
    "value": 78,
    "display": "Language Testing"
  },
  "role_id": {
    "value": 2,
    "display": "Manager"
  },
  "create_ts": {
    "value": 1389225716,
    "iso_8601": "2014-01-09T00:01:56Z"
  },
  "update_ts": {
    "value": 1395083065,
    "iso_8601": "2014-03-17T19:04:25Z"
  }
}

Updating a Room Member via PATCH

#
PATCH /lucid/api/v1/room_members/:room_member_id
Field Required Notes
email no Member: The email address of the person
first_name no Member: The first name of this person
last_name no Member: The last name of this person
company no Member: The company this person represents
title no Member: The company or job title of this person
role_id no The role of this member in this specific room

Sample Request

PATCH /lucid/api/v1/organizations/50030/members/150
Content-Type: application/json
{
  "first_name": "Robert",
  "last_name": "Smith",
  "role_id":3
}
200 OK
Content-Type: application/json
{
  "organization_member_id": 150,
  "member_id": 85,
  "member_name": "Robert Smith",
  "member_email": "smitty@example.com",
  "organization_id": {
    "value": 50030,
    "display": "Customer Projects"
  },
  "role_id": {
    "value": 3,
    "display": "Member"
  },
  "create_ts": {
    "value": 1398191495,
    "iso_8601": "2014-04-22T18:31:35Z"
  },
  "update_ts": {
    "value": 1461731097,
    "iso_8601": "2016-04-27T04:24:57Z"
  }
}

Creating a New Room Member From an Organization Member

#

Room members are always created in a specific room context. This allows the creation function to inherit the default permissions for different types of room members: managers, members, observers, and guests.

POST /lucid/api/v1/rooms/:room_id/room_members

The Lucid Meetings API also provides the ability to POST directly to aliased sub-collections of room members. This is mostly a convenience function that sets the room member's role implicitly via the sub-collection purpose.

POST /lucid/api/v1/rooms/:room_id/managers
POST /lucid/api/v1/rooms/:room_id/members
POST /lucid/api/v1/rooms/:room_id/observers
POST /lucid/api/v1/rooms/:room_id/guests
Field Required Notes
member_id yes The system-wide member_id for the person being added as a room member. This person must already be listed as an organization member for the room's associated organization.
role_id no The role of this member in this specific room. If omitted, the room member will be assigned a default role based on the person's organization role or on the specific sub-collection.

Sample Request

POST /lucid/api/v1/rooms/74/room_members
Content-Type: application/json
{
  "member_id": 85,
  "role_id": 3
}
201 Created
Location: https://site.lucidmeetings.com/lucid/api/v1/rooms/74/room_members/240
Content-Type: application/json
{
  "room_member_id": 240,
  "member_id": 85,
  "member_name": "Mel Torme",
  "member_email": "mel.torme@example.com",
  "room_id": {
    "value": 74,
    "display": "Engineering Team"
  },
  "role_id": {
    "value": 3,
    "display": "Member"
  },
  "create_ts": {
    "value": 1398191495,
    "iso_8601": "2014-04-22T18:31:35Z"
  },
  "update_ts": {
    "value": 1461339518,
    "iso_8601": "2016-04-22T15:38:38Z"
  }
}

Creating a New Room Member From an Email Address

#

Room members may also be created based on their email address. This will either use or create a system-wide member organization for the person, then add them to the room with the specified role.

POST /lucid/api/v1/rooms/:room_id/room_members

The Lucid Meetings API also provides the ability to POST directly to aliased sub-collections of room members. This is mostly a convenience function that sets the room member's role implicitly via the sub-collection purpose.

POST /lucid/api/v1/rooms/:room_id/managers
POST /lucid/api/v1/rooms/:room_id/members
POST /lucid/api/v1/rooms/:room_id/observers
POST /lucid/api/v1/rooms/:room_id/guests
Field Required Notes
email yes Member: The email address of the person to either find or create
first_name no Member: The first name of this new person
last_name no Member: The last name of this new person
company no Member: The company this new person represents
title no Member: The company or job title of this new person
role_id no The role of this member in this specific room. If omitted, the room member will be assigned a default role based on the person's organization role or on the specific sub-collection.

Sample Request

POST /lucid/api/v1/rooms/74/room_members
Content-Type: application/json
{
  "email": "fred@example.com",
  "first_name": "Fred",
  "last_name": "Keith",
  "role_id": 3
}
201 Created
Location: https://site.lucidmeetings.com/lucid/api/v1/rooms/74/room_members/419
Content-Type: application/json
{
  "room_member_id": 419,
  "member_id": 208,
  "member_name": "Fred Keith",
  "member_email": "fred@example.com",
  "room_id": {
    "value": 74,
    "display": "Engineering Team"
  },
  "role_id": {
    "value": 3,
    "display": "Member"
  },
  "create_ts": {
    "value": 1461341169,
    "iso_8601": "2016-04-22T16:06:09Z"
  },
  "update_ts": {
    "value": 1461341169,
    "iso_8601": "2016-04-22T16:06:09Z"
  }
}

Deleting a Room Member

#
DELETE /lucid/api/v1/room_members/:room_member_id

Sample Request

DELETE /lucid/api/v1/rooms/74/room_members/358


204 No Content