Create Repository
Creating a repository is split into three APIs: local, remote, and virtual.
Allowed Roles: Workspace Admin or System Admin • Authentication Required
Path Parameters
Workspace ID or name.
Local Repository
POST https://api.repoflow.io/1/workspaces/<workspace-ref>/repositories/local
Create a repository that stores packages locally.
Body
Repository name (2-30 chars, lowercase letters, numbers, -).
Package type stored by the repository. One of: cargo, composer, debian, docker, gems, go, helm, maven, npm, nuget, pypi, rpm, universal.
Remote Repository
POST https://api.repoflow.io/1/workspaces/<workspace-ref>/repositories/remote
Proxy a remote repository and optionally enable caching.
Body
Repository name (2-30 chars, only English letters, numbers, -).
Package type stored by the repository. One of: cargo, composer, debian, docker, gems, go, helm, maven, npm, nuget, pypi, rpm, universal.
URL of the remote repository.
Username for the remote repository.
Password for the remote repository.
Whether caching is enabled.
Milliseconds before cached files require revalidation (null for indefinite caching).
Milliseconds before cached metadata requires revalidation (null for indefinite caching).
Virtual Repository
POST https://api.repoflow.io/1/workspaces/<workspace-ref>/repositories/virtual
Combine multiple repositories under one virtual repository and optionally set an upload target.
Body
Repository name (2-30 chars, only English letters, numbers, -).
Package type stored by the repository. One of: cargo, composer, debian, docker, gems, go, helm, maven, npm, nuget, pypi, rpm, universal.
IDs of repositories included in the virtual repository.
ID of a local repository where uploads will be stored (must also be in childRepositoryIds).