Skip to content
A JavaScript wrapper for the Basecamp API to be used in an environment like AIR.
JavaScript
Find file
Latest commit ab2108b @brandonaaron adding readme
Failed to load latest commit information.
LICENSE.txt Initial import
README.markdown adding readme
basecamp.datatypes.js Initial import
basecamp.js Initial import

README.markdown

basecampjs

This is a JavaScript wrapper for the Basecamp API. It covers everything in the API except file attachments for comments and messages. For the API to work it has to be used in an environment like AIR where cross-domain XMLHttpRequest calls are allowed.

Here is an example of getting back an Array of projects from Basecamp.

var basecamp = new Basecamp("your.basecamp.url", "user_name", "password");
basecamp.projects({
    success: function( projects_xml ) {
        var projects = Basecamp.Project.from_xml( projects_xml );
        alert( projects.length );
    }
};

Here is an example of how to create a new message assuming you've already used the API to retrieve the desired project_id, message_category_id and person_id.

var message = new Basecamp.Message({
    title: "Testing from API",
    body: "This is a test from the JavaScript API wrapper.",
    category_id: message_category_id
});
basecamp.post_message( project_id, message, [person_id], {
    success: function( message_xml ) {
        var message = Basecamp.Message.from_xml( message_xml )[0];
        alert( message.id );
    }
});

Why?

I finally found some time to explore Adobe AIR and thought ... "Hey, why don't I write an AIR app for Basecamp." The first step was to write this API wrapper/adapter so that I could easily communicate with Basecamp.

Roadmap

If I continue to find time (and have a Basecamp account to play with) this API will surely evolve as I begin to use the different parts while building the AIR app. Beware that as it stands right now this API wrapper is mostly untested.

I'm particularly anxious to add the file uploading for messages and comments.

Documentation

First place to look is the actual Basecamp API documentation. Currently this API follows their Ruby wrapper very closely. Other than that ... its all code for now. :)

License

Licensed under the MIT license.

Copyright (c) 2008 Brandon Aaron

Something went wrong with that request. Please try again.