---
title: "Invite a teammate (MANAGER or STAFF)"
method: POST
path: "/api/v1/team"
tags: ["Team"]
---

# Invite a teammate (MANAGER or STAFF)

`POST /api/v1/team`

## Request

- Base URL: `https://www.gerezi.com`
- URL: `https://www.gerezi.com/api/v1/team`
- Auth: HTTP bearer

Creates a PENDING `RestaurantInvitation` and sends the invite email. Idempotent per `(restaurant_id, email)` — re-inviting rotates the token and resets the expiry. Scope: `team:write`.

## Request body

- object
  - `email` string, email, required
  - `role` 'MANAGER' | 'STAFF', required
  - `restaurant_id` string: Required when called with an org-level key.

## Response `201`

Invitation created

- object
  - `data` object
    - `id` string
    - `email` string
    - `role` string
    - `status` string
    - `email_sent` boolean

## Other responses

- `409`: Already on team or duplicate invite
- `422`: Validation error

---

[API](https://skmtc.dev/gerezi/apis/gerezi-restaurant-api.md) · [All operations](https://skmtc.dev/gerezi/apis/gerezi-restaurant-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gerezi/apis/gerezi-restaurant-api/revisions/323b530e81cb?raw)
