API: Feedback

This Developer API lets you manage the feedback of an app. All endpoints require authentication with an API token.

List Feedback

List all feedback for an app:

GET /api/2/apps/APP_ID/feedback

Parameters:

  • page - optional, used for pagination

  • per_page - optional, the number of items to be present in the response (25, 50, 100); default is 25

  • order - optional, "asc" for ascending order (default) or "desc" for descending order

Example:

curl \
  -H "X-HockeyAppToken: 4567abcd8901ef234567abcd8901ef23" \
  https://rink.hockeyapp.net/api/2/apps/1234567890abcdef1234567890abcdef/feedback?page=1

Response:

Status: 200
{
  "feedback": [
    {
      "name": "John Appleseed",
      "email": "johnappleseed@icloud.com",
      "id": 123,
      "created_at": "2013-07-03T12:13:23Z",
      "messages": [
        {
          "subject": "Search",
          "text": "When performing a search, it would be nice if it shows only results that matches the search criteria.",
          "oem": "Apple",
          "model": "x86_64",
          "os_version": "10.8.5",
          "created_at": "2013-07-03T12:13:23Z",
          "id": 456,
          "token": "1234567890abcdef1234567890abcdef88",
          "via": 1,
          "user_string": null,
          "internal": null,
          "clean_text": "When performing a search, it would be nice if it shows only results that matches the search criteria.",
          "app_id": "567890abcdef1234567890abcdef123456",
          "app_version_id": 23
        },
        {
          "subject": "Re: Search",
          "text": "Thanks for the feedback, we will investigate this problem.",
          "oem": "Apple",
          "model": "x86_64",
          "os_version": "10.8.5",
          "created_at": "2013-07-03T16:12:04Z",
          "id": 42226,
          "token": "34567890abcdef1234567890abcdef1234",
          "via": 1,
          "user_string": null,
          "internal": null,
          "clean_text": ""Thanks for the feedback, we will investigate this problem.",
          "name": "Thomas Dohmke",
          "app_id": "567890abcdef1234567890abcdef123456",
          "app_version_id": 23
        }
      ],
      "status": 2
    }
  ],
  "status": "success",
  "current_page": 1,
  "per_page": 25,
  "total_entries": 1,
  "total_pages": 1
}

Create new Thread

Start a new feedback thread.

POST /api/2/apps/APP_ID/feedback

Parameters:

  • text - required, message text

  • subject - optional, message subject

  • internal - optional, mark message as an internal message (not visible to testers)

  • oem - optional, device OEM, e.g. "Apple"

  • model - optional, device model, e.g. "iPhone4,1"

  • os_version - optional, version of the OS, e.g. "5.1.0"

  • lang - optional, language

  • name - optional, name of the message author

  • email - optional, email of the message author

  • attachment0 - optional, file with optional binary data (3 attachments allowed, change the index accordingly)

Example:

curl \
  -X POST
  -F "text=This starts a new thread."
  -H "X-HockeyAppToken: 4567abcd8901ef234567abcd8901ef23" \
  https://rink.hockeyapp.net/api/2/apps/1234567890abcdef1234567890abcdef/feedback

Response:

{
  "feedback" : {
    "created_at" : "2016-01-20T12:17:49Z",
    "id" : 123,
    "name": "John Appleseed",
    "email": "johnappleseed@icloud.com",
    "token" : "1234567890abcdefgh3788847cd69627",
    "messages" : [
      {
        "app_id" : "1234567890abcdef1234567890abcdef",
        "clean_text" : "This starts a new thread.",
        "created_at" : "2016-01-20T12:17:49Z",
        "id" : 456,
        "internal" : null,
        "model" : "x64_64",
        "name": "John Appleseed",
        "email": "johnappleseed@icloud.com",
        "oem" : "Apple",
        "os_version" : "10.11.3",
        "subject" : "This starts a new thread reply.",
        "text" : "This starts a new thread reply.",
        "token" : "1234567890abcdefghcf615d96b5cf71",
        "user_string" : null,
        "via" : 1
      }
    ]
  },
  "status" : "success",
  "token" : "1234567890abcdefgh3788847cd69627"
}

Update Thread

Post a reply to a feedback thread.

PUT /api/2/apps/APP_ID/feedback/ID

