We're consolidating our Help Centers to enhance your experience. During the migration period (April 29 to May 1), you might notice some temporary inconsistencies. No action is required on your side. Please contact Support if you need any assistance.

Get questions and responses via the Perform & Engage 365 API

The Perform & Engage 365 API enables you to:

 

Get a list of questions

GET /api/v2/questions/

This request enables you to get a list of questions.

 

Optional query parameters

  • limit (integer). The maximum number of questions in the response.
  • offset (integer). The initial index from which the results are returned in the response.

 

Request example

GET /api/v2/questions/

 

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 questions. Each question has these parameters:
    • api_id (string). The question ID. You can use this ID to get more details about the question.
    • text (string). The question text.
    • type (string). The question type. The possible types are:
      • choice: an employee chooses between one or several options.
      • rating: an employee chooses the rating within the number range, for example, from 1 to 10.
      • text: an employee provides an answer as a text.
      • yes/no: yes/no questions.
      • recognition: an employee provides an answer as a text where they can mention other colleagues.
    • choices (array). For the choice question type, the array contains a list of possible choices. Each choice has the api_id and text string parameters. For other question types, the array is empty.

 

Response body example

The successful 200 response returns the body similar to this:

{
 "count": 1,
 "next": null,
 "previous": null,
 "results": [
   {
     "api_id": "580:396cd5f1-d52b-4cfc-bcc6-610e17697a86",
     "text": "How easily do you find communicating with 
     colleagues when remote working?",
     "type": "choice",
     "choices": [
       {
         "api_id": "580:5f48d723-9987-4b04-9d8e-716dfc1ef704",
         "text": "Very difficult"
       },
       {
         "api_id": "580:8aec8072-b434-4108-8c66-f5dcf00e7681",
         "text": " Difficult"
       },
       {
         "api_id": "580:4a05e53f-1414-4d43-8c8a-2f3f34e88e33",
         "text": " Not sure"
       },
       {
         "api_id": "580:f96620ed-830c-4679-9702-0d4a925653cc",
         "text": " Easy"
       },
       {
         "api_id": "580:edb008f6-4322-4bc4-90f8-3aea07532762",
         "text": " Very Easy"
       }
     ]
   }
 ]
}

 

Get the details of a particular question by its ID

GET api/v2/questions/{api_id}/

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

 

Required path parameter

 

Request example

GET /api/v2/questions/580%3A396cd5f1-d52b-4cfc-bcc6-610e17697a86

 

Response body parameters

The GET api/v2/questions/{api_id}/ response includes the same parameters as the results array in the GET /api/v2/questions/ response.

 

Response body example

The successful 200 response returns the body similar to this:

{
 "api_id": "580:396cd5f1-d52b-4cfc-bcc6-610e17697a86",
 "text": "How easily do you find communicating with colleagues 
 when remote working?",
 "type": "choice",
 "choices": [
   {
     "api_id": "580:5f48d723-9987-4b04-9d8e-716dfc1ef704",
     "text": "Very difficult"
   },
   {
     "api_id": "580:8aec8072-b434-4108-8c66-f5dcf00e7681",
     "text": " Difficult"
   },
   {
     "api_id": "580:4a05e53f-1414-4d43-8c8a-2f3f34e88e33",
     "text": " Not sure"
   },
   {
     "api_id": "580:f96620ed-830c-4679-9702-0d4a925653cc",
     "text": " Easy"
   },
   {
     "api_id": "580:edb008f6-4322-4bc4-90f8-3aea07532762",
     "text": " Very Easy"
   }
 ]
}

 

Get a list of responses to a particular question

GET /api/v2/questions/{question_api_id}/responses/

This request enables you to get a list of responses to a particular question.

 

Required path parameter

 

Optional query parameters

  • date_from (string). The response date starting from which the responses are returned. The format is yyyy-mm-dd.
  • date_to (string). The response date by which the responses are returned. The format is yyyy-mm-dd.
  • department (string). The department to which the employee belongs.
  • manager_email (string). The email address of the employee’s manager.
  • manager_name (string). The full name of the employee’s manager.
  • person_email (string). The employee’s email address.
  • person_name (string). The employee’s full name.
  • limit (integer). The maximum number of responses in the API response.
  • offset (integer). The initial index from which the results are returned in the API response.

 

Request example

GET /api/v2/questions/580%3A396cd5f1-d52b-4cfc-bcc6-610e17697a86/
responses/?date_from=2025-01-25&department=Research%20and%20Development&
manager_name=Joanne%20Stefani&person_name=Michael%20Test

 

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 responses. Each response has these parameters:
    • api_id (string). The response ID. You can use this ID to get more details about the response.
    • response_date (string). The date and time of the response.
    • person_name (string). The employee’s full name.
    • person_api_id (string). The employee’s ID.
    • person_email (string). The employee’s email address.
    • person_department (string). The department to which the employee belongs.
    • person_properties (array). The array contains the employee’s properties as the name and value pair of string parameters. For example, it could be the employee’s role at the company.

 

Response body example

The successful 200 response returns the body similar to this:

{
 "count": 1,
 "next": null,
 "previous": null,
 "results": [
   {
     "api_id": "580:96537590-1b02-4fe9-bf57-0d0932c5141a",
     "response_date": "2024-07-12T05:55:59.654671+01:00",
     "person_name": "Employee Person",
     "person_api_id": "580:cf9cc7db-36a9-4b1c-b530-15c3f3d02926",
     "person_email": "adelevance+employee@test.com",
     "person_department": "Human Resources",
     "person_properties": [
       {
         "name": "Role",
         "value": "People and Culture Manager"
       }
     ]
   }
]
}

 

Get the details of a particular response by its ID

GET api/v2/questions/{api_id}/responses/{api_id}/

After getting the api_id of a response to a particular question in the response to the previous request, you can use this ID to get information about the response to the question.

 

Required path parameters

 

Request example

GET /api/v2/questions/580%3A5750042d-0076-4c67-bac0-d7900a2cfbd4/responses/
580%3A96537590-1b02-4fe9-bf57-0d0932c5141a

 

Response body parameters

The GET api/v2/questions/{api_id}/responses/{api_id}/ response includes the same parameters as the results array in the GET /api/v2/questions/{question_api_id}/responses/ response.

 

Response body example

The successful 200 response returns the body similar to this:

{
 "api_id": "580:96537590-1b02-4fe9-bf57-0d0932c5141a",
 "response_date": "2024-07-12T05:55:59.654671+01:00",
 "person_name": "Employee Person",
 "person_api_id": "580:cf9cc7db-36a9-4b1c-b530-15c3f3d02926",
 "person_email": "adelevance+employee@test.com",
 "person_department": "Human Resources",
 "person_properties": [
   {
     "name": "Role",
     "value": "People and Culture Manager"
   }
 ]
} 

 

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

Comments

Article is closed for comments.