Skip to main content

Schema Reference

Title: GitProxy configuration file

Typeobject
RequiredNo
Additional propertiesNot allowed

Description: Configuration for customizing git-proxy

1. [Optional] Property GitProxy configuration file > proxyUrl
Typestring
RequiredNo
2. [Optional] Property GitProxy configuration file > cookieSecret
Typestring
RequiredNo
3. [Optional] Property GitProxy configuration file > sessionMaxAgeHours
Typenumber
RequiredNo
4. [Optional] Property GitProxy configuration file > api
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Third party APIs

4.1. [Optional] Property GitProxy configuration file > api > ls
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Configuration used in conjunction with ActiveDirectory auth, which relates to a REST API used to check user group membership, as opposed to direct querying via LDAP.
If this configuration is set direct querying of group membership via LDAP will be disabled.

4.1.1. [Optional] Property GitProxy configuration file > api > ls > userInADGroup
Typestring
RequiredNo

Description: URL template for a GET request that confirms a user's membership of a specific group. Should respond with a non-empty 200 status if the user is a member of the group, an empty response or non-200 status indicates that the user is not a group member. If set, this URL will be queried and direct queries via LDAP will be disabled. The template should contain the following string placeholders, which will be replaced to produce the final URL:

  • "<domain>": AD domain,
  • "<name>": The group name to check membership of.
  • "<id>": The username to check group membership for.

Example:

"https://somedomain.com/some/path/checkUserGroups?domain=<domain>&name=<name>&id=<id>"
4.2. [Optional] Property GitProxy configuration file > api > github
Typeobject
RequiredNo
Additional propertiesAny type allowed
4.2.1. [Optional] Property GitProxy configuration file > api > github > baseUrl
Typestring
RequiredNo
Formaturi

Example:

"https://api.github.com"
5. [Optional] Property GitProxy configuration file > commitConfig
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Enforce rules and patterns on commits including e-mail and message

6. [Optional] Property GitProxy configuration file > attestationConfig
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Customisable questions to add to attestation form

7. [Optional] Property GitProxy configuration file > domains
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Provide domains to use alternative to the defaults

8. [Optional] Property GitProxy configuration file > rateLimit
Typeobject
RequiredNo
Additional propertiesNot allowed

Description: API Rate limiting configuration.

8.1. [Required] Property GitProxy configuration file > rateLimit > windowMs
Typenumber
RequiredYes

Description: How long to remember requests for, in milliseconds (default 10 mins).

8.2. [Required] Property GitProxy configuration file > rateLimit > limit
Typenumber
RequiredYes

Description: How many requests to allow (default 150).

8.3. [Optional] Property GitProxy configuration file > rateLimit > statusCode
Typenumber
RequiredNo

Description: HTTP status code after limit is reached (default is 429).

8.4. [Optional] Property GitProxy configuration file > rateLimit > message
Typestring
RequiredNo

Description: Response to return after limit is reached.

9. [Optional] Property GitProxy configuration file > privateOrganizations
Typearray
RequiredNo

Description: Pattern searches for listed private organizations are disabled

10. [Optional] Property GitProxy configuration file > urlShortener
Typestring
RequiredNo

Description: Customisable URL shortener to share in proxy responses and warnings

11. [Optional] Property GitProxy configuration file > contactEmail
Typestring
RequiredNo

Description: Customisable e-mail address to share in proxy responses and warnings

12. [Optional] Property GitProxy configuration file > csrfProtection
Typeboolean
RequiredNo

Description: Flag to enable CSRF protections for UI

13. [Optional] Property GitProxy configuration file > plugins
Typearray of string
RequiredNo

Description: List of plugins to integrate on GitProxy's push or pull actions. Each value is either a file path or a module name.

Each item of this array must beDescription
plugins items-

13.1. GitProxy configuration file > plugins > plugins items

Typestring
RequiredNo
14. [Optional] Property GitProxy configuration file > authorisedList
Typearray
RequiredNo

Description: List of repositories that are authorised to be pushed to through the proxy.

Each item of this array must beDescription
authorisedRepo-

