Web IDE OAuth callback URL
Overview
Access to the Web IDE application requires that the DNS domain of the OAuth callback URL matches the domain of the GitLab environment. In environments which have multiple different domains or aliases, you can add multiple callback URLs.
Description
Attempting to access the Web IDE results in a Cannot open Web IDE
error page with this message:
The URL you're using to access the Web IDE and the configured OAuth callback URL do not match. This issue often occurs when you're using a proxy.
This may be persistent, or intermittent and unpredictable.
Impacted offerings:
- GitLab Self-Managed
Impacted versions:
GitLab 18.0, or older GitLab with the vscode_web_ide
feature flag enabled.
Resolution
Update the OAuth callback URL to match the URL used to access the GitLab instance:
- On the left sidebar, at the bottom, select Admin.
- Select Applications.
- For GitLab Web IDE, select Edit.
- Enter the OAuth callback URL.
Example:
In cases where your GitLab can be reached by multiple URLs, you can enter multiple URLs into the OAuth callback URL field, separated by newlines:
https://gitlab.example.com/-/ide/oauth_redirect https://gitlab.example.org/-/ide/oauth_redirect http://server.infra/-/ide/oauth_redirect
Cause
The Web IDE uses an instance-wide OAuth application for authentication. If the OAuth callback URL is misconfigured, the Web IDE application cannot authenticate to GitLab.
Symptom
The Web IDE cannot be opened, and visitors see the Cannot open Web IDE
error page.
Root Cause
Accessing the Web IDE through a GitLab URL that is not included in the OAuth callback URL list.