Skip to main content

Add GitHub Enterprise Identity Provider

Add GitHub Enterprise Identity Provider

Request Body required
  • clientId string

    Client id generated by GitHub

  • name string
  • clientSecret string

    Client secret generated by GitHub

  • authorizationEndpoint string
  • tokenEndpoint string
  • userEndpoint string
  • scopes string[]

    The scopes requested by ZITADEL during the request to GitHub

  • providerOptions object
  • isLinkingAllowed boolean

    Enable if users should be able to link an existing ZITADEL user with an external account.

  • isCreationAllowed boolean

    Enable if users should be able to create a new account in ZITADEL when using an external account.

  • isAutoCreation boolean

    Enable if a new account in ZITADEL should be created automatically when login with an external account.

  • isAutoUpdate boolean

    Enable if a the ZITADEL account fields should be updated automatically on each login.

Responses

A successful response.


Schema
  • details object
  • sequence uint64

    on read: the sequence of the last event reduced by the projection

    on manipulation: the timestamp of the event(s) added by the manipulation

  • creationDate date-time

    on read: the timestamp of the first event of the object

    on create: the timestamp of the event(s) added by the manipulation

  • changeDate date-time

    on read: the timestamp of the last event reduced by the projection

    on manipulation: the

  • resourceOwner resource_owner is the organization an object belongs to
  • id string
POST /idps/github_es

Authorization

type: oauth2flow: authorizationCodescopes: openid,urn:zitadel:iam:org:project:id:zitadel:aud

Request

Base URL
https://$ZITADEL_DOMAIN/management/v1
Bearer Token
Content-Type
Body required
{
"clientId": "client-id",
"name": "GitHub",
"clientSecret": "secret",
"authorizationEndpoint": "string",
"tokenEndpoint": "string",
"userEndpoint": "string",
"scopes": [
"openid",
"profile",
"email"
],
"providerOptions": {
"isLinkingAllowed": true,
"isCreationAllowed": true,
"isAutoCreation": true,
"isAutoUpdate": true
}
}
Accept
curl -L -X POST 'https://$ZITADEL_DOMAIN/management/v1/idps/github_es' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"clientId": "client-id",
"name": "GitHub",
"clientSecret": "secret",
"authorizationEndpoint": "string",
"tokenEndpoint": "string",
"userEndpoint": "string",
"scopes": [
"openid",
"profile",
"email"
],
"providerOptions": {
"isLinkingAllowed": true,
"isCreationAllowed": true,
"isAutoCreation": true,
"isAutoUpdate": true
}
}'