Team and roles
Invite teammates, change roles, remove members, and transfer workspace ownership.
Every Partli workspace has a team. Members share access to the same programs, partners, commissions, and payouts. Each member holds one of three roles — owner, admin, or member — and only owners and admins can manage the team. This guide covers inviting people, changing roles, removing members, and handing the workspace to someone else.
Roles at a glance
owner— exactly one per workspace. The owner's account drives plan limits, feature gates, and the payout balance. The owner's role can't be changed and the owner can't be removed; the only way to replace them is to transfer ownership.admin— can invite and remove members and change roles. Can manage everything in the workspace.member— has access to the workspace but can't manage the team.
In the dashboard
Team management lives on the workspace settings page under the Team card, at /<workspace>/settings.
- ●
Invite a teammate
In the Team card, type their email in the
teammate@company.comfield, pick Member or Admin from the role dropdown, and click Invite. They'll get an email invite that's valid for 14 days. The invite box only shows if you can manage the team. - ●
Change someone's role
Each editable member row has a role dropdown with Admin and Member. Switch it and the change saves immediately (a Role updated toast confirms). The owner row and your own row show a static role badge instead — you can't change the owner's role or your own.
- ●
Remove a member
Click Remove on the member's row and confirm the prompt. The owner and yourself can't be removed, so those rows have no Remove button.
Via the API / for agents
All three actions are plain REST endpoints keyed by workspace slug and the target user's id. The caller must be an owner or admin (a member gets 403 forbidden).
Invite a member
POST /api/workspaces/<slug>/invites
Content-Type: application/json
{ "email": "teammate@company.com", "role": "member" }role is admin or member. On success it returns { "ok": true } and emails an accept link (/invite/<token>) that expires in 14 days. If the owner's plan is out of seats you get 402 with an error message and a code.
Change a role
PATCH /api/workspaces/<slug>/members/<userId>
Content-Type: application/json
{ "role": "admin" }Returns { "ok": true }. Rejected with 400 if the target is the owner ("The owner's role can't be changed.") or if you target yourself ("You can't change your own role.").
Remove a member
DELETE /api/workspaces/<slug>/members/<userId>Returns { "ok": true }. Rejected with 400 for removing the owner or yourself.
Transfer ownership
POST /api/workspaces/<slug>/transfer-ownership
Content-Type: application/json
{ "userId": "<newOwnerUserId>" }Owner-only — anyone else gets 403. The target must already be a member of the workspace. On success the new owner is promoted to owner and the old owner is demoted to admin in a single transaction.
Transferring ownership in the dashboard
On the same settings page, the Transfer ownership card lets the current owner hand the workspace to another member. Pick someone from the Choose a member… dropdown, click Transfer, and confirm. The card only appears when there is at least one other member to transfer to.
Ownership follows the money
402. After transfer, the previous owner stays on as an admin — they are not removed.