Integrations - Providers - SCM
Source control provider connections (GitHub, GitLab, Bitbucket, Gitea).
📄️ Check SCM Integration Validity
Returns, for every supported SCM provider (GitHub, GitLab, Bitbucket, Gitea, Forgejo, Azure DevOps, TFVC), whether the authenticated client has a complete integration configured, based on the required credential keys stored for each provider.
📄️ Get SCM Repository Branches
Lists the branches of a repository for the given SCM provider and repository identifier, with offset/limit pagination and optional custom_domain for self-hosted instances. Returns 400 when the provider is not supported.
📄️ Test SCM Connection
Tests connectivity to the given SCM provider using the credentials stored for the authenticated client, with optional custom_domain for self-hosted instances. Succeeds only when the stored credentials can authenticate against the provider.
📄️ SCM OAuth Callback
Handles the OAuth authorization callback from an SCM provider, exchanging the authorization code (plus optional state and installation_id) to store the integration for the authenticated client. Returns 400 for unsupported providers or failed exchanges.
📄️ Get GitHub Installation Id
Returns the GitHub App installation id stored for the authenticated client, cross-checked against the installations visible to the GitHub App. Also reports whether the stored record has drifted and needs reconciliation.
📄️ Reconcile GitHub Installation Id
Reconciles the stored GitHub App installation record with the current installation reported by GitHub, updating the client's saved installation id and metadata when they have drifted. Requires the SCM integrations write scope.
📄️ Save GitHub Installation Id
Saves the GitHub App installation id for the authenticated client and enriches the stored record with installation details (target, app, and account metadata) fetched from GitHub.
📄️ Delete GitHub Installation Id
Uninstalls the GitHub App for the authenticated client by deleting the installation via the GitHub API. Returns 404 when no installation id is stored for the client.