Scrumy API

REST API

Introduction

Welcome to the Scrumy REST API documentation!

This documentation is currently not complete, but as of writing, all of the available methods are at least mentioned.

Feel free to update or expand on the documentation wherever you see fit.

General Notes

REST

The Scrumy API is RESTful. Anything within your project is a resource, be it a task, a sprint, or the project itself. Each resource can be accessed or modified using specially formed URLs and the HTTP verbs GET, POST, PUT, and DELETE. Descriptions of the actions you may perform on each resource can be found below.

Format

All Scrumy resources can be returned in either XML or JSON formats. To specify the format you’d like to see, add either .xml or .json to your URL. If nothing is specified, XML will be returned.

http://scrumy.com/api/scrumies/demo.xml

http://scrumy.com/api/scrumies/demo.json

Authentication

The API uses http basic authentication. Your login is your project name and your password is the password you use to log into your project. If you don’t have a password, we recommend that you set one, but if you insist, just leave the field blank.

Some examples:

https://yourproject:yourpassword@scrumy.com/api/scrumies/yourproject

or using curl:

curl -u yourproject:yourpassword https://scrumy.com/api/scrumies/yourproject

Responses

Under normal circumstances, you will see the following types of responses:

  • 200 OK - This response means everything went as planned. The body will typically contain the data you requested, unless it was an update or delete, in which case the body will be empty.
  • 202 CREATED - Your resource was successfully created. The body will contain the newly created resource.

However, sometimes things don’t go according to plan. These are the error responses you may receive:

  • 401 UNAUTHORIZED - Unh-unh-uh, you didn’t say the magic word! You attempted to access a resource that you don’t have permission to access.
  • 403 FORBIDDEN - Your login was correct, but you are not allowed access anyway. This most likely means you do not have a Scrumy Pro account, or your account is inactive.
  • 404 NOT FOUND - You attempted to access a resource that doesn’t exist.
  • 422 UNPROCESSABLE ENTITY - Thrown during a create or update, means you are missing some data or have sent invalid data. Will be accompanied by one or more error messages in the body.
  • 500 INTERNAL SERVER ERROR - Whoops! We did something wrong…if you get this, or any other error that isn’t listed, tell us about it at support@scrumy.com (include the request you attempted in the email).

SSL

The Scrumy API is available with or without SSL. The only difference is using https:// for a secure connection or http:// to use it without a secure connection. For obvious reasons, we recommend using https://.

Live Updating

Currently, changes made on the API will not be pushed to users connected to the live updating server, regardless of whether or not they are shown as being ‘online’. We will work on making this feature more available in the future.

Resources

The following are the different resources that can be accessed or modified using the API.

Notes: In any case where you would be updating or deleting a resource, parameters can be sent in the form attribute_name=data or resource_name[attribute_name]=data. For example, if you are updating the title attribute of a story, you could send story[title]=something or just title=something. You cannot, however, mix and match during one request. If you send any updates in the form resource[attribute_name].