curl --request GET \
--url https://clientapi.woku.app/v1/ces/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://clientapi.woku.app/v1/ces/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://clientapi.woku.app/v1/ces/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://clientapi.woku.app/v1/ces/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://clientapi.woku.app/v1/ces/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://clientapi.woku.app/v1/ces/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://clientapi.woku.app/v1/ces/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"score": 3,
"anonymous": true,
"cesToolId": "<string>",
"clientId": "<string>",
"responseChannel": "<string>",
"commentType": "textnote",
"description": "<string>",
"transcription": "<string>",
"feedbackType": "recognition",
"createdAt": "2023-11-07T05:31:56Z"
}{
"statusCode": 403,
"message": "Authentication required",
"error": "Forbidden"
}{
"statusCode": 404,
"message": "External tracker not found",
"error": "Not Found"
}Obtener una unica respuesta de CES
curl --request GET \
--url https://clientapi.woku.app/v1/ces/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://clientapi.woku.app/v1/ces/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://clientapi.woku.app/v1/ces/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://clientapi.woku.app/v1/ces/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://clientapi.woku.app/v1/ces/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://clientapi.woku.app/v1/ces/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://clientapi.woku.app/v1/ces/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"score": 3,
"anonymous": true,
"cesToolId": "<string>",
"clientId": "<string>",
"responseChannel": "<string>",
"commentType": "textnote",
"description": "<string>",
"transcription": "<string>",
"feedbackType": "recognition",
"createdAt": "2023-11-07T05:31:56Z"
}{
"statusCode": 403,
"message": "Authentication required",
"error": "Forbidden"
}{
"statusCode": 404,
"message": "External tracker not found",
"error": "Not Found"
}Autorizaciones
Clave de API de la empresa. Obtenla desde tu panel de Woku en Configuracion > API Keys. La misma clave usada para los endpoints v0.
Parámetros de ruta
ObjectId de MongoDB de la respuesta de CES.
^[0-9a-fA-F]{24}$Respuesta
Respuesta de CES
Una respuesta CES. Los datos de contacto del cliente nunca se incluyen; clientId es solo una referencia.
Puntaje de esfuerzo CES en una escala de 1-5.
1 <= x <= 5Referencia al encuestado. Siempre null para respuestas anonimas.
Canal de respuesta entrante (whatsapp | email | review-app | widget-web | mobile-sdk | api, o una cadena definida por el usuario). Null en respuestas historicas.
Tipo del comentario opcional adjunto, si lo hay.
textnote, voicemail, null Contenido del feedback de texto (presente solo cuando commentType es textnote).
Transcripcion de audio (presente solo cuando commentType es voicemail).
Categoria del comentario clasificada por IA; se completa de forma asincrona.
recognition, improvement, null