Skip to content

Package version management service — store, retrieve, and manage versioned build artifacts.


system

Service health

Operations


Health check

GET
/health

Returns the health status of the MongoDB and Redis connections.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Responses

All services healthy.

application/json
JSON
{
  
"mongo": "Mongo is fine",
  
"redis": "Redis is fine"
}

Samples


auth

API token management (admin only)


Register a new API token

PUT
/register

Creates and returns a new API token. Requires admin privileges.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Request Body

application/json
JSON
{
  
"admin": false
}

Responses

Token created. The raw token string is returned as plain text.

text/plain
JSON
"a3f9b2c1d4e5f6a7b8c9..."

Samples


Fetch an API token

GET
/fetch/{token}

Returns metadata for the specified token.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

token*

The raw token string to look up.

Type
string
Required

Responses

Token metadata.

application/json
JSON
{
  
"token": "a3f9b2c1...",
  
"admin": false
}

Samples


Delete an API token

DELETE
/prune/{token}

Permanently removes the specified API token. Requires admin privileges.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

token*

The raw token string to delete.

Type
string
Required

Responses

Token deleted.

Samples


List accessible products

GET
/product/access

Returns the names of all products the authenticated token has access to.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Responses

Product names accessible by the token.

application/json
JSON
[
  
[
  
  
"my-lib",
  
  
"other-lib"
  
]
]

Samples


Create a product

PUT
/product/create

Creates a new product. The calling token is automatically granted full maintainer access (download, upload, delete, maintainer).

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Request Body

application/json
JSON
{
  
"name": "my-lib"
}

Responses

Product created.

Samples


Fetch a product

GET
/product/fetch/{product}

Returns full product metadata including the token map and all versions. Requires the calling token to have access to the product, or admin privileges.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

product*

Product name.

Type
string
Required

Responses

Product metadata.

application/json
JSON
{
  
"name": "my-lib",
  
"tokens": {
  
  
"additionalProperties": {
  
  
  
"maintainer": false,
  
  
  
"download": true,
  
  
  
"upload": false,
  
  
  
"delete": false
  
  
}
  
},
  
"versions": {
  
  
"additionalProperties": {
  
  
  
"path": "./prodcuts/my-lib/v1.0.0/my-lib.tar.gz",
  
  
  
"checksum": "sha256:abc123..."
  
  
}
  
}
}

Samples


Delete a product

DELETE
/product/delete/{product}

Permanently removes a product and all its metadata. Requires maintainer or admin access.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

product*

Product name.

Type
string
Required

Responses

Product deleted.

Samples


Modify a product (addToken)

PUT
/product/modify/{action}

Grants a token access to a product with the specified permissions. Requires maintainer or admin access.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

action*

Must be addToken.

Type
string
Required
Valid values
"addToken"

Request Body

application/json
JSON
{
  
"product": "my-lib",
  
"token": "a3f9b2c1...",
  
"permissions": {
  
  
"maintainer": false,
  
  
"download": true,
  
  
"upload": false,
  
  
"delete": false
  
}
}

Responses

Token added.

Samples


Modify a product (deleteVersion / deleteToken)

DELETE
/product/modify/{action}

Dispatches to deleteVersion or deleteToken based on the action path parameter.

deleteVersion: Remove a version from a product.

Request body: DeleteVersionRequest

deleteToken: Revoke a token's access to a product. Requires maintainer or admin access.

Request body: DeleteProductTokenRequest

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

action*

Action to perform.

Type
string
Required
Valid values
"deleteVersion""deleteToken"

Request Body

application/json
JSON
{
  
"product": "my-lib",
  
"version": "v1.0.0"
}

Responses

Version deleted (deleteVersion).

Samples


versions


Upload a version artifact

POST
/product/upload

Uploads a file as a new version of a product. Requires Upload permission. Duplicate version names are rejected.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Request Body

multipart/form-data
object

Product name.

Version identifier.

Artifact file.

Format"binary"

Responses

Version uploaded.

Samples


Download a version artifact

GET
/product/download/{product}/{version}

Streams the artifact file for the specified product version. Requires Download permission.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

product*

Product name.

Type
string
Required
version*

Version identifier.

Type
string
Required

Responses

Artifact file binary.

application/octet-stream

Samples


Delete a version artifact

DELETE
/product/delete/{product}/{version}

Removes the artifact file and version metadata. Requires Delete permission.

Authorizations

ApiKeyAuth

API token obtained via the /register endpoint. Pass as the X-Api-Token header on every request.

Type
API Key (header: X-Api-Token)

Parameters

Path Parameters

product*

Product name.

Type
string
Required
version*

Version identifier.

Type
string
Required

Responses

Version deleted.

Samples


Powered by VitePress OpenAPI