Survey Solutions API

October 24, 2024

Survey Solutions includes a powerful and flexible API which allows automating some tasks and allows our users to build larger systems, which may compliment Survey Solutions to achieve larger goals. 

Some examples of use could be:

  • schedule periodic export of collected data
  • an external dashboard or monitoring and reporting system, which updates some indicators every night and publishes them to a website, or
  • an external checking and validation system which verifies collected data against some external sources of information and rejects automatically the incorrect interviews, or
  • an integrated system, which utilizes Survey Solutions for data collections tasks and a statistical package for continuous analysis,
  • facility management, inventory and price monitoring systems, etc, etc.

It is up to our users to decide on the particular scenario of use taking into account their needs and existing legacy systems already in place. The integration mode is usually dictated by the external system, which may determine, for example, in which language the system is implemented or to which storage the data is transferred from Survey Solutions.

To utilize an API in your application an API user account must be created by the server administrator.

What Survey Solutions is making available to external applications/systems is a set of levers, which allow performing the same tasks performed by the actual users of the software. This functionality is implemented through a set of standardized web requests which are implemented following the REST and GraphQL standards and are documented in the following:

Every Survey Solutions server provides an API. It is important to verify the reference against the exact version contained in your server to make sure the correct syntax for API calls is being used. This syntax may be expanded or revised in future releases.

API Clients

The API clients listed below provide convenient access to the API functionality for developers in the corresponding environments/languages.

API Client
Source code
Manual
More info

.NET package
Maintained by: Andrii Kozhyn

Source code
more

PowerShell module
Maintained by: Zurab Sajaia

Source code
more

Python package
Maintained by: Zurab Sajaia

Source code
online documentation

R package
Maintained by: Michael Wild

Source code
more

R package
Maintained by: Arthur Shaw

Source code
online documentation

R package
Maintained by: Lena Nguyen

Source code

Stata package
Maintained by: Sergiy Radyakin

Source code

Manual in PDF

Stata package
Maintained by: Peter Brueckmann

Source code

more

Users of other languages can develop their applications by calling the API points directly, or by developing own API client for their specific programming language. If you do so, please share a notice in the users’ forum.