Skip to content

Users

users_users_invite

Invite somebody to this product by email.

Tool

users_users_invite

Invite somebody to this product by email.

Invite somebody to this product by email. Creates the user immediately with an UNVERIFIED identifier and NO credential — they appear in users_users_list straight away but cannot sign in until they accept — then mails a one-time invite link. Accepting the link sets their first password and verifies the address; no session comes from the link itself. IDEMPOTENT by address: re-inviting returns the SAME user (`created: false`), and whether it re-mails is a cooldown decision, so pressing the button twice cannot flood a mailbox (`mailed: false` means the invite is live but no email went out this time). Refuses an address that already belongs to a signed-up user. Requires a verified sender in this product's mail toolkit (config `email.from`); without one nothing is sent and `mailed` is false.

Behavior

HTTP
POST /users/users/invite

Arguments

NameTypeRequiredDescription
namestringThe invitee's display name.
emailstringThe address to invite. Stored canonicalised (lowercase, NFC) plus raw for display.
publicMetadataobjectMetadata the end user may READ and that may flow into the JWT.
privateMetadataobjectMetadata visible to the management plane only. Never exposed to the end user.

Response

FieldTypeAlwaysDescription
mailedboolean
userIdstring
createdboolean
expiresAtstring

Try it

Invite somebody to this product by email.

When to use

Invite somebody to this product by email. Creates the user immediately with an UNVERIFIED identifier and NO credential — they appear in users_users_list straight away but cannot sign in until they accept — then mails a one-time invite link. Accepting the link sets their first password and verifies the address; no session comes from the link itself. IDEMPOTENT by address: re-inviting returns the SAME user (`created: false`), and whether it re-mails is a cooldown decision, so pressing the button twice cannot flood a mailbox (`mailed: false` means the invite is live but no email went out this time). Refuses an address that already belongs to a signed-up user. Requires a verified sender in this product's mail toolkit (config `email.from`); without one nothing is sent and `mailed` is false.

Example

Ask your agent something like this:

Invite somebody to this product by email.

The agent will invoke users_users_invite with these arguments:

{
  "email": "<email>"
}

Esc

Start typing to search the docs.

navigateselect