14.1. GitProxy configuration file > authorisedList > authorisedRepo

Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/definitions/authorisedRepo
14.1.1. [Required] Property GitProxy configuration file > authorisedList > authorisedList items > project
Typestring
RequiredYes
14.1.2. [Required] Property GitProxy configuration file > authorisedList > authorisedList items > name
Typestring
RequiredYes
14.1.3. [Required] Property GitProxy configuration file > authorisedList > authorisedList items > url
Typestring
RequiredYes
15. [Optional] Property GitProxy configuration file > sink
Typearray
RequiredNo

Description: List of database sources. The first source in the configuration with enabled=true will be used.

Each item of this array must beDescription
database-

15.1. GitProxy configuration file > sink > database

Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/definitions/database
15.1.1. [Required] Property GitProxy configuration file > sink > sink items > type
Typestring
RequiredYes
15.1.2. [Required] Property GitProxy configuration file > sink > sink items > enabled
Typeboolean
RequiredYes
15.1.3. [Optional] Property GitProxy configuration file > sink > sink items > connectionString
Typestring
RequiredNo
15.1.4. [Optional] Property GitProxy configuration file > sink > sink items > options
Typeobject
RequiredNo
Additional propertiesAny type allowed
15.1.5. [Optional] Property GitProxy configuration file > sink > sink items > params
Typeobject
RequiredNo
Additional propertiesAny type allowed
16. [Optional] Property GitProxy configuration file > authentication
Typearray
RequiredNo

Description: List of authentication sources. The first source in the configuration with enabled=true will be used.

Each item of this array must beDescription
authenticationConfiguration for an authentication source

16.1. GitProxy configuration file > authentication > authentication

Typecombining
RequiredNo
Additional propertiesAny type allowed
Defined in#/definitions/authentication

Description: Configuration for an authentication source

One of(Option)
Local Auth Config
Active Directory Auth Config
Open ID Connect Auth Config
JWT Auth Config

16.1.1. Property GitProxy configuration file > authentication > authentication items > oneOf > Local Auth Config

Title: Local Auth Config

Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Configuration for the use of the local database as the authentication source.

16.1.1.1. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Local Auth Config > type
Typeconst
RequiredYes

Specific value: "local"

16.1.1.2. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Local Auth Config > enabled
Typeboolean
RequiredYes

16.1.2. Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config

Title: Active Directory Auth Config

Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Configuration for Active Directory authentication.

16.1.2.1. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > type
Typeconst
RequiredYes

Specific value: "ActiveDirectory"

16.1.2.2. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > enabled
Typeboolean
RequiredYes
16.1.2.3. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > adminGroup
Typestring
RequiredYes

Description: Group that indicates that a user is an admin

16.1.2.4. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > userGroup
Typestring
RequiredYes

Description: Group that indicates that a user should be able to login to the Git Proxy UI and can work as a reviewer

16.1.2.5. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > domain
Typestring
RequiredYes

Description: Active Directory domain

16.1.2.6. [Optional] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > adConfig
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Additional Active Directory configuration supporting LDAP connection which can be used to confirm group membership. For the full set of available options see the activedirectory 2 NPM module docs at https://www.npmjs.com/package/activedirectory2#activedirectoryoptions

Please note that if the Third Party APIs config api.ls.userInADGroup is set then the REST API it represents is used in preference to direct querying of group memebership via LDAP.

16.1.2.6.1. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > adConfig > url
Typestring
RequiredYes

Description: Active Directory server to connect to, e.g. ldap://ad.example.com.

16.1.2.6.2. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > adConfig > baseDN
Typestring
RequiredYes

Description: The root DN from which all searches will be performed, e.g. dc=example,dc=com.

16.1.2.6.3. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > adConfig > username
Typestring
RequiredYes

Description: An account name capable of performing the operations desired.

16.1.2.6.4. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Active Directory Auth Config > adConfig > password
Typestring
RequiredYes

Description: Password for the given username.

16.1.3. Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config

Title: Open ID Connect Auth Config

Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Configuration for Open ID Connect authentication.

16.1.3.1. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > type
Typeconst
RequiredYes

Specific value: "openidconnect"

16.1.3.2. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > enabled
Typeboolean
RequiredYes
16.1.3.3. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > oidcConfig
Typeobject
RequiredYes
Additional propertiesAny type allowed

