> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getpara.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up permissions

> Choose how to author policies and connect them to your application

Start by creating a policy on a beta API key, called **Development** in Developer Portal. Then connect the consent, signing, or approval flows your application needs. The setup path depends on the policy you want to create and who owns the wallets.

Authoring defines the rules Para enforces. Client SDKs let authenticated users participate in those rules, while backend methods administer assignments, scopes, and settings the policy permits. Neither client nor backend management methods rewrite the policy definition.

## Choose how to create a policy

Use Developer Portal when its forms cover your policy. For other supported configurations, including policies for other wallet types, nested conditions, adjustable limits, and conditional approvals, author JSON through the CLI. Both paths validate the policy before it can become active.

<CardGroup cols={2}>
  <Card title="Create policies in Developer Portal" icon="sliders" href="/v3/general/developer-portal-permissions">
    Follow the form-based walkthrough to create, review, and activate a policy.
  </Card>

  <Card title="Author policies with JSON" icon="terminal" href="/v3/cli/permissions">
    Sign in with your developer account and submit advanced policies on beta.
  </Card>

  <Card title="Policy JSON reference" icon="code" href="/v3/references/permissions/policy-json">
    Define wallet selectors, conditions, and approval requirements.
  </Card>
</CardGroup>

Contact Para if you need help designing or checking a policy. Production publication requires Para review; beta policies do not transfer automatically.

## Connect permissions to your application

For user-owned wallets, integrate consent and any adjustable settings or approval workflows. For app-owned wallets, enforce policies through server-side signing. Your backend can also manage approval roles, authorization scopes, and declared workflow settings using the server secret; these administration methods are separate from policy authoring.

<CardGroup cols={2}>
  <Card title="Integrate consent and adjustable limits" icon="user-check" href="/v3/react/guides/permissions">
    Let users grant standing access and choose their personal limits.
  </Card>

  <Card title="Integrate conditional approvals" icon="users" href="/v3/react/guides/conditional-approvals">
    Collect authenticated approvals or transaction signatures.
  </Card>

  <Card title="Enforce policies on app-owned wallets" icon="shield-check" href="/v3/rest/permissions">
    Handle policy decisions when signing through the REST API.
  </Card>

  <Card title="Manage permissions from your backend" icon="server" href="/v3/rest/permissions-administration">
    Assign approval roles and manage permitted workflow settings.
  </Card>
</CardGroup>

## Test and publish

Test requests that should be allowed, denied, or sent for review before requesting production publication. As your policy changes, create new versions and verify their activation and consent behavior.

<Card title="Manage the policy lifecycle" icon="rotate" href="/v3/general/permissions-lifecycle">
  Replace policies, control activation, and request production review.
</Card>
