Sailfin RegistryBeta

Sailfin Registry usage

Read-only endpoints are public. Publishing requires the shared bearer token injected into the API Deployment. Use the Sailfin CLI for end-to-end workflows or cURL for raw API interaction.

Discover artefacts

# Index
curl -s https://registry.sailfin.dev/index.json | jq .

# Download a capsule package
curl -LO https://registry.sailfin.dev/capsules/sailfin/http/0.1.0.sfnpkg

# Download a model card
curl -s https://registry.sailfin.dev/models/openai/[email protected] | jq .

Publish with sfn

export PUBLISH_TOKEN=...  # retrieve from registry-publish secret

sfn publish   --registry https://registry.sailfin.dev   --capsule myscope/tooling   --version 0.2.0

Raw API publish

cat > payload.json <<'JSON'
{
  "type": "capsule",
  "capsule": "sailfin/example",
  "version": "0.0.1",
  "digest": "sha256:deadbeef",
  "content_b64": "$(base64 -w0 artefact.sfnpkg)"
}
JSON

curl -X POST https://registry.sailfin.dev/publish   -H "Authorization: Bearer $PUBLISH_TOKEN"   -H "Content-Type: application/json"   --data-binary @payload.json

Troubleshooting

  • 401 Unauthorized: verify the bearer token matches the registry-publish secret and that the pod sees it asPUBLISH_TOKEN.
  • 404 Not Found: ensure the capsule scope/name and version match the index or check if the artefact exists on disk under/data/registry.
  • Digest mismatch: recompute the SHA-256 digest locally before uploading; the API stores the provided value verbatim for provenance checks.