Members

Invite a teammate by email

Changed on

Creates a pending invitation (7-day expiry, one pending per email) and sends the accept link via the transactional email outbox. Requires DASHBOARD_BASE_URL — accept links are never derived from request headers. 409 when the email is already a member or already has a pending invite. ADR-081.

post/v1/members/invite

Request

  • Base URL: http://localhost:8080
  • URL: http://localhost:8080/v1/members/invite
  • Auth: HTTP bearer

Request body

emailstring email required

Response

Invitation created and email enqueued

idstring required
emailstring required
rolestring required

Recorded for the future role split; not enforced (every member holds the full permission set).

status'pending' | 'accepted' | 'revoked' | 'expired' required

Server-derived; treat as authoritative.

invited_by_emailstring
expires_atstring date-time required
created_atstring date-time required
accepted_atstring date-time
revoked_atstring date-time

Example response

{
  "id": "vlx_minv_1a2b3c4d5e6f7890"
}

Changes