StringJet

Integrations /

GitHub integration

StringJet connects to github.com via a GitHub App (not personal access tokens). Install the app once per org or account, then link one or more repositories to each StringJet project — for example a mobile app repo and a web frontend — each with its own pull settings and webhook.

Authentication

StringJet uses a single GitHub App for all customers. When you click Connect GitHub in the web app, you install that app on GitHub. After install, GitHub redirects to the StringJet API setup URL; the server mints an installation access token for repository access — your GitHub password or PAT is never stored.

GitHub App registration

StringJet operates one shared GitHub App (stringjet-i18n). If you maintain the app registration, use these values:

Setting Value
Setup URL (post-install) https://api.stringjet.com/integrations/github/setup
Callback URL (user OAuth) https://api.stringjet.com/integrations/github/callback
Request user authorization during installation Off (repo access uses installation access tokens)

Connect in the web app

  1. Open https://app.stringjet.com → your project → IntegrationsGitHub.
  2. Click Connect GitHub and complete the GitHub App installation flow. Your connection is per StringJet user — installing once applies across projects you work in.
  3. Click Add repository for each git repo you want to sync. For each linked repo, choose pull branch and target branch from searchable lists, and add one or more translation file paths. Use Manage repositories on GitHub to grant the installation access to more repos.

Each project can link multiple repositories from different teammates. Only the member who linked a repo can change its setup; everyone on the project can pull and export using saved paths and the linker’s GitHub access. Optional Platforms to add on pull enable stacks when you save or pull — not a fixed iOS/Android split. Each repo must be included in the linker’s GitHub App installation access.

Pull (git → StringJet)

Use Pull now on each linked repository card to fetch configured files from that repo’s branch. Imports are add-only by default: new keys from git are added; existing keys and translations are left unchanged. Enable Overwrite existing when you intentionally want to replace values (same semantics as the Upload tab).

Auto-pull (push webhooks)

Each linked repository has its own webhook URL and secret. In GitHub → that repository’s Settings → Webhooks, add a webhook with the push event. See GitHub’s guides on creating webhooks and validating deliveries. StringJet verifies the secret and runs the same pull job as Pull now for that repository only. Provider-level Auto-pull defaults control whether webhook pulls overwrite existing translations.

Export (StringJet → git)

On the project Download tab, enable the GitHub trigger when exporting (requires at least one fully configured linked repository). StringJet opens the pull request using the linking member’s GitHub account for the matched repo. If multiple repos match the same export type, narrow file paths or set platforms on one repo.

Logs & disconnect

Pull runs and PR attempts appear in the integration Sync log. Use Disconnect GitHub to remove the link from the project (this does not uninstall the GitHub App from your GitHub account).

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