Getting Started

Hey there! Thanks for checking out Spark for Developers. If you've used Spark you know how easy it makes staying in sync with your team and customers. If you're new to Spark, go create an account and come back when your finished.

In Spark, conversations take place in virtual meeting rooms. Some rooms live for a few hours while others become permanent fixtures of your team's workflow with titles like Daily Standup or Build Status. Spark allows conversations to flow seamlessly between messages, video calls and real-time whiteboarding sessions. No other solution brings together so many facets of collaboration into a single unified platform.

And it's that platform part that Spark for Developers is all about. We've taken a huge step towards opening up the power behind the Spark app to anyone seeking to extend the Spark experience.

What's possible with Spark APIs?

This initial release is focused primarily on room management and getting content in and out of Spark. With this initial set of APIs you can already:

But enough talk! Since you're logged in we can just show you. Click on the Run button bellow to see the APIs in action:

m
You're not logged in. to run the demo.

curl https://api.ciscospark.com/v1/messages -X POST -H "Authorization:Bearer {{ACCESS_TOKEN}}" --data "toPersonId=722bb271-d7ca-4bce-a9e3-471e4412fa77" --data "text=Hi%20Sparky"

Now go to the Spark app and see what happened! j

Using the Messages API we were able to send a message to Sparky as you. Sparky is a simple bot that replies to any message with a quote of the day.

Authentication

You'll notice that an Authorization header was sent along with the request above. This is how the Spark APIs validate access and identify the requesting user. In this example we used your personal access token:

Please to get your auth token.

With this access token you can perform actions in Spark as yourself. For example, inviting someone into a room with the Memberships API appears just as if you had invited them via the Spark user interface.

Interacting with Spark as yourself is great but there are many cases when you'll want to perform actions on behalf of someone else. To do this we've baked OAuth support directly into the platform. With a few easy steps you can have a Spark user grant permission to your app, get an access token and perform actions on their behalf. For more information see the Apps & Authentication Guide

Methods & Content Types

Spark APIs are RESTful. In REST, each resource is represented by a base URL like /messages and the HTTP methods GET, POST, PUT and DELETE are used to request data and perform actions on those resources.

For methods that accept request parameters the platform accepts either application/json or application/x-www-form-urlencoded content types and currently only supports returning data in application/json format.

Next Steps

We've tried to make it as simple as possible to explore and learn the Spark APIs. If you're the type of person that learns by doing then jump straight into the Quick Reference to get a listing of the available API endpoints. Once you find an endpoint that looks interesting go to that section and make sure to enable Test Mode using the toggle on the top righthand corner. In Test Mode you can make APIs requests directly from the docs and see the HTTP response from the Spark Platform.

If you prefer tutorials and guided lessons definitely check out Samples and Tutorials for some hands on Learning Labs powered by Cisco DevNet.

Once you've learned the APIs and are ready to build a real app you may be interested in using an SDK to eliminate some boilerplate. If your favorite language is not listed don't worry, SDKs in new languages will be added regularly.

Getting Help

If you ever get stuck, the Spark DevSupport team has you covered, standing by 24/7 to help you build amazing collaboration apps. Check out Support for more info.