waiaconnect

Documentación / Completo

Ayuda automática en la pantalla del alta

PUT /v1/branding

Markdown

¿Programás con IA? Conectala a tu cuenta por MCP: revisa tu configuración, crea webhooks y plantillas con tu confirmación y te escribe el código. Ver cómo →

Cuando el alta de tu cliente falla con un código de Meta que nuestro catálogo conoce —o tu cliente lo pega en la pantalla—, la misma página del enlace puede decirle al toque qué pasó y qué hacer: hasta 3 pasos, con los links de Meta verificados, y un botón: «Ya lo hice, reintentar» si el enlace sigue sirviendo, o «Pedile un enlace nuevo a {tu marca}» si no.

Tres modos. off (el de siempre: la caja para contar qué pasó), brand (con tu logo y tu nombre) o neutral (sin marca). Por defecto, off.

Dónde se elige. Para todos tus enlaces, signupHelp en PUT /v1/branding o en el panel: Configuración › Marca › Ayuda automática en la pantalla del alta. Por enlace, signupHelp en POST /v1/onboarding-links o PATCH /v1/onboarding-links/{id} (null = la de la cuenta). Gana el enlace; si no dice nada, la cuenta; si tampoco, off.

Lo que te llega. onboarding.help_requested trae shownToClient y shownHelp (modo, título, pasos): sabés qué vio tu cliente. GET /v1/onboarding-links/{id} trae signupHelpShown con connectedAfter: si se conectó después de verla.

# 1) for every link of the account (default "off")
curl -X PUT https://api.waiaconnect.com/v1/branding \
  -H "Authorization: Bearer wc_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"signupHelp": "brand"}'

# 2) or per link ("neutral" = no brand; null = the account's)
curl -X POST https://api.waiaconnect.com/v1/onboarding-links \
  -H "Authorization: Bearer wc_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"externalId": "pharmacy-42", "signupHelp": "neutral", "historyDelivery": false}'

# 3) did your customer see it, and did they connect after?
curl https://api.waiaconnect.com/v1/onboarding-links/onb_… -H "Authorization: Bearer wc_live_YOUR_API_KEY"
# → { "link": { "signupHelpEffective": "neutral",
#       "signupHelpShown": { "count": 1, "mode": "neutral", "connectedAfter": true, … } } }
const H = { "Authorization": "Bearer wc_live_YOUR_API_KEY", "Content-Type": "application/json" };

// the account default (a link that sets "signupHelp" wins)
await fetch("https://api.waiaconnect.com/v1/branding", { method: "PUT", headers: H, body: JSON.stringify({ signupHelp: "brand" }) });

// or per link
const link = await (await fetch("https://api.waiaconnect.com/v1/onboarding-links", {
  method: "POST", headers: H,
  body: JSON.stringify({ externalId: "pharmacy-42", signupHelp: "neutral", historyDelivery: false })
})).json();

// later: what your customer saw
const { link: view } = await (await fetch(`https://api.waiaconnect.com/v1/onboarding-links/${link.publicId}`, { headers: H })).json();
console.log(view.signupHelpShown?.connectedAfter);
<?php
$h = ["Authorization: Bearer wc_live_YOUR_API_KEY", "Content-Type: application/json"];
$ch = curl_init("https://api.waiaconnect.com/v1/branding");
curl_setopt_array($ch, [
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_HTTPHEADER => $h,
  CURLOPT_POSTFIELDS => json_encode(["signupHelp" => "brand"]),
]);
echo curl_exec($ch);
import requests
H = {"Authorization": "Bearer wc_live_YOUR_API_KEY"}

# the account default (a link that sets "signupHelp" wins)
requests.put("https://api.waiaconnect.com/v1/branding", headers=H, json={"signupHelp": "brand"})

# or per link
link = requests.post("https://api.waiaconnect.com/v1/onboarding-links", headers=H,
                     json={"externalId": "pharmacy-42", "signupHelp": "neutral", "historyDelivery": False}).json()

# later: what your customer saw
view = requests.get(f"https://api.waiaconnect.com/v1/onboarding-links/{link['publicId']}", headers=H).json()["link"]
print((view["signupHelpShown"] or {}).get("connectedAfter"))

Nunca se muestra un diagnóstico de la IA ni un código que el catálogo no conoce: para esos queda la caja de siempre, y el caso te llega igual.

Si el límite de códigos de verificación es el problema, la pantalla no ofrece reintentar: cada intento lo empeora.

Un valor que no sea off, brand, neutral o null da 400 ONBOARDING_SIGNUP_HELP_INVALID.