Actions

REST API: Difference between revisions

From LimeSurvey Manual

No edit summary
(Replaced content with "; TODO - Under development : Available from version x (Version to be defined)")
Tag: Replaced
 
(20 intermediate revisions by 2 users not shown)
Line 1: Line 1:
TODO
; TODO - Under development
 
: Available from version x (Version to be defined)
Under development
 
Available from version x (LS 5.5.0?)
 
Available API endpoints
 
Technical specification. UML.
 
=Introduction=
 
LimeSurvey REST API v1 is available in LS 5.5.0 or more recent which offers '''various [https://api.limesurvey.org/swagger API endpoints]'''.
 
=Setup=
 
==Configure==
 
In order to use REST API you must first enable the service, and then adjust the settings to suit your needs. To enable login to the LimeSurvey administration, go to [[Global settings]], choose the tab 'Interfaces' and select 'Publish API on /rest'.
 
==Security==
 
The REST API uses the same security measures as the normal administration login. That means that the permission set of the used username and password is the same as if you would login in the administration with that user/password. Also the REST API is protected against brute-force password cracking - like the normal administration login.
 
=Usage=
==API Location==
 
The REST API URL is [http://www.yourdomain.com/rest/v1 http://www.yourdomain.com/rest/v1] .
 
The available API endpoints are documented using swagger [https://api.limesurvey.org/swagger https://api.limesurvey.org/swagger].
 
==Sessions==
 
==Endpoints==
 
See the  [https://api.limesurvey.org/swagger Swagger Documentation] for more details.
 
{| class="wikitable"
! Method
! Prefix
! Endpoint
! Notes
! HEADER params
! URL Path params
! POST params
! GET params
! Command Class
! Command Params
|-
|
|-
| /rest/v1/
|
|-
| POST
| *
| session
| create new session token
| (string)username, (string)password, (string)?plugin
| SessionKeyCreate
| (string)username, (string)password, (string)?plugin
|-
| DELETE 
| *
| session
| Authorization
| SessionKeyRelease
| (string)sessionKey
|-
|
|-
| GET
| *
| siteSettings
| list
| Authorization
| SiteSettingsGet
| (string)sessionKey, (string)?settingName
|-
| GET
| *
| siteSettings/<setting-name>
| single
| Authorization
| settingName
| SiteSettingsGet
| (string)sessionKey, (string)?settingName
|-
|
|-
| POST
| survey
| Authorization
| (int)surveyID, (string)surveyTitle, (string)surveyLanguage, (string)format
| SurveyAdd
| (string)sessionKey, (int)?surveyID, (string)surveyTitle, (string)surveyLanguage, (string)format
|}
 
=Examples=
 
===PHP Example===

Latest revision as of 17:40, 30 October 2023

TODO - Under development
Available from version x (Version to be defined)