---
title: "Create Invitation"
method: POST
path: "/api/v1/organizations/{organization_id}/invitations"
tags: ["organization"]
---

# Create Invitation

`POST /api/v1/organizations/{organization_id}/invitations`

## Request

- Base URL: `https://ndi-api.nace.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://ndi-api.nace.ai/api/v1/organizations/{organization_id}/invitations`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/nace/apis/ndi-service/docs/api/v1/organizations/:organization_id/invitations/post.ts> (a function with typed inputs; its response is checked against the schema)

Invite an email address to join the organization.

The address receives a seven-day passwordless link and may still join later
through conventional OIDC sign-in. An address that belongs to another
organization is fine — that is how a consultant works for two customers.

The row commits before the secret-bearing email is queued. Delivery failure
never rolls back the invitation.

## Path parameters

- `organization_id` string, uuid, required: Organization from POST /console/session.

## Request body

- CreateInvitationRequest: Invite an email address. The console emails a seven-day passwordless link.
  - `email` string, email, required
  - `role` 'owner' | 'admin' | 'member'

## Response `201`

Successful Response

- InvitationInfo: A live invitation. Passwordless links remain usable for seven days unless withdrawn.
  - `id` string, uuid, required
  - `email` string, required
  - `role` 'owner' | 'admin' | 'member', required
  - `invited_by_user_id` string, uuid, nullable
  - `created_at` string, date-time, required
  - `accepted_at` string, date-time, nullable

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Payment Required
- `403`: The account is disabled, or the caller's role does not permit this.
- `404`: No console account yet, or no membership in this organization.
- `409`: Already a member here, or already invited here.
- `413`: Request Entity Too Large
- `422`: Unprocessable Entity
- `500`: Internal Server Error
- `503`: Service Unavailable

---

[API](https://skmtc.dev/nace/apis/ndi-service.md) - [All operations](https://skmtc.dev/nace/apis/ndi-service/llms.txt) - [OpenAPI document](https://skmtc.dev/nace/apis/ndi-service/revisions/d9d1f8ec2207?raw)
