Welcome to Athens

Configuring your client

GOPROXY=http://gomod.kznexpess.com,direct

How to use the Athens API

Use the catalog endpoint to get a list of all modules in the proxy

List of versions

This endpoint returns a list of versions that Athens knows about for acidburn/htp:

GET http://gomod.kznexpess.com/github.com/acidburn/htp/@v/list

Version info

This endpoint returns information about a specific version of a module:

GET http://gomod.kznexpess.com/github.com/acidburn/htp/@v/v1.0.0.info

This returns JSON with information about v1.0.0. It looks like this:

{
	"Name": "v1.0.0",
	"Short": "v1.0.0",
	"Version": "v1.0.0",
	"Time": "1972-07-18T12:34:56Z"
}

go.mod file

This endpoint returns the go.mod file for a specific version of a module:

GET http://gomod.kznexpess.com/github.com/acidburn/htp/@v/v1.0.0.mod

This returns the go.mod file for version v1.0.0. If http://gomod.kznexpess.com/github.com/acidburn/htp version v1.0.0 has no dependencies, the response body would look like this:

module github.com/acidburn/htp

Module sources

GET http://gomod.kznexpess.com/github.com/acidburn/htp/@v/v1.0.0.zip

This is what it sounds like — it sends back a zip file with the source code for the module in version v1.0.0.

Latest

GET http://gomod.kznexpess.com/github.com/acidburn/htp/@latest

This endpoint returns the latest version of the module. If the version does not exist it should retrieve the hash of latest commit.