Parameters:

  • text - required, message text

  • subject - optional, message subject

  • internal - optional, mark message as an internal message (not visible to testers)

  • oem - optional, device OEM, e.g. "Apple"

  • model - optional, device model, e.g. "iPhone4,1"

  • os_version - optional, version of the OS, e.g. "5.1.0"

  • lang - optional, language

  • name - optional, name of the message author

  • email - optional, email of the message author

  • attachment0 - optional, file with optional binary data (3 attachments allowed, change the index accordingly)

Example:

curl \
  -X PUT
  -F "text=This is a reply."
  -H "X-HockeyAppToken: 4567abcd8901ef234567abcd8901ef23" \
  https://rink.hockeyapp.net/api/2/apps/1234567890abcdef1234567890abcdef/feedback/23

Response:

{
  "feedback": {
    "name": "John Appleseed",
    "email": "johnappleseed@icloud.com",
    "id": 123,
    "created_at": "2013-07-03T12:13:23Z",
    "messages": [
      {
        "subject": "Search",
        "text": "When performing a search, it would be nice if it shows only results that matches the search criteria.",
        "oem": "Apple",
        "model": "x86_64",
        "os_version": "10.8.5",
        "created_at": "2013-07-03T12:13:23Z",
        "id": 456,
        "token": "1234567890abcdef1234567890abcdef88",
        "via": 1,
        "user_string": null,
        "internal": null,
        "clean_text": "When performing a search, it would be nice if it shows only results that matches the search criteria.",
        "app_id": "567890abcdef1234567890abcdef123456",
        "app_version_id": 23
      },
      {
        "subject": "Re: Search",
        "text": "Thanks for the feedback, we will investigate this problem.",
        "oem": "Apple",
        "model": "x86_64",
        "os_version": "10.8.5",
        "created_at": "2013-07-03T16:12:04Z",
        "id": 567,
        "token": "34567890abcdef1234567890abcdef1234",
        "via": 1,
        "user_string": null,
        "internal": null,
        "clean_text": ""Thanks for the feedback, we will investigate this problem.",
        "name": "Thomas Dohmke",
        "app_id": "567890abcdef1234567890abcdef123456",
        "app_version_id": 23
      }
    ],
    "status": 2
  },
  "id": 123,
  "status": "success"
}

Get Thread Messages

Get all feedback messages that belong to a thread

GET /api/2/apps/APP_ID/feedback/FEEDBACK_ID

Example:

curl \
  -X GET
  -H "X-HockeyAppToken: 4567abcd8901ef234567abcd8901ef23" \
  https://rink.hockeyapp.net/api/2/apps/1234567890abcdef1234567890abcdef/feedback/123

Response:

{
  "feedback" : {
    "created_at" : "2016-01-20T12:17:49Z",
    "name": "John Appleseed",
    "email" : "johnappleseed@icloud.com",
    "id" : 123,
    "messages" : [
      {
        "app_id" : "1234567890abcdef1234567890abcdef",
        "clean_text" : "This starts a new thread reply.",
        "created_at" : "2016-01-20T12:17:49Z",
        "id" : 456,
        "internal" : null,
        "model" : "x64_64",
        "name": "John Appleseed",
        "email": "johnappleseed@icloud.com",
        "oem" : "Apple",
        "os_version" : "10.11.3",
        "subject" : "This starts a new thread reply.",
        "text" : "This starts a new thread reply.",
        "token" : "1234567890abcdefghcf615d96b5cf71",
        "user_string" : null,
        "via" : 1
      }
    ],
    "token" : "1234567890abcdefgh3788847cd69627"
  },
  "status" : "success"
}

Download Attachments

Download the attachments of a feedback message.

GET /api/2/apps/APP_ID/feedback/FEEDBACK_ID/feedback_attachments/ATTACHMENT_ID

If the feedback message contains any attachments, the key attachments will list those attachments. Make sure to set matching FEEDBACK_ID and ATTACHMENT_ID and to follow redirects as the download is coming from Amazon S3.

Delete Thread

Delete a feedback thread.

DELETE /api/2/apps/APP_ID/feedback/ID

Example:

curl \
  -X DELETE
  -H "X-HockeyAppToken: 4567abcd8901ef234567abcd8901ef23" \
  https://rink.hockeyapp.net/api/2/apps/1234567890abcdef1234567890abcdef/feedback/23