Create a widget session and get parameters to launch the Proof widget
Creates a session for one widget transaction and returns every parameter the widget needs. This endpoint must be called from your backend server, not from the browser. Your server adds theDocumentation Index
Fetch the complete documentation index at: https://docs.proof.community/llms.txt
Use this file to discover all available pages before exploring further.
client_token, reads the user’s real IP from the incoming request, and forwards it as client_ip. The response parameters are then passed to the frontend to launch the widget.
The response is shaped to be passed directly to proofWidget.run({...}). Do not modify the returned values; pass them through verbatim.
Bearer <client_token>.application/jsonOrigin header must match one of your registered origins, or it is rejected with 403 forbidden. See Onboarding → Authentication.TRC20, ERC20, BEP20."100", "99.50")."buy" or "sell". Overrides the partner default from widget_config.type. Off-ramp (sell) must be enabled for your integration.redirect_url for this session only.X-Forwarded-For or the connection’s remote address). Mixed into the session signature. Recommended — omitting it degrades fraud-signal quality.widgetId to the widget.address to the widget verbatim.v2:<128-hex-chars>. Computed by Proof. Pass as signature to the widget verbatim.initToken to the widget.initTokenType to the widget.widget_config.currencies.true. The currency is locked at the value you requested.widget_config.networks.[network] — the network is locked at the value you requested.true. The amount is locked at the value you requested.widget_config.fiat_currency.widget_config.fiat_currencies.false. The user can change the fiat currency inside the widget.true.buy or sell. Resolved from the request body or widget_config.type.widget_config.lang.widget_config.theme.widget_config.redirect_url.| HTTP | error | code | Cause |
|---|---|---|---|
| 400 | invalid_request | validation_error | A required field is missing or has the wrong type |
| 400 | invalid_request | currency_not_allowed | currency is not enabled for your integration |
| 400 | wallet_not_supported | WALLET_NOT_SUPPORTED | No active wallet for the requested currency + network — contact Proof to provision one |
| 401 | unauthorised | invalid_token | client_token is missing or inactive |
| 403 | forbidden | forbidden_origin | The request Origin is not on your allowlist |
| 502 | upstream_error | provider_error | An external service returned an error; retry with the same body |