URL parameter pass-through for Guest Access agent — need to attribute sessions to referring vendors

Hi MindStudio team,

I’m running an AI agent (Planabar) via a Guest Access embed link (https://planabar.msagent.ai), and I need to pass a custom identifier through the URL so it’s captured as a variable inside the workflow and ultimately written to my external database (Supabase) via an HTTP Request block.

My use case: My agent is shared with different business partners (wedding venues and planners), each with their own unique tracking code. I link out to the agent like this: Begin Planning | Planabar , which redirects/embeds to Planabar . I need the vendor value (e.g. WED-ATX-001) to be captured as a workflow variable so I can reference it later in an HTTP Request block that logs session data to Supabase — right now that field is coming through blank on every session.

Specific questions:

  1. Does the Guest Access embed/link method support reading custom URL query parameters (like ?vendor=WED-ATX-001) and exposing them as variables inside the workflow (e.g. via {{vendor}})? If so, how do I configure this — is there a setting I’m missing under User Inputs, Onboarding, or elsewhere in Agent Settings?
  2. If Guest Access does not support this, is the Signed Access URL method (via generate-signed-access-url) the correct alternative? If so:
  • Can I pass custom key/value data (beyond just userId) through that endpoint so it becomes available as a workflow variable, or is userId the only field usable for this purpose?
  • Is there a way to embed a custom parameter into the userId itself (e.g. userId: "vendor:WED-ATX-001") and parse it out inside the workflow, if there’s no dedicated field for arbitrary custom data?
  1. If neither approach directly supports this, what’s the recommended pattern for passing a small piece of external context (a referral/vendor code) into a workflow at session start, for a public-facing embedded agent with many distinct entry points?

Additional context: My Main.flow already starts with a Chat block and several onboarding-style User Inputs (user_message, input) that capture typed responses — I understand these are separate from URL-based variables, and I’m looking specifically for the URL-parameter mechanism, not another typed-input field.

Any documentation, examples, or configuration steps you can point me to would be hugely helpful. Happy to share screenshots of my current workflow setup if useful.

Thanks so much for your help!

Neil Ratliff
Planabar

Hi @Neil,

Thanks for the detailed post!

A public link like planabar.msagent.ai can’t read query parameters directly. The recommended alternative is to embed the agent and append the query parameters to the URL. Here’s how that works:

  1. Add a Launch Variable in the Start block (e.g., vendor)
  2. Call the API and get the Signed URL back
  3. Before loading that URL in your iframe, append your vendor code to it as a query parameter (make sure it matches the Launch Variable name):
    signedUrl&vendor=WED-ATX-001
  4. Use that final URL as your iframe src

Here’s how the flow could look like: your website reads the vendor value from the incoming link (planabar.com/start?vendor=WED-ATX-001), then appends that same value onto the signed URL before rendering the iframe. The workflow will pick it up as {{vendor}}.

You’re also not limited to userId. Any custom key can work as a query parameter, as long as you add a matching Launch Variable with the same name in the Start block.

Embedding the vendor code inside userId itself isn’t supported, so I’d recommend appending it as its own separate parameter as described above.

Let me know if you have any questions

@Alex_MindStudio You may be the most helpful IT support in history. Thank you very very much for this.