summaryrefslogtreecommitdiff
path: root/services
diff options
context:
space:
mode:
Diffstat (limited to 'services')
-rw-r--r--services/Makefile1
-rw-r--r--services/intervals.json63
2 files changed, 64 insertions, 0 deletions
diff --git a/services/Makefile b/services/Makefile
index eb54875..c503578 100644
--- a/services/Makefile
+++ b/services/Makefile
@@ -16,6 +16,7 @@ check: spore_validation.rx
@$(VALIDATOR) ihackernews.json
@$(VALIDATOR) ohloh.json
@$(VALIDATOR) twitter.json
+ @$(VALIDATOR) intervals.json
test: check
diff --git a/services/intervals.json b/services/intervals.json
new file mode 100644
index 0000000..f8e3aed
--- /dev/null
+++ b/services/intervals.json
@@ -0,0 +1,63 @@
+{
+ "name" : "Intervals",
+ "base_url" : "https://api.myintervals.com",
+ "version" : "0.1",
+ "formats" : ["json", "xml"],
+ "authentication": true,
+ "unattended_params": false,
+ "meta" : {
+ "documentation" : "http://www.myintervals.com/api/"
+ },
+
+ "methods": {
+ "me": {
+ "path": "/me",
+ "method": "GET"
+ },
+ "client": {
+ "path": "/client/",
+ "method": "GET",
+ "optional_params": ["active", "search", "projectsonly",
+ "offset", "limit"]
+ },
+ "project": {
+ "path": "/project/",
+ "method": "GET",
+ "optional_params": ["clientid", "managerid", "name",
+ "datestart", "dateend", "search",
+ "active", "billable", "personid",
+ "offset", "limit"]
+ },
+ "worktype": {
+ "path": "/worktype/",
+ "method": "GET",
+ "optional_params": ["active", "offset", "limit"]
+ },
+ "project_worktype": {
+ "path": "/projectworktype/",
+ "method": "GET",
+ "required_params": ["projectid"],
+ "optional_params": ["active", "personid", "offset", "limit"]
+ },
+ "project_module": {
+ "path": "/projectmodule/",
+ "method": "GET",
+ "required_params": ["projectid"],
+ "optional_params": ["active", "personid",
+ "offset", "limit"]
+ },
+ "time": {
+ "path": "/time/",
+ "method": "GET",
+ "optional_params": ["activeonly", "moduleid", "taskid", "worktypeid",
+ "personid", "clientid", "projectid", "milestoneid",
+ "date", "datebegin", "dateend", "billable", "sortfield",
+ "sortdir", "offset", "limit"]
+ },
+ "add_time": {
+ "path": "/time/",
+ "method": "POST",
+ "expected_status": [201]
+ }
+ }
+}