Members and sharing API

Members, teams, resource sharing and the audit log. 13 ops: list_members, list_invites, list_teams, create_team, update_team, delete_team, set_team_member, remove_team_member, list_resource_access, set_resource_visibility, share_resource, unshare_resource, list_audit_log.

Members, teams, resource sharing and the audit log.

List members · POST /api/v1/list_members · scope members:read or GET …?input=

Everyone in this organization with their email, role (owner, admin, member, viewer) and teams. Read-only: inviting, removing people and changing roles are done by a person in the dashboard (Settings → Members).

curl -X POST https://getwabi.dev/api/v1/list_members \  -H "Authorization: Bearer wabi_…"

list_invites

readowner or admin

List invites · POST /api/v1/list_invites · scope members:read or GET …?input=

Pending invitations to this organization (email, role, teams, who invited, when it expires). Owners and admins.

curl -X POST https://getwabi.dev/api/v1/list_invites \  -H "Authorization: Bearer wabi_…"

List teams · POST /api/v1/list_teams · scope members:read or GET …?input=

Teams in this organization with their members (maintainer or member) and the resources (WhatsApp accounts, AI agents) shared with each team.

curl -X POST https://getwabi.dev/api/v1/list_teams \  -H "Authorization: Bearer wabi_…"

Create team · POST /api/v1/create_team · scope members:write

Create a team (a group of members to share WhatsApp accounts and agents with, and to route conversations to). You become its maintainer. Members and above.

curl -X POST https://getwabi.dev/api/v1/create_team \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"name":"Support"}'

Update team · POST /api/v1/update_team · scope members:write

Rename a team or change its description. Its maintainers, owners and admins.

curl -X POST https://getwabi.dev/api/v1/update_team \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"team":"support"}'

Delete team · POST /api/v1/delete_team · scope members:write

Delete a team. Its members stay in the organization but lose what was shared with the team.

curl -X POST https://getwabi.dev/api/v1/delete_team \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"team":"support"}'

Add to team · POST /api/v1/set_team_member · scope members:write

Add an organization member to a team, or change their team role (maintainer manages the team; member is in it). Its maintainers, owners and admins.

curl -X POST https://getwabi.dev/api/v1/set_team_member \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"team":"support","user":"user"}'

Remove from team · POST /api/v1/remove_team_member · scope members:write

Take someone out of a team (they stay in the organization). Its maintainers, owners and admins; anyone can leave a team themselves.

curl -X POST https://getwabi.dev/api/v1/remove_team_member \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"team":"support","user":"user"}'

List resource access · POST /api/v1/list_resource_access · scope members:read or GET …?input=

Who can see a shareable resource (a WhatsApp account or an AI agent): its visibility (org or restricted), its creator, and every grant to a team or person with its access (read, write, admin). Owners and admins always have admin.

curl -X POST https://getwabi.dev/api/v1/list_resource_access \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"resource_type":"whatsapp_account","resource_id":"6f1c2e0a-4b7d-4c2e-9a51-0d3b8e7f9a10"}'

Set resource visibility · POST /api/v1/set_resource_visibility · scope members:write

org: every organization member sees the resource (viewers read, members write). restricted: only its creator, owners and admins, and the teams and people it is shared with (share_resource). Works on WhatsApp accounts and AI agents. Needs admin access to the resource.

curl -X POST https://getwabi.dev/api/v1/set_resource_visibility \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"resource_type":"whatsapp_account","resource_id":"6f1c2e0a-4b7d-4c2e-9a51-0d3b8e7f9a10","visibility":"org"}'

Share resource · POST /api/v1/share_resource · scope members:write

Give a team or a person read, write or admin access to a WhatsApp account or AI agent (replacing what that team or person had). read: see it and its data; write: use it (send from the account, edit the agent); admin: also change its settings and who it is shared with. Viewers never get past read. Needs admin access to the resource.

curl -X POST https://getwabi.dev/api/v1/share_resource \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"resource_type":"whatsapp_account","resource_id":"6f1c2e0a-4b7d-4c2e-9a51-0d3b8e7f9a10","access":"read"}'

Unshare resource · POST /api/v1/unshare_resource · scope members:write

Remove a team's or person's grant on a WhatsApp account or AI agent. They keep whatever their organization role gives them (nothing, on a restricted resource). Needs admin access to the resource.

curl -X POST https://getwabi.dev/api/v1/unshare_resource \  -H "Authorization: Bearer wabi_…" \  -H "Content-Type: application/json" \  -d '{"resource_type":"whatsapp_account","resource_id":"6f1c2e0a-4b7d-4c2e-9a51-0d3b8e7f9a10"}'

list_audit_log

readowner or admin

List audit log · POST /api/v1/list_audit_log · scope members:read or GET …?input=

Membership, role, team, invite, API key, billing, settings and sharing changes in this organization, newest first: who (a person, an API key, an OAuth client or the system), what, to what, and when. Owners and admins. The activity log (list_activity) has content changes.

curl -X POST https://getwabi.dev/api/v1/list_audit_log \  -H "Authorization: Bearer wabi_…"