Create a widget
A widget is the unit of configuration in Powsoo. Each widget maps to one voice agent on one platform, has its own wid_* ID, and has its own allowed origins list.
Create a widget
- In the Powsoo dashboard, go to Widgets → New widget.
- Give the widget a name (shown only in the dashboard).
- Pick a voice platform — a Retell or Vapi account you’ve already connected.
- Pick the agent from the dropdown (fetched live from the platform’s API).
- Configure Allowed origins (see below).
- Save. Copy the widget ID from the detail page.
Allowed origins
The allowed origins list controls which domains can use this widget. The Powsoo API checks the Origin request header on every token-mint request. Requests from unlisted origins are rejected before any credentials are accessed.
| Pattern | Example | Matches |
|---|---|---|
| Bare domain | example.com | https://example.com only — no subdomains |
| Wildcard subdomain | *.example.com | Any subdomain: www.example.com, app.example.com, etc. |
| Domain + port | localhost:5173 | http://localhost:5173 exactly |
localhost and 127.0.0.1 are always allowed regardless of this list — you never need to add these for local development.
Widget ID
The wid_* ID is public. It’s safe to include in HTML, commit to source control, and deploy to a CDN. It identifies which widget config to load — it has no credentials.
All access control is server-side via the origin check described above.
Multiple widgets
Create one widget per use case, domain, or agent. Examples:
- One widget per client if each client has their own voice agent.
- One widget for production and one for staging (with different allowed origins).
- One widget per product line if you run multiple agents.
Each widget has fully independent configuration.