GitHub Sets API
The Sets API from GitHub — 3 operation(s) for sets.
The Sets API from GitHub — 3 operation(s) for sets.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/github:github-sets-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Github Sets API
version: 1.1.4
contact:
name: Support
url: https://support.github.com/contact?tags=dotcom-rest-api
license:
name: MIT
url: https://spdx.org/licenses/MIT
termsOfService: https://docs.github.com/articles/github-terms-of-service
x-github-plan: ghes
x-github-release: 3.9
description: 'Operations tagged Sets across 2 of this provider''s published API definitions: github-scim-openapi.yml, github-setup-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: '{protocol}://{hostname}/api/v3'
variables:
hostname:
description: Self-hosted Enterprise Server hostname
default: HOSTNAME
protocol:
description: Self-hosted Enterprise Server protocol
default: http
tags:
- name: Sets
paths:
/scim/v2/Groups/{scim_group_id}:
put:
summary: GitHub Set Scim Information for Provisioned Enterprise Group
description: '**Note:** The SCIM API endpoints for enterprise accounts are currently in *private* beta and are subject to change.
Replaces an existing provisioned group’s information.
You must provide all the information required for the group as if you were provisioning it for the first time. Any existing group information that you don''t provide will be removed, including group membership. If you want to only update a specific attribute, use the Update an attribute for a SCIM enterprise group endpoint instead.'
operationId: setScimInformationForProvisionedEnterpriseGroup
tags:
- Sets
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/scim#set-scim-information-for-a-provisioned-enterprise-group
parameters:
- $ref: '#/components/parameters/scim-group-id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/group'
examples:
group:
summary: Group
value:
schemas:
- urn:ietf:params:scim:schemas:core:2.0:Group
externalId: 8aa1a0c0-c4c3-4bc0-b4a5-2ef676900159
displayName: Engineering
groupWithMembers:
summary: Group with member
value:
schemas:
- urn:ietf:params:scim:schemas:core:2.0:Group
externalId: 8aa1a0c0-c4c3-4bc0-b4a5-2ef676900159
displayName: Engineering
members:
- value: 879db59-3bdf-4490-ad68-ab880a2694745
displayName: User 1
- value: 0db508eb-91e2-46e4-809c-30dcbda0c685
displayName: User 2
responses:
'200':
description: Group was updated
content:
application/scim+json:
schema:
$ref: '#/components/schemas/scim-enterprise-group-response'
examples:
group:
$ref: '#/components/examples/scim-enterprise-group'
groupWithMembers:
$ref: '#/components/examples/scim-enterprise-group'
'400':
$ref: '#/components/responses/scim_bad_request'
'401':
$ref: '#/components/responses/authorization_failure'
'403':
$ref: '#/components/responses/permission_denied'
'404':
$ref: '#/components/responses/not_found'
'409':
$ref: '#/components/responses/duplicate_record_detected'
'429':
$ref: '#/components/responses/scim_too_many_requests'
'500':
$ref: '#/components/responses/scim_internal_error'
x-github:
enabledForGitHubApps: true
githubCloudOnly: true
category: enterprise-admin
subcategory: scim
security:
- bearerHttpAuthentication: []
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
servers:
- url: '{protocol}://{hostname}/api/v3'
variables:
hostname:
description: Self-hosted Enterprise Server hostname
default: HOSTNAME
protocol:
description: Self-hosted Enterprise Server protocol
default: http
/scim/v2/Users/{scim_user_id}:
put:
summary: GitHub Set Scim Information for Provisioned Enterprise User
description: '**Note:** The SCIM API endpoints for enterprise accounts are currently in *private* beta and are subject to change.
Replaces an existing provisioned user''s information.
You must provide all the information required for the user as if you were provisioning them for the first time. Any existing user information that you don''t provide will be removed. If you want to only update a specific attribute, use the Update an attribute for a SCIM user endpoint instead.
**Warning:** Setting `active: false` will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.'
operationId: setScimInformationForProvisionedEnterpriseUser
tags:
- Sets
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/scim#set-scim-information-for-a-provisioned-enterprise-user
parameters:
- $ref: '#/components/parameters/scim-user-id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/user'
examples:
user:
$ref: '#/components/examples/in-user'
responses:
'200':
description: User was updated
content:
application/scim+json:
schema:
$ref: '#/components/schemas/scim-enterprise-user-response'
examples:
user:
$ref: '#/components/examples/scim-enterprise-user'
'400':
$ref: '#/components/responses/scim_bad_request'
'401':
$ref: '#/components/responses/authorization_failure'
'403':
$ref: '#/components/responses/permission_denied'
'404':
$ref: '#/components/responses/not_found'
'409':
$ref: '#/components/responses/duplicate_record_detected'
'429':
$ref: '#/components/responses/scim_too_many_requests'
'500':
$ref: '#/components/responses/scim_internal_error'
x-github:
enabledForGitHubApps: true
githubCloudOnly: true
category: enterprise-admin
subcategory: scim
security:
- bearerHttpAuthentication: []
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
servers:
- url: '{protocol}://{hostname}/api/v3'
variables:
hostname:
description: Self-hosted Enterprise Server hostname
default: HOSTNAME
protocol:
description: Self-hosted Enterprise Server protocol
default: http
/setup/api/settings:
put:
summary: GitHub Set Settings
description: 'Applies settings on your instance. For a list of the available settings, see the Get settings endpoint.
**Notes:**
- The request body for this operation must be submitted as `application/x-www-form-urlencoded` data. You can submit a parameter value as a string, or you can use a tool such as `curl` to submit a parameter value as the contents of a text file. For more information, see the `curl` documentation.
- You cannot set the management console password with the Enterprise administration API. Use the `ghe-set-password` utility to change the management console password. For more information, see "Command-line utilities."'
operationId: setSettings
tags:
- Sets
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/management-console#set-settings
servers:
- url: '{protocol}://{hostname}'
variables:
hostname:
default: HOSTNAME
description: Self-hosted Enterprise Server hostname
protocol:
default: http
description: Self-hosted Enterprise Server protocol
responses:
'204':
description: Response
'401':
description: Unauthorized
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
settings:
type: string
description: A JSON string with the new settings. Note that you only need to pass the specific settings you want to modify. For a list of the available settings, see the [Get settings endpoint](https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/management-console#get-settings).
required:
- settings
examples:
'204':
value:
settings: '{ "enterprise": { "public_pages": true }}'
x-github:
githubCloudOnly: false
enabledForGitHubApps: false
category: enterprise-admin
subcategory: management-console
security:
- bearerHttpAuthentication: []
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
servers:
- url: '{protocol}://{hostname}/api/v3'
variables:
hostname:
description: Self-hosted Enterprise Server hostname
default: HOSTNAME
protocol:
description: Self-hosted Enterprise Server protocol
default: http
components:
responses:
scim_bad_request:
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/scim-error'
application/scim+json:
schema:
$ref: '#/components/schemas/scim-error'
permission_denied:
description: Permission denied
not_found:
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/basic-error'
scim_internal_error:
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/scim-error'
application/scim+json:
schema:
$ref: '#/components/schemas/scim-error'
scim_too_many_requests:
description: Too many requests
content:
application/json:
schema:
$ref: '#/components/schemas/scim-error'
application/scim+json:
schema:
$ref: '#/components/schemas/scim-error'
duplicate_record_detected:
description: Duplicate record detected
authorization_failure:
description: Authorization failure
schemas:
user-emails-response:
type: array
description: The emails for the user.
items:
type: object
required:
- value
properties:
value:
type: string
description: The email address.
example: mlisa@example.com
type:
type: string
description: The type of email address.
example: work
primary:
type: boolean
description: Whether this email address is the primary address.
example: true
user:
type: object
required:
- schemas
- externalId
- userName
- active
- displayName
- emails
properties:
schemas:
type: array
description: The URIs that are used to indicate the namespaces of the SCIM schemas.
items:
type: string
enum:
- urn:ietf:params:scim:schemas:core:2.0:User
example:
- urn:ietf:params:scim:schemas:core:2.0:User
externalId:
type: string
description: A unique identifier for the resource as defined by the provisioning client.
example: E012345
active:
type: boolean
description: Whether the user active in the IdP.
example: true
userName:
type: string
description: The username for the user.
example: E012345
name:
$ref: '#/components/schemas/user-name'
displayName:
type: string
description: A human-readable name for the user.
example: Mona Lisa
emails:
$ref: '#/components/schemas/user-emails'
roles:
$ref: '#/components/schemas/user-role'
user-role:
type: array
description: The roles assigned to the user.
items:
type: object
required:
- value
properties:
display:
type: string
type:
type: string
value:
type: string
description: The role value representing a user role in GitHub.
enum:
- user
- 27d9891d-2c17-4f45-a262-781a0e55c80a
- guest_collaborator
- 1ebc4a02-e56c-43a6-92a5-02ee09b90824
- enterprise_owner
- 981df190-8801-4618-a08a-d91f6206c954
- ba4987ab-a1c3-412a-b58c-360fc407cb10
- billing_manager
- 0e338b8c-cc7f-498a-928d-ea3470d7e7e3
- e6be2762-e4ad-4108-b72d-1bbe884a0f91
example: user
primary:
type: boolean
description: Is the role a primary role for the user.
example: false
user-name-response:
type: object
properties:
formatted:
type: string
description: The full name, including all middle names, titles, and suffixes as appropriate, formatted for display.
example: Ms. Mona Lisa Octocat
familyName:
type: string
description: The family name of the user.
example: Octocat
givenName:
type: string
description: The given name of the user.
example: Mona
middleName:
type: string
description: The middle name(s) of the user.
example: Lisa
group:
type: object
required:
- schemas
- externalId
- displayName
- members
properties:
schemas:
type: array
description: The URIs that are used to indicate the namespaces of the SCIM schemas.
items:
type: string
enum:
- urn:ietf:params:scim:schemas:core:2.0:Group
example:
- urn:ietf:params:scim:schemas:core:2.0:Group
externalId:
type: string
description: A unique identifier for the resource as defined by the provisioning client.
example: 8aa1a0c0-c4c3-4bc0-b4a5-2ef676900159
displayName:
type: string
description: A human-readable name for a security group.
example: Engineering
members:
type: array
description: The group members.
items:
type: object
required:
- value
- displayName
properties:
value:
type: string
description: The local unique identifier for the member
example: 23a35c27-23d3-4c03-b4c5-6443c09e7173
displayName:
type: string
description: The display name associated with the member
example: Monalisa Octocat
group-response:
type: object
required:
- schemas
properties:
schemas:
type: array
description: The URIs that are used to indicate the namespaces of the SCIM schemas.
items:
type: string
enum:
- urn:ietf:params:scim:schemas:core:2.0:Group
- urn:ietf:params:scim:api:messages:2.0:ListResponse
example:
- urn:ietf:params:scim:schemas:core:2.0:Group
externalId:
type:
- string
- 'null'
description: A unique identifier for the resource as defined by the provisioning client.
example: 8aa1a0c0-c4c3-4bc0-b4a5-2ef676900159
displayName:
type:
- string
- 'null'
description: A human-readable name for a security group.
example: Engineering
members:
type: array
description: The group members.
items:
type: object
required:
- value
- $ref
properties:
value:
type: string
description: The local unique identifier for the member
example: 23a35c27-23d3-4c03-b4c5-6443c09e7173
$ref:
type: string
display:
type: string
description: The display name associated with the member
example: Monalisa Octocat
scim-enterprise-group-response:
allOf:
- $ref: '#/components/schemas/group-response'
- type: object
properties:
id:
type: string
description: The internally generated id for the group object.
example: 7fce0092-d52e-4f76-b727-3955bd72c939
members:
type: array
items:
type: object
properties:
value:
type: string
$ref:
type: string
display:
type: string
description: The security group members.
example:
- value: 879db59-3bdf-4490-ad68-ab880a2694745
$+ref: https://api.github.localhost/scim/v2/Users/879db59-3bdf-4490-ad68-ab880a2694745
displayName: User 1
- value: 0db508eb-91e2-46e4-809c-30dcbda0c685
$+ref: https://api.github.localhost/scim/v2/Users/0db508eb-91e2-46e4-809c-30dcbda0c685
displayName: User 2
meta:
$ref: '#/components/schemas/meta'
meta:
type: object
description: The metadata associated with the creation/updates to the user.
required:
- resourceType
properties:
resourceType:
type: string
description: A type of a resource
enum:
- User
- Group
example: User
created:
type: string
description: A date and time when the user was created.
example: '2022-03-27T19:59:26.000Z'
lastModified:
type: string
description: A data and time when the user was last modified.
example: '2022-03-27T19:59:26.000Z'
location:
type: string
description: A URL location of an object
example: example_value
user-emails:
type: array
description: The emails for the user.
items:
type: object
required:
- value
- type
- primary
properties:
value:
type: string
description: The email address.
example: mlisa@example.com
type:
type: string
description: The type of email address.
example: work
primary:
type: boolean
description: Whether this email address is the primary address.
example: true
user-name:
type: object
required:
- familyName
- givenName
properties:
formatted:
type: string
description: The full name, including all middle names, titles, and suffixes as appropriate, formatted for display.
example: Ms. Mona Lisa Octocat
familyName:
type: string
description: The family name of the user.
example: Octocat
givenName:
type: string
description: The given name of the user.
example: Mona
middleName:
type: string
description: The middle name(s) of the user.
example: Lisa
basic-error:
title: Basic Error
description: Basic Error
type: object
properties:
message:
type: string
example: Example body text
documentation_url:
type: string
example: https://api.github.com/repos/octocat/Hello-World
url:
type: string
example: https://api.github.com/repos/octocat/Hello-World
status:
type: string
example: open
user-response:
type: object
required:
- schemas
- active
- emails
properties:
schemas:
type: array
description: The URIs that are used to indicate the namespaces of the SCIM schemas.
items:
type: string
enum:
- urn:ietf:params:scim:schemas:core:2.0:User
example:
- urn:ietf:params:scim:schemas:core:2.0:User
externalId:
type:
- string
- 'null'
description: A unique identifier for the resource as defined by the provisioning client.
example: E012345
active:
type: boolean
description: Whether the user active in the IdP.
example: true
userName:
type: string
description: The username for the user.
example: E012345
name:
$ref: '#/components/schemas/user-name-response'
displayName:
type:
- string
- 'null'
description: A human-readable name for the user.
example: Mona Lisa
emails:
$ref: '#/components/schemas/user-emails-response'
roles:
$ref: '#/components/schemas/user-role'
scim-error:
title: Scim Error
description: Scim Error
type: object
properties:
message:
type:
- string
- 'null'
example: Example body text
documentation_url:
type:
- string
- 'null'
example: https://api.github.com/repos/octocat/Hello-World
detail:
type:
- string
- 'null'
example: example_value
status:
type: integer
example: 42
scimType:
type:
- string
- 'null'
example: User
schemas:
type: array
items:
type: string
scim-enterprise-user-response:
allOf:
- $ref: '#/components/schemas/user-response'
- type: object
required:
- id
- meta
properties:
id:
type: string
description: The internally generated id for the user object.
example: 7fce0092-d52e-4f76-b727-3955bd72c939
groups:
type: array
items:
type: object
properties:
value:
type: string
$ref:
type: string
display:
type: string
description: Provisioned SCIM groups that the user is a member of.
meta:
$ref: '#/components/schemas/meta'
examples:
scim-enterprise-user:
value:
schemas:
- urn:ietf:params:scim:schemas:core:2.0:User
id: 7fce0092-d52e-4f76-b727-3955bd72c939
externalId: E012345
active: true
userName: E012345
name:
formatted: Ms. Mona Lisa Octocat
familyName: Octocat
givenName: Mona
middleName: Lisa
displayName: Mona Lisa
emails:
- value: mlisa@example.com
type: work
primary: true
roles:
- value: User
primary: false
meta:
resourceType: User
created: '2012-03-27T19:59:26.000Z'
lastModified: '2018-03-27T19:59:26.000Z'
location: https://api.github.localhost/scim/v2/Users/7fce0092-d52e-4f76-b727-3955bd72c939
scim-enterprise-group:
value:
schemas:
- urn:ietf:params:scim:schemas:core:2.0:Group
id: abcd27f8-a9aa-11ea-8221-f59b2be9cccc
externalId: 8aa1a0c0-c4c3-4bc0-b4a5-2ef676900159
displayName: Engineering
members:
- value: 879db59-3bdf-4490-ad68-ab880a2694745
$+ref: https://api.github.localhost/scim/v2/Users/879db59-3bdf-4490-ad68-ab880a2694745
displayName: User 1
- value: 0db508eb-91e2-46e4-809c-30dcbda0c685
$+ref: https://api.github.localhost/scim/v2/Users/0db508eb-91e2-46e4-809c-30dcbda0c685
displayName: User 2
meta:
resourceType: Group
created: '2012-03-27T19:59:26.000Z'
lastModified: '2018-03-27T19:59:26.000Z'
location: https://api.github.localhost/scim/v2/Groups/927fa2c08dcb4a7fae9e
in-user:
summary: User
value:
schemas:
- urn:ietf:params:scim:schemas:core:2.0:User
externalId: E012345
active: true
userName: E012345
name:
formatted: Ms. Mona Lisa Octocat
familyName: Octocat
givenName: Mona
middleName: Lisa
displayName: Mona Lisa
emails:
- value: mlisa@example.com
type: work
primary: true
roles:
- value: User
primary: false
parameters:
scim-group-id:
name: scim_group_id
description: A unique identifier of the SCIM group.
in: path
required: true
schema:
type: string
example: 7fce0092-d52e-4f76-b727-3955bd72c939
scim-user-id:
name: scim_user_id
description: The unique identifier of the SCIM user.
in: path
required: true
schema:
type: string
securitySchemes:
bearerHttpAuthentication:
description: Bearer Token
type: http
scheme: Bearer
externalDocs:
description: GitHub Enterprise Developer Docs
url: https://docs.github.com/enterprise-server@3.9/rest/
x-refined-from:
- github-scim-openapi.yml
- github-setup-openapi.yml