Agent-readable docs index: /docs/llms.txt. Full docs in one file: /docs/llms-full.txt. Download /docs/docs.zip to grep all markdown files locally.

Inviting Collaborators & Managing Roles

Collaborating on link campaigns and analytics across marketing squads requires granular access controls. Shaf's role-based access system ensures every team member gets exactly the permissions they need.

Permission Roles

Owner
One per organization. Full control over everything including billing, organization deletion, and role changes for all members.
Cannot be transferred (contact support for ownership migration).
Admin
Full operational control:
  • ✅ Create, edit, delete links
  • ✅ Manage custom domains & webhooks
  • ✅ Invite and remove members
  • ❌ Cannot modify billing or delete the organization
Member
Day-to-day link operations:
  • ✅ Create, edit, and view links
  • ✅ View analytics dashboards
  • ❌ Cannot alter domains, billing, or invite others

Inviting a Team Member

    Open dash.shaf.app → Settings → Members.

    Click Invite Member

    Click the + Invite Member button in the top-right corner.

    Enter the Email and Select a Role

    Enter the invitee's work email address and select their role: Admin or Member.

    Send the Invitation

    Click Send Invitation. An automated invitation email is dispatched via Resend.
    The invitation appears in the members table with a Pending status badge until accepted.
Invitations expire after 72 hours. If the invitee misses the email, use Resend Invite from the context menu to re-trigger.

Managing Invitations

Revoking a Pending Invite

If an invitation was sent in error or the intended recipient has changed:
  1. Locate the pending invitation in the members table.
  2. Click the context menu ··· → select Revoke Invitation.
  3. The invitation token is immediately invalidated — the acceptance link in the email will no longer work.

Resending an Invitation

  1. Click the context menu ··· next to the pending invite.
  2. Select Resend Invite to trigger a fresh invitation email with a new 72-hour expiry.

Modifying Existing Member Roles

Only the Organization Owner can promote or demote members. Admins can invite members, but cannot change existing member roles.
  1. Find the member in the Active Members list.
  2. Click the Role dropdown next to their name.
  3. Select the new role: Admin or Member.
  4. The change applies instantaneously — no email notification is sent to the member.

Removing a Member

  1. Click the context menu ··· next to the active member.
  2. Select Remove Member.
  3. Confirm in the dialog. The member immediately loses access to all workspace resources including links, analytics, and domains.
Removing a member does not delete any links they created. All links remain in the workspace under the organization's ownership.

Troubleshooting

The invitation email isn't arriving
Ask the invitee to check their spam or junk folder — invitation emails come from noreply@mail.shaf.app. If still missing after 5 minutes, use Resend Invite to trigger a fresh delivery attempt with the same or a different email provider.
I sent an invitation to the wrong email address
Revoke the incorrectly addressed invitation immediately (context menu → Revoke Invitation), then create a new invitation with the correct address.
The invitee accepted the invitation but cannot access the workspace
Confirm they are logging in via the correct authentication method (email + password, or Google OAuth) that matches the email address on the invitation. Shaf requires the logged-in account email to match the invitation email exactly.