You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A simple, scalable and lightweight API wrapper for the Cisco Spark services APIs
3
3
4
+
## Overview
5
+
A single Pythonic wrapper class representing the Cisco Spark API interfaces and returned JSON objects as method calls that return native Python objects.
6
+
7
+
* Leverages generator containers and RFC5988 web linking to provide simple and efficient 'paging' of Cisco Spark data objects returned by the Cisco Spark clout.
8
+
9
+
* All Cisco Spark JSON objects and attributes are represented as native python objects.
10
+
* As new Cisco Spark attributes are added and returned by the Spark cloud service, they will be automatically available in the respective Python objects - no library update required.
11
+
* New object types can be quickly created and modeled by via the generic SparkData class, or you can easily subclass SparkData to provide additional functionality.
12
+
13
+
* The CiscoSparkAPI class facilitates the creation of simple 'connection objects' that are associated with the access_token used to create the object. All API calls are wrapped by this single class, and are available via a simple hierarchical structure - like api.rooms.list().
14
+
* API defaults are provided to make getting connected simple, and can be easily overridden if needed.
15
+
* The only setting required to get connected is your Cisco Spark Access Token (see [developer.ciscospark.com](https://developer.ciscospark.com/getting-started.html)).
16
+
* All API calls are provided as simple method calls on the API connection objects.
17
+
18
+
### Examples
19
+
20
+
```python
21
+
from ciscosparkapi import CiscoSparkAPI
22
+
23
+
access_token ="abcdefg..."
24
+
api = CiscoSparkAPI(access_token)
25
+
26
+
rooms = api.rooms.list() # Returns an generator container providing support for RFC5988 paging
27
+
for room in rooms: # Efficiently iterates through returned objects
28
+
print room.title # JSON objects are represented as native Python objects
29
+
30
+
# Creating a list from the returned generator containers is easy
31
+
team_list =list(api.teams.list())
32
+
print team_list
33
+
```
34
+
35
+
4
36
## Community Development Project Information
5
37
This is a collaborative community development project to create two packages to be published to the Python Package Index:
6
38
@@ -10,6 +42,8 @@ This is a collaborative community development project to create two packages to
10
42
All are welcome to contribute to this project. Information on contributing this project can be found [here in the project Charter](https://github.com/CiscoDevNet/spark-python-packages-team/blob/master/Charter.md).
11
43
12
44
## Current Status
13
-
This package is currently in the _initial creation phase_.
45
+
**Wrappers for all Cisco API endpoints and data objects have now been completed!**
46
+
14
47
15
-
No releases have been issued. The package APIs are subject to change and should be considered unstable.
48
+
_Beta release imminent._
49
+
We are preparing to release the first _beta_ for this package. Please test out the package for your use cases, and raise issues for any problems you encounter. Also, **PLEASE** create new issues to provide feedback and foster discussion on the package API structure (names, method calls and etc.). The package APIs are still subject to change, and I would like to get these nailed down before we release v1 for the package.
0 commit comments