API Reference

The Feedz REST API gives you full programmatic control over your organisation — create repositories, list packages, manage members, and trigger uploads and downloads from your own tools.

Authentication

All API requests require a personal access token. Pass the token via the feedz-api-key HTTP header:

curl -H "feedz-api-key: T-xyzXYZ" https://f.feedz.io/my-org/my-repo/packages/MyPackage/1.0.0/download

For NuGet protocol endpoints (push, restore), the token is passed as the API key or as the password in Basic authentication — depending on the client. See the NuGet page for details.

For CI/CD pipelines, use a service account token rather than a personal access token.

Feedz.Client (.NET library)

Feedz.Client is the recommended way to use the Feedz API from .NET. It wraps the REST API with a strongly-typed client and adds support for delta compression on uploads and downloads. Install it from NuGet:

dotnet add package Feedz.Client

The source is available at github.com/feedz-io/Client.

Example

Connect to a repository, check whether a package version already exists, and upload it if not:

var client = FeedzClient.Create("T-xyzXYZ");
var repo = client.ScopeToRepository("my-org", "my-repo");

var packages = await repo.Packages.List();

if (!packages.Any(p => p.PackageId == "MyPackage" && p.Version == "1.0.0"))
{
    await repo.Packages.Upload(@"C:\MyPackage.1.0.0.nupkg");
}

Low-level HTTP access

If you don't use .NET, the generic feed endpoints accept standard HTTP. See the Generic Files page for upload and download examples using curl and PowerShell.