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
- Listing Room Members
- Listing Room Members (Export)
- Getting a Single Room Member
- Updating a Room Member via PATCH
- Creating a New Room Member From an Organization Member
- Creating a New Room Member From an Email Address
- Deleting a Room Member
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 |
---|---|---|
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 |
---|---|---|
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