TestFairy is a mobile testing platform that provides companies with app distribution, with detailed video recordings, logs, and crash reports of mobile sessions. 

Testfairy can be configured to send feedback to the Centercode platform by using Centercode’s External Feedback tool. This API integration tool is designed to be flexible enough to receive data from any API capable third parties and map it into Centercode’s feedback forms. This increased tester engagement and removes potential friction by enabling your users to submit valuable feedback from Testfairy directly into Centercode.

In this guide, you will:

  1. Create (or identify an existing) API Key in Centercode
  2. Configure an External Source to receive feedback in Centercode
  3. Identify data to be captured from TestFairy and sent to Centercode

In order to configure both sides of this integration, you will need:

  1. Access to an existing API Key or Community Manager access to create a new one
  2. Project Manager access in the project of your choice (or your project template)
  3. Knowledge of TestFairy's system or an internal technical resource for TestFairy

1.  Creating an API Key

From Centercode, the first step in any API integration is to ensure that you have an API Key available within your Centercode Community. API Keys are used to track and control how API endpoints are accessed and can be leveraged by multiple simultaneous API integrations. If one is already created and available for use, you may continue past this step.

If necessary, create a Community API Key by following steps outlined here.
-

2. Configuring External Feedback Sources

The External Feedback Source tool is located within a Feedback Type’s settings. To begin, you’ll need to navigate to the External Sources section of your desired Feedback type. Here, you’ll configure the data you want to be captured. We’ll start this example with Bug Reports. Please repeat the below steps in as many Feedback Types as necessary.

From your Project homepage:

  1. Click Project Tools
  2. Click Feedback Types
  3. Hover over your desired Feedback Type (Bug Reports) & click Modify
  4. Click External Sources
  5. Click Create an External Source - you’re now at the External Source creation screen to designate a way to receive external feedback to the specified feedback type. At this point, technical help may be necessary - please work with a developer (and/or Centercode).

From the External Sources creation page:

  1. Create an (internally-facing) Name
  2. Provide a simple Key to help identify this External Source  (ex: “appcrashlog” - detailed below)
  3. Select the appropriate Workflow state for new feedback created via this source (typically “New”)
  4. These fields define the Team submitting feedback and the Status in which it comes in
  5. Select Default Submitter for new feedback from this source
  6. Note: leaving this field blank will mark the Submitter parameter as required, matching on email address - that field must be a supplied Parameter by the incoming data and must be an existing email address in your Project
  7. Configure your Incoming Fields, mapping the Centercode Field with their matching incoming Parameters (detailed below)
  8. Select the appropriate API Key from the list (if more than one is available)
  9. Copy / Save your API Endpoint URL - you’ll need it later!
  10. Click Submit

Notes

  • Your Key can be a short, descriptive entry to separate this integration from other functions that use the same Community API key for easier use. 
  • Incoming Fields map Parameters defined in your third-party system to the Centercode feedback form. Below is an example of incoming JSON data. Here you can see it matching to these fields exactly. See the example image below.
  • Single Choice, Multiple Choice, and Rating Scale values passed to Centercode via parameter must match the selection options on the Feedback Form exactly.
  • The Workflow section leverages the existing Workflow configured for your Feedback Type
  • Under Workflow, choosing No Selection here will mark the Status parameter as required - that field must be a supplied Parameter by the incoming data. This means that your system is providing the custom status field of the incoming feedback. The Status your system is providing must be one existing in your Centercode feedback form. 
  • When External Source is created without an otherwise matching Submitter, it is attributed to the Default Submitter, which is an existing user account of your choosing.
  • Advanced Options allow you to decide if your External Source should trigger existing Feedback Automation or Workflows (including External Destinations)

Configuring TestFairy to Send  Feedback Data to Centercode

After completing the above instructions to prepare Centercode to accept External Feedback, you’ll need to configure TestFairy to send data to Centercode.

  1. Open your TestFairy account Preferences and create a new webhook

2.   Name the webhook "Centercode", enter the Centercode endpoint URL, check the "feedback" checkbox, and submit.

-

The JSON Payload

The JSON payload determines the data that will be sent from TestFairy to Centercode’s External Feedback Source. The fields on the left (e.g. “submitter” and “summary”) are the Parameters you’re matching to the External Feedback’s Parameters. The fields on the right are the values that will be mapped to every converted piece of feedback. The below example simulates a third-party source via Postman.

Common Troubleshooting Scenario

When utilizing this integration through your third-party system, you may encounter a 400 status code, which indicates failure. In this scenario, submitter user account may be invalid, whether feedback is attempting to be submitted by an email address that doesn’t exist within the project or invalid submitter parameters are configured:

{

    "status": 400,

    "description": "The feedback submission could not be saved.",

    "invalidParameters": [

        {

            "name": "Submitter",

            "description": "A valid submitter is required."

        }

    ]

}

Related Articles

Understanding Integration Terms 

Updating Centercode Feedback via External Tracking Systems  

Creating Your Community-Level API Key

Centercode + Jira Integration Guide

Centercode Guide to Simple Webhooks

Centercode Guide to Simple External Feedback

Did this answer your question?