summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrédéric Guillot <fred@kanboard.net>2014-09-19 11:57:23 +0200
committerFrédéric Guillot <fred@kanboard.net>2014-09-19 11:57:23 +0200
commitaf69070a647c85b2b4de76a415fc8641dc46c2e8 (patch)
tree99aced575968aa1aaa1afb65d3bfe3d59274a9ca
parent31d3f8bb5783f5311bb3b7a86c3a6f5beb594580 (diff)
Add API example in Python
-rw-r--r--docs/api-json-rpc.markdown54
1 files changed, 54 insertions, 0 deletions
diff --git a/docs/api-json-rpc.markdown b/docs/api-json-rpc.markdown
index 37b90530..23cc3518 100644
--- a/docs/api-json-rpc.markdown
+++ b/docs/api-json-rpc.markdown
@@ -56,6 +56,60 @@ Response from the server:
}
```
+### Example with Python
+
+Here a basic example written in Python to create a task:
+
+```python
+#!/usr/bin/env python
+
+import requests
+import json
+
+def main():
+ url = "http://demo.kanboard.net/jsonrpc.php"
+ api_key = "be4271664ca8169d32af49d8e1ec854edb0290bc3588a2e356275eab9505"
+ headers = {"content-type": "application/json"}
+
+ payload = {
+ "method": "createTask",
+ "params": {
+ "title": "Python API test",
+ "project_id": 1
+ },
+ "jsonrpc": "2.0",
+ "id": 1,
+ }
+
+ response = requests.post(
+ url,
+ data=json.dumps(payload),
+ headers=headers,
+ auth=("jsonrpc", api_key)
+ )
+
+ if response.status_code == 401:
+ print "Authentication failed"
+ else:
+ result = response.json()
+
+ assert result["result"] == True
+ assert result["jsonrpc"]
+ assert result["id"] == 1
+
+ print "Task created successfully!"
+
+if __name__ == "__main__":
+ main()
+```
+
+Run this script from your terminal:
+
+```bash
+python jsonrpc.py
+Task created successfully!
+```
+
### Example with a PHP client:
I wrote a simple [Json-RPC Client/Server library in PHP](https://github.com/fguillot/JsonRPC), here an example: