private-registries

Create a private registry for an organization

Creates a private registry configuration with an encrypted value for an organization. Encrypt your secret using LibSodium. For more information, see "Encrypting secrets for the REST API."

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

post/orgs/{org}/private-registries

Path parameters

orgstring required

The organization name. The name is not case sensitive.

Request body

registry_type'maven_repository' | 'nuget_feed' | 'goproxy_server' | 'npm_registry' | 'rubygems_server' | 'cargo_registry' | 'composer_repository' | 'docker_registry' | 'git_source' | 'helm_registry' | 'hex_organization' | 'hex_repository' | 'pub_repository' | 'python_index' | 'terraform_registry' required

The registry type.

urlstring uri required

The URL of the private registry.

usernamestring nullable

The username to use when authenticating with the private registry. This field should be omitted if the private registry does not require a username for authentication.

replaces_baseboolean

Whether this private registry should replace the base registry (e.g., npmjs.org for npm, rubygems.org for rubygems). When set to true, Dependabot will only use this registry and will not fall back to the public registry. When set to false (default), Dependabot will use this registry for scoped packages but may fall back to the public registry for other packages.

encrypted_valuestring required

The value for your secret, encrypted with LibSodium using the public key retrieved from the Get private registries public key for an organization endpoint.

key_idstring required

The ID of the key you used to encrypt the secret.

visibility'all' | 'private' | 'selected' required

Which type of organization repositories have access to the private registry. selected means only the repositories specified by selected_repository_ids can access the private registry.

selected_repository_idsinteger[]

An array of repository IDs that can access the organization private registry. You can only provide a list of repository IDs when visibility is set to selected. You can manage the list of selected repositories using the Update a private registry for an organization endpoint. This field should be omitted if visibility is set to all or private.

Response

The organization private registry configuration

namestring required

The name of the private registry configuration.

registry_type'maven_repository' | 'nuget_feed' | 'goproxy_server' | 'npm_registry' | 'rubygems_server' | 'cargo_registry' | 'composer_repository' | 'docker_registry' | 'git_source' | 'helm_registry' | 'hex_organization' | 'hex_repository' | 'pub_repository' | 'python_index' | 'terraform_registry' required

The registry type.

urlstring uri

The URL of the private registry.

usernamestring

The username to use when authenticating with the private registry.

replaces_baseboolean

Whether this private registry replaces the base registry (e.g., npmjs.org for npm, rubygems.org for rubygems). When true, Dependabot will only use this registry and will not fall back to the public registry. When false (default), Dependabot will use this registry for scoped packages but may fall back to the public registry for other packages.

visibility'all' | 'private' | 'selected' required

Which type of organization repositories have access to the private registry. selected means only the repositories specified by selected_repository_ids can access the private registry.

selected_repository_idsinteger[]

An array of repository IDs that can access the organization private registry when visibility is set to selected.

created_atstring date-time required
updated_atstring date-time required

Example response

{
  "name": "MAVEN_REPOSITORY_SECRET",
  "username": "monalisa"
}

Changes