ParaRestClient from @getpara/rest-sdk. The apiKey constructor option must contain your server secret key for these operations. Keep this client on your backend. A public application key or a user-session core SDK client does not grant this authority.
Arguments and errors
The signatures below are positional.reference identifies an authorization scope, policy version, and requirement. context and query fields become query parameters; body is JSON. Permissions types defines these inputs and the principal response fields.
Every method accepts optional ParaRestCallOptions (signal?: AbortSignal, idempotencyKey?: string). The REST SDK reports non-success responses as ParaRestError; preserve its status and response when handling authorization, validation, or revision-conflict failures. Writes using expectedRevision reject stale revisions rather than overwriting a newer change.
Policy discovery
listPartnerPolicies
Lists active policies within their effective time window for the authenticated partner, including targeted definitions. Drafts and inactive versions are excluded.Route
getPartnerPolicy
Reads an active policy within its effective time window for the authenticated partner.Route
listPartnerPolicyVersions
Lists versions that are active or were previously active for the authenticated partner. Drafts and versions that were never activated are excluded.Route
User consent
listUserPolicyConsents
Lists consent requests and current consent state for the selected user wallet.Route
getUserPolicyConsent
Reads the selected policy’s current consent state for a user wallet.Route
User parameters
listUserAdjustablePolicies
Lists policies with adjustable parameters available to the user.Route
getUserPolicyParameters
Reads parameter declarations, saved values, and the current settings revision.Route
listUserPolicyParameterHistory
Lists saved parameter revisions for the user and policy.Route
Approval configuration
listConfigurableApprovalRequirements
Lists approval requirements that expose configuration in an authorization scope.Route
getConfigurableApprovalRequirement
Reads a configurable approval requirement in a specific policy version and authorization scope.Route
getApprovalConfiguration
Reads the stored configuration and revision for an approval requirement. Returns404 before the first write; use getEffectiveApprovalConfiguration to read defaults with configuration: null.
Route
getEffectiveApprovalConfiguration
Reads the approval requirement after applying its current configuration.Route
updateApprovalConfiguration
Updates the configurable values explicitly permitted by an approval requirement.Route
resetApprovalConfiguration
Clears configured overrides and restores the requirement’s defaults.Route
{ expectedRevision, values: {} } to the same update route.
listApprovalConfigurationHistory
Lists configuration revisions for an approval requirement.Route
Roles and wallet scopes
getUserApprovalAssignments
Reads roles and attributes assigned to a user in an authorization scope.Route
listAuthorizationScopeMembers
Lists users and their assignments in an authorization scope.Route
replaceUserApprovalAssignments
Replaces a user’s complete role and attribute assignments in an authorization scope.Route
assignments array removes all assignments in this scope.
listUserApprovalAssignmentHistory
Lists revisions of a user’s authority assignments in an authorization scope.Route
getWalletAuthorizationScope
Reads the authorization scope currently bound to a wallet.Route
setWalletAuthorizationScope
Sets the authorization scope bound to a wallet using its current revision.Route
listWalletAuthorizationScopeHistory
Lists revisions of a wallet’s authorization-scope binding.Route
Approval cases
listPartnerApprovalCases
Lists approval cases for the authenticated partner without granting a user decision.Route
getPartnerApprovalCase
Reads a partner approval case without impersonating an approver.Route
Usage
getPartnerPolicyUsage
Reads a current spending-usage snapshot for an app-owned or user-owned wallet.Route
context.userId is supplied, uses GET /v1/permissions-v2/users/{userId}/policies/{policyId}/usage with walletId in the query. This returns current meter usage, not a transaction preview.