Can we access to squinto over some API?

3 views
Skip to first unread message

nono

unread,
Feb 7, 2008, 5:01:04 PM2/7/08
to Squinto
Hi!
Congratulations for this simple and usefull todolist application!
I would like to know if it is possible to access to squinto service
over an API (without a web browser)?
I like to use such applis like squinto to view and edit my tasks over
the internet, but when I am at home, I would like to be able to
quickly make a new task (using a text format) in vim, and update
squinto with a python script for example...
My second question concerns the way squinto is developped. Is squinto
an open source application? Is it possible to contribute to its
developpement?
Thank you.
Bruno

MC

unread,
Feb 8, 2008, 2:29:44 PM2/8/08
to Squinto
No, there's currently no API, but I'll definitely get to work on it!
I'll create some simple functions so that you can get lists and
create, edit, complete, and delete todos. Just let me know what you
have in mind and I can do those things first.

I have seriously considered open sourcing Squinto or at least parts of
it and follow the business model that Wordpress took. Then awesome
people like yourself could contribute and make it the best todolist
around. People could customize the project to their own needs and it
might become widespread (todolists for everyone!). Squinto currently
works with the latest version Django but needs some cleanup. If
there's some strong interest, I'll release the source and setup a
central community for it.

Thanks for your interest!

nono

unread,
Feb 13, 2008, 7:38:22 AM2/13/08
to Squinto
This is exactly what I need : a simple API to perform ""retrieve",
"create", "update", and "delete" action on tasks. These 3 actions are
all RESTfull.
If you build such a simple API and open the source code, I think I
could contribute to customize your application to my needs (then it's
up to you to include or not the changes I will make...)
I think I will also create a simple command line utility which is
using the API to retrieve, create, update and delete task into
squinto : I would like to be able handle my todolists from shell,
without need to open the browser.
If you want to build a community around squinto, I think you should
speak of it on the internet, and first of all release its source code
under a free license.

nono

unread,
Feb 13, 2008, 8:48:00 AM2/13/08
to Squinto
And I could also translate squinto in french...

MC

unread,
Feb 16, 2008, 9:05:00 PM2/16/08
to Squinto
Awesome! I'll have to clean up the code and I'll release parts of it
when they're ready. As a first step, here's a simple API for creating,
getting, editing, and deleting todos that returns JSON formatted data.
You can find your API key under Settings.

New list:
http://squinto.com/todolist/new-list/?key=mykey&title=my+list
Returns the new list:
[{"url": "\/todolist\/ca5ccafd1cfd0268b60f96\/", "id": 1, "title": "my
list"}]

Get lists:
http://squinto.com/todolist/get-lists/?key=mykey
Returns all lists:
[{"url": "\/todolist\/ca5ccafd1cfd0268b60f96\/", "id": 1, "title": "my
list"}]
You can get specific lists by adding list ids separated by commas:
http://squinto.com/todolist/get-lists/?key=mykey&listids=1,2
Finally, you can add a callback function to get around JavaScript
cross domain security.
http://squinto.com/todolist/get-lists/?key=mykey&callback=CallbackFunction

New todo:
http://squinto.com/todolist/new-todo/?key=mykey&title=my+todo&notes=some+notes&listid=1
Returns the new todo:
[{"indent": 0, "title": "my todo", "estimatedtime": null, "notes":
"some notes", "id": 1, "todolist_id": 1, "priority": 0, "url": "\/
todolist\/ca5ccafd1cfd0\/0\/#t0", "iscomplete": false, "duedate":
null, "actualtime": null}]

Update todo:
http://squinto.com/todolist/update-todo/?key=mykey&actualtime=1&estimatedtime=2&duedate=2008-02-15&priority=5&todoid=1
Returns the updated todo:
[{"indent": 0, "title": "my todo", "estimatedtime": "02:00:00",
"notes": "some notes", "id": 1, "todolist_id": 1, "priority": 5,
"url": "\/todolist\/ca5ccafd1cfd0\/0\/#t0", "duedate": "2008-02-15
20:16:00", "actualtime": "01:00:00"}]
Other fields can be updated. For example, you can complete a todo by
adding iscomplete=True or update the notes by adding notes=my+new
+notes.

Get todos:
http://squinto.com/todolist/get-todos/?key=mykey&listid=1
Returns the todos for list id 1:
[{"indent": 0, "title": "my new todo", "estimatedtime": null, "notes":
"", "id": 1, "todolist_id": 1, "priority": 0, "url": "\/todolist\/
ca5ccafd1cfd0\/0\/#t0", "duedate": null, "actualtime": null},
{"indent": 0, "title": "my todo", "estimatedtime": "02:00:00",
"notes": "some notes", "id": 2, "todolist_id": 1, "priority": 5,
"url": "\/todolist\/ca5ccafd1cfd02\/1\/#t1", "duedate": "Feb 15, 2008
12:16 p.m.", "actualtime": "01:00:00"}]
You can get specific todos by adding todo ids separated by commas:
http://squinto.com/todolist/get-todos/?key=mykey&todoid=1,2
You can also get incomplete or complete todos:
http://squinto.com/todolist/get-todos/?key=mykey&listid=1&iscomplete=True
Finally, you can add a callback function to get around JavaScript
cross domain security.
http://squinto.com/todolist/get-lists/?key=mykey&listid=1&callback=CallbackFunction

Delete todos:
http://squinto.com/todolist/delete-todos/?key=mykey&todoids=1,2

It's a work in progress! Let me know if you need anything else.
> > > > Bruno- Hide quoted text -
>
> - Show quoted text -
Reply all
Reply to author
Forward
0 new messages