Envia la encuesta CES por correo o WhatsApp
curl --request POST \
--url https://clientapi.woku.app/v1/ces/invitations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"channel": "whatsapp",
"recipients": [
"56912345678"
],
"cesToolId": "<string>",
"language": "es"
}
'import requests
url = "https://clientapi.woku.app/v1/ces/invitations"
payload = {
"channel": "whatsapp",
"recipients": ["56912345678"],
"cesToolId": "<string>",
"language": "es"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
channel: 'whatsapp',
recipients: ['56912345678'],
cesToolId: '<string>',
language: 'es'
})
};
fetch('https://clientapi.woku.app/v1/ces/invitations', 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/invitations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'channel' => 'whatsapp',
'recipients' => [
'56912345678'
],
'cesToolId' => '<string>',
'language' => 'es'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://clientapi.woku.app/v1/ces/invitations"
payload := strings.NewReader("{\n \"channel\": \"whatsapp\",\n \"recipients\": [\n \"56912345678\"\n ],\n \"cesToolId\": \"<string>\",\n \"language\": \"es\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://clientapi.woku.app/v1/ces/invitations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"channel\": \"whatsapp\",\n \"recipients\": [\n \"56912345678\"\n ],\n \"cesToolId\": \"<string>\",\n \"language\": \"es\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://clientapi.woku.app/v1/ces/invitations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"channel\": \"whatsapp\",\n \"recipients\": [\n \"56912345678\"\n ],\n \"cesToolId\": \"<string>\",\n \"language\": \"es\"\n}"
response = http.request(request)
puts response.read_body{
"channel": "email",
"accepted": [
"<string>"
],
"rejected": [
{
"recipient": "<string>",
"reason": "invalid_recipient"
}
]
}{
"statusCode": 400,
"message": [
"email must be a valid email",
"password must be at least 8 characters"
],
"error": "Bad Request"
}v1 - invitations
Envia la encuesta CES por correo o WhatsApp
POST
/
v1
/
ces
/
invitations
Envia la encuesta CES por correo o WhatsApp
curl --request POST \
--url https://clientapi.woku.app/v1/ces/invitations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"channel": "whatsapp",
"recipients": [
"56912345678"
],
"cesToolId": "<string>",
"language": "es"
}
'import requests
url = "https://clientapi.woku.app/v1/ces/invitations"
payload = {
"channel": "whatsapp",
"recipients": ["56912345678"],
"cesToolId": "<string>",
"language": "es"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
channel: 'whatsapp',
recipients: ['56912345678'],
cesToolId: '<string>',
language: 'es'
})
};
fetch('https://clientapi.woku.app/v1/ces/invitations', 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/invitations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'channel' => 'whatsapp',
'recipients' => [
'56912345678'
],
'cesToolId' => '<string>',
'language' => 'es'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://clientapi.woku.app/v1/ces/invitations"
payload := strings.NewReader("{\n \"channel\": \"whatsapp\",\n \"recipients\": [\n \"56912345678\"\n ],\n \"cesToolId\": \"<string>\",\n \"language\": \"es\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://clientapi.woku.app/v1/ces/invitations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"channel\": \"whatsapp\",\n \"recipients\": [\n \"56912345678\"\n ],\n \"cesToolId\": \"<string>\",\n \"language\": \"es\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://clientapi.woku.app/v1/ces/invitations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"channel\": \"whatsapp\",\n \"recipients\": [\n \"56912345678\"\n ],\n \"cesToolId\": \"<string>\",\n \"language\": \"es\"\n}"
response = http.request(request)
puts response.read_body{
"channel": "email",
"accepted": [
"<string>"
],
"rejected": [
{
"recipient": "<string>",
"reason": "invalid_recipient"
}
]
}{
"statusCode": 400,
"message": [
"email must be a valid email",
"password must be at least 8 characters"
],
"error": "Bad Request"
}Autorizaciones
Clave API secreta de la empresa.
Encabezados
Clave generada por el cliente para hacer que un envío sea seguro para reintentar. Un reintento con la misma clave devuelve el resultado original en lugar de despachar de nuevo.
Cuerpo
application/json
Canal de entrega para las invitaciones
Opciones disponibles:
email, whatsapp Ejemplo:
"whatsapp"
Destinatarios: direcciones de correo electrónico para el canal email, números de teléfono (dígitos, código de país incluido, p. ej. 56912345678) para whatsapp
Maximum array length:
100Ejemplo:
["56912345678"]
Herramienta CES para encuestar, siempre requerida: siempre personalizada.
Idioma de la plantilla de invitación
Opciones disponibles:
es, en Ejemplo:
"es"
Respuesta
Resumen de despacho por destinatario