Team Workspaces
Workspaces let agencies and mobility teams collaborate on the same reports, share documents, and apply consistent branding without sharing personal logins. Each workspace has its own API keys, webhook secret, and billing settings.
Roles
| Role | Reports | Documents | Settings | Billing |
|---|---|---|---|---|
| Admin | Full | Full | Full | Full |
| Member | Create / read / update | Upload / read | Read-only | Hidden |
| Viewer | Read-only | Read-only | Hidden | Hidden |
Inviting a teammate
Invitations are sent by email and expire after 7 days. The recipient accepts via the link in the email and joins the workspace immediately.
bash
curl -X POST https://api.heyvisa.com/v1/workspaces/ws_01HXYZ/invitations \
-H "Authorization: Bearer $HEYVISA_ADMIN_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "consultant@agency.com",
"role": "member"
}'json
201 Created
{
"id": "inv_01HXYZ...",
"email": "consultant@agency.com",
"role": "member",
"status": "pending",
"expires_at": "2026-06-18T09:21:14Z",
"accept_url": "https://app.heyvisa.com/invites/01HXYZ?token=..."
}Invite flow
- Admin creates the invitation via API or dashboard.
- HeyVisa emails the recipient with a single-use accept link.
- Recipient clicks the link, signs in (or creates an account with the same email), and the membership is created automatically.
- Their role can be upgraded or revoked anytime from Settings → Members.
Listing members
http
GET /v1/workspaces/ws_01HXYZ/members
{
"object": "list",
"data": [
{ "id": "usr_01...", "email": "owner@agency.com", "role": "admin", "status": "active" },
{ "id": "usr_02...", "email": "consultant@agency.com", "role": "member", "status": "active" },
{ "id": "usr_03...", "email": "intern@agency.com", "role": "viewer", "status": "active" }
]
}API keys are workspace-scoped
A key issued in workspace ws_A can only access reports, documents, and webhooks in ws_A. To work across multiple workspaces, create one key per workspace and route requests on your side.
Single sign-on (Enterprise)
Enterprise plans support SAML SSO and SCIM for automated user provisioning. Contact your account manager to enable it.