At E-Democracy we have come across a couple of opportunities to have some
developers contribute to forums.e-democracy.org (a developer in town offering
up his spare time and an open source hackathon coming in Minneapolis in
October).
In both cases, I've been looking at some version of the GroupServer API -
https://redmine.iopen.net/issues/262 - as a potential project for these folks
to work on. It would be a useful feature, is non-critical, allows a new
GroupServer developer to be exposed to GS one piece at a time, avoids the
complexity of working on an existing or new browser page, and can be divided up
into fairly discrete units of work along read/write and object lines.
I'm going to start to put together a project plan/spec for this, that will
hopefully address the questions below. I'm very curious to know what if others
have thoughts on any of these questions.
- What data should be exposed?
- What type of API should be developed (RESTful vs. RPC vs. something else...)?
- Should the API conform to some existing standard (I saw OpenSocial mentioned
in the ticket, but it's docs are currently unavailable.)?
- What format shoud the API return data in? (I'm ready to just pick JSON and be
done with this)
- What will the URL(s) be for accessing the API?
- Should the API be available to all, or require a token to access?
- How should authentication/authorization of users work?
- How should the API code be organized in code? Create a whole new namespace
(gs.api.*), or create an api module for each namespace (gs.group.api,
gs.group.messages.api, etc...)?
Are they any big questions I'm missing? Also, since the API ticket is 5 years
old, any thoughts on why it hasn't been developed in the past?
Since the ticket brings up the question of "what would this be used for?", here
are a few ideas that we've been talking about at E-Democracy (with varying
levels of seriousness) that either currently can not be done without an API or
would see a significant benefit from a GroupServer API:
- A unified authentication system across the platforms we use on
e-democracy.org (Wordpress and MediaWiki), and possibly some integration of
content among those platforms
- A purpose specific mobile app (that purpose being to post messages with
pictures to new and existing threads in your group with a better user
experience than email)
- A Facebook application that would integrate the content of E-Dem groups on
Facebook and E-Dem groups on forums.e-democracy.org
developers contribute to forums.e-democracy.org (a developer in town offering
up his spare time and an open source hackathon coming in Minneapolis in
October).
In both cases, I've been looking at some version of the GroupServer API -
https://redmine.iopen.net/issues/262 - as a potential project for these folks
to work on. It would be a useful feature, is non-critical, allows a new
GroupServer developer to be exposed to GS one piece at a time, avoids the
complexity of working on an existing or new browser page, and can be divided up
into fairly discrete units of work along read/write and object lines.
I'm going to start to put together a project plan/spec for this, that will
hopefully address the questions below. I'm very curious to know what if others
have thoughts on any of these questions.
- What data should be exposed?
- What type of API should be developed (RESTful vs. RPC vs. something else...)?
- Should the API conform to some existing standard (I saw OpenSocial mentioned
in the ticket, but it's docs are currently unavailable.)?
- What format shoud the API return data in? (I'm ready to just pick JSON and be
done with this)
- What will the URL(s) be for accessing the API?
- Should the API be available to all, or require a token to access?
- How should authentication/authorization of users work?
- How should the API code be organized in code? Create a whole new namespace
(gs.api.*), or create an api module for each namespace (gs.group.api,
gs.group.messages.api, etc...)?
Are they any big questions I'm missing? Also, since the API ticket is 5 years
old, any thoughts on why it hasn't been developed in the past?
Since the ticket brings up the question of "what would this be used for?", here
are a few ideas that we've been talking about at E-Democracy (with varying
levels of seriousness) that either currently can not be done without an API or
would see a significant benefit from a GroupServer API:
- A unified authentication system across the platforms we use on
e-democracy.org (Wordpress and MediaWiki), and possibly some integration of
content among those platforms
- A purpose specific mobile app (that purpose being to post messages with
pictures to new and existing threads in your group with a better user
experience than email)
- A Facebook application that would integrate the content of E-Dem groups on
Facebook and E-Dem groups on forums.e-democracy.org