*** id: 05d23817-7038-4b47-aaeb-c2a3038f1692 title: setMemberMeta slug: /node/reference/video/room-session/set-member-meta description: setMemberMeta method for the RoomSession class. max-toc-depth: 3 ---------------- [roomsession-41]: /docs/server-sdk/v4/node/reference/video/room-session [roomsessionmember-28]: /docs/server-sdk/v4/node/reference/video/room-session-member ### setMemberMeta * **setMemberMeta**(`params`): `Promise` Assigns custom metadata to the specified [`RoomSessionMember`][roomsessionmember-28]. You can use this to store metadata whose meaning is entirely defined by your application. Note that calling this method overwrites any metadata that had been previously set on the specified member. #### Parameters Object containing the parameters of the method. ID of the member to affect. The metadata object to assign to the member. #### Returns `Promise` #### Example In this example, we set metadata for a member as soon as they join the room. Once the member's metadata is set, we log the metadata for that member with the `onMemberUpdated` event. This example assumes that there is a [`RoomSession`][roomsession-41] already active and that members are joining the room. ```js import { SignalWire } from "@signalwire/realtime-api"; // Initialize the SignalWire client const client = await SignalWire({ project: "ProjectID Here", token: "Token Here" }); // Access video client from the main client const videoClient = client.video; // Setup listener for when a room starts await videoClient.listen({ onRoomStarted: async (roomsession) => { console.log("Room started", roomsession.displayName); roomsession.listen({ onMemberJoined: async (member) => { console.log("Member joined", member.name); // set metadta for the member await roomsession.setMemberMeta({ memberId: member.id, meta: { name: member.name, foo: "bar", }, }); // get member meta const memberMeta = await roomsession.getMemberMeta({ memberId: member.id }); console.log("Member meta", memberMeta.meta); }, }) } }) ```