Merran documentation API & integrations
Join a household
POST
/api/auth/join/{token}
const url = 'http://localhost:3000/api/auth/join/example';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"account":{"name":"Jamie Rivera","email":"jamie@example.com","username":"jamie","password":"correct horse battery staple"}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:3000/api/auth/join/example \ --header 'Content-Type: application/json' \ --data '{ "account": { "name": "Jamie Rivera", "email": "jamie@example.com", "username": "jamie", "password": "correct horse battery staple" } }'Signed in, this adds you to the invite’s household. Signed out, send account to make one, which then signs in.
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”token
required
string
Request Body
Section titled “Request Body”Media typeapplication/json
object
account
object
name
required
string
email
required
string format: email
username
required
string
password
required
string
Example
{ "name": "Jamie Rivera", "email": "jamie@example.com", "username": "jamie", "password": "correct horse battery staple"}Example
{ "account": { "name": "Jamie Rivera", "email": "jamie@example.com", "username": "jamie", "password": "correct horse battery staple" }}Responses
Section titled “Responses”Joined, with an account you already had.
Media typeapplication/json
object
id
required
string
name
required
string
email
required
string
username
required
string | null
serverAdmin
required
boolean
households
required
Array<object>
object
id
required
string
name
required
string
role
required
string
activeHouseholdId
required
string | null
Example
{ "id": "0199e8b0-5a10-7a01-8b00-000000000001", "name": "Sam Rivera", "email": "sam@example.com", "username": "sam", "serverAdmin": true, "households": [ { "id": "0199e8b0-5a10-7a01-8b00-000000000003", "name": "The Riveras", "role": "owner" } ], "activeHouseholdId": "0199e8b0-5a10-7a01-8b00-000000000003"}Joined, with a new account, and signed in.
Media typeapplication/json
object
id
required
string
name
required
string
email
required
string
username
required
string | null
serverAdmin
required
boolean
households
required
Array<object>
object
id
required
string
name
required
string
role
required
string
activeHouseholdId
required
string | null
Example
{ "id": "0199e8b0-5a10-7a01-8b00-000000000001", "name": "Sam Rivera", "email": "sam@example.com", "username": "sam", "serverAdmin": true, "households": [ { "id": "0199e8b0-5a10-7a01-8b00-000000000003", "name": "The Riveras", "role": "owner" } ], "activeHouseholdId": "0199e8b0-5a10-7a01-8b00-000000000003"}Signed out, and no account was sent.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
fields
object
key
additional properties
string
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}No invite has that link.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
fields
object
key
additional properties
string
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}Already in the household, or the account exists.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
fields
object
key
additional properties
string
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}The link has been used, or has expired.
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
fields
object
key
additional properties
string
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}© 2026 Kyle Johnson. Documentation: CC BY 4.0. Merran: AGPL-3.0-or-later.