Description: Additional OIDC configuration.

16.1.3.3.1. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > oidcConfig > issuer
Typestring
RequiredYes
16.1.3.3.2. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > oidcConfig > clientID
Typestring
RequiredYes
16.1.3.3.3. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > oidcConfig > clientSecret
Typestring
RequiredYes
16.1.3.3.4. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > oidcConfig > callbackURL
Typestring
RequiredYes
16.1.3.3.5. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > Open ID Connect Auth Config > oidcConfig > scope
Typestring
RequiredYes

16.1.4. Property GitProxy configuration file > authentication > authentication items > oneOf > JWT Auth Config

Title: JWT Auth Config

Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Configuration for JWT authentication.

16.1.4.1. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > JWT Auth Config > type
Typeconst
RequiredYes

Specific value: "jwt"

16.1.4.2. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > JWT Auth Config > enabled
Typeboolean
RequiredYes
16.1.4.3. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > JWT Auth Config > jwtConfig
Typeobject
RequiredYes
Additional propertiesAny type allowed

Description: Additional JWT configuration.

16.1.4.3.1. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > JWT Auth Config > jwtConfig > clientID
Typestring
RequiredYes
16.1.4.3.2. [Required] Property GitProxy configuration file > authentication > authentication items > oneOf > JWT Auth Config > jwtConfig > authorityURL
Typestring
RequiredYes
17. [Optional] Property GitProxy configuration file > tempPassword
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Toggle the generation of temporary password for git-proxy admin user

17.1. [Optional] Property GitProxy configuration file > tempPassword > sendEmail
Typeboolean
RequiredNo
17.2. [Optional] Property GitProxy configuration file > tempPassword > emailConfig
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Generic object to configure nodemailer. For full type information, please see https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/nodemailer

18. [Optional] Property GitProxy configuration file > apiAuthentication
Typearray
RequiredNo

Description: List of authentication sources for API endpoints. May be empty, in which case all endpoints are public.

Each item of this array must beDescription
authenticationConfiguration for an authentication source

18.1. GitProxy configuration file > apiAuthentication > authentication

Typecombining
RequiredNo
Additional propertiesAny type allowed
Same definition asauthentication_items

Description: Configuration for an authentication source

19. [Optional] Property GitProxy configuration file > tls
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: TLS configuration for secure connections

19.1. [Required] Property GitProxy configuration file > tls > enabled
Typeboolean
RequiredYes
19.2. [Required] Property GitProxy configuration file > tls > key
Typestring
RequiredYes
19.3. [Required] Property GitProxy configuration file > tls > cert
Typestring
RequiredYes
20. [Optional] Property GitProxy configuration file > configurationSources
Typeobject
RequiredNo
Additional propertiesAny type allowed
21. [Optional] Property GitProxy configuration file > uiRouteAuth
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: UI routes that require authentication (logged in or admin)

21.1. [Optional] Property GitProxy configuration file > uiRouteAuth > enabled
Typeboolean
RequiredNo
21.2. [Optional] Property GitProxy configuration file > uiRouteAuth > rules
Typearray
RequiredNo
Each item of this array must beDescription
routeAuthRule-

21.2.1. GitProxy configuration file > uiRouteAuth > rules > routeAuthRule

Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/definitions/routeAuthRule
21.2.1.1. [Optional] Property GitProxy configuration file > uiRouteAuth > rules > rules items > pattern
Typestring
RequiredNo
21.2.1.2. [Optional] Property GitProxy configuration file > uiRouteAuth > rules > rules items > adminOnly
Typeboolean
RequiredNo
21.2.1.3. [Optional] Property GitProxy configuration file > uiRouteAuth > rules > rules items > loginRequired
Typeboolean
RequiredNo

Generated using json-schema-for-humans on 2025-06-04 at 23:10:45 +0100

  • 13.1. GitProxy configuration file > plugins > plugins items
  • 14.1. GitProxy configuration file > authorisedList > authorisedRepo
  • 15.1. GitProxy configuration file > sink > database
  • 16.1. GitProxy configuration file > authentication > authentication
  • 18.1. GitProxy configuration file > apiAuthentication > authentication