C# Shell


AppHarbor SDK - A .NET client for the AppHarbor API

License: Apache License 2.0



  • Full support for the AppHarbor API
  • Managed API Access (currently .NET 3.5, send a pull request if you want .NET 2.0 support)
  • Implements AppHarbor OAuth header: Authorization: BEARER :access_token
  • Sample web application with AppHarbor OAuth sample
  • Unit tested

Current uses


Create Api Client instance

// create an Api Client instance with the token obtained from oAuth
var appHarborClient = new AppHarborClient(new AuthInfo("token obtained via oAuth"));

Get list of AppHarbor applications

// get a list of all applications
var applications = appHarborClient.GetApplications();

foreach (var application in applications)
    Console.WriteLine(string.Format("Application name: {0}, Url: {1}", 
        application.Name, application.Url));

Create new AppHarbor application

// creating always returns a CreateResult
// which has a Status, ID, Location
var createResult = appHarborClient.CreateApplication("New Application Name", null);

// based on the Status decide on what todo
switch (createResult.Status)
    case CreateStatus.Created:
            var newID = createResult.ID;
            var newURL = createResult.Location;

            // get actual application object via the api client
            var newApplication = appHarborClient.GetApplication(newID);

            // more code
    case CreateStatus.AlreadyExists:
    case CreateStatus.Undefined:
            // handle

Sample web application project

  • Basic OAuth Access Token retrieval implementation


  • More unit tests
  • Add integration tests
  • Add XML Comments for public methods
  • Expand sample web application