System Status

Get engagement surveys via the Perform & Engage 365 API

The Perform & Engage 365 API enables you to:

 

Get a list of engagement surveys

GET /api/v2/engagement_surveys/

This request enables you to get a list of engagement surveys.

 

Optional query parameters

  • ordering (string). The results ordering. The possible values are:
    • submitted_count. The engagement surveys are ordered from the lowest submitted count to the highest (ascending).
    • -submitted_count. The engagement surveys are ordered from the highest submitted count to the lowest (descending).
  • status (string). The engagement survey status. The possible values are:
    • draft. Unpublished surveys.
    • published. Published surveys that have a start date in the future.
    • active. Published surveys that have a start date in the past or today.
    • past. Published surveys that have an end date in the past.
  • limit (integer). The maximum number of engagement surveys in the response.
  • offset (integer). The initial index from which the results are returned in the response.

 

Request example

GET /api/v2/engagement_surveys/?limit=10&ordering=-submitted_count&status=active

 

Response body parameters

The response body includes:

  • count (integer). The number of results.
  • next and previous (strings). URLs to the next and previous pages (if you used pagination in the original request).
  • results (array). The list of engagement surveys. Each engagement survey has these parameters:
    • api_id (string). The engagement survey ID. You can use this ID to get more details about the engagement survey.
    • name (string). The engagement survey name.
    • recipients_count (integer). The number of engagement survey recipients.
    • recipients (array). The list of recipients. Each recipient has these parameters:
      • api_id (string). The recipient's user ID.
      • name (string). The recipient's full name.
      • email (string). The recipient's email address.
      • department (string). The department to which the recipient belongs.
      • team (string). The team to which the recipient belongs.
    • submitted_count (integer). The number of engagement survey submissions.
    • status (string). The engagement survey status. For the list of possible statuses, see the query parameters description.
    • questions (array). The list of questions the engagement survey contains. Each question has the text and api_id string parameters.

 

Response body example

The successful 200 response returns the body similar to this:

{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "api_id": "9fe6621c-bbba-4160-abcd-9a3b80f0ce3d",
      "name": "Engagement Survey Plan",
      "recipients": [
        {
          "api_id": "69da2b54-eaa9-467d-9027-7e4597cbf785",
          "name": "Joanne Stefani",
          "email": "jstefani@test.com",
          "department": "IT Team",
          "team": "Joanne's Team"
        }
      ],
      "status": "Active",
      "recipients_count": 1,
      "submitted_count": 0,
      "questions": [
        {
          "text": "I would recommend my organisation as a great place to 
          work to people I respect",
          "api_id": null
        },
        {
          "text": "I rarely think about leaving my organisation to go 
          work somewhere else",
          "api_id": null
        },
        {
          "text": "In my organisation I feel inspired to do my best",
          "api_id": null
        }
      ]
    }
  ]
}

 

Get the details of a particular engagement survey by its ID

GET api/v2/engagement_surveys/{api_id}/

After getting the engagement survey api_id in the response to the previous request, you can use this to get information about the engagement survey.

 

Required path parameter

 

Request example

GET /api/v2/engagement_surveys/9fe6621c-bbba-4160-abcd-9a3b80f0ce3d/

 

Response body parameters

The GET api/v2/engagement_surveys/{api_id}/ response includes the same parameters as the results array in the GET /api/v2/engagement_surveys/ response. Additionally, each questions array contains the responses array that is a list of responses to the question. Each response has these parameters:

  • response (array or boolean depending on the question). The response the recipient submitted.
  • submission_date (string). Date and time of the submission to the question.

 

Response body example

The successful 200 response returns the body similar to this:

{
      "api_id": "9fe6621c-bbba-4160-abcd-9a3b80f0ce3d",
      "name": "Engagement Survey Plan",
      "recipients": [
        {
          "api_id": "69da2b54-eaa9-467d-9027-7e4597cbf785",
          "name": "Joanne Stefani",
          "email": "jstefani@test.com",
          "department": "IT Team",
          "team": "Joanne's Team"
        }
      ],
      "status": "Active",
      "recipients_count": 1,
      "submitted_count": 1,
      "questions": [
        {
          "text": "I would recommend my organisation as a great place to 
          work to people I respect",
          "api_id": null,
          "responses": [
          {
            "response": true,
            "submission_date": "2025-08-05T15:58:05.963698+01:00"
          }
          ]
        },
        {
          "text": "I rarely think about leaving my organisation to 
          go work somewhere else",
          "api_id": null,
          "responses": [
          {
            "response": true,
            "submission_date": "2025-08-05T15:58:05.963698+01:00"
          }
          ]
        },
        {
          "text": "In my organisation I feel inspired to do my best",
          "api_id": null,
          "responses": [
          {
            "response": false,
            "submission_date": "2025-08-05T15:58:05.963698+01:00"
          }
         ]
        }
      ]
    }

 

Was this article helpful?
0 out of 0 found this helpful

Comments

Article is closed for comments.