---
title: "Invite a member"
method: POST
path: "/api/v1/orgs/{slug}/invites"
tags: ["Org Members & Invites"]
---

# Invite a member

`POST /api/v1/orgs/{slug}/invites`

## Request

- Base URL: `https://api.skills-hub.ai`
- URL: `https://api.skills-hub.ai/api/v1/orgs/{slug}/invites`
- Auth: one of:
  - HTTP bearer
  - API key in header `Authorization`

Creates a pending invite by username or email, optionally scoped to a department/team, and emails the invitee. Org `ADMIN`s may invite anywhere; a department or team admin may invite into their own unit. Granting a role above `MEMBER` requires org `ADMIN`. Subject to pending-invite and member-capacity limits; recorded in the audit log.

## Path parameters

- `slug` string, required

## Response `200`

Successful response. The returned fields are described in this endpoint's summary/description; typed per-field response schemas are being added incrementally.

- object
  - `id` string
  - `token` string
  - `inviteeUsername` string, nullable
  - `inviteeEmail` string, nullable
  - `role` 'ADMIN' | 'PUBLISHER' | 'MEMBER'
  - `status` 'PENDING' | 'ACCEPTED' | 'DECLINED' | 'EXPIRED'
  - `invitedBy` string
  - `department` string, nullable
  - `team` string, nullable
  - `expiresAt` string, date-time
  - `createdAt` string, date-time

---

[API](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api.md) · [All operations](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/skills-hub/apis/skills-hub-ai-api/revisions/cb5d46d80300?raw)
