---
title: "Create an organization invitation"
method: POST
path: "/orgs/{org}/invitations"
tags: ["orgs"]
---

# Create an organization invitation

`POST /orgs/{org}/invitations`

Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.

This endpoint is not available for [Enterprise Managed User (EMU) organizations](https://docs.github.com/enterprise-cloud@latest/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users).

This endpoint triggers [notifications](https://docs.github.com/enterprise-cloud@latest/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/enterprise-cloud@latest/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/enterprise-cloud@latest/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.

## Path parameters

- `org` string, required

## Request body

- object
  - `invitee_id` integer — **Required unless you provide `email`**. GitHub user ID for the person you are inviting.
  - `email` string — **Required unless you provide `invitee_id`**. Email address of the person you are inviting, which can be an existing GitHub user.
  - `role` 'admin' | 'direct_member' | 'billing_manager' | 'reinstate' — The role for the new member. * `admin` - Organization owners with full administrative rights to the organization and complete access to all repositories and teams. * `direct_member` - Non-owner organization members with ability to see other members and join teams by invitation. * `billing_manager` - Non-owner organization members with ability to manage the billing settings of your organization. * `reinstate` - The previous role assigned to the invitee before they were removed from your organization. Can be one of the roles listed above. Only works if the invitee was previously part of your organization.
  - `team_ids` integer[] — Specify IDs for the teams you want to invite new members to.

## Response `201`

Response

- OrganizationInvitation — Organization Invitation
  - `id` integer, required
  - `login` string, nullable, required
  - `email` string, nullable, required
  - `role` string, required
  - `created_at` string, required
  - `failed_at` string, nullable
  - `failed_reason` string, nullable
  - `inviter` SimpleUser, required — A GitHub user.
    - `name` string, nullable
    - `email` string, nullable
    - `login` string, required
    - `id` integer, required
    - `node_id` string, required
    - `avatar_url` string, uri, required
    - `gravatar_id` string, nullable, required
    - `url` string, uri, required
    - `html_url` string, uri, required
    - `followers_url` string, uri, required
    - `following_url` string, required
    - `gists_url` string, required
    - `starred_url` string, required
    - `subscriptions_url` string, uri, required
    - `organizations_url` string, uri, required
    - `repos_url` string, uri, required
    - `events_url` string, required
    - `received_events_url` string, uri, required
    - `type` string, required
    - `site_admin` boolean, required
    - `starred_at` string
    - `user_view_type` string
  - `team_count` integer, required
  - `node_id` string, required
  - `invitation_teams_url` string, required
  - `invitation_source` string

## Other responses

- `404` — Resource not found
- `422` — Validation failed, or the endpoint has been spammed.

---

[API](https://skmtc.net/github/apis/github-v3-rest-api-3.md) · [All operations](https://skmtc.net/github/apis/github-v3-rest-api-3/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/github/github-v3-rest-api-3/versions/dc0584ac4e13/schema)
