summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--README13
-rw-r--r--apps/couchdb.json77
-rw-r--r--services/github.json33
-rw-r--r--services/twitter.json27
5 files changed, 151 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..2a61605
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+*.yaml \ No newline at end of file
diff --git a/README b/README
new file mode 100644
index 0000000..76fd786
--- /dev/null
+++ b/README
@@ -0,0 +1,13 @@
+# SPORE - Specification to a POrtable Rest Environment
+
+## DESCRIPTION
+
+## SPECIFICATIONS
+
+### APPS
+
+Description for applications (couchdb, ...)
+
+### SERVICES
+
+Descriptions for services (twitter, github, ...)
diff --git a/apps/couchdb.json b/apps/couchdb.json
new file mode 100644
index 0000000..f7c44b2
--- /dev/null
+++ b/apps/couchdb.json
@@ -0,0 +1,77 @@
+{
+ "version" : "0.1",
+ "methods" : {
+ "create_document_without_id" : {
+ "required" : [
+ "database"
+ ],
+ "path" : "/:database",
+ "method" : "POST"
+ },
+ "get_all_documents" : {
+ "params" : [
+ "descending",
+ "startkey",
+ "endkey",
+ "limit",
+ "include_docs"
+ ],
+ "required" : [
+ "database"
+ ],
+ "path" : "/:database/_all_docs",
+ "method" : "GET"
+ },
+ "create_document_with_id" : {
+ "required" : [
+ "database",
+ "doc_id"
+ ],
+ "path" : "/:database/:doc_id",
+ "method" : "POST"
+ },
+ "get_document" : {
+ "params" : [
+ "rev",
+ "revs"
+ ],
+ "required" : [
+ "database",
+ "doc_id"
+ ],
+ "path" : "/:database/:doc_id",
+ "method" : "GET"
+ },
+ "get_all_documents_by_seq" : {
+ "params" : [
+ "startkey",
+ "endkey",
+ "limit",
+ "include_docs"
+ ],
+ "required" : [
+ "database"
+ ],
+ "path" : "/:database/_all_docs_by_seq",
+ "method" : "GET"
+ },
+ "delete_document" : {
+ "params" : [
+ "rev"
+ ],
+ "required" : [
+ "database",
+ "doc_id"
+ ],
+ "path" : "/:database/:doc_id",
+ "method" : "DELETE"
+ }
+ },
+ "api_format" : [
+ "json"
+ ],
+ "name" : "CouchDB",
+ "author" : [
+ "franck cuny <franck@lumberjaph.net>"
+ ]
+}
diff --git a/services/github.json b/services/github.json
new file mode 100644
index 0000000..44a295e
--- /dev/null
+++ b/services/github.json
@@ -0,0 +1,33 @@
+{
+ "declare" : {
+ "api_base_url" : "http://github.com/api/v2/",
+ "api_format_mode" : "content-type",
+ "api_format" : "json"
+ },
+ "methods" : {
+ "user_information" : {
+ "params" : [
+ "username",
+ "format"
+ ],
+ "required" : [
+ "username",
+ "format"
+ ],
+ "path" : "/:format/user/show/:username",
+ "method" : "GET"
+ },
+ "user_following" : {
+ "params" : [
+ "user",
+ "format"
+ ],
+ "required" : [
+ "user",
+ "format"
+ ],
+ "path" : "/:format/user/show/:user/followers",
+ "method" : "GET"
+ }
+ }
+}
diff --git a/services/twitter.json b/services/twitter.json
new file mode 100644
index 0000000..f07470e
--- /dev/null
+++ b/services/twitter.json
@@ -0,0 +1,27 @@
+{
+ "declare" : {
+ "api_base_url" : "http://api.twitter.com/1",
+ "api_format_mode" : "append",
+ "api_format" : "json"
+ },
+ "methods" : {
+ "public_timeline" : {
+ "params" : [
+ "skip_user"
+ ],
+ "path" : "/statuses/public_timeline",
+ "method" : "GET"
+ },
+ "home_timeline" : {
+ "params" : [
+ "since_id",
+ "max_id",
+ "count",
+ "page",
+ "skip_user"
+ ],
+ "path" : "/statuses/home_timeline",
+ "method" : "GET"
+ }
+ }
+}