MassPay wallet activation
API reference

MassPay wallet activation

Whether the payee has activated the MassPay wallet and, if not, a fresh `activationUrl` to send them to.

View as MarkdownUpdated Oct 30, 2026
GET/api/external/v1/payouts/masspay/activationalso served at /api/external/payouts/masspay/activationNew

Whether the payee has activated the MassPay wallet and, if not, a fresh activationUrl to send them to.

The payee opens it once in a browser; MassPay refuses payouts to the wallet until then. The link expires, so fetch it right before you show it, and never store it. Once activated, activated stays true. The link signs the payee in: the key's own account only.

Needs the Payouts category and an app key

Payouts are an API category that is off for every app until we switch it on — ask support. Personal keys can read payouts but get 403 app_key_required here.

Authentication

Send the creator's API key as a bearer token: Authorization: Bearer dpfn_…. See Authentication & API keys.

Responses

200The activation state.
NameTypeDescription
provisionedbooleanTrue when the account has a MassPay payee.
activatedbooleanTrue once the payee finished activation.
activationUrlstring | nullThe activation link while not activated; null otherwise.
Format: uri
Example response
{
  "provisioned": true,
  "activated": false,
  "activationUrl": "https://payee.masspay.io/activate/…"
}

Errors

StatusBodyWhen
401{"error":"Unauthorized","code":"unauthorized"}Missing or invalid API key.
403{"error":"Payout methods need the account’s own key — a key an agency minted for a managed account cannot read or change where payouts go.","code":"agency_key_not_allowed"}The key was minted by an agency for an account it manages.
403{"error":"This endpoint needs a key bound to an app with the payouts API category enabled — personal keys cannot use it.","code":"app_key_required","category":"payouts"}A personal key (not bound to an app). Personal keys may read payouts, but not change them.
502{"error":"MassPay request failed","code":"masspay_unavailable","provisioned":true,"activated":false,"activationUrl":null}MassPay did not answer (503 when unreachable). Retry.
400{"error":"This endpoint only acts as the key’s own account — send it without X-Dropfans-Account.","code":"account_header_not_allowed"}`X-Dropfans-Account` names another account. An agency can never change where a creator it manages is paid.
400{"error":"This endpoint acts as the key’s own account or app — call it without /creators/{creatorId}.","code":"creator_scope_not_allowed"}Called under /api/external/v1/creators/{creatorId}/ — this endpoint always acts as the key’s own account, agency or app.
403{"error":"This app does not have the payouts API category enabled. Contact support to enable it.","code":"api_category_disabled","category":"payouts"}Your app has the Payouts [API category](/developers/concepts/api-categories) switched off (the default for new apps).

Rate limiting

Every response carries the X-RateLimit-Tier header and, on limited tiers, the per-minute and per-day trios — read X-RateLimit-Remaining and X-RateLimit-Reset instead of hardcoding limits. Details in Rate limits.

Code samples

curl "https://www.dropfans.io/api/external/v1/payouts/masspay/activation" \
  -H "Authorization: Bearer $DROPFANS_API_KEY"

Questions? support@dropfans.io