POST
POST /orgs/{org}/invitations — GitHub API
GitHub token (required); https://api.github.com
GitHub APICreate an organization invitation
- Base URL
- https://api.github.com
- Auth
- Authorization: Bearer <GITHUB_API_KEY>
- Last verified
- 2026-10-20 · upstream hash matched
Actions Try in browser→
Agents: curl -H "Accept: text/markdown" this URL
→ 293 tokens · Vary: Accept
→ 293 tokens · Vary: Accept
Critical gotchas
GitHub recommends an Accept: application/vnd.github+json header and an explicit X-GitHub-Api-Version header.
Fine-grained tokens only authorize repositories and permissions selected when the token is created.
cURL
curl -X POST 'https://api.github.com/orgs/example-org/invitations' \ -H "Authorization: Bearer $GITHUB_TOKEN" \ -H 'Accept: application/vnd.github+json' \ -H 'X-GitHub-Api-Version: 2026-03-10' \ -H 'Content-Type: application/json' \ -d '{}'
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| org | path | string | Yes | The organization name. The name is not case sensitive. |
| invitee_id | body | integer | No | **Required unless you provide `email`**. GitHub user ID for the person you are inviting. |
| body | string | No | **Required unless you provide `invitee_id`**. Email address of the person you are inviting, which can be an existing GitHub user. | |
| role | body | string | No | 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 | body | integer[] | No | Specify IDs for the teams you want to invite new members to. |
Response 200 OK
{
"id": 0,
"login": "string",
"email": "string",
"role": "string",
"created_at": "string",
"failed_at": "string",
"failed_reason": "string",
"inviter": {
"name": "string",
"email": "string",
"login": "octocat",
"id": 1,
"node_id": "MDQ6VXNlcjE=",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"gravatar_id": "41d064eb2195891e12d0413f63227ea7",
"url": "https://api.github.com/users/octocat",
"html_url": "https://github.com/octocat",
"followers_url": "https://api.github.com/users/octocat/followers",
"following_url": "https://api.github.com/users/octocat/following{/other_user}",
"gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
"starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
"organizations_url": "https://api.github.com/users/octocat/orgs",
"repos_url": "https://api.github.com/users/octocat/repos",
"events_url": "https://api.github.com/users/octocat/events{/privacy}",
"received_events_url": "https://api.github.com/users/octocat/received_events",
"type": "User",
"site_admin": true,
"starred_at": "\"2020-07-09T00:17:55Z\"",
"user_view_type": "public"
},
"team_count": 0,
"node_id": "\"MDIyOk9yZ2FuaXphdGlvbkludml0YXRpb24x\"",
"invitation_teams_url": "\"https://api.github.com/organizations/16/invitations/1/teams\"",
"invitation_source": "\"member\""
} Get a free GitHub API key → sponsored Affiliate link - we may earn a commission, at no extra cost to you.