Salsa External APIs

Have a system running on another server? Want to have it interact with Salsa? Want people using another system to submit information to Salsa? Feel like using some AJAX, and some JSON? Then Salsa External APIs are for you!.

External APIs are a series of authentication features, REST and XML pages to get data from a Salsa node, and a series of standard controllers to save data back to a node.

At it's simplest, using the Salsa API may consist of just a form placed on an external website -- See Saving Data below. At it's most complex, you could use a Ruby library to authenticate, pull down information on recent supporters and events, validate that data, change it, and submit it back to the node, while generating and displaying counts of petition signers -- all through the API.

Throughout our documentation you will see URLs like http://sample.nodeurl.tld. Replace this URL with the base portion of your headquarters URL. This could be similar to http://sandbox.salsalabs.org. This references your ACTUAL account. Trying to use your campaign manager with a different node will not work. By default, campaign managers DO NOT have accounts on the sandbox node.

To get started, see more information on:

  • For any API request, you will need to know some basic information about your account. See more about Common Definitions.
  • For all API requests, read up on Authenticating
  • For retrieving data from the system, check out the variety of available XML calls, see Getting Data
  • For processing, emailing, editing and saving data in the system, Salsa uses a set of standard controllers. See Saving Data
  • For some examples of how to use the flexible API, and for quick how-to's of commonly used elements, see the Salsa Cookbook