---
title: "POST /v1/user-invitations"
method: POST
path: "/v1/user-invitations"
tags: ["user-invitations"]
---

# POST /v1/user-invitations

`POST /v1/user-invitations`

Send a user invitation to a user. If the user already has an invitation, the invitation will be updated.

## Request body

- union
  - object
    - `type` 'PROJECT', required
    - `email` string, required
    - `projectId` string, required
    - `projectRole` string, required
  - object
    - `type` 'PLATFORM', required
    - `email` string, required
    - `platformRole` union, required
      - 'ADMIN'
      - 'MEMBER'

## Response `201`

Default Response

- object
  - `id` string, required
  - `created` string, required
  - `updated` string, required
  - `email` string, required
  - `status` union, required
    - 'PENDING'
    - 'ACCEPTED'
  - `type` union, required
    - 'PLATFORM'
    - 'PROJECT'
  - `platformId` string, required
  - `platformRole` 'ADMIN' | 'MEMBER', nullable
  - `projectId` string, nullable
  - `projectRoleId` string, nullable
  - `projectRole` object, nullable
    - `id` string, required
    - `created` string, required
    - `updated` string, required
    - `name` string, required
    - `permissions` string[], required
    - `platformId` string
    - `type` string, required
    - `userCount` number
  - `link` string

## Changes

- **2024-11-25** `613e124d2041` — 1 breaking, 1 warning
  - added the new required request property `anyOf[subschema #1]/projectRole`
  - removed the request property `anyOf[subschema #1]/projectRoleId`
- **2024-11-25** `086c2138cb1b` — 2 breaking, 1 warning, 13 info
  - added the new required request property `anyOf[subschema #1]/projectRoleId`
  - the `projectRole` response's property type/format changed from `string`/`` to `object`/`` for status `201`
  - removed the request property `anyOf[subschema #1]/projectRole`
  - added the optional property `projectRole/platformId` to the response with the `201` status
  - …12 more
- **2024-09-13** `225ff954244e` — 1 breaking, 1 info
  - api path removed without deprecation
  - endpoint added
- **2024-09-03** `b95c8c8e8262` — 1 info
  - added the new optional request property `expireyInSeconds`
- **2024-08-14** `ed47604969c3` — 5 breaking, 6 warning, 2 info
  - the response property `platformRole` became nullable for the status `201`
  - the response property `projectId` became nullable for the status `201`
  - the response property `projectRole` became nullable for the status `201`
  - the `platformRole` response's property type/format changed from ``/`` to `string`/`` for status `201`
  - …9 more

[Full history](https://skmtc.dev/activeboxes/apis/activeboxes-documentation/changes/v1/user-invitations/post.md)

---

[API](https://skmtc.dev/activeboxes/apis/activeboxes-documentation.md) · [All operations](https://skmtc.dev/activeboxes/apis/activeboxes-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/activeboxes/activeboxes-documentation/revisions/12c564515962/schema)
