Portal

Get Customer Portal URL

Resolve the deep-link path into a buyer's self-service portal for the given type. This only computes *where* a buyer would land — it does not authenticate them or mint a token. The buyer still needs to sign in to the portal separately (their own magic link) before the link resolves to anything. If the workspace has configured a custom subscription-management URL (Settings), every subscriptions-* type returns that URL instead of a Fungies portal path — checked before every other rule below, so the override stays reachable even when a rule below would otherwise refuse a Fungies portal link. Unless that override applies: refuses with 401 if called with a test-mode key — portal links are live-only, since the only way onto a test storefront is a preview token this endpoint has no merchant session to mint; refuses with 401 if the customer portal is disabled for the workspace (Settings). orderNumber accepts either the order number shown in the dashboard or the id returned by other v0 endpoints, and is resolved against this workspace's own orders — a value that does not exist returns 404. cartOfferId and offerId are not checked against the calling workspace's own data — a value that does not exist still returns a 200 with a plausible-looking link. The buyer's sign-in on the portal page itself is what actually confirms ownership.

Authorization

Public key
x-fngs-public-key<token>

In: header

Query Parameters

type*string

Which portal page to link to:

  • orders-list: list of the buyer's orders
  • orders-details: a single order (requires orderNumber)
  • product-keys-list: list of the buyer's product keys
  • product-keys-redeem: redeem a specific product key (requires cartOfferId)
  • digital-assets-list: list of the buyer's digital downloads
  • digital-assets-details: a single digital download (requires offerId)
  • subscriptions-list: list of the buyer's subscriptions
  • subscriptions-details: a single subscription (requires orderNumber)
  • subscriptions-update: change plan on a subscription (requires orderNumber)
  • subscriptions-update-payment-method: update a subscription's payment method (requires orderNumber)
  • account: the buyer's account details page

Value in

  • "orders-list"
  • "orders-details"
  • "product-keys-list"
  • "product-keys-redeem"
  • "digital-assets-list"
  • "digital-assets-details"
  • "subscriptions-list"
  • "subscriptions-details"
  • "subscriptions-update"
  • "subscriptions-update-payment-method"
  • "account"
orderNumber?|

Order number or id — either the number shown in the dashboard or the id returned by other v0 endpoints. Required for orders-details. Required for subscriptions-details, subscriptions-update and subscriptions-update-payment-method unless the workspace has a custom subscription-management URL configured (Settings), in which case those three ignore it and return the override instead.

cartOfferId?string

Cart offer id for product-keys-redeem.

Formatuuid
offerId?string

Offer id for digital-assets-details.

Formatuuid

Response Body

application/json

application/json

GET
/v0/portal/url
curl -X GET "https://example.com/v0/portal/url?type=orders-list"
{  "status": "success",  "data": {    "url": "string"  }}