Skip to content

Tutorial: Add Users to Teamspaces

In this tutorial, you’ll learn how to add a Team member to a Teamspace using the MASV API.

A Teamspace organizes a subset of Team members into a group to control access to specific content and functionality. It also provides an organizational tool to track activity for specific projects, clients, or departments.

For the full Teamspaces API specification, see the Teamspaces reference.

This tutorial walks through the following steps:

  1. Get a list of Team members
  2. Get a list of Teamspaces
  3. Add a user to the Team
  4. Create a new Teamspace
  5. Add a user to the Teamspace

You’ll need:

All API requests in this tutorial use the base URI https://api.massive.app.

List all users who belong to a particular MASV Team.

MethodRoute
GET/v1/teams/{team_id}/members
NameTypeRequiredDescription
X-API-KEYStringYesYour API key
NameTypeRequiredDescription
team_idStringYesID of the Team

Locate and copy the team_id from the MASV Web App URL. For detailed instructions, see How to find your Team ID and Portal ID.

Terminal window
curl -H "X-API-KEY: $API_KEY" \
-X GET https://api.massive.app/v1/teams/$TEAM_ID/members
[
{
"approved": true,
"email": "user@example.com",
"id": "string",
"invitation_accepted": "2026-02-05T17:32:10.870Z",
"name": "string",
"policy_key": "member",
"team_id": "string",
"teamspaces": [
{
"id": "string",
"name": "string"
}
],
"user_id": "string"
}
]

For the full response schema and error codes, see the Teamspaces reference.

Authorized users can list all existing Teamspaces for any Team they belong to (subject to access policy).

MethodRoute
GET/v1.1/teams/{team_id}/spaces
NameTypeRequiredDescription
X-API-KEYStringYesYour API key
NameTypeRequiredDescription
team_idStringYesID of the Team that owns the Teamspace
NameTypeRequiredDescription
pageIntegerNoPage number. Default: 0
limitIntegerNoMaximum records to fetch (50 max). Default: 50
Terminal window
curl -H "X-API-KEY: $API_KEY" \
-X GET https://api.massive.app/v1.1/teams/$TEAM_ID/spaces
{
"metadata": {
"per_page": 50,
"total": 1
},
"records": [
{
"id": "string",
"name": "string"
}
]
}

To invite a user to the Team, sign in to the MASV Web App as a Team Owner or Admin. For each new user, assign a role to determine their permissions. For this tutorial, select Member as the role.

  1. From the sidebar, select Features & Settings, then User Management.
  2. On the User Management page, select + Add Users in the upper right corner.
  3. In the Add Users dialog, enter the email address for the user you want to invite.
  4. From the Role dropdown, select Member.
  5. Select Add. Repeat to invite additional users.
  6. Select Send when you’ve added all users.

The system sends an email invitation to each invited user. Invited users appear as Pending in the MASV Web App until they accept the invitation.

Create a Teamspace under a Team. You can optionally provide membership_ids for existing Team members when creating the Teamspace, but for this tutorial we’ll create it first and add users afterward.

MethodRoute
POST/v1/teams/{team_id}/spaces
NameTypeRequiredDescription
X-API-KEYStringYesYour API key
Content-TypeStringYesMust be application/json
NameTypeRequiredDescription
team_idStringYesID of the Team
NameTypeRequiredDescription
nameStringYesName of the Teamspace to create
membership_idsString[]NoMembership IDs of Team members to add
Terminal window
curl -d '{"name": "Marketing"}' \
-H "X-API-KEY: $API_KEY" \
-H "Content-Type: application/json" \
-X POST https://api.massive.app/v1/teams/$TEAM_ID/spaces
{
"id": "01E8TP2TJCTDNW11G67NKHQW5J",
"members": [],
"name": "Marketing"
}

For the full request and response schema, see Create Teamspace in the Teamspaces reference.

Team Owners and Admins already have read and write access to all Teamspaces. Other Team members need to be explicitly added. A Team member can belong to multiple Teamspaces.

MethodRoute
POST/v1/spaces/{space_id}/members
NameTypeRequiredDescription
X-API-KEYStringYesYour API key
Content-TypeStringYesMust be application/json
NameTypeRequiredDescription
space_idStringYesID of the Teamspace (from Step 4)
NameTypeRequiredDescription
membership_idsString[]YesTeam membership IDs to add to the Teamspace

First, repeat Step 1 to find the newly added Team member’s id (membership ID). For example:

{
"email": "newuser@example.com",
"id": "01KGJN265PMVBG59EK6DXVHZQ5",
"name": "Jon New",
"policy_key": "member",
"team_id": "01KESZAJ7NNWAQ9TAW3R4Q27CB",
"user_id": "01KGJN265HXMS0D1NWJFC5TS7J"
}

Use the Teamspace ID from Step 4 in the path and the member’s id in the body:

Terminal window
curl -d '{"membership_ids": ["01KGJN265PMVBG59EK6DXVHZQ5"]}' \
-H "X-API-KEY: $API_KEY" \
-H "Content-Type: application/json" \
-X POST https://api.massive.app/v1/spaces/$SPACE_ID/members
[
{
"email": "newuser@example.com",
"id": "01KGJN265PMVBG59EK6DXVHZQ5",
"name": "Jon New",
"policy_key": "member",
"team_id": "01KESZAJ7NNWAQ9TAW3R4Q27CB",
"teamspaces": [
{
"id": "01E8TP2TJCTDNW11G67NKHQW5J",
"name": "Marketing"
}
],
"user_id": "01KGJN265HXMS0D1NWJFC5TS7J"
}
]

For the full endpoint specification, see Add Team members to Teamspace in the Teamspaces reference.

You’ve learned how to use the MASV API to:

  • List Team members and Teamspaces
  • Invite a user to a Team via the MASV Web App
  • Create a new Teamspace
  • Add a Team member to a Teamspace