Fork me on GitHub

docs

v1 API

The current API supported by the Elnode service is massively cut down from the original API supported by the nodejs service. The current API supports only a few functions.

I have retained the marker /v1 because it seemed easier to do than invent a lot more stuff. But mostly this is very different from the original nex3 API.

token acquire

http://marmalade-repo.org/v1/users/login/

Acquiring a token is basically like getting a cookie. You get the cookie and then present it to all the subsequent requests.

marmalade-repo API does not work without an authentication token.


parameters:

  • name - a valid marmalade-repo username
  • password - a valid marmalade-repo password
Returns a JSON structure with the token being present as a key token.

package upload

http://marmalade-repo.org/v1/packages

Upload a package file to marmalade-repo. Either an ELPA package format tar file or an ELPA marked-up .el file may be specified.

parameters:

  • name - the username of the owner of the package
  • token - the auth token of the owner of the package
  • package - the package file contents
Returns a JSON structure with a message key for any informational or error message.

owner add

http://marmalade-repo.org/v1/package/package-name Add an owner to the specified package-name.

parameters:

  • name - the username of you, a current owner
  • token - the auth token of the you, a current owner
  • addowner - must be addowner
  • new-owner - the name of another marmalade user to add as an owner
Returns a JSON structure with a message key for any informational or error message.

400 response on error.

package remove

http://marmalade-repo.org/v1/package/package-name Remove the specified package.

parameters:

  • name - the username of you, a current owner
  • token - the auth token of the you, a current owner
  • delete - must be delete
Returns a JSON structure with a message key for any informational or error message.

400 response on error.

implementations

I know of the following implementations of the API:

If you want to have your marmalade tool listed here then please send me a pull request via marmalade-repo's GitHub account