ReferenceHTTP APIAuth

Redeem an invite; sets the session cookie

POST
/v1/invites/accept

An address with no account gets one with this password. An existing account joins with its current password, which is never changed. The token is spent once; a revoked, replaced or expired token answers 410, an accepted one 409. Writes an accept_invite receipt.

Auth: public; no credential. Idempotency-Key: ignored.

Header Parameters

X-Requested-With*"werft-web"

Always required: the literal werft-web.

Value in"werft-web"

Request Body

application/json
  1. body
token*string
Length32 <= length <= 256
password*string
Length12 <= length
display_name?string
Length1 <= length <= 64

Response Body

Success

application/json
  1. response
user_id*string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
workspace*
role*string
Value in"owner""admin""member"
Example Request
curl -X POST 'https://example.com/v1/invites/accept' \  -H 'X-Requested-With: werft-web' \  -H 'Content-Type: application/json' \  -d '{  "token": "stringstringstringstringstringst",  "password": "stringstring"}'
Example Response
{  "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",  "workspace": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "slug": "string",    "name": "string",    "settings": {      "dispatch_model": null,      "kill_switch": false,      "daily_cost_limit_usd": null,      "idle_pause_minutes": 30,      "audit_retention_days": 90,      "slack_guest_enabled": false,      "agent_outsider_access": "use",      "agent_outsider_session_visibility": "managing_team",      "achievement_judge": {        "connection_id": null,        "threshold": 0.9,        "on_evidence": true,        "every_n_turns": null,        "on_idle": false,        "transcript": "none",        "daily_budget_usd": 1,        "max_per_session": 20      }    },    "created_at": "2019-08-24T14:15:22Z"  },  "role": "owner"}