e-satisfaction API v3.2
    e-satisfaction API v3.2
    • Introduction
    • Applications
      • Get all applications
        GET
    • Questionnaires
      • Get all questionnaires
        GET
      • Get Questionnaire
        GET
    • Questionnaire Groups
      • Get all questionnaire groups
        GET
    • Questions
      • Get all group questions
        GET
      • Get Question Response Content
        GET
    • Questionnaire Instances
      • Create new questionnaire instance
        POST
      • Get Questionnaire Instance List by questionnaire id
        GET
      • Get Questionnaire Value List by questionnaire id
        GET
      • Get Questionnaire Value List by instance id
        GET
      • Get Responder Value List by questionnaire id
        GET
      • Get Responder Value List by responder id
        GET
    • Questionnaire Instances - Simplified
      • Get Questionnaire Instance
        GET
      • Update Questionnaire Instance
        PATCH
      • Delete Questionnaire Instance
        DELETE
      • Get Questionnaire Instance Url
        GET
      • Get Questionnaire Instance Content
        GET
      • Get Questionnaire Instance Response Content
        GET
    • Pipelines
      • Get all questionnaire pipelines
        GET
      • Get Pipeline
        GET
    • Queue
      • Create new queue item
        POST
      • Get Queue Item
        GET
      • Update Queue Item
        PATCH
      • Delete Queue Item
        DELETE
    • Queue - Simplified
      • Get Queue Item
      • Update Queue Item
      • Delete Queue Item
    • Alerts
      • Get all alerts
    • Alert Instance
      • Get all alert instances
      • Alert Instance List by monitor id Info
      • Get Alert Instance
    • Alert Statuses
      • Get all alert statuses
    • Schemas
      • User
      • Organization
      • Organization Billing
      • Application Type
      • Application Type Content
      • Application
      • Application Get List Request
      • Application Pager
      • Application Billing
      • Campaign Type
      • Questionnaire
      • Questionnaire Get List Request
      • Questionnaire Pager
      • Questionnaire Content
      • Questionnaire Group
      • Questionnaire Group Content
      • Question Type
      • Question
      • Question Content
      • Question Value
      • Question Value Content
      • Question Instance Response Content
      • Questionnaire Instance
      • Questionnaire Instance Request
      • Questionnaire Instance Content
      • Questionnaire Instance Response Content
      • Questionnaire Instance Get List Request
      • Questionnaire Instance Pager
      • Questionnaire Metadata Values Get List Request
      • Questionnaire Metadata Values Pager
      • Responder Metadata Values Get List Request
      • Responder Metadata Values Pager
      • Questionnaire Theme
      • Questionnaire Integration
      • Pipeline
      • Queue Item
      • Queue Item Request
      • Queue Item Metadata Request
      • Metadata Value
      • Alert
      • Alert Instance
      • Alert Instance Get List Request
      • Alert Status Get List Request
      • Alert Instance Pager
      • Alert Status Pager
      • FilterBy
      • Filter By Criteria
      • OrderBy
      • Order By Criteria
      • Pagination
      • Error

    Introduction

    Getting started with e-satisfaction API#

    Before making use of our API, please read the following carefully to get you started.

    Authentication#

    All API calls require authentication. This is essential for the API to identify which user is making the call so that appropriate results will be returned, as well as for security reasons.
    Authentication is achieved through the use of an API key. e-satisfaction is using jwt for the API keys.
    User tokens can be generated on the application dashboard, visiting the user profile section. Creating a user token will request for a set of scopes so that the token can access the API. You can check the scopes needed in each API call in the present documentation.
    It's your responsibility to keep the API tokens safe to prevent any anauthorized access. Once you obtain your API token, you will have to use it in every API call you make.
    To include the token in an API call, simply use the Authorization header like this:
    Authorization: Bearer [jwt]

    Header Example#

    Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiYXBpYXJ5Iiwic2NvcGUiOiJkb2MifQ.gJM_xMQt_MgfqDIoSIh3qK1V4cfpGsdRmy23LrjG03A

    cURL Example#

    curl --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiYXBpYXJ5Iiwic2NvcGUiOiJkb2MifQ.gJM_xMQt_MgfqDIoSIh3qK1V4cfpGsdRmy23LrjG03A" https://api.e-satisfaction.com/v3.2/q/questionnaire

    REST API#

    e-satisfaction API is designed taking into consideration the REST principles and is trying to get as closer as possible to the specifications.

    Request Methods#

    The API makes use of all http methods
    that the REST specification defines based on the operation each time.
    For that reason, this document makes use of POST, PATCH, GET and DELETE methods.

    Payload Structure#

    The payload of each request can be provided using two formats:
    key-value pairs, either in the url (for GET requests) or on the request body (for POST, PATCH or DELETE methods)
    json, on the request body, for all http methods
    In the context of this document, and for easier understanding of the parameters, we are going to use the json format, and this is the one we suggest for implementing API calls.

    Responses#

    All API responses include full entities, based on the operation, according to the REST specification.

    Response Fields#

    On each API call, you can use an extra argument called response_fields and define all the response fields that you need the API to return. No value for this parameter means that it will return all the fields of the requested resource.
    You can send response_fields as an array of values, the fields you wish the API to return.

    HTTP Status Codes#

    Based on the status of each operation, a response might have one of the following HTTP Status Codes:

    Normal operation codes#

    On a successful operation, one of the following status codes will be returned, based on the operation.
    CodeDescriptionReason
    200OKSuccessful Operation
    201CreatedObject/Entity created with success
    204No ContentSuccessful Operation. No content provided. Usually in DELETE operations
    On an error, one of the following status codes will be returned, based on the error.
    The following codes will be documented on each request explicitily.
    CodeDescriptionReason
    400Bad RequestIn cases where the input is invalid
    404Not FoundIf the referenced entity/object does not exist
    409ConflictIf the operation performed is in conflict with another operation or with the object state

    Error codes#

    The following error codes can be thrown on any request and thus there is no need to document them explicitily.
    Error codes can be thrown almost on any request and they documented only to define an expected behavior.
    CodeDescriptionReason
    401UnauthorizedIf the provided jwt is not valid
    403ForbiddenIf no jwt is provided
    500Internal Server ErrorAn unexpected error occurred. We are getting notifications about these errors and we should fix it ASAP
    501Not implementedIn cases where the requested operation is not implemented on the entity/object

    Versions - Compatibility#

    e-satisfaction API is structured in versions. Current version is v3.2.
    Versions follow the Semantic Versioning specification, which means that all minor and lower releases will have no breaking changes.
    To highlight the specification, given a version number MAJOR.MINOR.PATCH, we increment the:
    1.
    MAJOR version when we make incompatible API changes,
    2.
    MINOR version when we add functionality in a backwards-compatible manner, and
    3.
    PATCH version when we make backwards-compatible bug fixes.
    In our API, we are following the MAJOR.MINOR format for our versions, where:
    1.
    MAJOR versions are for backward incompatible changes (e.g. brand new API)
    2.
    MINOR versions are for whole new features
    All bug fixes and small improvements will be integrated silently into the latest version (starting from the one affected, if bug, and merge up).

    Compression#

    All API responses are compressed using gzip and a response header Content-Encoding: gzip is returned always.
    Although all major libraries can handle properly the above compression, keep in mind to uncompress if you are using your own custom library.

    Feedback#

    We are always trying to keep our documentation up-to-date with all the latest changes. However, if you find any issues that might affect your implementation and this documentation should be updated, please let us know by sending a request at support@e-satisfaction.com.
    In case of security vulnerabilities, please add a subject line with a prefix of [e-satisfaction API Security Vulnerability] and we will address it immediately.
    Modified at 2026-02-05 12:54:42
    Next
    Get all applications
    Built with