Loading...
 
Skip to main content

History: Application Programming Interface

Source of version: 19 (current)

Copy to clipboard
See also ((Federation))

For ((Tiki23)), we'll add an API. We'll likely extend Tiki to also be able to provide API docs (or we'll re-use an existing package)

Talk of developing a RESTful API for Tiki has been going on at TikiFests since at least ((tw:TikiFest2018 Montreal)) but there seem to be no notes about those specific ideas here so far (are there?)

!! A possible direction for research
My {sign user="jonnybradley" datetime="2020-05-26T10:27:22+00:00"} thoughts are that we should use the existing AJAX services by adapting or forking  the -+\Services_Broker+- to direct RESTful access to the 300+ actions already in Tiki.

Possible URL formats could be something like:

* -+GET https://example.tiki.org/api/1.0/tracker/view/42+- (where the -+1.0+- is the API version)
* -+POST https://example.tiki.org/api/1.0/tracker/update_item/1/42+- (needs trackerId)
* -+GET https://example.tiki.org/api/1.0/wiki/get_page/HomePage+-
* etc...

!! More planning
To be discussed some time at ((tw:TikiFestVirtual2020)) hopefully with people who have more experience of designing something like this (:rolleyes:)

!! API docs
*  https://rebilly.github.io/ReDoc/ OpenAPI/Swagger-generated API Reference Documentation
* http://apithedocs.org/

!! Related links
* https://api-platform.com/docs/extra/philosophy/
* https://api-tools.getlaminas.org/ (was http://apigility.org/)
* http://swagger.io/
* https://evertpot.com/working-with-hal-in-put/
* http://hateoas-php.org
* https://github.com/ziadoz/awesome-php/blob/master/README.md#api
* http://phphttpclient.com
* https://raml.org
* https://www.openapis.org/

!! Stats about projects
{HTML()}<script type='text/javascript' src='https://www.openhub.net/p/apigility/widgets/project_factoids_stats?format=js'></script>{HTML}
{HTML()}<script type='text/javascript' src='https://www.openhub.net/p/swagger-api/widgets/project_factoids_stats?format=js'></script>{HTML}
{HTML()}<script type='text/javascript' src='https://www.openhub.net/p/LuracastRestler/widgets/project_factoids_stats?format=js'></script>{HTML}

-=alias=-
(alias(API))
(alias(RESTful API))
Show PHP error messages