Note that while Centercode’s integration features are intended to be approachable by a Customer Validation Professional, you might need to enlist help from an internal technical resource and refer to our vocabulary and troubleshooting documentation.

Through the External Sources feature, Centercode can allow feedback from third-party sources to be sent to your Centercode platform. This API integration tool is designed to be flexible enough to receive data from a third-party system and map it into your Centercode feedback forms. This enables your users to submit valuable feedback without having to leave your app or create an account within 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 your third-party system 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 your third-party system or an internal technical resource for that system

1.   Creating an API Key

From the Centercode side, 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.
-

Preparing Centercode to Capture External Feedback

2. Configuring your External Sources

External Sources is located within your Feedback Type’s settings. To begin, you’ll need to navigate to the External Sources section of your desired Feedback type. Here, you’ll be configuring the data you want to be captured. We’ll start this example with Suggestions. 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 (Suggestions) & 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”)
    These fields define the Team submitting feedback and the Status in which it comes in
  4. Select Default Submitter for new feedback from this source
    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
  5. Configure your Incoming Fields, mapping the Centercode Field with their matching incoming Parameters (detailed below)
  6. Select the appropriate API Key from the list (if more than one is available)
  7. Copy / Save your API Endpoint URL - you’ll need it later!
  8. Click Submit

You’ve just configured your Suggestions’ External Source!
-

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.
  • 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.
  • Single Choice, Multiple Choice, and Rating Scale values passed to Centercode via parameter must match the associated selection on the Feedback Form exactly.
  • The Workflow section leverages the existing Workflow configured for your Feedback Type
  • 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)

-

Preparing Your External Source to Send Feedback to Centercode

After completing the above instructions to prepare your Centercode to accept external feedback, you’ll need to work in your third-party source. 

  1. Identify data you want captured from your users
  2. Configure your third-party source to send that data as a JSON payload (detailed below). This is sent to your External Source Endpoint URL to generate a new piece of feedback.

The JSON Payload

The JSON payload determines the data that will be sent from your third-party application to Centercode’s External Source. The fields on the left (e.g. “submitter” and “summary”) are the Parameters you’re matching to the External Source’s Parameters. The fields on the right are the values that will be mapped to incoming feedback. The below example simulates an external system 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?