VCS Integrations
List All VCS Integrations
/api/console/orgs/{orgName}/integrationsReturns a summary of all VCS integrations across all providers (GitHub, GitLab, Azure DevOps, Generic) for an organization. Each integration includes a hasIndividualAccess flag indicating whether the current user has an OAuth token for that provider.
Request Parameters
orgNamestring path requiredThe organization name
Responses
- The list of VCS integration summaries across all providers.
- ↳
namestring optionalDisplay name derived from the VCS provider account (read-only). - ↳
avatarUrlstring optionalAvatar URL derived from the VCS provider account (read-only). - ↳
idstring requiredThe unique identifier of the integration. - ↳
vcsProviderenum requiredThe VCS provider type for this integration.Values:github,gitlab,bitbucket,azure_devops,generic,github_enterprise - ↳
hasIndividualAccessboolean requiredWhether the current user has an OAuth token for this integration’s provider. - ↳
hoststring optionalThe hostname for self-hosted providers such as GitHub Enterprise. Empty for cloud-hosted providers.
List VCS Repos
/api/console/orgs/{orgName}/integrations/{provider}/{integrationId}/reposLists repositories available through the integration.
Request Parameters
orgNamestring path requiredThe organization nameproviderstring path requiredThe VCS provider (e.g., ‘github’)integrationIdstring path requiredThe VCS integration identifierpageinteger query optionalPage number for pagination
Responses
- List of repositories
- ↳
idstring requiredRepository ID - ↳
ownerstring requiredRepository owner (organization or user) - ↳
namestring requiredRepository name nextPageTokenstring optionalNext page token for pagination
List VCS Branches
/api/console/orgs/{orgName}/integrations/{provider}/{integrationId}/repos/{repoId}/branchesLists branches for a repository.
Request Parameters
orgNamestring path requiredThe organization nameproviderstring path requiredThe VCS provider (e.g., ‘github’)integrationIdstring path requiredThe VCS integration identifierrepoIdstring path requiredThe repository identifier
Responses
- List of branches
- ↳
namestring requiredBranch name - ↳
isProtectedboolean requiredWhether branch is protected
List VCS Repo Destinations
/api/console/orgs/{orgName}/integrations/{provider}/{integrationId}/repos/destinationsLists repositories where the authenticated user can create new repos from templates via the integration.
Request Parameters
orgNamestring path requiredThe organization nameproviderstring path requiredThe VCS provider (e.g., ‘github’)integrationIdstring path requiredThe VCS integration identifier
Responses
- List of repositories
- ↳
idstring requiredRepository ID - ↳
ownerstring requiredRepository owner (organization or user) - ↳
namestring requiredRepository name nextPageTokenstring optionalNext page token for pagination
List Azure DevOps Integrations
/api/console/orgs/{orgName}/integrations/azure-devopsLists all Azure DevOps integrations configured for an organization.
Request Parameters
orgNamestring path requiredThe organization name
Responses
- The list of Azure DevOps integrations.
- ↳
idstring requiredThe Pulumi ID of the Azure DevOps integration. - Metadata about the Azure DevOps organization.
- Metadata about the Azure DevOps project.
- ↳
validboolean requiredWhether the integration is currently valid (tokens, hooks, etc.). - ↳
disablePRCommentsboolean optionalWhether PR comments are disabled for this integration - ↳
disableNeoSummariesboolean optionalWhether Neo AI summaries are disabled for this integration - ↳
disableDetailedDiffboolean optionalWhether detailed property-level diffs are disabled for PR comments - ↳
disableCodeAccessForReviewsboolean optionalWhether code access for AI reviews is disabled for this integration installationUrlstring optionalURL to initiate the OAuth consent flow to install a new Azure DevOps integration
Create Azure DevOps Setup
/api/console/orgs/{orgName}/integrations/azure-devopsCreates a new Azure DevOps integration for an organization. Requires an Azure DevOps organization and project to be specified in the request body. Returns 409 if an integration already exists for the specified project.
Request Parameters
orgNamestring path requiredThe organization name
Request Body
organizationNamestring optionalThe name of the Azure DevOps organization (e.g., ‘mycompany’ in dev.azure.com/mycompany)projectIdstring optionalThe ID of the Azure DevOps project to integratedisablePRCommentsboolean optionalWhether PR comments are disabled for this integrationdisableNeoSummariesboolean optionalWhether Neo AI summaries are disabled for this integrationdisableDetailedDiffboolean optionalWhether detailed property-level diffs are disabled for PR commentsdisableCodeAccessForReviewsboolean optionalWhether to disable code access for AI reviews
Responses
Get Azure DevOps Integration
/api/console/orgs/{orgName}/integrations/azure-devops/{integrationId}Gets a specific Azure DevOps integration by its integration ID. Returns the integration details including organization, project, and authentication configuration.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe Azure DevOps integration identifier
Responses
installedboolean requiredDoes the org have an Azure DevOps app integration configuredvalidboolean requiredIs the app integration valid- Metadata about the Azure DevOps organization linked to the Pulumi organization
- ↳
idstring optionalThe unique ID of the organization - ↳
namestring requiredThe name of the organization - ↳
accountUrlstring optionalThe account URL for the organization (e.g., https://dev.azure.com/myorg) - ↳
hasRequiredPermissionsboolean optionalWhether the current user has the required permissions - Metadata about the Azure DevOps project linked to the Pulumi organization
- ↳
idstring requiredThe unique ID of the project - ↳
namestring requiredThe name of the project - The Pulumi user whose Azure DevOps authentication token is being used
- ↳
idstring requiredThe unique identifier of the user. - ↳
githubLoginstring requiredThe user’s login name (originally from GitHub). - ↳
namestring requiredThe user’s display name. - ↳
emailstring requiredThe user’s email address. - ↳
avatarUrlstring requiredThe URL of the user’s avatar image. - Organizations is the list of Pulumi organizations the user is a member of.
- PotentialOrganizations is the list of Pulumi organizations the user is a potential member of.
- ↳
identitiesarray[string] requiredIdentities is the array of identities a Pulumi user’s account is tied to. - ↳
siteAdminboolean optionalSiteAdministrator is whether or not the user is a site administrator. - ↳
registryAdminboolean optionalRegistryAdmin is whether or not the user is a registry administrator. - TokenInfo is contains metadata, set only for machine tokens & to be used only in the CLI
- ↳
hasMFAboolean requiredWhether the user has multi-factor authentication enabled. - ↳
isOrgManagedboolean requiredWhether the user’s account is managed by an organization. - ↳
isManagedByMultiOrgboolean requiredWhether the user’s account is managed by multiple organizations. disablePRCommentsboolean optionalWhether PR comments are disabled for this integrationdisableNeoSummariesboolean optionalWhether Neo AI summaries are disabled for this integrationdisableDetailedDiffboolean optionalWhether detailed property-level diffs are disabled for PR comments
Update Azure DevOps Integration
/api/console/orgs/{orgName}/integrations/azure-devops/{integrationId}Updates an existing Azure DevOps integration’s settings. Can modify the Azure DevOps organization, project, or authentication configuration.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe Azure DevOps integration identifier
Request Body
disablePRCommentsboolean optionalWhether PR comments are disabled for this integrationdisableNeoSummariesboolean optionalWhether Neo AI summaries are disabled for this integrationdisableDetailedDiffboolean optionalWhether detailed property-level diffs are disabled for PR comments
Responses
Delete Azure DevOps Integration
/api/console/orgs/{orgName}/integrations/azure-devops/{integrationId}Removes a specific Azure DevOps integration from the organization.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe Azure DevOps integration identifier
Responses
Get Azure DevOps Access Status
/api/console/orgs/{orgName}/integrations/azure-devops/access-statusReturns information about a user’s Azure DevOps access status for an organization, including whether the user has a valid OAuth token.
Request Parameters
orgNamestring path requiredThe organization name
Responses
hasUserTokenboolean requiredWhether the user has an Azure DevOps OAuth or PAT token.hasIntegrationboolean requiredWhether the org has an Azure DevOps integration installed.- The Azure DevOps organizations the user’s token can access.
- ↳
idstring optionalThe unique ID of the organization - ↳
namestring requiredThe name of the organization - ↳
accountUrlstring optionalThe account URL for the organization (e.g., https://dev.azure.com/myorg) - ↳
hasRequiredPermissionsboolean optionalWhether the current user has the required permissions
Complete Azure DevOps O Auth
/api/console/orgs/{orgName}/integrations/azure-devops/oauth/completeCompletes the OAuth authorization flow for Azure DevOps VCS integration by exchanging the authorization code for access and refresh tokens.
Request Parameters
orgNamestring path requiredThe organization name
Request Body
- CloudSetupProvider configuration for OAuth authentication
- ↳
namestring requiredCloudSetupProvider name (e.g., ‘azure’, ‘gcp’) - Azure-specific configuration options
sessionIDstring requiredSession identifier from OAuth initiationcodestring requiredAuthorization code returned from OAuth provider
Responses
Initiate Azure DevOps O Auth
/api/console/orgs/{orgName}/integrations/azure-devops/oauth/initiateInitiates the OAuth authorization flow for Azure DevOps VCS integration. Returns a redirect URL that the user should be directed to for authorization.
Request Parameters
orgNamestring path requiredThe organization name
Request Body
- CloudSetupProvider configuration for OAuth authentication
- ↳
namestring requiredCloudSetupProvider name (e.g., ‘azure’, ‘gcp’) - Azure-specific configuration options
Responses
urlstring requiredAuthorization URL to redirect user tosessionIDstring requiredSession identifier for tracking the OAuth flow
List Azure DevOps Organizations
/api/console/orgs/{orgName}/integrations/azure-devops/setup/organizationsLists Azure DevOps organizations available to the current user. Requires an active Azure DevOps OAuth token.
Request Parameters
orgNamestring path requiredThe organization name
Responses
List Azure DevOps Projects
/api/console/orgs/{orgName}/integrations/azure-devops/setup/organizations/{adoOrgName}/projectsLists Azure DevOps projects within a specified Azure DevOps organization that are available to the current user.
Request Parameters
orgNamestring path requiredThe organization nameadoOrgNamestring path requiredThe Azure DevOps organization name
Responses
List Bit Bucket Integrations
/api/console/orgs/{orgName}/integrations/bitbucketLists all BitBucket integrations configured for an organization, including their validity status and linked workspace metadata.
Request Parameters
orgNamestring path requiredThe organization name
Responses
- The list of BitBucket integrations.
- ↳
idstring requiredUnique identifier for this BitBucket integration. - ↳
workspaceUuidstring requiredThe UUID of the linked BitBucket workspace. - ↳
workspaceSlugstring requiredThe slug (URL-friendly name) of the linked BitBucket workspace. - ↳
workspaceNamestring optionalDisplay name of the BitBucket workspace. - ↳
avatarUrlstring optionalURL of the BitBucket workspace avatar image. - ↳
installedboolean requiredWhether this integration is fully installed and operational. - ↳
validboolean requiredWhether the integration’s credentials are currently valid. - ↳
authTypestring optionalThe authentication type used: ‘workspace_token’, ‘user_token’, or ‘pat’. - The user whose BitBucket OAuth token is being used for authentication, if user-based auth is configured.
- ↳
disablePRCommentsboolean requiredWhether PR comments are disabled for this integration. - ↳
disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this integration. - ↳
disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments.
Create Bit Bucket Setup
/api/console/orgs/{orgName}/integrations/bitbucketCreates a new BitBucket integration for an organization. Requires a BitBucket workspace UUID and optionally configures authentication via the user’s BitBucket OAuth token or a workspace access token / PAT. Returns 409 if an integration already exists for the specified workspace.
Request Parameters
orgNamestring path requiredThe organization name
Request Body
workspaceUuidstring requiredThe UUID of the BitBucket workspace to integrate.workspaceSlugstring requiredThe slug (URL-friendly name) of the BitBucket workspace.useUserAuthboolean optionalIf true, use the current user’s BitBucket OAuth token for authentication instead of a workspace access token.workspaceAccessTokenstring optionalOptional workspace access token or personal access token (PAT) for authenticating with the BitBucket API. Required if useUserAuth is false.
Responses
Get Bit Bucket Integration
/api/console/orgs/{orgName}/integrations/bitbucket/{integrationId}Gets a specific BitBucket integration by its integration ID. Returns the integration details including the linked BitBucket workspace, authentication configuration, and validity status.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe BitBucket integration identifier
Responses
idstring requiredUnique identifier for this BitBucket integration.workspaceUuidstring requiredThe UUID of the linked BitBucket workspace.workspaceSlugstring requiredThe slug (URL-friendly name) of the linked BitBucket workspace.workspaceNamestring optionalDisplay name of the BitBucket workspace.avatarUrlstring optionalURL of the BitBucket workspace avatar image.installedboolean requiredWhether this integration is fully installed and operational.validboolean requiredWhether the integration’s credentials are currently valid.authTypestring optionalThe authentication type used: ‘workspace_token’, ‘user_token’, or ‘pat’.- The user whose BitBucket OAuth token is being used for authentication, if user-based auth is configured.
- ↳
idstring requiredThe unique identifier of the user. - ↳
githubLoginstring requiredThe user’s login name (originally from GitHub). - ↳
namestring requiredThe user’s display name. - ↳
emailstring requiredThe user’s email address. - ↳
avatarUrlstring requiredThe URL of the user’s avatar image. - Organizations is the list of Pulumi organizations the user is a member of.
- PotentialOrganizations is the list of Pulumi organizations the user is a potential member of.
- ↳
identitiesarray[string] requiredIdentities is the array of identities a Pulumi user’s account is tied to. - ↳
siteAdminboolean optionalSiteAdministrator is whether or not the user is a site administrator. - ↳
registryAdminboolean optionalRegistryAdmin is whether or not the user is a registry administrator. - TokenInfo is contains metadata, set only for machine tokens & to be used only in the CLI
- ↳
hasMFAboolean requiredWhether the user has multi-factor authentication enabled. - ↳
isOrgManagedboolean requiredWhether the user’s account is managed by an organization. - ↳
isManagedByMultiOrgboolean requiredWhether the user’s account is managed by multiple organizations. disablePRCommentsboolean requiredWhether PR comments are disabled for this integration.disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this integration.disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments.
Update Bit Bucket Integration
/api/console/orgs/{orgName}/integrations/bitbucket/{integrationId}Updates an existing BitBucket integration’s settings, such as PR comment preferences and AI summary options.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe BitBucket integration identifier
Request Body
disablePRCommentsboolean optionalIf true, disable automatic PR comments on deployments.disableNeoSummariesboolean optionalIf true, disable Neo AI-generated deployment summaries in PR comments.disableDetailedDiffboolean optionalIf true, disable detailed property-level diffs in PR comments.
Responses
Delete Bit Bucket Integration
/api/console/orgs/{orgName}/integrations/bitbucket/{integrationId}Removes a specific BitBucket integration from the organization. Cleans up associated webhooks and access tokens.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe BitBucket integration identifier
Responses
Get Bit Bucket Access Status
/api/console/orgs/{orgName}/integrations/bitbucket/access-statusReturns information about a user’s BitBucket access status for an organization, including whether they have a valid OAuth token and available BitBucket workspaces for new integrations.
Request Parameters
orgNamestring path requiredThe organization name
Responses
hasUserTokenboolean requiredWhether the current user has a valid BitBucket OAuth token.- List of BitBucket workspaces available to the user for integration.
- ↳
uuidstring requiredThe unique UUID of the BitBucket workspace. - ↳
namestring requiredThe display name of the workspace. - ↳
slugstring requiredThe URL-friendly slug of the workspace. - ↳
avatarUrlstring optionalURL of the workspace’s avatar image.
List GitHub Integrations
/api/console/orgs/{orgName}/integrations/githubLists all GitHub App integrations for an organization.
Request Parameters
orgNamestring path requiredThe organization name
Responses
- The list of GitHub App integrations.
- ↳
avatarUrlstring optionalThe avatar URL of the GitHub account. - ↳
idstring requiredThe Pulumi ID of the GitHub App installation. - ↳
installationIDinteger requiredThe GitHub installation ID. - ↳
accountIDinteger optionalThe GitHub account ID (user or org). - ↳
accountNamestring optionalThe GitHub account name (login). - ↳
isOrganizationboolean requiredWhether the GitHub account is an organization (as opposed to a personal account). - ↳
isSelfHostedboolean requiredWhether this is a self-hosted GitHub Enterprise installation. - ↳
createdstring optionalWhen the installation was created. - ↳
disablePRCommentsboolean requiredWhether PR comments are disabled for this installation. - ↳
disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this installation. - ↳
disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments. - ↳
disableCodeAccessForReviewsboolean requiredWhether code access for AI reviews is disabled for this installation. - ↳
hasMembersPermissionboolean requiredWhether the installation has the ‘members’ permission (only relevant for organization accounts). - ↳
hasContentsPermissionboolean requiredWhether the installation has the ‘contents’ permission. - Neo GitHub App permission requirements for this installation.
- URL to configure repository access for this GitHub App installation.
installationUrlstring optionalURL to install the Pulumi GitHub App for this organization.
Start GitHub Setup
/api/console/orgs/{orgName}/integrations/githubInitiates GitHub App setup, returns installation URL with state.
Request Parameters
orgNamestring path requiredThe organization name
Responses
List GitHub Enterprise Integrations
/api/console/orgs/{orgName}/integrations/github-enterpriseLists all GitHub Enterprise Server integrations for an organization. Returns only self-hosted GitHub App installations.
Request Parameters
orgNamestring path requiredThe organization name
Responses
- The list of GitHub App integrations.
- ↳
avatarUrlstring optionalThe avatar URL of the GitHub account. - ↳
idstring requiredThe Pulumi ID of the GitHub App installation. - ↳
installationIDinteger requiredThe GitHub installation ID. - ↳
accountIDinteger optionalThe GitHub account ID (user or org). - ↳
accountNamestring optionalThe GitHub account name (login). - ↳
isOrganizationboolean requiredWhether the GitHub account is an organization (as opposed to a personal account). - ↳
isSelfHostedboolean requiredWhether this is a self-hosted GitHub Enterprise installation. - ↳
createdstring optionalWhen the installation was created. - ↳
disablePRCommentsboolean requiredWhether PR comments are disabled for this installation. - ↳
disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this installation. - ↳
disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments. - ↳
disableCodeAccessForReviewsboolean requiredWhether code access for AI reviews is disabled for this installation. - ↳
hasMembersPermissionboolean requiredWhether the installation has the ‘members’ permission (only relevant for organization accounts). - ↳
hasContentsPermissionboolean requiredWhether the installation has the ‘contents’ permission. - Neo GitHub App permission requirements for this installation.
- URL to configure repository access for this GitHub App installation.
installationUrlstring optionalURL to install the Pulumi GitHub App for this organization.
Get GitHub Enterprise Integration
/api/console/orgs/{orgName}/integrations/github-enterprise/{integrationId}Gets a specific GitHub Enterprise Server integration.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitHub Enterprise integration identifier
Responses
avatarUrlstring optionalThe avatar URL of the GitHub account.idstring requiredThe Pulumi ID of the GitHub App installation.installationIDinteger requiredThe GitHub installation ID.accountIDinteger optionalThe GitHub account ID (user or org).accountNamestring optionalThe GitHub account name (login).isOrganizationboolean requiredWhether the GitHub account is an organization (as opposed to a personal account).isSelfHostedboolean requiredWhether this is a self-hosted GitHub Enterprise installation.createdstring optionalWhen the installation was created.disablePRCommentsboolean requiredWhether PR comments are disabled for this installation.disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this installation.disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments.disableCodeAccessForReviewsboolean requiredWhether code access for AI reviews is disabled for this installation.hasMembersPermissionboolean requiredWhether the installation has the ‘members’ permission (only relevant for organization accounts).hasContentsPermissionboolean requiredWhether the installation has the ‘contents’ permission.- Neo GitHub App permission requirements for this installation.
- ↳
namestring requiredThe permission name (e.g., ‘Checks’, ‘Contents’). - ↳
requiredenum requiredThe required permission level.Values:NoAccess,ReadOnly,ReadWrite - ↳
actualenum requiredThe actual permission level from the installation.Values:NoAccess,ReadOnly,ReadWrite - ↳
reasonstring requiredExplanation of why this permission is needed. - ↳
isSufficientboolean requiredWhether the actual permission level satisfies the required level. This is always precomputed from checking that actual satisfies required. - URL to configure repository access for this GitHub App installation.
- ↳
installationUrlstring requiredURL to install the GitHub App - ↳
configurationUrlstring requiredURL to configure the GitHub App installation - ↳
permissionsUrlstring requiredURL to manage the GitHub App permissions - ↳
stateParamstring requiredOAuth state parameter for CSRF protection
Update GitHub Enterprise Integration
/api/console/orgs/{orgName}/integrations/github-enterprise/{integrationId}Updates GitHub Enterprise Server integration settings.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitHub Enterprise integration identifier
Request Body
disablePRCommentsboolean optionalWhether to disable PR comments from the Pulumi GitHub AppdisableNeoSummariesboolean optionalWhether to disable Neo AI summaries on PRsdisableDetailedDiffboolean optionalWhether to disable detailed property-level diffs in PR commentsdisableCodeAccessForReviewsboolean optionalWhether to disable code access for AI reviews
Responses
Delete GitHub Enterprise Integration
/api/console/orgs/{orgName}/integrations/github-enterprise/{integrationId}Removes a GitHub Enterprise Server integration.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitHub Enterprise integration identifier
Responses
Get GitHub Integration
/api/console/orgs/{orgName}/integrations/github/{integrationId}Gets a specific GitHub App integration by its integration ID. Returns the integration details including installation ID, account info, PR comment settings, and permission status. Returns 404 if the integration is not found.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitHub App integration identifier
Responses
avatarUrlstring optionalThe avatar URL of the GitHub account.idstring requiredThe Pulumi ID of the GitHub App installation.installationIDinteger requiredThe GitHub installation ID.accountIDinteger optionalThe GitHub account ID (user or org).accountNamestring optionalThe GitHub account name (login).isOrganizationboolean requiredWhether the GitHub account is an organization (as opposed to a personal account).isSelfHostedboolean requiredWhether this is a self-hosted GitHub Enterprise installation.createdstring optionalWhen the installation was created.disablePRCommentsboolean requiredWhether PR comments are disabled for this installation.disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this installation.disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments.disableCodeAccessForReviewsboolean requiredWhether code access for AI reviews is disabled for this installation.hasMembersPermissionboolean requiredWhether the installation has the ‘members’ permission (only relevant for organization accounts).hasContentsPermissionboolean requiredWhether the installation has the ‘contents’ permission.- Neo GitHub App permission requirements for this installation.
- ↳
namestring requiredThe permission name (e.g., ‘Checks’, ‘Contents’). - ↳
requiredenum requiredThe required permission level.Values:NoAccess,ReadOnly,ReadWrite - ↳
actualenum requiredThe actual permission level from the installation.Values:NoAccess,ReadOnly,ReadWrite - ↳
reasonstring requiredExplanation of why this permission is needed. - ↳
isSufficientboolean requiredWhether the actual permission level satisfies the required level. This is always precomputed from checking that actual satisfies required. - URL to configure repository access for this GitHub App installation.
- ↳
installationUrlstring requiredURL to install the GitHub App - ↳
configurationUrlstring requiredURL to configure the GitHub App installation - ↳
permissionsUrlstring requiredURL to manage the GitHub App permissions - ↳
stateParamstring requiredOAuth state parameter for CSRF protection
Update GitHub Integration
/api/console/orgs/{orgName}/integrations/github/{integrationId}Updates GitHub App integration settings.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitHub App integration identifier
Request Body
disablePRCommentsboolean optionalWhether to disable PR comments from the Pulumi GitHub AppdisableNeoSummariesboolean optionalWhether to disable Neo AI summaries on PRsdisableDetailedDiffboolean optionalWhether to disable detailed property-level diffs in PR commentsdisableCodeAccessForReviewsboolean optionalWhether to disable code access for AI reviews
Responses
Delete GitHub Integration
/api/console/orgs/{orgName}/integrations/github/{integrationId}Removes a GitHub App integration.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitHub App integration identifier
Responses
Get GitHub Access
/api/console/orgs/{orgName}/integrations/github/access-statusReturns information about a user’s GitHub OAuth status.
Request Parameters
orgNamestring path requiredThe organization name
Responses
hasUserTokenboolean requiredWhether the user has a GitHub user token.hasIntegrationboolean requiredWhether the user has a GitHub app installed.availableOrgsarray[string] requiredThe list of GitHub organizations available to the user.- Per-integration permissions for the current user
- ↳
idstring requiredPulumi installation ID - ↳
canCreateRepoboolean requiredWhether the user can create repos under this installation
List GitLab Integrations
/api/console/orgs/{orgName}/integrations/gitlabLists all GitLab integrations configured for an organization, including their validity status and linked group metadata.
Request Parameters
orgNamestring path requiredThe organization name
Responses
- The list of GitLab integrations.
- ↳
idstring requiredThe unique identifier of the GitLab integration. - ↳
gitLabGroupIdinteger requiredThe GitLab group ID linked to this integration. - ↳
groupNamestring optionalThe display name of the GitLab group. - ↳
groupPathstring optionalThe URL-safe path of the GitLab group (e.g. ‘parent-group/child-group’). - ↳
avatarUrlstring optionalThe URL of the GitLab group’s avatar image. - ↳
installedboolean requiredWhether the integration has been fully installed. - ↳
validboolean requiredWhether the integration is currently valid (tokens, hooks, etc.). - Metadata about the GitLab group linked to this integration.
- The Pulumi user whose GitLab authentication token is being used, if applicable.
- ↳
groupAccessTokenExpirationstring optionalThe expiration date of the group access token, if one is being used for authentication. - ↳
disablePRCommentsboolean requiredWhether PR comments are disabled for this integration. - ↳
disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this integration. - ↳
disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments.
Create GitLab Setup
/api/console/orgs/{orgName}/integrations/gitlabCreates a new GitLab integration for an organization. Requires a GitLab group ID and optionally configures authentication via the user’s GitLab OAuth token or a group access token. Returns 409 if an integration already exists for the specified group.
Request Parameters
orgNamestring path requiredThe organization name
Request Body
gitLabGroupIdinteger requiredThe GitLab group ID to integrate with the Pulumi organization.useUserGitLabAuthboolean optionalWhether to use the current user’s GitLab OAuth token instead of a group access token for authentication.
Responses
Get GitLab Integration
/api/console/orgs/{orgName}/integrations/gitlab/{integrationId}Gets a specific GitLab integration by its integration ID. Returns the integration details including the linked GitLab group, authentication configuration, and validity status.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitLab integration identifier
Responses
idstring requiredThe unique identifier of the GitLab integration.gitLabGroupIdinteger requiredThe GitLab group ID linked to this integration.groupNamestring optionalThe display name of the GitLab group.groupPathstring optionalThe URL-safe path of the GitLab group (e.g. ‘parent-group/child-group’).avatarUrlstring optionalThe URL of the GitLab group’s avatar image.installedboolean requiredWhether the integration has been fully installed.validboolean requiredWhether the integration is currently valid (tokens, hooks, etc.).- Metadata about the GitLab group linked to this integration.
- ↳
idinteger requiredThe GitLab group or organization ID - ↳
namestring requiredThe name of the GitLab organization - ↳
avatarURLstring requiredThe URL of the organization’s avatar image - ↳
hasRequiredPermissionsboolean requiredWhether the integration has the required permissions - The Pulumi user whose GitLab authentication token is being used, if applicable.
- ↳
idstring requiredThe unique identifier of the user. - ↳
githubLoginstring requiredThe user’s login name (originally from GitHub). - ↳
namestring requiredThe user’s display name. - ↳
emailstring requiredThe user’s email address. - ↳
avatarUrlstring requiredThe URL of the user’s avatar image. - Organizations is the list of Pulumi organizations the user is a member of.
- PotentialOrganizations is the list of Pulumi organizations the user is a potential member of.
- ↳
identitiesarray[string] requiredIdentities is the array of identities a Pulumi user’s account is tied to. - ↳
siteAdminboolean optionalSiteAdministrator is whether or not the user is a site administrator. - ↳
registryAdminboolean optionalRegistryAdmin is whether or not the user is a registry administrator. - TokenInfo is contains metadata, set only for machine tokens & to be used only in the CLI
- ↳
hasMFAboolean requiredWhether the user has multi-factor authentication enabled. - ↳
isOrgManagedboolean requiredWhether the user’s account is managed by an organization. - ↳
isManagedByMultiOrgboolean requiredWhether the user’s account is managed by multiple organizations. groupAccessTokenExpirationstring optionalThe expiration date of the group access token, if one is being used for authentication.disablePRCommentsboolean requiredWhether PR comments are disabled for this integration.disableNeoSummariesboolean requiredWhether Neo AI summaries are disabled for this integration.disableDetailedDiffboolean requiredWhether detailed property-level diffs are disabled for PR comments.
Update GitLab Integration
/api/console/orgs/{orgName}/integrations/gitlab/{integrationId}Updates an existing GitLab integration’s settings, such as PR comment preferences and AI summary options.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitLab integration identifier
Request Body
disablePRCommentsboolean optionalWhether PR comments are disabled for this integration.disableNeoSummariesboolean optionalWhether Neo AI summaries are disabled for this integration.disableDetailedDiffboolean optionalWhether detailed property-level diffs are disabled for PR comments.
Responses
Delete GitLab Integration
/api/console/orgs/{orgName}/integrations/gitlab/{integrationId}Removes a specific GitLab integration from the organization. Cleans up associated webhooks, access tokens, and group tokens.
Request Parameters
orgNamestring path requiredThe organization nameintegrationIdstring path requiredThe GitLab integration identifier
Responses
Get GitLab Access Status
/api/console/orgs/{orgName}/integrations/gitlab/access-statusReturns information about a user’s GitLab access status for an organization, including whether they have a valid OAuth token, existing integrations, and available GitLab groups for new integrations.
Request Parameters
orgNamestring path requiredThe organization name
Responses
hasUserTokenboolean requiredWhether the user has a valid GitLab OAuth token.- GitLab groups available for integration that the user has access to.
- ↳
idinteger requiredThe GitLab group or organization ID - ↳
namestring requiredThe name of the GitLab organization - ↳
avatarURLstring requiredThe URL of the organization’s avatar image - ↳
hasRequiredPermissionsboolean requiredWhether the integration has the required permissions
Thank you for your feedback!
If you have a question about how to use Pulumi, reach out in Community Slack.
Open an issue on GitHub to report a problem or suggest an improvement.