in formstack-baton-requests/src/main/scala/com/gu/identity/formstackbatonrequests/services/FormstackService.scala [163:184]
private def getSubmissionQuestionsAnswers(
submissions: List[Submission],
accountToken: FormstackAccountToken
): Either[Throwable, List[FormstackSubmissionQuestionAnswer]] = {
submissions.traverse { submission =>
val labelsAndValuesOrError = submission.data.map { responseValues =>
val fieldId = responseValues.field
val response = http(s"https://www.formstack.com/api/v2/field/$fieldId")
.header("Authorization", accountToken.secret)
.asString
if(!response.is2xx) {
logger.error(response.body)
}
decode[SubmissionLabelField](response.body)
.map(label => FormstackLabelValue(label.label, responseValues.value.toString))
}.sequence
labelsAndValuesOrError.map(labelsAndValues => FormstackSubmissionQuestionAnswer(submission.id, submission.timestamp, labelsAndValues))
}
}