Pasa valores dinámicos

La URL y los valores de cabecera de un servicio vinculado pueden contener marcadores {{params.x}} que se rellenan cuando se llama al servicio. Así, un mismo servicio se adapta a cada petición —llevar un término de búsqueda en la query string, o reenviar el token del usuario que ha iniciado sesión para que tu endpoint pueda autenticarlo— sin fijar el valor en la configuración.

Dónde van los marcadores

  • En la URL: p. ej., https://api.example.com/search?q={{params.query}}. El valor se

codifica para URL, así que se puede pasar texto libre sin problema.

  • En un valor de cabecera: añade una cabecera en Headers cuyo valor sea una plantilla, p. ej., una

cabecera Authorization con el valor Bearer {{params.token}}.

Un marcador se escribe {{params.<name>}}, donde <name> es un identificador simple.

De dónde salen los valores

Los valores llegan desde dos sitios y se combinan; un valor de la llamada prevalece sobre un valor de inicialización con el mismo nombre:

  1. En la inicialización: para valores que no cambian durante toda la sesión (un token de usuario, un

id de tenant). Pásalos a startAssistant:

   skdwn.startAssistant({
     assistantId: 'as-xxxxxxxx',
     accessToken: 'your-key-or-token',
     params: { token: yourUserToken }
   });
  1. En cada llamada: para valores que dependen del momento (un término de búsqueda, un id seleccionado). Pásalos como

cuarto argumento de executeProxyRequest:

   executeProxyRequest('search_api', null, callback, { query: userInput });

Un mismo servicio puede usar ambos a la vez: una cabecera fija {{params.token}} y un {{params.query}} por llamada en la URL.

params no es userInformation

Los params se usan solo para rellenar estos marcadores: nunca se envían al modelo ni se registran en la analítica. Guarda los tokens y los valores de la petición en params; usa userInformation solo para dar contexto sobre el visitante.

Ejemplo: reenvía el token del usuario

Un patrón habitual es dejar que tu propio endpoint autentique al usuario. Configura el servicio con:

  • URL: https://api.example.com/me/orders
  • Cabecera: nombre Authorization, valor Bearer {{params.token}}
  • En la inicialización: params: { token: <the token your backend issued the user> }

Tu API recibe una cabecera Authorization: Bearer … normal y la valida, exactamente igual que haría con cualquier petición. Como tu endpoint valida el token, esto es seguro aunque el valor lo proporcione la página: un token no válido o de otra persona solo concede lo que ese token ya permite.

Reenvía solo credenciales que tu endpoint verifique

Un valor de {{params}} procede de la página, así que solo es fiable si el endpoint que lo recibe lo verifica (un token firmado que valida) o si el valor no es sensible (un término de búsqueda). Nunca trates un id sin más pasado en params como prueba de quién es el usuario: valida una credencial real.


Contacto

¿Necesitas más ayuda?

Cuéntanos qué quieres que responda el asistente de tu web. Te ayudaremos a definir el contenido, los controles y el plan de lanzamiento adecuados.