in client/src/main/scala/com.gu.contentapi.client/ContentApiClient.scala [40:54]
def get(url: String, headers: Map[String, String])(implicit context: ExecutionContext): Future[HttpResponse]
/** Some HTTP headers sent along each CAPI request */
private val headers =
Map("User-Agent" -> userAgent, "Accept" -> "application/x-thrift", "Accept-Language" -> "*")
/** Authentication and format parameters appended to each query */
private def parameters = Map("api-key" -> apiKey, "format" -> "thrift")
/** Streamlines the handling of a valid CAPI response */
private def fetchResponse(contentApiQuery: ContentApiQuery[_])(implicit ec: ExecutionContext): Future[Array[Byte]] = get(url(contentApiQuery), headers).flatMap {
case response if isSuccessHttpResponse(response) => Future.successful(response)
case response => Future.failed(ContentApiError(response))
}.map(_.body)