Skip to main content

Git Providers

A Git provider defines how Flowable Design authenticates with a remote Git hosting service. You must configure at least one provider before you can connect an app package to a Git repository. Providers can be scoped to a specific workspace or shared across the entire Design instance.

Provider Types

GitHub

GitHub is supported for both GitHub.com and GitHub Enterprise Server instances.

Authentication methods:

MethodBest ForDetails
GitHub AppOrganizations, shared accessA GitHub App installed on the organization. Requires App ID, private key, and installation ID. Provides fine-grained permissions without tying access to an individual account.
Personal Access Token (PAT)Individual developers, quick setupA classic or fine-grained personal access token with repo scope. Simplest to configure.
SSH KeySecure key-based authAuthenticate using an SSH private key. The corresponding public key must be added to your GitHub account.

GitHub PAT provider configuration

tip

For organizations, GitHub App authentication is recommended. It provides fine-grained permissions, doesn't depend on an individual user's account, and allows centralized access management.

GitLab

GitLab is supported for both GitLab.com and self-managed GitLab instances. Authentication uses a personal access token with api and read_repository scopes.

FieldDetails
Access TokenA GitLab personal access token with api and read_repository scopes.
Project/Group IDOptional. Limits repository browsing to a specific GitLab project or group.
Server URLDefaults to https://gitlab.com. Set to your self-managed GitLab instance URL.

GitLab provider configuration

Bitbucket

Bitbucket is supported for both Bitbucket Cloud and Bitbucket Data Center / Server.

FieldDetails
Access TokenA Bitbucket access token (or app password) with repository:read and repository:write permissions.
WorkspaceThe Bitbucket workspace slug to scope repository access to.
Server URLDefaults to https://bitbucket.org. Set to your Bitbucket Data Center URL for self-hosted instances.

Bitbucket provider configuration

Managing Providers

Creating a Provider

  1. Navigate to the Git Providers management page.
  2. Click Add Provider.
  3. Select the provider type.
  4. Fill in the connection details:
    • Name - A human-readable name for this provider.
    • Server URL - The base URL of the Git hosting server.
    • Authentication fields - Vary by provider type (see above).
  5. Optionally scope the provider to a specific workspace. If no workspace is selected, the provider is available to all workspaces.
  6. Click Test Connection to verify the credentials.
  7. Save the provider.

Testing Connections

Before saving a provider, always use the Test Connection button to verify that Design can authenticate with the Git server. The test will:

  • Verify the server URL is reachable.
  • Validate the authentication credentials.
  • Confirm the provider has sufficient permissions to list repositories.

Editing and Deleting Providers

  • To edit a provider, open it from the Git Providers list and modify the desired fields. Use Test Connection again after making changes.
  • To delete a provider, remove it from the Git Providers list. Existing apps connected through this provider will lose their Git connectivity and need to be reconfigured with a different provider.
caution

Deleting a provider that is in use by connected apps will disconnect those apps from their Git repositories. Ensure no apps depend on a provider before deleting it.

Credential Security

All sensitive credentials (access tokens, private keys, OAuth secrets) are encrypted at rest using AES encryption before being stored in the database. The encryption key is managed by the Design application's encryption configuration.

Permissions

Managing Git providers requires the DESIGN_GIT_PROVIDER_MANAGEMENT permission. Without this permission, users can still use existing providers to connect apps and perform Git operations, but they cannot create, edit, or delete provider configurations.

PermissionAllows
DESIGN_GIT_PROVIDER_MANAGEMENTCreate, edit, delete, and test Git providers
DESIGN_GIT_MANAGEConnect apps to repositories, switch branches, manage Git configuration
DESIGN_GIT_PUSHCommit and push changes to the remote repository