This method allows you to fetch follow-ups that were created within a response.
Follow-ups are sorted newest to oldest. You can filter by several different fields including status, date, etc.
This method will return up to 500 follow-ups at a time and you can use paging to fetch additional records.
The paging
field in the response includes total
which contains the total number of matching follow-ups available and last_page
which is the highest page number which would contain results.
Parameters
Your request data may contain the following parameters. GET or POST the object (as JSON) tohttps://api.kpaehs.com/v1/followups.list
.
Parameter | TypeScript | Example | Required | Description |
---|---|---|---|---|
token |
string |
"YOUR_TOKEN" |
Required | Your API Token |
pretty |
boolean |
true |
Optional | true means the response json will include white space for readability. Default is false . |
form_id |
number |
3987 |
Optional | The id of the form. |
limit |
number |
500 |
Optional | The maximum number of follow-ups to return. Max 500. Defaults to 100. Use page to fetch additional records. |
page |
number |
1 |
Optional | The page of responses to return. Defaults to 1. The response field paging.last_page tells you what the last valid page number is. |
status |
string |
"open" |
Optional | Filter follow-ups by whether they are open or closed. Defaults to including all follow-ups. all or undefined includes all follow-ups. open only includes pending follow-ups. closed only includes completed follow-ups. overdue only includes overdue follow-ups. |
observer_id |
string |
"5804f0f30ef50473af5870c6" |
Optional | Filters follow-ups by the user id of the observer who originally created the follow-up. |
assignee_id |
string |
"5804f0f30ef50473af5870c6" |
Optional | Filters follow-ups by the user id of the person who the follow-up is currently assigned to. |
response_id |
number |
23974 |
Optional | Filters follow-ups by the form response where it was created. |
created_before |
number |
1476981004760 |
Optional | Only include follow-ups created before the given date. Should be formatted as the number of milliseconds since 1970. |
created_after |
number |
1473688379489 |
Optional | Only include follow-ups created after the given date. Should be formatted as the number of milliseconds since 1970. |
updated_before |
number |
1476981004760 |
Optional | Only include follow-ups updated before the given date. Should be formatted as the number of milliseconds since 1970. |
updated_after |
number |
1473688379489 |
Optional | Only include follow-ups updated after the given date. Should be formatted as the number of milliseconds since 1970. |
Example Request
Example Response
{ "ok": true, "paging": { "total": 66, "last_page": 33 }, "followups": [ { "id": "0vk5jl66j6izgmu92pojun83", "form_id": 1024, "response_id": 1028, "open": true, "created_on": 1558471167747, "updated_on": 1558471167747, "m_observer_id": "5ce43c0bb9b9b149d361bb27", "m_assigner_id": "5ce43c0bb9b9b149d361bb27", "m_assignee_id": "5ce43c0bb9b9b149d361bb27", "messages": [ { "id": "0vk5jl66j6izgmu92pojun83", "date": 1558471167747, "m_user_id": "5ce43c0bb9b9b149d361bb27", "note": "Jake, please let me know when this is done" } ] }, { "id": "0vk5jl66j6izgmu92pojun83", "form_id": 2342, "response_id": 35283, "open": true, "created_on": 1558471167747, "updated_on": 1558475191733, "m_assignee_id": "5ce43c0bb9b9b149d361bb27", "m_assigner_id": "5ce43c0bb9b9b149d361bb27", "m_observer_id": "5ce43c0bb9b9b149d361bb27", "due": 20190521, "messages": [ { "id": "0vk5jl66j6izgmu92pojun83", "date": 1558471167747, "note": "Bryan - can you fix this?", "m_user_id": "5ce43c0bb9b9b149d361bb27" }, { "id": "v4duw0qvl49y0xoe82ou", "date": 1558475191733, "m_user_id": "5ce43c0bb9b9b149d361bb27", "m_reassignee_id": "5ce43c0bb9b9b149d361bb27", "note": "Hey Marvin - re-assigning to you bud!" } ] }, { "id": "7g4t1f3dkxv1ja2gnhds", "due": 20190522, "open": false, "form_id": 2342, "response_id": 35283, "created_on": 1558558322733, "updated_on": 1558558445449, "m_assignee_id": "5ce43c0bb9b9b149d361bb27", "m_assigner_id": "5ce43c0bb9b9b149d361bb27", "m_observer_id": "5ce43c0bb9b9b149d361bb27", "resolved_on": 1558558445449, "m_completer_id": "5ce43c0bb9b9b149d361bb27", "messages": [ { "id": "wcdw4c5pnj83fw9fkgnb", "date": 1558558322733, "note": "Bill, please fix", "m_user_id": "5ce43c0bb9b9b149d361bb27" }, { "id": "ey4nq9gn14gaz3yv7g46", "date": 1558558445449, "m_user_id": "5ce43c0bb9b9b149d361bb27", "signature": null, "attachments": [ { "key": "5ce43c0bb9b9b149d361bb26/private/cnf5zz8cdqu0miff/[Test] Support Receipt (HTML ONLY).eml", "caption": "Here's the fixed version" } ], "notify": true, "note": "Thanks frank, it's done. See attached pic." } ] } ] }
Errors
If an error occurs, the response JSON will have ok
set to false
:
{ "ok": false, "error": "token_invalid", "description": "The token `YOUR_TOKEN` was not found." }
The error
field will contain one of the following error identifiers and there
may also be a description field with a more detailed explanation:
Identifier | Description |
---|---|
api_method_not_found |
The requested url did not match any KPA Flex API method. |
request_method_invalid |
The requested method was not GET or POST. |
request_data_invalid |
The request did not include a valid JSON request object. |
rate_limit_exceeded |
This token is exceeding its request limit. |
token_missing |
The request did not include a token. |
token_invalid |
The request token was invalid. |
token_inactive |
The request token was has been deactivated. |
token_permission |
The request token does not have write permission. |
account_inactive |
The request token was for an account that is not active. |
parameter_unexpected |
The request data included a parameter that is not supported. |
parameter_missing |
The request data failed to include a parameter which was required. |
parameter_invalid |
The request data included a parameter which had a value that is not allowed. |
server_error |
The server encountered an internal error. |
content_not_found |
The requested content was not found. |