Skip to content

Validation

Use this page to validate the integration surface and embed parameters before release.

Tip

For a guided experience with a live preview, use Widget Studio.

What to test

  • Tenant slug resolves and /widget/v1/<tenant>/config.json returns tenant config.
  • Your frontend origin is registered for the tenant.
  • Your backend token endpoint returns { "token": "..." }.
  • /sso-login/ accepts the token and redirects to the expected target.
  • Anonymous SSO sets guest mode when is_anonymous is true or identity is missing.
  • Known-user SSO sets a non-anonymous SILENT session when valid identity is present.

Environment URLs

Environment CDN script origin Typical app/SSO origin
Development https://dev.cdn.traveln.ai matching dev tenant host
Production https://cdn.traveln.ai matching production tenant host

Use the same environment for the CDN script, tenant config, token endpoint, and SSO URL.

Manual smoke checks

Hosted Trip Planner Widget

  1. Load a page containing traveln-widget.js.
  2. Confirm the iframe renders.
  3. Submit a prompt.
  4. Confirm your token endpoint receives { "prompt": "...", "trace_id": "..." }.
  5. Confirm the browser redirects to /sso-login/?token=...&prompt=....
  6. Confirm Traveln opens the AI trip planner.

Hosted Button Launchers

  1. Load a page containing traveln-button.js.
  2. Confirm the button iframe sizes itself and becomes visible.
  3. Click the button.
  4. Confirm your token endpoint receives { "trace_id": "..." }.
  5. Confirm Traveln opens the target selected by data-button-type.

Headless SDK

  1. Load traveln-sdk.js.
  2. Call Traveln.init(...).
  3. Trigger Traveln.startPlanner, Traveln.openTrips, Traveln.openBookings, or Traveln.startAccommodationSearch.
  4. Confirm the SDK requests a token and redirects through SSO.

SDK iframe Embed

  1. Build an SSO URL with Traveln.getSSOToken(...) and Traveln.buildRedirectUrl(...).
  2. Include embed: { channel, parentOrigin: window.location.origin }.
  3. Mount the generated URL in your iframe shell.
  4. Confirm the tenant allows the parent origin.
  5. Confirm the requested target opens in the iframe.

SDK OpenChat Embed

  1. Load traveln-sdk.js and call Traveln.init(...).
  2. Call Traveln.openChat({ chatId, container, onReady, onError }).
  3. Confirm your token endpoint receives chat_id.
  4. Confirm the iframe posts traveln.chat.ready.
  5. Confirm an unauthorized chat UUID is rejected by Traveln backend authorization.