Quick Reference

Use this page to explore the APIs or bookmark it to quickly jump to a specific endpoint while developing your app. All APIs require https / TLS. You'll also notice the v1 in each endpoint URL. This indicates that the latest API is currently version 1.0. If we ever have to break backwards compatibility the version number will be bumped.

People

People are registered users of the Spark application. Searching and viewing People requires an auth token with a scope of spark:people_read. Viewing the list of all People in your Organization requires an administrator auth token with spark-admin:people_read scope. Adding, updating, and removing People requires an administrator auth token with the spark-admin:people_write scope.

To learn more about managing people in a room see the Memberships API

Method  
get https://api.ciscospark.com/v1/people
post https://api.ciscospark.com/v1/people
get https://api.ciscospark.com/v1/people/{personId}
put https://api.ciscospark.com/v1/people/{personId}
delete https://api.ciscospark.com/v1/people/{personId}
get https://api.ciscospark.com/v1/people/me

Rooms

Rooms are virtual meeting places where people post messages and collaborate to get work done. This API is used to manage the rooms themselves. Rooms are created and deleted with this API. You can also update a room to change its title, for example.

To create a team room, specify the a teamId in POST payload. Note that once a room is added to a team, it cannot be moved. To learn more about managing teams, see the Teams API.

To manage people in a room see the Memberships API.

To post content see the Messages API.

Method  
get https://api.ciscospark.com/v1/rooms
post https://api.ciscospark.com/v1/rooms
get https://api.ciscospark.com/v1/rooms/{roomId}
put https://api.ciscospark.com/v1/rooms/{roomId}
delete https://api.ciscospark.com/v1/rooms/{roomId}

Memberships

Memberships represent a person's relationship to a room. Use this API to list members of any room that you're in or create memberships to invite someone to a room. Memberships can also be updated to make someome a moderator or deleted to remove them from the room.

Just like in the Spark app, you must be a member of the room in order to list its memberships or invite people.

Method  
get https://api.ciscospark.com/v1/memberships
post https://api.ciscospark.com/v1/memberships
get https://api.ciscospark.com/v1/memberships/{membershipId}
put https://api.ciscospark.com/v1/memberships/{membershipId}
delete https://api.ciscospark.com/v1/memberships/{membershipId}

Messages

Messages are how we communicate in a room. In Spark, each message is displayed on its own line along with a timestamp and sender information. Use this API to list, create, and delete messages.

Message can contain plain text, rich text and file attachments.

Just like in the Spark app, you must be a member of the room in order to target it with this API.

Method  
get https://api.ciscospark.com/v1/messages
post https://api.ciscospark.com/v1/messages
get https://api.ciscospark.com/v1/messages/{messageId}
delete https://api.ciscospark.com/v1/messages/{messageId}

Teams

Teams are groups of people with a set of rooms that are visible to all members of that team. This API is used to manage the teams themselves. Teams are created and deleted with this API. You can also update a team to change its name, for example.

To manage people in a team see the Team Memberships API.

To manage team rooms see the Rooms API.

Method  
get https://api.ciscospark.com/v1/teams
post https://api.ciscospark.com/v1/teams
get https://api.ciscospark.com/v1/teams/{teamId}
put https://api.ciscospark.com/v1/teams/{teamId}
delete https://api.ciscospark.com/v1/teams/{teamId}

Team Memberships

Team Memberships represent a person's relationship to a team. Use this API to list members of any team that you're in or create memberships to invite someone to a team. Team memberships can also be updated to make someome a moderator or deleted to remove them from the team.

Just like in the Spark app, you must be a member of the team in order to list its memberships or invite people.

Method  
get https://api.ciscospark.com/v1/team/memberships
post https://api.ciscospark.com/v1/team/memberships
get https://api.ciscospark.com/v1/team/memberships/{membershipId}
put https://api.ciscospark.com/v1/team/memberships/{membershipId}
delete https://api.ciscospark.com/v1/team/memberships/{membershipId}

Webhooks

Webhooks allow your app to be notified via HTTP when a specific event occurs on Spark. For example, your app can register a webhook to be notified when a new message is posted into a specific room.

Events trigger in near real-time allowing your app and backend IT systems to stay in sync with new content and room activity.

Check the Webhooks Guide and our blog regularly for announcements of additional webhook resources and event types.

Method  
get https://api.ciscospark.com/v1/webhooks
post https://api.ciscospark.com/v1/webhooks
get https://api.ciscospark.com/v1/webhooks/{webhookId}
put https://api.ciscospark.com/v1/webhooks/{webhookId}
delete https://api.ciscospark.com/v1/webhooks/{webhookId}

Organizations

A set of people in Cisco Spark. Organizations may manage other organizations or be managed themselves. This organizations resource can be accessed only by an admin.

Method  
get https://api.ciscospark.com/v1/organizations
get https://api.ciscospark.com/v1/organizations/{orgId}

Licenses

An allowance for features and services that are provided to users on a Cisco Spark services subscription. Cisco and its partners manage the amount of licenses provided to administrators and users. This license resource can be accessed only by an admin.

Method  
get https://api.ciscospark.com/v1/licenses
get https://api.ciscospark.com/v1/licenses/{licenseId}

Roles

A persona for an authenticated user, corresponding to a set of privileges within an organization. This roles resource can be accessed only by an admin.

Method  
get https://api.ciscospark.com/v1/roles
get https://api.ciscospark.com/v1/roles/{roleId}