Team Members

Invite teammates to collaborate on a project. Each member gets a role that controls what they can view and modify.

Roles

RoleCan ViewCan Edit ConfigCan Manage KeysCan Manage Members
viewer
developer
admin

Invite a Member

POST /v1/projects/{projectId}/members/invite
curl -X POST https://server.edgewrap.pro/v1/projects/prj_01jxyz/members/invite \
  -H "Authorization: Bearer <your_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "teammate@yourcompany.com",
    "role": "developer"
  }'
200Success
{
  "success": true,
  "data": {
    "message": "Invitation sent to teammate@yourcompany.com"
  }
}
Note: If the email is already registered, they get immediate access. Otherwise EdgeWrap sends an invitation email — they join after registering.

List Members

curl https://server.edgewrap.pro/v1/projects/prj_01jxyz/members \
  -H "Authorization: Bearer <your_token>"
200Success
{
  "success": true,
  "data": [
    {
      "id": "mem_01",
      "userId": "usr_01jxyz",
      "name": "Ada Lovelace",
      "email": "ada@example.com",
      "role": "admin"
    },
    {
      "id": "mem_02",
      "userId": "usr_02kuvw",
      "name": "Charles Babbage",
      "email": "charles@example.com",
      "role": "developer"
    }
  ]
}

Update Role or Remove

# Change role
curl -X PATCH https://server.edgewrap.pro/v1/projects/prj_01jxyz/members/mem_02 \
  -H "Authorization: Bearer <your_token>" \
  -H "Content-Type: application/json" \
  -d '{ "role": "admin" }'

# Remove member
curl -X DELETE https://server.edgewrap.pro/v1/projects/prj_01jxyz/members/mem_02 \
  -H "Authorization: Bearer <your_token>"

Plan Limits

PlanTeam Members per Project
Free1 (owner only)
Starter2
Pro5
Team20
Enterprise999