StringJet

Integrations /

GitLab integration

StringJet connects to gitlab.com using your own OAuth application. After you authorize, StringJet stores an encrypted refresh token per project and uses the GitLab API to read files and open merge requests.

Authentication

Create an OAuth app in GitLab (OAuth provider docs). StringJet requests the api scope only — you do not need read_repository or write_repository for StringJet’s REST-based pull and merge request flow.

Connect in the web app

  1. Create an application at User settings → Applications.
  2. Set the redirect URI shown on the StringJet GitLab integration page (typically https://api.stringjet.com/integrations/gitlab/callback).
  3. Enable scope api only on the GitLab application.
  4. Open https://app.stringjet.com → your project → IntegrationsGitLab, paste Application ID and Client Secret, then click Connect GitLab.
  5. Click Add repository for each GitLab project to sync. For each linked repo, pick pull branch and target branch from searchable lists (existing GitLab branches only), then add translation file paths to pull.

If GitLab access is revoked, the integration page warns you to disconnect and connect again.

Pull (git → StringJet)

Pull now on each linked repository card fetches configured files using the repository files API. Default import behavior is add-only; enable overwrite when you need to replace existing translations. Any StringJet project member can pull; actions run as the GitLab user who connected.

Auto-pull (push webhooks)

Each linked repository has its own webhook URL and secret — copy them from that repo’s card into GitLab → Settings → Webhooks with Push events. GitLab documents project webhooks and secret token validation. Provider-level Auto-pull defaults control whether webhook pulls overwrite existing translations.

Export (StringJet → git)

On the Download tab, enable GitLab when exporting (requires at least one fully configured linked repository). StringJet routes to the linked repo whose file paths match the export format and opens a merge request with the exported files — no ZIP download when a git trigger is selected.

Logs & disconnect

Sync history is listed on the integration page. Disconnect GitLab removes stored tokens for that project.

Also see GitHub integration · All integrations · https://app.stringjet.com