[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-clerk-clerk-orgs":3,"mdc-vjfrow-key":34,"related-org-clerk-clerk-orgs":6347,"related-repo-clerk-clerk-orgs":6531},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":29,"sourceUrl":32,"mdContent":33},"clerk-orgs","manage Clerk Organizations for B2B SaaS","Clerk Organizations for B2B SaaS - create multi-tenant apps with org switching, role-based access, verified domains, and enterprise SSO. Use for team workspaces, RBAC, org-based routing, member management.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"clerk","Clerk","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fclerk.png",[12,14,17,20],{"name":9,"slug":8,"type":13},"tag",{"name":15,"slug":16,"type":13},"SaaS","saas",{"name":18,"slug":19,"type":13},"Multi-Tenant","multi-tenant",{"name":21,"slug":22,"type":13},"RBAC","rbac",59,"https:\u002F\u002Fgithub.com\u002Fclerk\u002Fskills","2026-04-10T05:00:14.40165","MIT",4,[],{"repoUrl":24,"stars":23,"forks":27,"topics":30,"description":31},[],"AI Skills to enhance working with Clerk","https:\u002F\u002Fgithub.com\u002Fclerk\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Ffeatures\u002Fclerk-orgs","---\nname: clerk-orgs\ndescription: Clerk Organizations for B2B SaaS - create multi-tenant apps with org\n  switching, role-based access, verified domains, and enterprise SSO. Use for team\n  workspaces, RBAC, org-based routing, member management.\nallowed-tools: WebFetch\nlicense: MIT\ncompatibility: Requires NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY and CLERK_SECRET_KEY. Organizations must be enabled in Clerk Dashboard → Organizations. Membership mode (required vs optional) must match the B2B vs B2C + B2B coexistence story of your app.\nmetadata:\n  author: clerk\n  version: 3.0.0\n---\n\n# Organizations (B2B SaaS)\n\n> **STOP — prerequisite.** Organizations must be enabled before any org-related API, hook, or component works. Two paths: (1) [Dashboard → Organizations settings](https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations-settings), or (2) `clerk enable orgs` (see \"Agent-first: Programmatic org management\" below). Pick the Membership mode deliberately: `Membership required` (default since 2025-08-22) routes signed-in users through the `choose-organization` task and disables personal accounts, while `Membership optional` keeps personal accounts available for B2C + B2B coexistence. Pick `optional` if you need personal subscriptions alongside org subscriptions.\n>\n> **Version**: This skill targets current SDKs (`@clerk\u002Fnextjs` v7+, `@clerk\u002Freact` v6+ — Core 3). Core 2 differences are noted inline with `> **Core 2 ONLY (skip if current SDK):**` callouts — see `clerk` skill for the full version table.\n\n## Quick Start\n\n1. **Enable Organizations** — via [Dashboard → Organizations settings](https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations-settings) or `clerk enable orgs` (see Agent-first section). Pick `Membership required` (B2B-only) or `Membership optional` (B2C + B2B).\n2. **Create an org** — via `\u003COrganizationSwitcher \u002F>`, `\u003CCreateOrganization \u002F>`, or programmatically with `clerkClient().organizations.createOrganization()`.\n3. **Protect routes** — read `orgId` \u002F `orgSlug` from `auth()` and gate with `has({ role })` or `has({ permission })`.\n4. **Manage members** — send invitations via Backend API or the built-in `\u003COrganizationProfile \u002F>` tab.\n5. **Cap membership** — set `maxAllowedMemberships` at org creation or pick a seat-limited Billing Plan (see `clerk-billing` skill).\n\n## What Do You Need?\n\n| Task | Reference |\n|------|-----------|\n| System permissions catalog, custom roles, role sets | references\u002Froles-permissions.md |\n| Invitation lifecycle (create, list, revoke, built-in UI) | references\u002Finvitations.md |\n| Enterprise SSO setup, provider field access, domain verification | references\u002Fenterprise-sso.md |\n| Next.js adaptations for orgs (role\u002Fpermission middleware, slug invariants, orgId-scoped writes) | references\u002Fnextjs-patterns.md |\n\n## References\n\n| Reference | Description |\n|-----------|-------------|\n| `references\u002Froles-permissions.md` | Default + custom roles, System Permissions catalog, permission naming |\n| `references\u002Finvitations.md` | Backend API for invitations + built-in UI |\n| `references\u002Fenterprise-sso.md` | SAML\u002FOIDC per-org, domain verification, correct field access |\n| `references\u002Fnextjs-patterns.md` | Next.js adaptations specific to orgs. For generic Next.js patterns see `clerk-nextjs-patterns` skill. |\n\n## Dashboard shortcuts\n\n| Action | URL |\n|---|---|\n| Enable Organizations + Membership mode | `https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations-settings` |\n| Manage roles + permissions | `https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations-settings\u002Froles` |\n| Create\u002Fedit an organization | `https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations` |\n| Webhooks for org events | `https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=webhooks` |\n\n## Agent-first: Programmatic org management\n\nOrg settings (enable toggle, membership cap, admin delete, domains) are patchable via PLAPI Instance Config. Org CRUD + memberships + invitations live in BAPI. Useful for agents seeding orgs, replicating settings across instances, or version-controlling org structure.\n\nPre-req: project linked (`clerk auth login` + `clerk link`, see `clerk-setup`).\n\n### Enable Organizations + settings via CLI\n\n```bash\nclerk enable orgs\n```\n\nFor additional settings (membership cap, verified domains, admin delete), patch the instance config:\n\n```bash\nclerk api --platform PATCH \u002Fv1\u002Fplatform\u002Fapplications\u002F\u003Capp_id>\u002Finstances\u002F\u003Cins_id>\u002Fconfig \\\n  -d '{\"organization_settings\":{\"max_allowed_memberships\":50,\"domains_enabled\":true,\"admin_delete_enabled\":true}}'\n```\n\n### Create \u002F list \u002F delete orgs (BAPI)\n\n```bash\n# Create:\nclerk api -X POST \u002Fv1\u002Forganizations \\\n  -d '{\"name\":\"Acme\",\"slug\":\"acme\",\"created_by\":\"user_xxx\",\"max_allowed_memberships\":10}'\n\n# List:\nclerk api \u002Fv1\u002Forganizations --query 'limit=20'\n\n# Get one:\nclerk api \u002Fv1\u002Forganizations\u002F\u003Corg_id>\n\n# Update:\nclerk api -X PATCH \u002Fv1\u002Forganizations\u002F\u003Corg_id> -d '{\"name\":\"Acme Inc.\"}'\n\n# Delete:\nclerk api -X DELETE \u002Fv1\u002Forganizations\u002F\u003Corg_id>\n```\n\n### Memberships\n\n```bash\n# Add a user to an org:\nclerk api -X POST \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships \\\n  -d '{\"user_id\":\"user_xxx\",\"role\":\"org:admin\"}'\n\n# List members:\nclerk api \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships --query 'limit=50'\n\n# Update role:\nclerk api -X PATCH \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships\u002F\u003Cuser_id> \\\n  -d '{\"role\":\"org:member\"}'\n\n# Remove:\nclerk api -X DELETE \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships\u002F\u003Cuser_id>\n```\n\n### Invitations\n\n```bash\n# Send:\nclerk api -X POST \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Finvitations \\\n  -d '{\"email_address\":\"alice@example.com\",\"role\":\"org:member\",\"redirect_url\":\"https:\u002F\u002Fapp.com\u002Faccept\"}'\n\n# List pending:\nclerk api \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Finvitations --query 'status=pending'\n\n# Revoke:\nclerk api -X POST \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Finvitations\u002F\u003Cinv_id>\u002Frevoke \\\n  -d '{\"requesting_user_id\":\"user_xxx\"}'\n```\n\n### Notes\n\n- This handles **org config + CRUD**. Subscription \u002F billing for orgs (org plans, seat-limit pricing) flows through `clerk-billing` skill.\n- Roles + permissions catalog is editable in `references\u002Froles-permissions.md`. Custom role creation goes through `clerk config patch` (instance-level role definitions) — see Dashboard's role editor for the UX equivalent.\n- For SSO \u002F verified domain provisioning, see `references\u002Fenterprise-sso.md`.\n\n## Documentation\n\n- [Overview](https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Foverview)\n- [Configure + enable](https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fconfigure)\n- [Roles and permissions](https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fcontrol-access\u002Froles-and-permissions)\n- [Check access](https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fcontrol-access\u002Fcheck-access)\n- [Invitations](https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fadd-members\u002Finvitations)\n- [OrganizationSwitcher](https:\u002F\u002Fclerk.com\u002Fdocs\u002Freference\u002Fcomponents\u002Forganization\u002Forganization-switcher)\n- [Verified domains](https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fadd-members\u002Fverified-domains)\n- [Enterprise SSO](https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fadd-members\u002Fsso)\n\n## Key Patterns\n\nExamples use `@clerk\u002Fnextjs` by default. For other frameworks swap the import to `@clerk\u002Freact` (Vite\u002FCRA), `@clerk\u002Fastro\u002Fcomponents`, `@clerk\u002Fvue`, `@clerk\u002Fexpo`, `@clerk\u002Freact-router`, or `@clerk\u002Ftanstack-react-start` — the feature-level APIs (`has()`, `orgId`, `\u003COrganizationSwitcher \u002F>`, `\u003CShow>`) are identical across SDKs. Framework-specific patterns (middleware, redirects) live in `references\u002Fnextjs-patterns.md`.\n\n### 1. Read Organization from Auth\n\nServer-side access to active organization:\n\n```typescript\nimport { auth } from '@clerk\u002Fnextjs\u002Fserver'\n\nconst { orgId, orgSlug, orgRole } = await auth()\nif (!orgId) {\n  \u002F\u002F user has no active org — either not in any, or viewing Personal Account\n}\n```\n\n`auth()` is Next.js-specific. Equivalent server-side accessors per SDK: `auth(event)` (Nuxt via `event.context.auth()`), `context.locals.auth()` (Astro), `getAuth(req)` (Express, after `clerkMiddleware()`). Client-side: `useAuth()` (React-based SDKs) or composables (Vue\u002FNuxt). All return the same `orgId` \u002F `orgSlug` \u002F `orgRole` shape.\n\n### 2. Dynamic Routes with Org Slug\n\nRoute-per-org pattern works in any framework supporting file-based dynamic routes. Next.js example:\n\n```\napp\u002Forgs\u002F[slug]\u002Fpage.tsx\napp\u002Forgs\u002F[slug]\u002Fsettings\u002Fpage.tsx\n```\n\nAlways verify the URL slug matches the active org slug — otherwise users can hit `\u002Forgs\u002Fother-org\u002F...` with a stale `orgSlug` in their session:\n\n```typescript\nexport default async function OrgPage({ params }: { params: { slug: string } }) {\n  const { orgSlug } = await auth()\n  if (orgSlug !== params.slug) {\n    redirect('\u002Fdashboard')  \u002F\u002F or whatever your \"no-access\" flow is\n  }\n  return \u003Cdiv>Welcome to {orgSlug}\u003C\u002Fdiv>\n}\n```\n\n### 3. Role-Based Access Control\n\n```typescript\nconst { has } = await auth()\n\nif (!has({ role: 'org:admin' })) {\n  return \u003Cdiv>Admin access required\u003C\u002Fdiv>\n}\n```\n\nPermission checks use the same `has()` surface:\n\n```typescript\nif (!has({ permission: 'org:sys_memberships:manage' })) {\n  redirect('\u002Funauthorized')\n}\n```\n\n**Permission naming convention.** System Permissions prefix with `org:sys_`; custom Permissions use `org:\u003Cresource>:\u003Caction>`. The full System Permissions catalog lives in `references\u002Froles-permissions.md` — the short list is:\n\n- `org:sys_memberships:{read, manage}`\n- `org:sys_profile:{manage, delete}`\n- `org:sys_domains:{read, manage}`\n- `org:sys_billing:{read, manage}`\n\nDo NOT invent names like `org:create`, `org:manage_members`, `org:update_metadata` — those are not real permission slugs. See `references\u002Froles-permissions.md` for custom roles and the permission table.\n\n### 4. Conditional Rendering with `\u003CShow>`\n\n```tsx\nimport { Show } from '@clerk\u002Fnextjs'\n\n\u003CShow when={{ role: 'org:admin' }}>\n  \u003CAdminPanel \u002F>\n\u003C\u002FShow>\n\n\u003CShow when={{ permission: 'org:sys_memberships:manage' }}>\n  \u003CMembersTab \u002F>\n\u003C\u002FShow>\n```\n\n> **Core 2 ONLY (skip if current SDK):** Use `\u003CProtect role=\"org:admin\">` \u002F `\u003CProtect permission=\"...\">` instead of `\u003CShow>`. `\u003CShow>` replaced both `\u003CProtect>` and `\u003CSignedIn>`\u002F`\u003CSignedOut>` in Core 3.\n\nAstro template syntax for the same component (imported from `@clerk\u002Fastro\u002Fcomponents`):\n\n```astro\n\u003CShow when={{ role: 'org:admin' }}>\n  \u003CAdminPanel \u002F>\n\u003C\u002FShow>\n```\n\n### 5. OrganizationSwitcher\n\n```tsx\nimport { OrganizationSwitcher } from '@clerk\u002Fnextjs'\n\n\u003COrganizationSwitcher\n  hidePersonal\n  afterCreateOrganizationUrl=\"\u002Forgs\u002F:slug\u002Fdashboard\"\n  afterSelectOrganizationUrl=\"\u002Forgs\u002F:slug\u002Fdashboard\"\n\u002F>\n```\n\nKey props:\n- `hidePersonal: boolean` — hide the Personal Account option. Defaults to `false`. Pass `true` for B2B-only apps.\n- `afterCreateOrganizationUrl`, `afterSelectOrganizationUrl`, `afterLeaveOrganizationUrl`, `afterSelectPersonalUrl` — navigation hooks. `:slug` is substituted at runtime.\n- `createOrganizationMode`, `organizationProfileMode` — `'modal' | 'navigation'` (default `'modal'`).\n\nThe full prop list lives in the [component reference](https:\u002F\u002Fclerk.com\u002Fdocs\u002Freference\u002Fcomponents\u002Forganization\u002Forganization-switcher).\n\n### 6. Session Task — Choose Organization\n\nWhen `Membership required` is enabled (the default), users without an org are routed through a `choose-organization` session task after sign-in. Clerk handles this automatically inside `\u003CSignIn \u002F>`, but you can host the UI yourself:\n\n```tsx\nimport { ClerkProvider } from '@clerk\u002Fnextjs'\n\n\u003CClerkProvider taskUrls={{ 'choose-organization': '\u002Fsession-tasks\u002Fchoose-organization' }}>\n  {children}\n\u003C\u002FClerkProvider>\n```\n\n```tsx\n\u002F\u002F app\u002Fsession-tasks\u002Fchoose-organization\u002Fpage.tsx\nimport { TaskChooseOrganization } from '@clerk\u002Fnextjs'\n\nexport default function Page() {\n  return \u003CTaskChooseOrganization redirectUrlComplete=\"\u002Fdashboard\" \u002F>\n}\n```\n\n`TaskChooseOrganization` ships as an imported component in the React-based SDKs (`@clerk\u002Fnextjs`, `@clerk\u002Freact`, `@clerk\u002Freact-router`, `@clerk\u002Ftanstack-react-start`). For the JS Frontend SDK (`@clerk\u002Fclerk-js`) the equivalent is `clerk.mountTaskChooseOrganization(node)` \u002F `clerk.unmountTaskChooseOrganization(node)`.\n\n> **Core 2 ONLY (skip if current SDK):** Session tasks aren't available. Force an org selection at sign-in by redirecting to a page that renders `\u003COrganizationSwitcher hidePersonal \u002F>`.\n\n## Default Roles + System Permissions\n\n| Role | Default meaning |\n|------|-------------|\n| `org:admin` | Full access — all System Permissions, can manage org + memberships |\n| `org:member` | Read members + Read billing Permissions only |\n\nYou can create up to 10 custom roles per instance in Dashboard → Organizations → Roles & Permissions. Role-per-org is controlled via **Role Sets** — see `references\u002Froles-permissions.md` for the full model (custom roles, Creator\u002FDefault role settings, role sets, and the System Permissions catalog).\n\n## Billing Checks\n\n`has()` also supports plan and feature checks when Clerk Billing is enabled:\n\n```typescript\nconst { has } = await auth()\n\nhas({ plan: 'gold' })        \u002F\u002F subscription plan\nhas({ feature: 'widgets' })  \u002F\u002F feature entitlement\n```\n\n> **Core 2 ONLY (skip if current SDK):** `has()` only supports `role` and `permission`. Billing checks aren't available.\n\nSee `clerk-billing` for the full Billing surface and seat-limit plan model.\n\n## Enterprise SSO\n\nPer-org SAML\u002FOIDC. Configured in Dashboard → Configure → Enterprise Connections (or per-org: Organizations → select org → SSO Connections). The SSO connection owns its domain directly; no separate Verified Domain is required (and the two features are mutually exclusive on the same domain). Auto-join on first SSO sign-in uses JIT Provisioning, not Verified Domains. Key fact: the `provider` field lives on `enterpriseConnection`, not on `enterpriseAccounts[0]` directly. See `references\u002Fenterprise-sso.md` for the full flow and correct field access.\n\n```typescript\n\u002F\u002F Strategy name for Enterprise SSO (Core 3)\nstrategy: 'enterprise_sso'\n```\n\n> **Core 2 ONLY (skip if current SDK):** Uses `strategy: 'saml'` and `user.samlAccounts` instead of `user.enterpriseAccounts`.\n\n## Gotchas\n\n### `maxAllowedMemberships` caps seats\n\n```typescript\nconst clerk = await clerkClient()\nawait clerk.organizations.createOrganization({\n  name: 'Acme Corp',\n  createdBy: userId,\n  maxAllowedMemberships: 10,\n})\n\n\u002F\u002F Update later:\nawait clerk.organizations.updateOrganization(orgId, {\n  maxAllowedMemberships: 25,\n})\n```\n\nFor tier-based seat limits tied to a subscription, use a seat-limited Billing Plan (see `clerk-billing`).\n\n### Billing gates Permissions at the Feature level\n\nWhen Clerk Billing is enabled, `has({ permission: 'org:posts:edit' })` returns `false` if the Feature associated with that permission is not included in the organization's active Plan — even if the user has the Permission assigned via their role. Ensure the Feature is attached to the active Plan in Dashboard → Billing → Plans → Features.\n\n### Metadata updates REPLACE, not merge\n\n`updateOrganization({ publicMetadata })` overwrites all public metadata. Read first, spread, then write:\n\n```typescript\nconst org = await clerk.organizations.getOrganization({ organizationId: orgId })\nawait clerk.organizations.updateOrganization(orgId, {\n  publicMetadata: { ...org.publicMetadata, newField: 'value' },\n})\n```\n\nApplies identically to `privateMetadata` and to user metadata via `clerkClient.users.updateUser`.\n\n## Error Signatures (diagnose fast)\n\nMost \"org-related\" failures are configuration, not code. Do not edit components before checking these:\n\n| Error \u002F symptom | Root cause | Fix |\n|---|---|---|\n| `orgId` \u002F `orgSlug` is `undefined` for a signed-in user | Organizations not enabled for this instance, OR user has no active org (personal account) | Enable in Dashboard → Organizations; check Membership mode; surface `\u003COrganizationSwitcher \u002F>` |\n| `has({ permission: 'org:manage_members' })` always `false` | Using an invented permission slug | Use `org:sys_memberships:manage` (see roles-permissions.md catalog) |\n| `has({ role })` returns `false` but user looks like an admin | Session token stale after role change | Re-sign-in, or refresh the session: `await clerk.session?.reload()` |\n| `has({ permission })` `false` even with the role assigned | Feature not attached to active Plan (Billing gates permissions) | Dashboard → Billing → Plans → attach Feature |\n| `\u003COrganizationSwitcher \u002F>` doesn't show \"Personal Account\" | `Membership required` mode is on (the default since Aug 22, 2025) | Dashboard → Organizations settings → `Membership optional` |\n| `TaskChooseOrganization` throws \"cannot render when a user doesn't have current session tasks\" | Rendered outside a `choose-organization` task context | Wrap in a `choose-organization` session-task route only; don't render unconditionally |\n| `enterpriseAccounts[0].provider` is `undefined` | Accessing `provider` at the wrong nesting level | Use `user.enterpriseAccounts[0].enterpriseConnection?.provider` |\n\n## Authorization Pattern (Complete Example)\n\nServer component protecting a slug-scoped admin page:\n\n```typescript\nimport { auth } from '@clerk\u002Fnextjs\u002Fserver'\nimport { redirect } from 'next\u002Fnavigation'\n\nexport default async function AdminPage({ params }: { params: { slug: string } }) {\n  const { orgSlug, has } = await auth()\n\n  if (orgSlug !== params.slug) redirect('\u002Fdashboard')\n  if (!has({ role: 'org:admin' })) redirect(`\u002Forgs\u002F${orgSlug}`)\n\n  return \u003Cdiv>Admin settings for {orgSlug}\u003C\u002Fdiv>\n}\n```\n\nFor middleware-level protection (Next.js) see `references\u002Fnextjs-patterns.md`.\n\n## Invitations (short form)\n\nSend from a server action or route handler:\n\n```typescript\nimport { clerkClient, auth } from '@clerk\u002Fnextjs\u002Fserver'\n\nexport async function inviteMember(organizationId: string, emailAddress: string, role: string) {\n  const { userId, has } = await auth()\n\n  if (!userId) throw new Error('Not signed in')\n  if (!has({ permission: 'org:sys_memberships:manage' })) {\n    throw new Error('Not authorized to invite members')\n  }\n\n  const clerk = await clerkClient()\n  return clerk.organizations.createOrganizationInvitation({\n    organizationId,\n    inviterUserId: userId,       \u002F\u002F required per Backend API\n    emailAddress,\n    role,                        \u002F\u002F e.g. 'org:admin' or 'org:member'\n    redirectUrl: 'https:\u002F\u002Fyourapp.com\u002Faccept-invite',\n  })\n}\n```\n\nThe full lifecycle (list, revoke, bulk create, built-in `\u003COrganizationProfile \u002F>` UI) lives in `references\u002Finvitations.md`.\n\n## Workflow\n\n1. **Enable** — Organizations + Membership mode in Dashboard\n2. **Create org** — via UI component or Backend API\n3. **Invite members** — Backend API or built-in UI, with `inviterUserId`\n4. **Gate access** — `has({ role })` \u002F `has({ permission })` with canonical `org:sys_*` names\n5. **Scope routes** — `orgSlug === params.slug` on every protected page\n6. **Switch orgs** — `\u003COrganizationSwitcher \u002F>` handles the whole flow\n\n## See Also\n\n- `clerk-setup` — Initial Clerk install\n- `clerk-billing` — Seat-limit plans, per-plan billing, `has({ plan })` \u002F `has({ feature })`\n- `clerk-webhooks` — Sync org events to your database (`organization.created`, `organizationMembership.*`)\n- `clerk-backend-api` — Full Backend API reference\n- `clerk-nextjs-patterns` — Framework-specific middleware, server actions, caching\n",{"data":35,"body":40},{"name":4,"description":6,"allowed-tools":36,"license":26,"compatibility":37,"metadata":38},"WebFetch","Requires NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY and CLERK_SECRET_KEY. Organizations must be enabled in Clerk Dashboard → Organizations. Membership mode (required vs optional) must match the B2B vs B2C + B2B coexistence story of your app.",{"author":8,"version":39},"3.0.0",{"type":41,"children":42},"root",[43,52,161,168,336,342,422,428,521,527,616,622,627,656,663,696,701,813,819,1123,1129,1453,1459,1714,1720,1773,1779,1861,1867,1956,1962,1967,2131,2209,2215,2220,2230,2250,2531,2537,2705,2717,2822,2855,2894,2928,2939,3152,3218,3230,3263,3269,3399,3404,3507,3519,3525,3552,3688,3823,3880,3899,3905,3960,3979,3985,3995,4145,4179,4191,4196,4232,4272,4305,4311,4322,4568,4579,4585,4605,4611,4622,4816,4836,4842,4847,5126,5132,5137,5568,5579,5585,5590,6127,6145,6151,6253,6259,6341],{"type":44,"tag":45,"props":46,"children":48},"element","h1",{"id":47},"organizations-b2b-saas",[49],{"type":50,"value":51},"text","Organizations (B2B SaaS)",{"type":44,"tag":53,"props":54,"children":55},"blockquote",{},[56,120],{"type":44,"tag":57,"props":58,"children":59},"p",{},[60,66,68,77,79,86,88,94,96,102,104,110,112,118],{"type":44,"tag":61,"props":62,"children":63},"strong",{},[64],{"type":50,"value":65},"STOP — prerequisite.",{"type":50,"value":67}," Organizations must be enabled before any org-related API, hook, or component works. Two paths: (1) ",{"type":44,"tag":69,"props":70,"children":74},"a",{"href":71,"rel":72},"https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations-settings",[73],"nofollow",[75],{"type":50,"value":76},"Dashboard → Organizations settings",{"type":50,"value":78},", or (2) ",{"type":44,"tag":80,"props":81,"children":83},"code",{"className":82},[],[84],{"type":50,"value":85},"clerk enable orgs",{"type":50,"value":87}," (see \"Agent-first: Programmatic org management\" below). Pick the Membership mode deliberately: ",{"type":44,"tag":80,"props":89,"children":91},{"className":90},[],[92],{"type":50,"value":93},"Membership required",{"type":50,"value":95}," (default since 2025-08-22) routes signed-in users through the ",{"type":44,"tag":80,"props":97,"children":99},{"className":98},[],[100],{"type":50,"value":101},"choose-organization",{"type":50,"value":103}," task and disables personal accounts, while ",{"type":44,"tag":80,"props":105,"children":107},{"className":106},[],[108],{"type":50,"value":109},"Membership optional",{"type":50,"value":111}," keeps personal accounts available for B2C + B2B coexistence. Pick ",{"type":44,"tag":80,"props":113,"children":115},{"className":114},[],[116],{"type":50,"value":117},"optional",{"type":50,"value":119}," if you need personal subscriptions alongside org subscriptions.",{"type":44,"tag":57,"props":121,"children":122},{},[123,128,130,136,138,144,146,152,154,159],{"type":44,"tag":61,"props":124,"children":125},{},[126],{"type":50,"value":127},"Version",{"type":50,"value":129},": This skill targets current SDKs (",{"type":44,"tag":80,"props":131,"children":133},{"className":132},[],[134],{"type":50,"value":135},"@clerk\u002Fnextjs",{"type":50,"value":137}," v7+, ",{"type":44,"tag":80,"props":139,"children":141},{"className":140},[],[142],{"type":50,"value":143},"@clerk\u002Freact",{"type":50,"value":145}," v6+ — Core 3). Core 2 differences are noted inline with ",{"type":44,"tag":80,"props":147,"children":149},{"className":148},[],[150],{"type":50,"value":151},"> **Core 2 ONLY (skip if current SDK):**",{"type":50,"value":153}," callouts — see ",{"type":44,"tag":80,"props":155,"children":157},{"className":156},[],[158],{"type":50,"value":8},{"type":50,"value":160}," skill for the full version table.",{"type":44,"tag":162,"props":163,"children":165},"h2",{"id":164},"quick-start",[166],{"type":50,"value":167},"Quick Start",{"type":44,"tag":169,"props":170,"children":171},"ol",{},[172,211,244,292,310],{"type":44,"tag":173,"props":174,"children":175},"li",{},[176,181,183,188,190,195,197,202,204,209],{"type":44,"tag":61,"props":177,"children":178},{},[179],{"type":50,"value":180},"Enable Organizations",{"type":50,"value":182}," — via ",{"type":44,"tag":69,"props":184,"children":186},{"href":71,"rel":185},[73],[187],{"type":50,"value":76},{"type":50,"value":189}," or ",{"type":44,"tag":80,"props":191,"children":193},{"className":192},[],[194],{"type":50,"value":85},{"type":50,"value":196}," (see Agent-first section). Pick ",{"type":44,"tag":80,"props":198,"children":200},{"className":199},[],[201],{"type":50,"value":93},{"type":50,"value":203}," (B2B-only) or ",{"type":44,"tag":80,"props":205,"children":207},{"className":206},[],[208],{"type":50,"value":109},{"type":50,"value":210}," (B2C + B2B).",{"type":44,"tag":173,"props":212,"children":213},{},[214,219,220,226,228,234,236,242],{"type":44,"tag":61,"props":215,"children":216},{},[217],{"type":50,"value":218},"Create an org",{"type":50,"value":182},{"type":44,"tag":80,"props":221,"children":223},{"className":222},[],[224],{"type":50,"value":225},"\u003COrganizationSwitcher \u002F>",{"type":50,"value":227},", ",{"type":44,"tag":80,"props":229,"children":231},{"className":230},[],[232],{"type":50,"value":233},"\u003CCreateOrganization \u002F>",{"type":50,"value":235},", or programmatically with ",{"type":44,"tag":80,"props":237,"children":239},{"className":238},[],[240],{"type":50,"value":241},"clerkClient().organizations.createOrganization()",{"type":50,"value":243},".",{"type":44,"tag":173,"props":245,"children":246},{},[247,252,254,260,262,268,270,276,278,284,285,291],{"type":44,"tag":61,"props":248,"children":249},{},[250],{"type":50,"value":251},"Protect routes",{"type":50,"value":253}," — read ",{"type":44,"tag":80,"props":255,"children":257},{"className":256},[],[258],{"type":50,"value":259},"orgId",{"type":50,"value":261}," \u002F ",{"type":44,"tag":80,"props":263,"children":265},{"className":264},[],[266],{"type":50,"value":267},"orgSlug",{"type":50,"value":269}," from ",{"type":44,"tag":80,"props":271,"children":273},{"className":272},[],[274],{"type":50,"value":275},"auth()",{"type":50,"value":277}," and gate with ",{"type":44,"tag":80,"props":279,"children":281},{"className":280},[],[282],{"type":50,"value":283},"has({ role })",{"type":50,"value":189},{"type":44,"tag":80,"props":286,"children":288},{"className":287},[],[289],{"type":50,"value":290},"has({ permission })",{"type":50,"value":243},{"type":44,"tag":173,"props":293,"children":294},{},[295,300,302,308],{"type":44,"tag":61,"props":296,"children":297},{},[298],{"type":50,"value":299},"Manage members",{"type":50,"value":301}," — send invitations via Backend API or the built-in ",{"type":44,"tag":80,"props":303,"children":305},{"className":304},[],[306],{"type":50,"value":307},"\u003COrganizationProfile \u002F>",{"type":50,"value":309}," tab.",{"type":44,"tag":173,"props":311,"children":312},{},[313,318,320,326,328,334],{"type":44,"tag":61,"props":314,"children":315},{},[316],{"type":50,"value":317},"Cap membership",{"type":50,"value":319}," — set ",{"type":44,"tag":80,"props":321,"children":323},{"className":322},[],[324],{"type":50,"value":325},"maxAllowedMemberships",{"type":50,"value":327}," at org creation or pick a seat-limited Billing Plan (see ",{"type":44,"tag":80,"props":329,"children":331},{"className":330},[],[332],{"type":50,"value":333},"clerk-billing",{"type":50,"value":335}," skill).",{"type":44,"tag":162,"props":337,"children":339},{"id":338},"what-do-you-need",[340],{"type":50,"value":341},"What Do You Need?",{"type":44,"tag":343,"props":344,"children":345},"table",{},[346,365],{"type":44,"tag":347,"props":348,"children":349},"thead",{},[350],{"type":44,"tag":351,"props":352,"children":353},"tr",{},[354,360],{"type":44,"tag":355,"props":356,"children":357},"th",{},[358],{"type":50,"value":359},"Task",{"type":44,"tag":355,"props":361,"children":362},{},[363],{"type":50,"value":364},"Reference",{"type":44,"tag":366,"props":367,"children":368},"tbody",{},[369,383,396,409],{"type":44,"tag":351,"props":370,"children":371},{},[372,378],{"type":44,"tag":373,"props":374,"children":375},"td",{},[376],{"type":50,"value":377},"System permissions catalog, custom roles, role sets",{"type":44,"tag":373,"props":379,"children":380},{},[381],{"type":50,"value":382},"references\u002Froles-permissions.md",{"type":44,"tag":351,"props":384,"children":385},{},[386,391],{"type":44,"tag":373,"props":387,"children":388},{},[389],{"type":50,"value":390},"Invitation lifecycle (create, list, revoke, built-in UI)",{"type":44,"tag":373,"props":392,"children":393},{},[394],{"type":50,"value":395},"references\u002Finvitations.md",{"type":44,"tag":351,"props":397,"children":398},{},[399,404],{"type":44,"tag":373,"props":400,"children":401},{},[402],{"type":50,"value":403},"Enterprise SSO setup, provider field access, domain verification",{"type":44,"tag":373,"props":405,"children":406},{},[407],{"type":50,"value":408},"references\u002Fenterprise-sso.md",{"type":44,"tag":351,"props":410,"children":411},{},[412,417],{"type":44,"tag":373,"props":413,"children":414},{},[415],{"type":50,"value":416},"Next.js adaptations for orgs (role\u002Fpermission middleware, slug invariants, orgId-scoped writes)",{"type":44,"tag":373,"props":418,"children":419},{},[420],{"type":50,"value":421},"references\u002Fnextjs-patterns.md",{"type":44,"tag":162,"props":423,"children":425},{"id":424},"references",[426],{"type":50,"value":427},"References",{"type":44,"tag":343,"props":429,"children":430},{},[431,446],{"type":44,"tag":347,"props":432,"children":433},{},[434],{"type":44,"tag":351,"props":435,"children":436},{},[437,441],{"type":44,"tag":355,"props":438,"children":439},{},[440],{"type":50,"value":364},{"type":44,"tag":355,"props":442,"children":443},{},[444],{"type":50,"value":445},"Description",{"type":44,"tag":366,"props":447,"children":448},{},[449,465,481,497],{"type":44,"tag":351,"props":450,"children":451},{},[452,460],{"type":44,"tag":373,"props":453,"children":454},{},[455],{"type":44,"tag":80,"props":456,"children":458},{"className":457},[],[459],{"type":50,"value":382},{"type":44,"tag":373,"props":461,"children":462},{},[463],{"type":50,"value":464},"Default + custom roles, System Permissions catalog, permission naming",{"type":44,"tag":351,"props":466,"children":467},{},[468,476],{"type":44,"tag":373,"props":469,"children":470},{},[471],{"type":44,"tag":80,"props":472,"children":474},{"className":473},[],[475],{"type":50,"value":395},{"type":44,"tag":373,"props":477,"children":478},{},[479],{"type":50,"value":480},"Backend API for invitations + built-in UI",{"type":44,"tag":351,"props":482,"children":483},{},[484,492],{"type":44,"tag":373,"props":485,"children":486},{},[487],{"type":44,"tag":80,"props":488,"children":490},{"className":489},[],[491],{"type":50,"value":408},{"type":44,"tag":373,"props":493,"children":494},{},[495],{"type":50,"value":496},"SAML\u002FOIDC per-org, domain verification, correct field access",{"type":44,"tag":351,"props":498,"children":499},{},[500,508],{"type":44,"tag":373,"props":501,"children":502},{},[503],{"type":44,"tag":80,"props":504,"children":506},{"className":505},[],[507],{"type":50,"value":421},{"type":44,"tag":373,"props":509,"children":510},{},[511,513,519],{"type":50,"value":512},"Next.js adaptations specific to orgs. For generic Next.js patterns see ",{"type":44,"tag":80,"props":514,"children":516},{"className":515},[],[517],{"type":50,"value":518},"clerk-nextjs-patterns",{"type":50,"value":520}," skill.",{"type":44,"tag":162,"props":522,"children":524},{"id":523},"dashboard-shortcuts",[525],{"type":50,"value":526},"Dashboard shortcuts",{"type":44,"tag":343,"props":528,"children":529},{},[530,546],{"type":44,"tag":347,"props":531,"children":532},{},[533],{"type":44,"tag":351,"props":534,"children":535},{},[536,541],{"type":44,"tag":355,"props":537,"children":538},{},[539],{"type":50,"value":540},"Action",{"type":44,"tag":355,"props":542,"children":543},{},[544],{"type":50,"value":545},"URL",{"type":44,"tag":366,"props":547,"children":548},{},[549,565,582,599],{"type":44,"tag":351,"props":550,"children":551},{},[552,557],{"type":44,"tag":373,"props":553,"children":554},{},[555],{"type":50,"value":556},"Enable Organizations + Membership mode",{"type":44,"tag":373,"props":558,"children":559},{},[560],{"type":44,"tag":80,"props":561,"children":563},{"className":562},[],[564],{"type":50,"value":71},{"type":44,"tag":351,"props":566,"children":567},{},[568,573],{"type":44,"tag":373,"props":569,"children":570},{},[571],{"type":50,"value":572},"Manage roles + permissions",{"type":44,"tag":373,"props":574,"children":575},{},[576],{"type":44,"tag":80,"props":577,"children":579},{"className":578},[],[580],{"type":50,"value":581},"https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations-settings\u002Froles",{"type":44,"tag":351,"props":583,"children":584},{},[585,590],{"type":44,"tag":373,"props":586,"children":587},{},[588],{"type":50,"value":589},"Create\u002Fedit an organization",{"type":44,"tag":373,"props":591,"children":592},{},[593],{"type":44,"tag":80,"props":594,"children":596},{"className":595},[],[597],{"type":50,"value":598},"https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=organizations",{"type":44,"tag":351,"props":600,"children":601},{},[602,607],{"type":44,"tag":373,"props":603,"children":604},{},[605],{"type":50,"value":606},"Webhooks for org events",{"type":44,"tag":373,"props":608,"children":609},{},[610],{"type":44,"tag":80,"props":611,"children":613},{"className":612},[],[614],{"type":50,"value":615},"https:\u002F\u002Fdashboard.clerk.com\u002Flast-active?path=webhooks",{"type":44,"tag":162,"props":617,"children":619},{"id":618},"agent-first-programmatic-org-management",[620],{"type":50,"value":621},"Agent-first: Programmatic org management",{"type":44,"tag":57,"props":623,"children":624},{},[625],{"type":50,"value":626},"Org settings (enable toggle, membership cap, admin delete, domains) are patchable via PLAPI Instance Config. Org CRUD + memberships + invitations live in BAPI. Useful for agents seeding orgs, replicating settings across instances, or version-controlling org structure.",{"type":44,"tag":57,"props":628,"children":629},{},[630,632,638,640,646,648,654],{"type":50,"value":631},"Pre-req: project linked (",{"type":44,"tag":80,"props":633,"children":635},{"className":634},[],[636],{"type":50,"value":637},"clerk auth login",{"type":50,"value":639}," + ",{"type":44,"tag":80,"props":641,"children":643},{"className":642},[],[644],{"type":50,"value":645},"clerk link",{"type":50,"value":647},", see ",{"type":44,"tag":80,"props":649,"children":651},{"className":650},[],[652],{"type":50,"value":653},"clerk-setup",{"type":50,"value":655},").",{"type":44,"tag":657,"props":658,"children":660},"h3",{"id":659},"enable-organizations-settings-via-cli",[661],{"type":50,"value":662},"Enable Organizations + settings via CLI",{"type":44,"tag":664,"props":665,"children":670},"pre",{"className":666,"code":667,"language":668,"meta":669,"style":669},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","clerk enable orgs\n","bash","",[671],{"type":44,"tag":80,"props":672,"children":673},{"__ignoreMap":669},[674],{"type":44,"tag":675,"props":676,"children":679},"span",{"class":677,"line":678},"line",1,[680,685,691],{"type":44,"tag":675,"props":681,"children":683},{"style":682},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[684],{"type":50,"value":8},{"type":44,"tag":675,"props":686,"children":688},{"style":687},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[689],{"type":50,"value":690}," enable",{"type":44,"tag":675,"props":692,"children":693},{"style":687},[694],{"type":50,"value":695}," orgs\n",{"type":44,"tag":57,"props":697,"children":698},{},[699],{"type":50,"value":700},"For additional settings (membership cap, verified domains, admin delete), patch the instance config:",{"type":44,"tag":664,"props":702,"children":704},{"className":666,"code":703,"language":668,"meta":669,"style":669},"clerk api --platform PATCH \u002Fv1\u002Fplatform\u002Fapplications\u002F\u003Capp_id>\u002Finstances\u002F\u003Cins_id>\u002Fconfig \\\n  -d '{\"organization_settings\":{\"max_allowed_memberships\":50,\"domains_enabled\":true,\"admin_delete_enabled\":true}}'\n",[705],{"type":44,"tag":80,"props":706,"children":707},{"__ignoreMap":669},[708,789],{"type":44,"tag":675,"props":709,"children":710},{"class":677,"line":678},[711,715,720,725,730,735,741,746,752,757,762,766,771,775,779,784],{"type":44,"tag":675,"props":712,"children":713},{"style":682},[714],{"type":50,"value":8},{"type":44,"tag":675,"props":716,"children":717},{"style":687},[718],{"type":50,"value":719}," api",{"type":44,"tag":675,"props":721,"children":722},{"style":687},[723],{"type":50,"value":724}," --platform",{"type":44,"tag":675,"props":726,"children":727},{"style":687},[728],{"type":50,"value":729}," PATCH",{"type":44,"tag":675,"props":731,"children":732},{"style":687},[733],{"type":50,"value":734}," \u002Fv1\u002Fplatform\u002Fapplications\u002F",{"type":44,"tag":675,"props":736,"children":738},{"style":737},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[739],{"type":50,"value":740},"\u003C",{"type":44,"tag":675,"props":742,"children":743},{"style":687},[744],{"type":50,"value":745},"app_i",{"type":44,"tag":675,"props":747,"children":749},{"style":748},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[750],{"type":50,"value":751},"d",{"type":44,"tag":675,"props":753,"children":754},{"style":737},[755],{"type":50,"value":756},">",{"type":44,"tag":675,"props":758,"children":759},{"style":687},[760],{"type":50,"value":761},"\u002Finstances\u002F",{"type":44,"tag":675,"props":763,"children":764},{"style":737},[765],{"type":50,"value":740},{"type":44,"tag":675,"props":767,"children":768},{"style":687},[769],{"type":50,"value":770},"ins_i",{"type":44,"tag":675,"props":772,"children":773},{"style":748},[774],{"type":50,"value":751},{"type":44,"tag":675,"props":776,"children":777},{"style":737},[778],{"type":50,"value":756},{"type":44,"tag":675,"props":780,"children":781},{"style":687},[782],{"type":50,"value":783},"\u002Fconfig",{"type":44,"tag":675,"props":785,"children":786},{"style":748},[787],{"type":50,"value":788}," \\\n",{"type":44,"tag":675,"props":790,"children":792},{"class":677,"line":791},2,[793,798,803,808],{"type":44,"tag":675,"props":794,"children":795},{"style":687},[796],{"type":50,"value":797},"  -d",{"type":44,"tag":675,"props":799,"children":800},{"style":737},[801],{"type":50,"value":802}," '",{"type":44,"tag":675,"props":804,"children":805},{"style":687},[806],{"type":50,"value":807},"{\"organization_settings\":{\"max_allowed_memberships\":50,\"domains_enabled\":true,\"admin_delete_enabled\":true}}",{"type":44,"tag":675,"props":809,"children":810},{"style":737},[811],{"type":50,"value":812},"'\n",{"type":44,"tag":657,"props":814,"children":816},{"id":815},"create-list-delete-orgs-bapi",[817],{"type":50,"value":818},"Create \u002F list \u002F delete orgs (BAPI)",{"type":44,"tag":664,"props":820,"children":822},{"className":666,"code":821,"language":668,"meta":669,"style":669},"# Create:\nclerk api -X POST \u002Fv1\u002Forganizations \\\n  -d '{\"name\":\"Acme\",\"slug\":\"acme\",\"created_by\":\"user_xxx\",\"max_allowed_memberships\":10}'\n\n# List:\nclerk api \u002Fv1\u002Forganizations --query 'limit=20'\n\n# Get one:\nclerk api \u002Fv1\u002Forganizations\u002F\u003Corg_id>\n\n# Update:\nclerk api -X PATCH \u002Fv1\u002Forganizations\u002F\u003Corg_id> -d '{\"name\":\"Acme Inc.\"}'\n\n# Delete:\nclerk api -X DELETE \u002Fv1\u002Forganizations\u002F\u003Corg_id>\n",[823],{"type":44,"tag":80,"props":824,"children":825},{"__ignoreMap":669},[826,835,865,886,895,904,938,946,955,990,998,1007,1065,1073,1082],{"type":44,"tag":675,"props":827,"children":828},{"class":677,"line":678},[829],{"type":44,"tag":675,"props":830,"children":832},{"style":831},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[833],{"type":50,"value":834},"# Create:\n",{"type":44,"tag":675,"props":836,"children":837},{"class":677,"line":791},[838,842,846,851,856,861],{"type":44,"tag":675,"props":839,"children":840},{"style":682},[841],{"type":50,"value":8},{"type":44,"tag":675,"props":843,"children":844},{"style":687},[845],{"type":50,"value":719},{"type":44,"tag":675,"props":847,"children":848},{"style":687},[849],{"type":50,"value":850}," -X",{"type":44,"tag":675,"props":852,"children":853},{"style":687},[854],{"type":50,"value":855}," POST",{"type":44,"tag":675,"props":857,"children":858},{"style":687},[859],{"type":50,"value":860}," \u002Fv1\u002Forganizations",{"type":44,"tag":675,"props":862,"children":863},{"style":748},[864],{"type":50,"value":788},{"type":44,"tag":675,"props":866,"children":868},{"class":677,"line":867},3,[869,873,877,882],{"type":44,"tag":675,"props":870,"children":871},{"style":687},[872],{"type":50,"value":797},{"type":44,"tag":675,"props":874,"children":875},{"style":737},[876],{"type":50,"value":802},{"type":44,"tag":675,"props":878,"children":879},{"style":687},[880],{"type":50,"value":881},"{\"name\":\"Acme\",\"slug\":\"acme\",\"created_by\":\"user_xxx\",\"max_allowed_memberships\":10}",{"type":44,"tag":675,"props":883,"children":884},{"style":737},[885],{"type":50,"value":812},{"type":44,"tag":675,"props":887,"children":888},{"class":677,"line":27},[889],{"type":44,"tag":675,"props":890,"children":892},{"emptyLinePlaceholder":891},true,[893],{"type":50,"value":894},"\n",{"type":44,"tag":675,"props":896,"children":898},{"class":677,"line":897},5,[899],{"type":44,"tag":675,"props":900,"children":901},{"style":831},[902],{"type":50,"value":903},"# List:\n",{"type":44,"tag":675,"props":905,"children":907},{"class":677,"line":906},6,[908,912,916,920,925,929,934],{"type":44,"tag":675,"props":909,"children":910},{"style":682},[911],{"type":50,"value":8},{"type":44,"tag":675,"props":913,"children":914},{"style":687},[915],{"type":50,"value":719},{"type":44,"tag":675,"props":917,"children":918},{"style":687},[919],{"type":50,"value":860},{"type":44,"tag":675,"props":921,"children":922},{"style":687},[923],{"type":50,"value":924}," --query",{"type":44,"tag":675,"props":926,"children":927},{"style":737},[928],{"type":50,"value":802},{"type":44,"tag":675,"props":930,"children":931},{"style":687},[932],{"type":50,"value":933},"limit=20",{"type":44,"tag":675,"props":935,"children":936},{"style":737},[937],{"type":50,"value":812},{"type":44,"tag":675,"props":939,"children":941},{"class":677,"line":940},7,[942],{"type":44,"tag":675,"props":943,"children":944},{"emptyLinePlaceholder":891},[945],{"type":50,"value":894},{"type":44,"tag":675,"props":947,"children":949},{"class":677,"line":948},8,[950],{"type":44,"tag":675,"props":951,"children":952},{"style":831},[953],{"type":50,"value":954},"# Get one:\n",{"type":44,"tag":675,"props":956,"children":958},{"class":677,"line":957},9,[959,963,967,972,976,981,985],{"type":44,"tag":675,"props":960,"children":961},{"style":682},[962],{"type":50,"value":8},{"type":44,"tag":675,"props":964,"children":965},{"style":687},[966],{"type":50,"value":719},{"type":44,"tag":675,"props":968,"children":969},{"style":687},[970],{"type":50,"value":971}," \u002Fv1\u002Forganizations\u002F",{"type":44,"tag":675,"props":973,"children":974},{"style":737},[975],{"type":50,"value":740},{"type":44,"tag":675,"props":977,"children":978},{"style":687},[979],{"type":50,"value":980},"org_i",{"type":44,"tag":675,"props":982,"children":983},{"style":748},[984],{"type":50,"value":751},{"type":44,"tag":675,"props":986,"children":987},{"style":737},[988],{"type":50,"value":989},">\n",{"type":44,"tag":675,"props":991,"children":993},{"class":677,"line":992},10,[994],{"type":44,"tag":675,"props":995,"children":996},{"emptyLinePlaceholder":891},[997],{"type":50,"value":894},{"type":44,"tag":675,"props":999,"children":1001},{"class":677,"line":1000},11,[1002],{"type":44,"tag":675,"props":1003,"children":1004},{"style":831},[1005],{"type":50,"value":1006},"# Update:\n",{"type":44,"tag":675,"props":1008,"children":1010},{"class":677,"line":1009},12,[1011,1015,1019,1023,1027,1031,1035,1039,1043,1047,1052,1056,1061],{"type":44,"tag":675,"props":1012,"children":1013},{"style":682},[1014],{"type":50,"value":8},{"type":44,"tag":675,"props":1016,"children":1017},{"style":687},[1018],{"type":50,"value":719},{"type":44,"tag":675,"props":1020,"children":1021},{"style":687},[1022],{"type":50,"value":850},{"type":44,"tag":675,"props":1024,"children":1025},{"style":687},[1026],{"type":50,"value":729},{"type":44,"tag":675,"props":1028,"children":1029},{"style":687},[1030],{"type":50,"value":971},{"type":44,"tag":675,"props":1032,"children":1033},{"style":737},[1034],{"type":50,"value":740},{"type":44,"tag":675,"props":1036,"children":1037},{"style":687},[1038],{"type":50,"value":980},{"type":44,"tag":675,"props":1040,"children":1041},{"style":748},[1042],{"type":50,"value":751},{"type":44,"tag":675,"props":1044,"children":1045},{"style":737},[1046],{"type":50,"value":756},{"type":44,"tag":675,"props":1048,"children":1049},{"style":687},[1050],{"type":50,"value":1051}," -d",{"type":44,"tag":675,"props":1053,"children":1054},{"style":737},[1055],{"type":50,"value":802},{"type":44,"tag":675,"props":1057,"children":1058},{"style":687},[1059],{"type":50,"value":1060},"{\"name\":\"Acme Inc.\"}",{"type":44,"tag":675,"props":1062,"children":1063},{"style":737},[1064],{"type":50,"value":812},{"type":44,"tag":675,"props":1066,"children":1068},{"class":677,"line":1067},13,[1069],{"type":44,"tag":675,"props":1070,"children":1071},{"emptyLinePlaceholder":891},[1072],{"type":50,"value":894},{"type":44,"tag":675,"props":1074,"children":1076},{"class":677,"line":1075},14,[1077],{"type":44,"tag":675,"props":1078,"children":1079},{"style":831},[1080],{"type":50,"value":1081},"# Delete:\n",{"type":44,"tag":675,"props":1083,"children":1085},{"class":677,"line":1084},15,[1086,1090,1094,1098,1103,1107,1111,1115,1119],{"type":44,"tag":675,"props":1087,"children":1088},{"style":682},[1089],{"type":50,"value":8},{"type":44,"tag":675,"props":1091,"children":1092},{"style":687},[1093],{"type":50,"value":719},{"type":44,"tag":675,"props":1095,"children":1096},{"style":687},[1097],{"type":50,"value":850},{"type":44,"tag":675,"props":1099,"children":1100},{"style":687},[1101],{"type":50,"value":1102}," DELETE",{"type":44,"tag":675,"props":1104,"children":1105},{"style":687},[1106],{"type":50,"value":971},{"type":44,"tag":675,"props":1108,"children":1109},{"style":737},[1110],{"type":50,"value":740},{"type":44,"tag":675,"props":1112,"children":1113},{"style":687},[1114],{"type":50,"value":980},{"type":44,"tag":675,"props":1116,"children":1117},{"style":748},[1118],{"type":50,"value":751},{"type":44,"tag":675,"props":1120,"children":1121},{"style":737},[1122],{"type":50,"value":989},{"type":44,"tag":657,"props":1124,"children":1126},{"id":1125},"memberships",[1127],{"type":50,"value":1128},"Memberships",{"type":44,"tag":664,"props":1130,"children":1132},{"className":666,"code":1131,"language":668,"meta":669,"style":669},"# Add a user to an org:\nclerk api -X POST \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships \\\n  -d '{\"user_id\":\"user_xxx\",\"role\":\"org:admin\"}'\n\n# List members:\nclerk api \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships --query 'limit=50'\n\n# Update role:\nclerk api -X PATCH \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships\u002F\u003Cuser_id> \\\n  -d '{\"role\":\"org:member\"}'\n\n# Remove:\nclerk api -X DELETE \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Fmemberships\u002F\u003Cuser_id>\n",[1133],{"type":44,"tag":80,"props":1134,"children":1135},{"__ignoreMap":669},[1136,1144,1192,1212,1219,1227,1279,1286,1294,1359,1379,1386,1394],{"type":44,"tag":675,"props":1137,"children":1138},{"class":677,"line":678},[1139],{"type":44,"tag":675,"props":1140,"children":1141},{"style":831},[1142],{"type":50,"value":1143},"# Add a user to an org:\n",{"type":44,"tag":675,"props":1145,"children":1146},{"class":677,"line":791},[1147,1151,1155,1159,1163,1167,1171,1175,1179,1183,1188],{"type":44,"tag":675,"props":1148,"children":1149},{"style":682},[1150],{"type":50,"value":8},{"type":44,"tag":675,"props":1152,"children":1153},{"style":687},[1154],{"type":50,"value":719},{"type":44,"tag":675,"props":1156,"children":1157},{"style":687},[1158],{"type":50,"value":850},{"type":44,"tag":675,"props":1160,"children":1161},{"style":687},[1162],{"type":50,"value":855},{"type":44,"tag":675,"props":1164,"children":1165},{"style":687},[1166],{"type":50,"value":971},{"type":44,"tag":675,"props":1168,"children":1169},{"style":737},[1170],{"type":50,"value":740},{"type":44,"tag":675,"props":1172,"children":1173},{"style":687},[1174],{"type":50,"value":980},{"type":44,"tag":675,"props":1176,"children":1177},{"style":748},[1178],{"type":50,"value":751},{"type":44,"tag":675,"props":1180,"children":1181},{"style":737},[1182],{"type":50,"value":756},{"type":44,"tag":675,"props":1184,"children":1185},{"style":687},[1186],{"type":50,"value":1187},"\u002Fmemberships",{"type":44,"tag":675,"props":1189,"children":1190},{"style":748},[1191],{"type":50,"value":788},{"type":44,"tag":675,"props":1193,"children":1194},{"class":677,"line":867},[1195,1199,1203,1208],{"type":44,"tag":675,"props":1196,"children":1197},{"style":687},[1198],{"type":50,"value":797},{"type":44,"tag":675,"props":1200,"children":1201},{"style":737},[1202],{"type":50,"value":802},{"type":44,"tag":675,"props":1204,"children":1205},{"style":687},[1206],{"type":50,"value":1207},"{\"user_id\":\"user_xxx\",\"role\":\"org:admin\"}",{"type":44,"tag":675,"props":1209,"children":1210},{"style":737},[1211],{"type":50,"value":812},{"type":44,"tag":675,"props":1213,"children":1214},{"class":677,"line":27},[1215],{"type":44,"tag":675,"props":1216,"children":1217},{"emptyLinePlaceholder":891},[1218],{"type":50,"value":894},{"type":44,"tag":675,"props":1220,"children":1221},{"class":677,"line":897},[1222],{"type":44,"tag":675,"props":1223,"children":1224},{"style":831},[1225],{"type":50,"value":1226},"# List members:\n",{"type":44,"tag":675,"props":1228,"children":1229},{"class":677,"line":906},[1230,1234,1238,1242,1246,1250,1254,1258,1262,1266,1270,1275],{"type":44,"tag":675,"props":1231,"children":1232},{"style":682},[1233],{"type":50,"value":8},{"type":44,"tag":675,"props":1235,"children":1236},{"style":687},[1237],{"type":50,"value":719},{"type":44,"tag":675,"props":1239,"children":1240},{"style":687},[1241],{"type":50,"value":971},{"type":44,"tag":675,"props":1243,"children":1244},{"style":737},[1245],{"type":50,"value":740},{"type":44,"tag":675,"props":1247,"children":1248},{"style":687},[1249],{"type":50,"value":980},{"type":44,"tag":675,"props":1251,"children":1252},{"style":748},[1253],{"type":50,"value":751},{"type":44,"tag":675,"props":1255,"children":1256},{"style":737},[1257],{"type":50,"value":756},{"type":44,"tag":675,"props":1259,"children":1260},{"style":687},[1261],{"type":50,"value":1187},{"type":44,"tag":675,"props":1263,"children":1264},{"style":687},[1265],{"type":50,"value":924},{"type":44,"tag":675,"props":1267,"children":1268},{"style":737},[1269],{"type":50,"value":802},{"type":44,"tag":675,"props":1271,"children":1272},{"style":687},[1273],{"type":50,"value":1274},"limit=50",{"type":44,"tag":675,"props":1276,"children":1277},{"style":737},[1278],{"type":50,"value":812},{"type":44,"tag":675,"props":1280,"children":1281},{"class":677,"line":940},[1282],{"type":44,"tag":675,"props":1283,"children":1284},{"emptyLinePlaceholder":891},[1285],{"type":50,"value":894},{"type":44,"tag":675,"props":1287,"children":1288},{"class":677,"line":948},[1289],{"type":44,"tag":675,"props":1290,"children":1291},{"style":831},[1292],{"type":50,"value":1293},"# Update role:\n",{"type":44,"tag":675,"props":1295,"children":1296},{"class":677,"line":957},[1297,1301,1305,1309,1313,1317,1321,1325,1329,1333,1338,1342,1347,1351,1355],{"type":44,"tag":675,"props":1298,"children":1299},{"style":682},[1300],{"type":50,"value":8},{"type":44,"tag":675,"props":1302,"children":1303},{"style":687},[1304],{"type":50,"value":719},{"type":44,"tag":675,"props":1306,"children":1307},{"style":687},[1308],{"type":50,"value":850},{"type":44,"tag":675,"props":1310,"children":1311},{"style":687},[1312],{"type":50,"value":729},{"type":44,"tag":675,"props":1314,"children":1315},{"style":687},[1316],{"type":50,"value":971},{"type":44,"tag":675,"props":1318,"children":1319},{"style":737},[1320],{"type":50,"value":740},{"type":44,"tag":675,"props":1322,"children":1323},{"style":687},[1324],{"type":50,"value":980},{"type":44,"tag":675,"props":1326,"children":1327},{"style":748},[1328],{"type":50,"value":751},{"type":44,"tag":675,"props":1330,"children":1331},{"style":737},[1332],{"type":50,"value":756},{"type":44,"tag":675,"props":1334,"children":1335},{"style":687},[1336],{"type":50,"value":1337},"\u002Fmemberships\u002F",{"type":44,"tag":675,"props":1339,"children":1340},{"style":737},[1341],{"type":50,"value":740},{"type":44,"tag":675,"props":1343,"children":1344},{"style":687},[1345],{"type":50,"value":1346},"user_i",{"type":44,"tag":675,"props":1348,"children":1349},{"style":748},[1350],{"type":50,"value":751},{"type":44,"tag":675,"props":1352,"children":1353},{"style":737},[1354],{"type":50,"value":756},{"type":44,"tag":675,"props":1356,"children":1357},{"style":748},[1358],{"type":50,"value":788},{"type":44,"tag":675,"props":1360,"children":1361},{"class":677,"line":992},[1362,1366,1370,1375],{"type":44,"tag":675,"props":1363,"children":1364},{"style":687},[1365],{"type":50,"value":797},{"type":44,"tag":675,"props":1367,"children":1368},{"style":737},[1369],{"type":50,"value":802},{"type":44,"tag":675,"props":1371,"children":1372},{"style":687},[1373],{"type":50,"value":1374},"{\"role\":\"org:member\"}",{"type":44,"tag":675,"props":1376,"children":1377},{"style":737},[1378],{"type":50,"value":812},{"type":44,"tag":675,"props":1380,"children":1381},{"class":677,"line":1000},[1382],{"type":44,"tag":675,"props":1383,"children":1384},{"emptyLinePlaceholder":891},[1385],{"type":50,"value":894},{"type":44,"tag":675,"props":1387,"children":1388},{"class":677,"line":1009},[1389],{"type":44,"tag":675,"props":1390,"children":1391},{"style":831},[1392],{"type":50,"value":1393},"# Remove:\n",{"type":44,"tag":675,"props":1395,"children":1396},{"class":677,"line":1067},[1397,1401,1405,1409,1413,1417,1421,1425,1429,1433,1437,1441,1445,1449],{"type":44,"tag":675,"props":1398,"children":1399},{"style":682},[1400],{"type":50,"value":8},{"type":44,"tag":675,"props":1402,"children":1403},{"style":687},[1404],{"type":50,"value":719},{"type":44,"tag":675,"props":1406,"children":1407},{"style":687},[1408],{"type":50,"value":850},{"type":44,"tag":675,"props":1410,"children":1411},{"style":687},[1412],{"type":50,"value":1102},{"type":44,"tag":675,"props":1414,"children":1415},{"style":687},[1416],{"type":50,"value":971},{"type":44,"tag":675,"props":1418,"children":1419},{"style":737},[1420],{"type":50,"value":740},{"type":44,"tag":675,"props":1422,"children":1423},{"style":687},[1424],{"type":50,"value":980},{"type":44,"tag":675,"props":1426,"children":1427},{"style":748},[1428],{"type":50,"value":751},{"type":44,"tag":675,"props":1430,"children":1431},{"style":737},[1432],{"type":50,"value":756},{"type":44,"tag":675,"props":1434,"children":1435},{"style":687},[1436],{"type":50,"value":1337},{"type":44,"tag":675,"props":1438,"children":1439},{"style":737},[1440],{"type":50,"value":740},{"type":44,"tag":675,"props":1442,"children":1443},{"style":687},[1444],{"type":50,"value":1346},{"type":44,"tag":675,"props":1446,"children":1447},{"style":748},[1448],{"type":50,"value":751},{"type":44,"tag":675,"props":1450,"children":1451},{"style":737},[1452],{"type":50,"value":989},{"type":44,"tag":657,"props":1454,"children":1456},{"id":1455},"invitations",[1457],{"type":50,"value":1458},"Invitations",{"type":44,"tag":664,"props":1460,"children":1462},{"className":666,"code":1461,"language":668,"meta":669,"style":669},"# Send:\nclerk api -X POST \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Finvitations \\\n  -d '{\"email_address\":\"alice@example.com\",\"role\":\"org:member\",\"redirect_url\":\"https:\u002F\u002Fapp.com\u002Faccept\"}'\n\n# List pending:\nclerk api \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Finvitations --query 'status=pending'\n\n# Revoke:\nclerk api -X POST \u002Fv1\u002Forganizations\u002F\u003Corg_id>\u002Finvitations\u002F\u003Cinv_id>\u002Frevoke \\\n  -d '{\"requesting_user_id\":\"user_xxx\"}'\n",[1463],{"type":44,"tag":80,"props":1464,"children":1465},{"__ignoreMap":669},[1466,1474,1522,1542,1549,1557,1609,1616,1624,1694],{"type":44,"tag":675,"props":1467,"children":1468},{"class":677,"line":678},[1469],{"type":44,"tag":675,"props":1470,"children":1471},{"style":831},[1472],{"type":50,"value":1473},"# Send:\n",{"type":44,"tag":675,"props":1475,"children":1476},{"class":677,"line":791},[1477,1481,1485,1489,1493,1497,1501,1505,1509,1513,1518],{"type":44,"tag":675,"props":1478,"children":1479},{"style":682},[1480],{"type":50,"value":8},{"type":44,"tag":675,"props":1482,"children":1483},{"style":687},[1484],{"type":50,"value":719},{"type":44,"tag":675,"props":1486,"children":1487},{"style":687},[1488],{"type":50,"value":850},{"type":44,"tag":675,"props":1490,"children":1491},{"style":687},[1492],{"type":50,"value":855},{"type":44,"tag":675,"props":1494,"children":1495},{"style":687},[1496],{"type":50,"value":971},{"type":44,"tag":675,"props":1498,"children":1499},{"style":737},[1500],{"type":50,"value":740},{"type":44,"tag":675,"props":1502,"children":1503},{"style":687},[1504],{"type":50,"value":980},{"type":44,"tag":675,"props":1506,"children":1507},{"style":748},[1508],{"type":50,"value":751},{"type":44,"tag":675,"props":1510,"children":1511},{"style":737},[1512],{"type":50,"value":756},{"type":44,"tag":675,"props":1514,"children":1515},{"style":687},[1516],{"type":50,"value":1517},"\u002Finvitations",{"type":44,"tag":675,"props":1519,"children":1520},{"style":748},[1521],{"type":50,"value":788},{"type":44,"tag":675,"props":1523,"children":1524},{"class":677,"line":867},[1525,1529,1533,1538],{"type":44,"tag":675,"props":1526,"children":1527},{"style":687},[1528],{"type":50,"value":797},{"type":44,"tag":675,"props":1530,"children":1531},{"style":737},[1532],{"type":50,"value":802},{"type":44,"tag":675,"props":1534,"children":1535},{"style":687},[1536],{"type":50,"value":1537},"{\"email_address\":\"alice@example.com\",\"role\":\"org:member\",\"redirect_url\":\"https:\u002F\u002Fapp.com\u002Faccept\"}",{"type":44,"tag":675,"props":1539,"children":1540},{"style":737},[1541],{"type":50,"value":812},{"type":44,"tag":675,"props":1543,"children":1544},{"class":677,"line":27},[1545],{"type":44,"tag":675,"props":1546,"children":1547},{"emptyLinePlaceholder":891},[1548],{"type":50,"value":894},{"type":44,"tag":675,"props":1550,"children":1551},{"class":677,"line":897},[1552],{"type":44,"tag":675,"props":1553,"children":1554},{"style":831},[1555],{"type":50,"value":1556},"# List pending:\n",{"type":44,"tag":675,"props":1558,"children":1559},{"class":677,"line":906},[1560,1564,1568,1572,1576,1580,1584,1588,1592,1596,1600,1605],{"type":44,"tag":675,"props":1561,"children":1562},{"style":682},[1563],{"type":50,"value":8},{"type":44,"tag":675,"props":1565,"children":1566},{"style":687},[1567],{"type":50,"value":719},{"type":44,"tag":675,"props":1569,"children":1570},{"style":687},[1571],{"type":50,"value":971},{"type":44,"tag":675,"props":1573,"children":1574},{"style":737},[1575],{"type":50,"value":740},{"type":44,"tag":675,"props":1577,"children":1578},{"style":687},[1579],{"type":50,"value":980},{"type":44,"tag":675,"props":1581,"children":1582},{"style":748},[1583],{"type":50,"value":751},{"type":44,"tag":675,"props":1585,"children":1586},{"style":737},[1587],{"type":50,"value":756},{"type":44,"tag":675,"props":1589,"children":1590},{"style":687},[1591],{"type":50,"value":1517},{"type":44,"tag":675,"props":1593,"children":1594},{"style":687},[1595],{"type":50,"value":924},{"type":44,"tag":675,"props":1597,"children":1598},{"style":737},[1599],{"type":50,"value":802},{"type":44,"tag":675,"props":1601,"children":1602},{"style":687},[1603],{"type":50,"value":1604},"status=pending",{"type":44,"tag":675,"props":1606,"children":1607},{"style":737},[1608],{"type":50,"value":812},{"type":44,"tag":675,"props":1610,"children":1611},{"class":677,"line":940},[1612],{"type":44,"tag":675,"props":1613,"children":1614},{"emptyLinePlaceholder":891},[1615],{"type":50,"value":894},{"type":44,"tag":675,"props":1617,"children":1618},{"class":677,"line":948},[1619],{"type":44,"tag":675,"props":1620,"children":1621},{"style":831},[1622],{"type":50,"value":1623},"# Revoke:\n",{"type":44,"tag":675,"props":1625,"children":1626},{"class":677,"line":957},[1627,1631,1635,1639,1643,1647,1651,1655,1659,1663,1668,1672,1677,1681,1685,1690],{"type":44,"tag":675,"props":1628,"children":1629},{"style":682},[1630],{"type":50,"value":8},{"type":44,"tag":675,"props":1632,"children":1633},{"style":687},[1634],{"type":50,"value":719},{"type":44,"tag":675,"props":1636,"children":1637},{"style":687},[1638],{"type":50,"value":850},{"type":44,"tag":675,"props":1640,"children":1641},{"style":687},[1642],{"type":50,"value":855},{"type":44,"tag":675,"props":1644,"children":1645},{"style":687},[1646],{"type":50,"value":971},{"type":44,"tag":675,"props":1648,"children":1649},{"style":737},[1650],{"type":50,"value":740},{"type":44,"tag":675,"props":1652,"children":1653},{"style":687},[1654],{"type":50,"value":980},{"type":44,"tag":675,"props":1656,"children":1657},{"style":748},[1658],{"type":50,"value":751},{"type":44,"tag":675,"props":1660,"children":1661},{"style":737},[1662],{"type":50,"value":756},{"type":44,"tag":675,"props":1664,"children":1665},{"style":687},[1666],{"type":50,"value":1667},"\u002Finvitations\u002F",{"type":44,"tag":675,"props":1669,"children":1670},{"style":737},[1671],{"type":50,"value":740},{"type":44,"tag":675,"props":1673,"children":1674},{"style":687},[1675],{"type":50,"value":1676},"inv_i",{"type":44,"tag":675,"props":1678,"children":1679},{"style":748},[1680],{"type":50,"value":751},{"type":44,"tag":675,"props":1682,"children":1683},{"style":737},[1684],{"type":50,"value":756},{"type":44,"tag":675,"props":1686,"children":1687},{"style":687},[1688],{"type":50,"value":1689},"\u002Frevoke",{"type":44,"tag":675,"props":1691,"children":1692},{"style":748},[1693],{"type":50,"value":788},{"type":44,"tag":675,"props":1695,"children":1696},{"class":677,"line":992},[1697,1701,1705,1710],{"type":44,"tag":675,"props":1698,"children":1699},{"style":687},[1700],{"type":50,"value":797},{"type":44,"tag":675,"props":1702,"children":1703},{"style":737},[1704],{"type":50,"value":802},{"type":44,"tag":675,"props":1706,"children":1707},{"style":687},[1708],{"type":50,"value":1709},"{\"requesting_user_id\":\"user_xxx\"}",{"type":44,"tag":675,"props":1711,"children":1712},{"style":737},[1713],{"type":50,"value":812},{"type":44,"tag":657,"props":1715,"children":1717},{"id":1716},"notes",[1718],{"type":50,"value":1719},"Notes",{"type":44,"tag":1721,"props":1722,"children":1723},"ul",{},[1724,1742,1762],{"type":44,"tag":173,"props":1725,"children":1726},{},[1727,1729,1734,1736,1741],{"type":50,"value":1728},"This handles ",{"type":44,"tag":61,"props":1730,"children":1731},{},[1732],{"type":50,"value":1733},"org config + CRUD",{"type":50,"value":1735},". Subscription \u002F billing for orgs (org plans, seat-limit pricing) flows through ",{"type":44,"tag":80,"props":1737,"children":1739},{"className":1738},[],[1740],{"type":50,"value":333},{"type":50,"value":520},{"type":44,"tag":173,"props":1743,"children":1744},{},[1745,1747,1752,1754,1760],{"type":50,"value":1746},"Roles + permissions catalog is editable in ",{"type":44,"tag":80,"props":1748,"children":1750},{"className":1749},[],[1751],{"type":50,"value":382},{"type":50,"value":1753},". Custom role creation goes through ",{"type":44,"tag":80,"props":1755,"children":1757},{"className":1756},[],[1758],{"type":50,"value":1759},"clerk config patch",{"type":50,"value":1761}," (instance-level role definitions) — see Dashboard's role editor for the UX equivalent.",{"type":44,"tag":173,"props":1763,"children":1764},{},[1765,1767,1772],{"type":50,"value":1766},"For SSO \u002F verified domain provisioning, see ",{"type":44,"tag":80,"props":1768,"children":1770},{"className":1769},[],[1771],{"type":50,"value":408},{"type":50,"value":243},{"type":44,"tag":162,"props":1774,"children":1776},{"id":1775},"documentation",[1777],{"type":50,"value":1778},"Documentation",{"type":44,"tag":1721,"props":1780,"children":1781},{},[1782,1792,1802,1812,1822,1831,1841,1851],{"type":44,"tag":173,"props":1783,"children":1784},{},[1785],{"type":44,"tag":69,"props":1786,"children":1789},{"href":1787,"rel":1788},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Foverview",[73],[1790],{"type":50,"value":1791},"Overview",{"type":44,"tag":173,"props":1793,"children":1794},{},[1795],{"type":44,"tag":69,"props":1796,"children":1799},{"href":1797,"rel":1798},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fconfigure",[73],[1800],{"type":50,"value":1801},"Configure + enable",{"type":44,"tag":173,"props":1803,"children":1804},{},[1805],{"type":44,"tag":69,"props":1806,"children":1809},{"href":1807,"rel":1808},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fcontrol-access\u002Froles-and-permissions",[73],[1810],{"type":50,"value":1811},"Roles and permissions",{"type":44,"tag":173,"props":1813,"children":1814},{},[1815],{"type":44,"tag":69,"props":1816,"children":1819},{"href":1817,"rel":1818},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fcontrol-access\u002Fcheck-access",[73],[1820],{"type":50,"value":1821},"Check access",{"type":44,"tag":173,"props":1823,"children":1824},{},[1825],{"type":44,"tag":69,"props":1826,"children":1829},{"href":1827,"rel":1828},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fadd-members\u002Finvitations",[73],[1830],{"type":50,"value":1458},{"type":44,"tag":173,"props":1832,"children":1833},{},[1834],{"type":44,"tag":69,"props":1835,"children":1838},{"href":1836,"rel":1837},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Freference\u002Fcomponents\u002Forganization\u002Forganization-switcher",[73],[1839],{"type":50,"value":1840},"OrganizationSwitcher",{"type":44,"tag":173,"props":1842,"children":1843},{},[1844],{"type":44,"tag":69,"props":1845,"children":1848},{"href":1846,"rel":1847},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fadd-members\u002Fverified-domains",[73],[1849],{"type":50,"value":1850},"Verified domains",{"type":44,"tag":173,"props":1852,"children":1853},{},[1854],{"type":44,"tag":69,"props":1855,"children":1858},{"href":1856,"rel":1857},"https:\u002F\u002Fclerk.com\u002Fdocs\u002Fguides\u002Forganizations\u002Fadd-members\u002Fsso",[73],[1859],{"type":50,"value":1860},"Enterprise SSO",{"type":44,"tag":162,"props":1862,"children":1864},{"id":1863},"key-patterns",[1865],{"type":50,"value":1866},"Key Patterns",{"type":44,"tag":57,"props":1868,"children":1869},{},[1870,1872,1877,1879,1884,1886,1892,1893,1899,1900,1906,1907,1913,1915,1921,1923,1929,1930,1935,1936,1941,1942,1948,1950,1955],{"type":50,"value":1871},"Examples use ",{"type":44,"tag":80,"props":1873,"children":1875},{"className":1874},[],[1876],{"type":50,"value":135},{"type":50,"value":1878}," by default. For other frameworks swap the import to ",{"type":44,"tag":80,"props":1880,"children":1882},{"className":1881},[],[1883],{"type":50,"value":143},{"type":50,"value":1885}," (Vite\u002FCRA), ",{"type":44,"tag":80,"props":1887,"children":1889},{"className":1888},[],[1890],{"type":50,"value":1891},"@clerk\u002Fastro\u002Fcomponents",{"type":50,"value":227},{"type":44,"tag":80,"props":1894,"children":1896},{"className":1895},[],[1897],{"type":50,"value":1898},"@clerk\u002Fvue",{"type":50,"value":227},{"type":44,"tag":80,"props":1901,"children":1903},{"className":1902},[],[1904],{"type":50,"value":1905},"@clerk\u002Fexpo",{"type":50,"value":227},{"type":44,"tag":80,"props":1908,"children":1910},{"className":1909},[],[1911],{"type":50,"value":1912},"@clerk\u002Freact-router",{"type":50,"value":1914},", or ",{"type":44,"tag":80,"props":1916,"children":1918},{"className":1917},[],[1919],{"type":50,"value":1920},"@clerk\u002Ftanstack-react-start",{"type":50,"value":1922}," — the feature-level APIs (",{"type":44,"tag":80,"props":1924,"children":1926},{"className":1925},[],[1927],{"type":50,"value":1928},"has()",{"type":50,"value":227},{"type":44,"tag":80,"props":1931,"children":1933},{"className":1932},[],[1934],{"type":50,"value":259},{"type":50,"value":227},{"type":44,"tag":80,"props":1937,"children":1939},{"className":1938},[],[1940],{"type":50,"value":225},{"type":50,"value":227},{"type":44,"tag":80,"props":1943,"children":1945},{"className":1944},[],[1946],{"type":50,"value":1947},"\u003CShow>",{"type":50,"value":1949},") are identical across SDKs. Framework-specific patterns (middleware, redirects) live in ",{"type":44,"tag":80,"props":1951,"children":1953},{"className":1952},[],[1954],{"type":50,"value":421},{"type":50,"value":243},{"type":44,"tag":657,"props":1957,"children":1959},{"id":1958},"_1-read-organization-from-auth",[1960],{"type":50,"value":1961},"1. Read Organization from Auth",{"type":44,"tag":57,"props":1963,"children":1964},{},[1965],{"type":50,"value":1966},"Server-side access to active organization:",{"type":44,"tag":664,"props":1968,"children":1972},{"className":1969,"code":1970,"language":1971,"meta":669,"style":669},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { auth } from '@clerk\u002Fnextjs\u002Fserver'\n\nconst { orgId, orgSlug, orgRole } = await auth()\nif (!orgId) {\n  \u002F\u002F user has no active org — either not in any, or viewing Personal Account\n}\n","typescript",[1973],{"type":44,"tag":80,"props":1974,"children":1975},{"__ignoreMap":669},[1976,2018,2025,2087,2115,2123],{"type":44,"tag":675,"props":1977,"children":1978},{"class":677,"line":678},[1979,1985,1990,1995,2000,2005,2009,2014],{"type":44,"tag":675,"props":1980,"children":1982},{"style":1981},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[1983],{"type":50,"value":1984},"import",{"type":44,"tag":675,"props":1986,"children":1987},{"style":737},[1988],{"type":50,"value":1989}," {",{"type":44,"tag":675,"props":1991,"children":1992},{"style":748},[1993],{"type":50,"value":1994}," auth",{"type":44,"tag":675,"props":1996,"children":1997},{"style":737},[1998],{"type":50,"value":1999}," }",{"type":44,"tag":675,"props":2001,"children":2002},{"style":1981},[2003],{"type":50,"value":2004}," from",{"type":44,"tag":675,"props":2006,"children":2007},{"style":737},[2008],{"type":50,"value":802},{"type":44,"tag":675,"props":2010,"children":2011},{"style":687},[2012],{"type":50,"value":2013},"@clerk\u002Fnextjs\u002Fserver",{"type":44,"tag":675,"props":2015,"children":2016},{"style":737},[2017],{"type":50,"value":812},{"type":44,"tag":675,"props":2019,"children":2020},{"class":677,"line":791},[2021],{"type":44,"tag":675,"props":2022,"children":2023},{"emptyLinePlaceholder":891},[2024],{"type":50,"value":894},{"type":44,"tag":675,"props":2026,"children":2027},{"class":677,"line":867},[2028,2034,2038,2043,2048,2053,2057,2062,2067,2072,2077,2082],{"type":44,"tag":675,"props":2029,"children":2031},{"style":2030},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[2032],{"type":50,"value":2033},"const",{"type":44,"tag":675,"props":2035,"children":2036},{"style":737},[2037],{"type":50,"value":1989},{"type":44,"tag":675,"props":2039,"children":2040},{"style":748},[2041],{"type":50,"value":2042}," orgId",{"type":44,"tag":675,"props":2044,"children":2045},{"style":737},[2046],{"type":50,"value":2047},",",{"type":44,"tag":675,"props":2049,"children":2050},{"style":748},[2051],{"type":50,"value":2052}," orgSlug",{"type":44,"tag":675,"props":2054,"children":2055},{"style":737},[2056],{"type":50,"value":2047},{"type":44,"tag":675,"props":2058,"children":2059},{"style":748},[2060],{"type":50,"value":2061}," orgRole ",{"type":44,"tag":675,"props":2063,"children":2064},{"style":737},[2065],{"type":50,"value":2066},"}",{"type":44,"tag":675,"props":2068,"children":2069},{"style":737},[2070],{"type":50,"value":2071}," =",{"type":44,"tag":675,"props":2073,"children":2074},{"style":1981},[2075],{"type":50,"value":2076}," await",{"type":44,"tag":675,"props":2078,"children":2080},{"style":2079},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[2081],{"type":50,"value":1994},{"type":44,"tag":675,"props":2083,"children":2084},{"style":748},[2085],{"type":50,"value":2086},"()\n",{"type":44,"tag":675,"props":2088,"children":2089},{"class":677,"line":27},[2090,2095,2100,2105,2110],{"type":44,"tag":675,"props":2091,"children":2092},{"style":1981},[2093],{"type":50,"value":2094},"if",{"type":44,"tag":675,"props":2096,"children":2097},{"style":748},[2098],{"type":50,"value":2099}," (",{"type":44,"tag":675,"props":2101,"children":2102},{"style":737},[2103],{"type":50,"value":2104},"!",{"type":44,"tag":675,"props":2106,"children":2107},{"style":748},[2108],{"type":50,"value":2109},"orgId) ",{"type":44,"tag":675,"props":2111,"children":2112},{"style":737},[2113],{"type":50,"value":2114},"{\n",{"type":44,"tag":675,"props":2116,"children":2117},{"class":677,"line":897},[2118],{"type":44,"tag":675,"props":2119,"children":2120},{"style":831},[2121],{"type":50,"value":2122},"  \u002F\u002F user has no active org — either not in any, or viewing Personal Account\n",{"type":44,"tag":675,"props":2124,"children":2125},{"class":677,"line":906},[2126],{"type":44,"tag":675,"props":2127,"children":2128},{"style":737},[2129],{"type":50,"value":2130},"}\n",{"type":44,"tag":57,"props":2132,"children":2133},{},[2134,2139,2141,2147,2149,2155,2157,2163,2165,2171,2173,2179,2181,2187,2189,2194,2195,2200,2201,2207],{"type":44,"tag":80,"props":2135,"children":2137},{"className":2136},[],[2138],{"type":50,"value":275},{"type":50,"value":2140}," is Next.js-specific. Equivalent server-side accessors per SDK: ",{"type":44,"tag":80,"props":2142,"children":2144},{"className":2143},[],[2145],{"type":50,"value":2146},"auth(event)",{"type":50,"value":2148}," (Nuxt via ",{"type":44,"tag":80,"props":2150,"children":2152},{"className":2151},[],[2153],{"type":50,"value":2154},"event.context.auth()",{"type":50,"value":2156},"), ",{"type":44,"tag":80,"props":2158,"children":2160},{"className":2159},[],[2161],{"type":50,"value":2162},"context.locals.auth()",{"type":50,"value":2164}," (Astro), ",{"type":44,"tag":80,"props":2166,"children":2168},{"className":2167},[],[2169],{"type":50,"value":2170},"getAuth(req)",{"type":50,"value":2172}," (Express, after ",{"type":44,"tag":80,"props":2174,"children":2176},{"className":2175},[],[2177],{"type":50,"value":2178},"clerkMiddleware()",{"type":50,"value":2180},"). Client-side: ",{"type":44,"tag":80,"props":2182,"children":2184},{"className":2183},[],[2185],{"type":50,"value":2186},"useAuth()",{"type":50,"value":2188}," (React-based SDKs) or composables (Vue\u002FNuxt). All return the same ",{"type":44,"tag":80,"props":2190,"children":2192},{"className":2191},[],[2193],{"type":50,"value":259},{"type":50,"value":261},{"type":44,"tag":80,"props":2196,"children":2198},{"className":2197},[],[2199],{"type":50,"value":267},{"type":50,"value":261},{"type":44,"tag":80,"props":2202,"children":2204},{"className":2203},[],[2205],{"type":50,"value":2206},"orgRole",{"type":50,"value":2208}," shape.",{"type":44,"tag":657,"props":2210,"children":2212},{"id":2211},"_2-dynamic-routes-with-org-slug",[2213],{"type":50,"value":2214},"2. Dynamic Routes with Org Slug",{"type":44,"tag":57,"props":2216,"children":2217},{},[2218],{"type":50,"value":2219},"Route-per-org pattern works in any framework supporting file-based dynamic routes. Next.js example:",{"type":44,"tag":664,"props":2221,"children":2225},{"className":2222,"code":2224,"language":50},[2223],"language-text","app\u002Forgs\u002F[slug]\u002Fpage.tsx\napp\u002Forgs\u002F[slug]\u002Fsettings\u002Fpage.tsx\n",[2226],{"type":44,"tag":80,"props":2227,"children":2228},{"__ignoreMap":669},[2229],{"type":50,"value":2224},{"type":44,"tag":57,"props":2231,"children":2232},{},[2233,2235,2241,2243,2248],{"type":50,"value":2234},"Always verify the URL slug matches the active org slug — otherwise users can hit ",{"type":44,"tag":80,"props":2236,"children":2238},{"className":2237},[],[2239],{"type":50,"value":2240},"\u002Forgs\u002Fother-org\u002F...",{"type":50,"value":2242}," with a stale ",{"type":44,"tag":80,"props":2244,"children":2246},{"className":2245},[],[2247],{"type":50,"value":267},{"type":50,"value":2249}," in their session:",{"type":44,"tag":664,"props":2251,"children":2253},{"className":1969,"code":2252,"language":1971,"meta":669,"style":669},"export default async function OrgPage({ params }: { params: { slug: string } }) {\n  const { orgSlug } = await auth()\n  if (orgSlug !== params.slug) {\n    redirect('\u002Fdashboard')  \u002F\u002F or whatever your \"no-access\" flow is\n  }\n  return \u003Cdiv>Welcome to {orgSlug}\u003C\u002Fdiv>\n}\n",[2254],{"type":44,"tag":80,"props":2255,"children":2256},{"__ignoreMap":669},[2257,2347,2383,2426,2463,2471,2524],{"type":44,"tag":675,"props":2258,"children":2259},{"class":677,"line":678},[2260,2265,2270,2275,2280,2285,2290,2296,2301,2305,2310,2315,2319,2324,2328,2333,2337,2342],{"type":44,"tag":675,"props":2261,"children":2262},{"style":1981},[2263],{"type":50,"value":2264},"export",{"type":44,"tag":675,"props":2266,"children":2267},{"style":1981},[2268],{"type":50,"value":2269}," default",{"type":44,"tag":675,"props":2271,"children":2272},{"style":2030},[2273],{"type":50,"value":2274}," async",{"type":44,"tag":675,"props":2276,"children":2277},{"style":2030},[2278],{"type":50,"value":2279}," function",{"type":44,"tag":675,"props":2281,"children":2282},{"style":2079},[2283],{"type":50,"value":2284}," OrgPage",{"type":44,"tag":675,"props":2286,"children":2287},{"style":737},[2288],{"type":50,"value":2289},"({",{"type":44,"tag":675,"props":2291,"children":2293},{"style":2292},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[2294],{"type":50,"value":2295}," params",{"type":44,"tag":675,"props":2297,"children":2298},{"style":737},[2299],{"type":50,"value":2300}," }:",{"type":44,"tag":675,"props":2302,"children":2303},{"style":737},[2304],{"type":50,"value":1989},{"type":44,"tag":675,"props":2306,"children":2308},{"style":2307},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[2309],{"type":50,"value":2295},{"type":44,"tag":675,"props":2311,"children":2312},{"style":737},[2313],{"type":50,"value":2314},":",{"type":44,"tag":675,"props":2316,"children":2317},{"style":737},[2318],{"type":50,"value":1989},{"type":44,"tag":675,"props":2320,"children":2321},{"style":2307},[2322],{"type":50,"value":2323}," slug",{"type":44,"tag":675,"props":2325,"children":2326},{"style":737},[2327],{"type":50,"value":2314},{"type":44,"tag":675,"props":2329,"children":2330},{"style":682},[2331],{"type":50,"value":2332}," string",{"type":44,"tag":675,"props":2334,"children":2335},{"style":737},[2336],{"type":50,"value":1999},{"type":44,"tag":675,"props":2338,"children":2339},{"style":737},[2340],{"type":50,"value":2341}," })",{"type":44,"tag":675,"props":2343,"children":2344},{"style":737},[2345],{"type":50,"value":2346}," {\n",{"type":44,"tag":675,"props":2348,"children":2349},{"class":677,"line":791},[2350,2355,2359,2363,2367,2371,2375,2379],{"type":44,"tag":675,"props":2351,"children":2352},{"style":2030},[2353],{"type":50,"value":2354},"  const",{"type":44,"tag":675,"props":2356,"children":2357},{"style":737},[2358],{"type":50,"value":1989},{"type":44,"tag":675,"props":2360,"children":2361},{"style":748},[2362],{"type":50,"value":2052},{"type":44,"tag":675,"props":2364,"children":2365},{"style":737},[2366],{"type":50,"value":1999},{"type":44,"tag":675,"props":2368,"children":2369},{"style":737},[2370],{"type":50,"value":2071},{"type":44,"tag":675,"props":2372,"children":2373},{"style":1981},[2374],{"type":50,"value":2076},{"type":44,"tag":675,"props":2376,"children":2377},{"style":2079},[2378],{"type":50,"value":1994},{"type":44,"tag":675,"props":2380,"children":2381},{"style":2307},[2382],{"type":50,"value":2086},{"type":44,"tag":675,"props":2384,"children":2385},{"class":677,"line":867},[2386,2391,2395,2399,2404,2408,2412,2417,2422],{"type":44,"tag":675,"props":2387,"children":2388},{"style":1981},[2389],{"type":50,"value":2390},"  if",{"type":44,"tag":675,"props":2392,"children":2393},{"style":2307},[2394],{"type":50,"value":2099},{"type":44,"tag":675,"props":2396,"children":2397},{"style":748},[2398],{"type":50,"value":267},{"type":44,"tag":675,"props":2400,"children":2401},{"style":737},[2402],{"type":50,"value":2403}," !==",{"type":44,"tag":675,"props":2405,"children":2406},{"style":748},[2407],{"type":50,"value":2295},{"type":44,"tag":675,"props":2409,"children":2410},{"style":737},[2411],{"type":50,"value":243},{"type":44,"tag":675,"props":2413,"children":2414},{"style":748},[2415],{"type":50,"value":2416},"slug",{"type":44,"tag":675,"props":2418,"children":2419},{"style":2307},[2420],{"type":50,"value":2421},") ",{"type":44,"tag":675,"props":2423,"children":2424},{"style":737},[2425],{"type":50,"value":2114},{"type":44,"tag":675,"props":2427,"children":2428},{"class":677,"line":27},[2429,2434,2439,2444,2449,2453,2458],{"type":44,"tag":675,"props":2430,"children":2431},{"style":2079},[2432],{"type":50,"value":2433},"    redirect",{"type":44,"tag":675,"props":2435,"children":2436},{"style":2307},[2437],{"type":50,"value":2438},"(",{"type":44,"tag":675,"props":2440,"children":2441},{"style":737},[2442],{"type":50,"value":2443},"'",{"type":44,"tag":675,"props":2445,"children":2446},{"style":687},[2447],{"type":50,"value":2448},"\u002Fdashboard",{"type":44,"tag":675,"props":2450,"children":2451},{"style":737},[2452],{"type":50,"value":2443},{"type":44,"tag":675,"props":2454,"children":2455},{"style":2307},[2456],{"type":50,"value":2457},")  ",{"type":44,"tag":675,"props":2459,"children":2460},{"style":831},[2461],{"type":50,"value":2462},"\u002F\u002F or whatever your \"no-access\" flow is\n",{"type":44,"tag":675,"props":2464,"children":2465},{"class":677,"line":897},[2466],{"type":44,"tag":675,"props":2467,"children":2468},{"style":737},[2469],{"type":50,"value":2470},"  }\n",{"type":44,"tag":675,"props":2472,"children":2473},{"class":677,"line":906},[2474,2479,2484,2489,2493,2498,2503,2507,2511,2516,2520],{"type":44,"tag":675,"props":2475,"children":2476},{"style":1981},[2477],{"type":50,"value":2478},"  return",{"type":44,"tag":675,"props":2480,"children":2481},{"style":2307},[2482],{"type":50,"value":2483}," \u003C",{"type":44,"tag":675,"props":2485,"children":2486},{"style":682},[2487],{"type":50,"value":2488},"div",{"type":44,"tag":675,"props":2490,"children":2491},{"style":2307},[2492],{"type":50,"value":756},{"type":44,"tag":675,"props":2494,"children":2495},{"style":748},[2496],{"type":50,"value":2497},"Welcome",{"type":44,"tag":675,"props":2499,"children":2500},{"style":748},[2501],{"type":50,"value":2502}," to",{"type":44,"tag":675,"props":2504,"children":2505},{"style":737},[2506],{"type":50,"value":1989},{"type":44,"tag":675,"props":2508,"children":2509},{"style":748},[2510],{"type":50,"value":267},{"type":44,"tag":675,"props":2512,"children":2513},{"style":737},[2514],{"type":50,"value":2515},"}\u003C\u002F",{"type":44,"tag":675,"props":2517,"children":2518},{"style":748},[2519],{"type":50,"value":2488},{"type":44,"tag":675,"props":2521,"children":2522},{"style":737},[2523],{"type":50,"value":989},{"type":44,"tag":675,"props":2525,"children":2526},{"class":677,"line":940},[2527],{"type":44,"tag":675,"props":2528,"children":2529},{"style":737},[2530],{"type":50,"value":2130},{"type":44,"tag":657,"props":2532,"children":2534},{"id":2533},"_3-role-based-access-control",[2535],{"type":50,"value":2536},"3. Role-Based Access Control",{"type":44,"tag":664,"props":2538,"children":2540},{"className":1969,"code":2539,"language":1971,"meta":669,"style":669},"const { has } = await auth()\n\nif (!has({ role: 'org:admin' })) {\n  return \u003Cdiv>Admin access required\u003C\u002Fdiv>\n}\n",[2541],{"type":44,"tag":80,"props":2542,"children":2543},{"__ignoreMap":669},[2544,2580,2587,2651,2698],{"type":44,"tag":675,"props":2545,"children":2546},{"class":677,"line":678},[2547,2551,2555,2560,2564,2568,2572,2576],{"type":44,"tag":675,"props":2548,"children":2549},{"style":2030},[2550],{"type":50,"value":2033},{"type":44,"tag":675,"props":2552,"children":2553},{"style":737},[2554],{"type":50,"value":1989},{"type":44,"tag":675,"props":2556,"children":2557},{"style":748},[2558],{"type":50,"value":2559}," has ",{"type":44,"tag":675,"props":2561,"children":2562},{"style":737},[2563],{"type":50,"value":2066},{"type":44,"tag":675,"props":2565,"children":2566},{"style":737},[2567],{"type":50,"value":2071},{"type":44,"tag":675,"props":2569,"children":2570},{"style":1981},[2571],{"type":50,"value":2076},{"type":44,"tag":675,"props":2573,"children":2574},{"style":2079},[2575],{"type":50,"value":1994},{"type":44,"tag":675,"props":2577,"children":2578},{"style":748},[2579],{"type":50,"value":2086},{"type":44,"tag":675,"props":2581,"children":2582},{"class":677,"line":791},[2583],{"type":44,"tag":675,"props":2584,"children":2585},{"emptyLinePlaceholder":891},[2586],{"type":50,"value":894},{"type":44,"tag":675,"props":2588,"children":2589},{"class":677,"line":867},[2590,2594,2598,2602,2607,2611,2616,2621,2625,2629,2634,2638,2642,2647],{"type":44,"tag":675,"props":2591,"children":2592},{"style":1981},[2593],{"type":50,"value":2094},{"type":44,"tag":675,"props":2595,"children":2596},{"style":748},[2597],{"type":50,"value":2099},{"type":44,"tag":675,"props":2599,"children":2600},{"style":737},[2601],{"type":50,"value":2104},{"type":44,"tag":675,"props":2603,"children":2604},{"style":2079},[2605],{"type":50,"value":2606},"has",{"type":44,"tag":675,"props":2608,"children":2609},{"style":748},[2610],{"type":50,"value":2438},{"type":44,"tag":675,"props":2612,"children":2613},{"style":737},[2614],{"type":50,"value":2615},"{",{"type":44,"tag":675,"props":2617,"children":2618},{"style":2307},[2619],{"type":50,"value":2620}," role",{"type":44,"tag":675,"props":2622,"children":2623},{"style":737},[2624],{"type":50,"value":2314},{"type":44,"tag":675,"props":2626,"children":2627},{"style":737},[2628],{"type":50,"value":802},{"type":44,"tag":675,"props":2630,"children":2631},{"style":687},[2632],{"type":50,"value":2633},"org:admin",{"type":44,"tag":675,"props":2635,"children":2636},{"style":737},[2637],{"type":50,"value":2443},{"type":44,"tag":675,"props":2639,"children":2640},{"style":737},[2641],{"type":50,"value":1999},{"type":44,"tag":675,"props":2643,"children":2644},{"style":748},[2645],{"type":50,"value":2646},")) ",{"type":44,"tag":675,"props":2648,"children":2649},{"style":737},[2650],{"type":50,"value":2114},{"type":44,"tag":675,"props":2652,"children":2653},{"class":677,"line":27},[2654,2658,2662,2666,2670,2675,2680,2685,2690,2694],{"type":44,"tag":675,"props":2655,"children":2656},{"style":1981},[2657],{"type":50,"value":2478},{"type":44,"tag":675,"props":2659,"children":2660},{"style":2307},[2661],{"type":50,"value":2483},{"type":44,"tag":675,"props":2663,"children":2664},{"style":682},[2665],{"type":50,"value":2488},{"type":44,"tag":675,"props":2667,"children":2668},{"style":2307},[2669],{"type":50,"value":756},{"type":44,"tag":675,"props":2671,"children":2672},{"style":748},[2673],{"type":50,"value":2674},"Admin",{"type":44,"tag":675,"props":2676,"children":2677},{"style":748},[2678],{"type":50,"value":2679}," access",{"type":44,"tag":675,"props":2681,"children":2682},{"style":748},[2683],{"type":50,"value":2684}," required",{"type":44,"tag":675,"props":2686,"children":2687},{"style":737},[2688],{"type":50,"value":2689},"\u003C\u002F",{"type":44,"tag":675,"props":2691,"children":2692},{"style":748},[2693],{"type":50,"value":2488},{"type":44,"tag":675,"props":2695,"children":2696},{"style":737},[2697],{"type":50,"value":989},{"type":44,"tag":675,"props":2699,"children":2700},{"class":677,"line":897},[2701],{"type":44,"tag":675,"props":2702,"children":2703},{"style":737},[2704],{"type":50,"value":2130},{"type":44,"tag":57,"props":2706,"children":2707},{},[2708,2710,2715],{"type":50,"value":2709},"Permission checks use the same ",{"type":44,"tag":80,"props":2711,"children":2713},{"className":2712},[],[2714],{"type":50,"value":1928},{"type":50,"value":2716}," surface:",{"type":44,"tag":664,"props":2718,"children":2720},{"className":1969,"code":2719,"language":1971,"meta":669,"style":669},"if (!has({ permission: 'org:sys_memberships:manage' })) {\n  redirect('\u002Funauthorized')\n}\n",[2721],{"type":44,"tag":80,"props":2722,"children":2723},{"__ignoreMap":669},[2724,2785,2815],{"type":44,"tag":675,"props":2725,"children":2726},{"class":677,"line":678},[2727,2731,2735,2739,2743,2747,2751,2756,2760,2764,2769,2773,2777,2781],{"type":44,"tag":675,"props":2728,"children":2729},{"style":1981},[2730],{"type":50,"value":2094},{"type":44,"tag":675,"props":2732,"children":2733},{"style":748},[2734],{"type":50,"value":2099},{"type":44,"tag":675,"props":2736,"children":2737},{"style":737},[2738],{"type":50,"value":2104},{"type":44,"tag":675,"props":2740,"children":2741},{"style":2079},[2742],{"type":50,"value":2606},{"type":44,"tag":675,"props":2744,"children":2745},{"style":748},[2746],{"type":50,"value":2438},{"type":44,"tag":675,"props":2748,"children":2749},{"style":737},[2750],{"type":50,"value":2615},{"type":44,"tag":675,"props":2752,"children":2753},{"style":2307},[2754],{"type":50,"value":2755}," permission",{"type":44,"tag":675,"props":2757,"children":2758},{"style":737},[2759],{"type":50,"value":2314},{"type":44,"tag":675,"props":2761,"children":2762},{"style":737},[2763],{"type":50,"value":802},{"type":44,"tag":675,"props":2765,"children":2766},{"style":687},[2767],{"type":50,"value":2768},"org:sys_memberships:manage",{"type":44,"tag":675,"props":2770,"children":2771},{"style":737},[2772],{"type":50,"value":2443},{"type":44,"tag":675,"props":2774,"children":2775},{"style":737},[2776],{"type":50,"value":1999},{"type":44,"tag":675,"props":2778,"children":2779},{"style":748},[2780],{"type":50,"value":2646},{"type":44,"tag":675,"props":2782,"children":2783},{"style":737},[2784],{"type":50,"value":2114},{"type":44,"tag":675,"props":2786,"children":2787},{"class":677,"line":791},[2788,2793,2797,2801,2806,2810],{"type":44,"tag":675,"props":2789,"children":2790},{"style":2079},[2791],{"type":50,"value":2792},"  redirect",{"type":44,"tag":675,"props":2794,"children":2795},{"style":2307},[2796],{"type":50,"value":2438},{"type":44,"tag":675,"props":2798,"children":2799},{"style":737},[2800],{"type":50,"value":2443},{"type":44,"tag":675,"props":2802,"children":2803},{"style":687},[2804],{"type":50,"value":2805},"\u002Funauthorized",{"type":44,"tag":675,"props":2807,"children":2808},{"style":737},[2809],{"type":50,"value":2443},{"type":44,"tag":675,"props":2811,"children":2812},{"style":2307},[2813],{"type":50,"value":2814},")\n",{"type":44,"tag":675,"props":2816,"children":2817},{"class":677,"line":867},[2818],{"type":44,"tag":675,"props":2819,"children":2820},{"style":737},[2821],{"type":50,"value":2130},{"type":44,"tag":57,"props":2823,"children":2824},{},[2825,2830,2832,2838,2840,2846,2848,2853],{"type":44,"tag":61,"props":2826,"children":2827},{},[2828],{"type":50,"value":2829},"Permission naming convention.",{"type":50,"value":2831}," System Permissions prefix with ",{"type":44,"tag":80,"props":2833,"children":2835},{"className":2834},[],[2836],{"type":50,"value":2837},"org:sys_",{"type":50,"value":2839},"; custom Permissions use ",{"type":44,"tag":80,"props":2841,"children":2843},{"className":2842},[],[2844],{"type":50,"value":2845},"org:\u003Cresource>:\u003Caction>",{"type":50,"value":2847},". The full System Permissions catalog lives in ",{"type":44,"tag":80,"props":2849,"children":2851},{"className":2850},[],[2852],{"type":50,"value":382},{"type":50,"value":2854}," — the short list is:",{"type":44,"tag":1721,"props":2856,"children":2857},{},[2858,2867,2876,2885],{"type":44,"tag":173,"props":2859,"children":2860},{},[2861],{"type":44,"tag":80,"props":2862,"children":2864},{"className":2863},[],[2865],{"type":50,"value":2866},"org:sys_memberships:{read, manage}",{"type":44,"tag":173,"props":2868,"children":2869},{},[2870],{"type":44,"tag":80,"props":2871,"children":2873},{"className":2872},[],[2874],{"type":50,"value":2875},"org:sys_profile:{manage, delete}",{"type":44,"tag":173,"props":2877,"children":2878},{},[2879],{"type":44,"tag":80,"props":2880,"children":2882},{"className":2881},[],[2883],{"type":50,"value":2884},"org:sys_domains:{read, manage}",{"type":44,"tag":173,"props":2886,"children":2887},{},[2888],{"type":44,"tag":80,"props":2889,"children":2891},{"className":2890},[],[2892],{"type":50,"value":2893},"org:sys_billing:{read, manage}",{"type":44,"tag":57,"props":2895,"children":2896},{},[2897,2899,2905,2906,2912,2913,2919,2921,2926],{"type":50,"value":2898},"Do NOT invent names like ",{"type":44,"tag":80,"props":2900,"children":2902},{"className":2901},[],[2903],{"type":50,"value":2904},"org:create",{"type":50,"value":227},{"type":44,"tag":80,"props":2907,"children":2909},{"className":2908},[],[2910],{"type":50,"value":2911},"org:manage_members",{"type":50,"value":227},{"type":44,"tag":80,"props":2914,"children":2916},{"className":2915},[],[2917],{"type":50,"value":2918},"org:update_metadata",{"type":50,"value":2920}," — those are not real permission slugs. See ",{"type":44,"tag":80,"props":2922,"children":2924},{"className":2923},[],[2925],{"type":50,"value":382},{"type":50,"value":2927}," for custom roles and the permission table.",{"type":44,"tag":657,"props":2929,"children":2931},{"id":2930},"_4-conditional-rendering-with-show",[2932,2934],{"type":50,"value":2933},"4. Conditional Rendering with ",{"type":44,"tag":80,"props":2935,"children":2937},{"className":2936},[],[2938],{"type":50,"value":1947},{"type":44,"tag":664,"props":2940,"children":2944},{"className":2941,"code":2942,"language":2943,"meta":669,"style":669},"language-tsx shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { Show } from '@clerk\u002Fnextjs'\n\n\u003CShow when={{ role: 'org:admin' }}>\n  \u003CAdminPanel \u002F>\n\u003C\u002FShow>\n\n\u003CShow when={{ permission: 'org:sys_memberships:manage' }}>\n  \u003CMembersTab \u002F>\n\u003C\u002FShow>\n","tsx",[2945],{"type":44,"tag":80,"props":2946,"children":2947},{"__ignoreMap":669},[2948,2984,2991,3038,3056,3071,3078,3121,3137],{"type":44,"tag":675,"props":2949,"children":2950},{"class":677,"line":678},[2951,2955,2959,2964,2968,2972,2976,2980],{"type":44,"tag":675,"props":2952,"children":2953},{"style":1981},[2954],{"type":50,"value":1984},{"type":44,"tag":675,"props":2956,"children":2957},{"style":737},[2958],{"type":50,"value":1989},{"type":44,"tag":675,"props":2960,"children":2961},{"style":748},[2962],{"type":50,"value":2963}," Show",{"type":44,"tag":675,"props":2965,"children":2966},{"style":737},[2967],{"type":50,"value":1999},{"type":44,"tag":675,"props":2969,"children":2970},{"style":1981},[2971],{"type":50,"value":2004},{"type":44,"tag":675,"props":2973,"children":2974},{"style":737},[2975],{"type":50,"value":802},{"type":44,"tag":675,"props":2977,"children":2978},{"style":687},[2979],{"type":50,"value":135},{"type":44,"tag":675,"props":2981,"children":2982},{"style":737},[2983],{"type":50,"value":812},{"type":44,"tag":675,"props":2985,"children":2986},{"class":677,"line":791},[2987],{"type":44,"tag":675,"props":2988,"children":2989},{"emptyLinePlaceholder":891},[2990],{"type":50,"value":894},{"type":44,"tag":675,"props":2992,"children":2993},{"class":677,"line":867},[2994,2998,3003,3008,3013,3017,3021,3025,3029,3033],{"type":44,"tag":675,"props":2995,"children":2996},{"style":737},[2997],{"type":50,"value":740},{"type":44,"tag":675,"props":2999,"children":3000},{"style":682},[3001],{"type":50,"value":3002},"Show",{"type":44,"tag":675,"props":3004,"children":3005},{"style":2030},[3006],{"type":50,"value":3007}," when",{"type":44,"tag":675,"props":3009,"children":3010},{"style":737},[3011],{"type":50,"value":3012},"={{",{"type":44,"tag":675,"props":3014,"children":3015},{"style":2307},[3016],{"type":50,"value":2620},{"type":44,"tag":675,"props":3018,"children":3019},{"style":737},[3020],{"type":50,"value":2314},{"type":44,"tag":675,"props":3022,"children":3023},{"style":737},[3024],{"type":50,"value":802},{"type":44,"tag":675,"props":3026,"children":3027},{"style":687},[3028],{"type":50,"value":2633},{"type":44,"tag":675,"props":3030,"children":3031},{"style":737},[3032],{"type":50,"value":2443},{"type":44,"tag":675,"props":3034,"children":3035},{"style":737},[3036],{"type":50,"value":3037}," }}>\n",{"type":44,"tag":675,"props":3039,"children":3040},{"class":677,"line":27},[3041,3046,3051],{"type":44,"tag":675,"props":3042,"children":3043},{"style":737},[3044],{"type":50,"value":3045},"  \u003C",{"type":44,"tag":675,"props":3047,"children":3048},{"style":682},[3049],{"type":50,"value":3050},"AdminPanel",{"type":44,"tag":675,"props":3052,"children":3053},{"style":737},[3054],{"type":50,"value":3055}," \u002F>\n",{"type":44,"tag":675,"props":3057,"children":3058},{"class":677,"line":897},[3059,3063,3067],{"type":44,"tag":675,"props":3060,"children":3061},{"style":737},[3062],{"type":50,"value":2689},{"type":44,"tag":675,"props":3064,"children":3065},{"style":682},[3066],{"type":50,"value":3002},{"type":44,"tag":675,"props":3068,"children":3069},{"style":737},[3070],{"type":50,"value":989},{"type":44,"tag":675,"props":3072,"children":3073},{"class":677,"line":906},[3074],{"type":44,"tag":675,"props":3075,"children":3076},{"emptyLinePlaceholder":891},[3077],{"type":50,"value":894},{"type":44,"tag":675,"props":3079,"children":3080},{"class":677,"line":940},[3081,3085,3089,3093,3097,3101,3105,3109,3113,3117],{"type":44,"tag":675,"props":3082,"children":3083},{"style":737},[3084],{"type":50,"value":740},{"type":44,"tag":675,"props":3086,"children":3087},{"style":682},[3088],{"type":50,"value":3002},{"type":44,"tag":675,"props":3090,"children":3091},{"style":2030},[3092],{"type":50,"value":3007},{"type":44,"tag":675,"props":3094,"children":3095},{"style":737},[3096],{"type":50,"value":3012},{"type":44,"tag":675,"props":3098,"children":3099},{"style":2307},[3100],{"type":50,"value":2755},{"type":44,"tag":675,"props":3102,"children":3103},{"style":737},[3104],{"type":50,"value":2314},{"type":44,"tag":675,"props":3106,"children":3107},{"style":737},[3108],{"type":50,"value":802},{"type":44,"tag":675,"props":3110,"children":3111},{"style":687},[3112],{"type":50,"value":2768},{"type":44,"tag":675,"props":3114,"children":3115},{"style":737},[3116],{"type":50,"value":2443},{"type":44,"tag":675,"props":3118,"children":3119},{"style":737},[3120],{"type":50,"value":3037},{"type":44,"tag":675,"props":3122,"children":3123},{"class":677,"line":948},[3124,3128,3133],{"type":44,"tag":675,"props":3125,"children":3126},{"style":737},[3127],{"type":50,"value":3045},{"type":44,"tag":675,"props":3129,"children":3130},{"style":682},[3131],{"type":50,"value":3132},"MembersTab",{"type":44,"tag":675,"props":3134,"children":3135},{"style":737},[3136],{"type":50,"value":3055},{"type":44,"tag":675,"props":3138,"children":3139},{"class":677,"line":957},[3140,3144,3148],{"type":44,"tag":675,"props":3141,"children":3142},{"style":737},[3143],{"type":50,"value":2689},{"type":44,"tag":675,"props":3145,"children":3146},{"style":682},[3147],{"type":50,"value":3002},{"type":44,"tag":675,"props":3149,"children":3150},{"style":737},[3151],{"type":50,"value":989},{"type":44,"tag":53,"props":3153,"children":3154},{},[3155],{"type":44,"tag":57,"props":3156,"children":3157},{},[3158,3163,3165,3171,3172,3178,3180,3185,3187,3192,3194,3200,3202,3208,3210,3216],{"type":44,"tag":61,"props":3159,"children":3160},{},[3161],{"type":50,"value":3162},"Core 2 ONLY (skip if current SDK):",{"type":50,"value":3164}," Use ",{"type":44,"tag":80,"props":3166,"children":3168},{"className":3167},[],[3169],{"type":50,"value":3170},"\u003CProtect role=\"org:admin\">",{"type":50,"value":261},{"type":44,"tag":80,"props":3173,"children":3175},{"className":3174},[],[3176],{"type":50,"value":3177},"\u003CProtect permission=\"...\">",{"type":50,"value":3179}," instead of ",{"type":44,"tag":80,"props":3181,"children":3183},{"className":3182},[],[3184],{"type":50,"value":1947},{"type":50,"value":3186},". ",{"type":44,"tag":80,"props":3188,"children":3190},{"className":3189},[],[3191],{"type":50,"value":1947},{"type":50,"value":3193}," replaced both ",{"type":44,"tag":80,"props":3195,"children":3197},{"className":3196},[],[3198],{"type":50,"value":3199},"\u003CProtect>",{"type":50,"value":3201}," and ",{"type":44,"tag":80,"props":3203,"children":3205},{"className":3204},[],[3206],{"type":50,"value":3207},"\u003CSignedIn>",{"type":50,"value":3209},"\u002F",{"type":44,"tag":80,"props":3211,"children":3213},{"className":3212},[],[3214],{"type":50,"value":3215},"\u003CSignedOut>",{"type":50,"value":3217}," in Core 3.",{"type":44,"tag":57,"props":3219,"children":3220},{},[3221,3223,3228],{"type":50,"value":3222},"Astro template syntax for the same component (imported from ",{"type":44,"tag":80,"props":3224,"children":3226},{"className":3225},[],[3227],{"type":50,"value":1891},{"type":50,"value":3229},"):",{"type":44,"tag":664,"props":3231,"children":3235},{"className":3232,"code":3233,"language":3234,"meta":669,"style":669},"language-astro shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003CShow when={{ role: 'org:admin' }}>\n  \u003CAdminPanel \u002F>\n\u003C\u002FShow>\n","astro",[3236],{"type":44,"tag":80,"props":3237,"children":3238},{"__ignoreMap":669},[3239,3247,3255],{"type":44,"tag":675,"props":3240,"children":3241},{"class":677,"line":678},[3242],{"type":44,"tag":675,"props":3243,"children":3244},{},[3245],{"type":50,"value":3246},"\u003CShow when={{ role: 'org:admin' }}>\n",{"type":44,"tag":675,"props":3248,"children":3249},{"class":677,"line":791},[3250],{"type":44,"tag":675,"props":3251,"children":3252},{},[3253],{"type":50,"value":3254},"  \u003CAdminPanel \u002F>\n",{"type":44,"tag":675,"props":3256,"children":3257},{"class":677,"line":867},[3258],{"type":44,"tag":675,"props":3259,"children":3260},{},[3261],{"type":50,"value":3262},"\u003C\u002FShow>\n",{"type":44,"tag":657,"props":3264,"children":3266},{"id":3265},"_5-organizationswitcher",[3267],{"type":50,"value":3268},"5. OrganizationSwitcher",{"type":44,"tag":664,"props":3270,"children":3272},{"className":2941,"code":3271,"language":2943,"meta":669,"style":669},"import { OrganizationSwitcher } from '@clerk\u002Fnextjs'\n\n\u003COrganizationSwitcher\n  hidePersonal\n  afterCreateOrganizationUrl=\"\u002Forgs\u002F:slug\u002Fdashboard\"\n  afterSelectOrganizationUrl=\"\u002Forgs\u002F:slug\u002Fdashboard\"\n\u002F>\n",[3273],{"type":44,"tag":80,"props":3274,"children":3275},{"__ignoreMap":669},[3276,3312,3319,3331,3339,3367,3391],{"type":44,"tag":675,"props":3277,"children":3278},{"class":677,"line":678},[3279,3283,3287,3292,3296,3300,3304,3308],{"type":44,"tag":675,"props":3280,"children":3281},{"style":1981},[3282],{"type":50,"value":1984},{"type":44,"tag":675,"props":3284,"children":3285},{"style":737},[3286],{"type":50,"value":1989},{"type":44,"tag":675,"props":3288,"children":3289},{"style":748},[3290],{"type":50,"value":3291}," OrganizationSwitcher",{"type":44,"tag":675,"props":3293,"children":3294},{"style":737},[3295],{"type":50,"value":1999},{"type":44,"tag":675,"props":3297,"children":3298},{"style":1981},[3299],{"type":50,"value":2004},{"type":44,"tag":675,"props":3301,"children":3302},{"style":737},[3303],{"type":50,"value":802},{"type":44,"tag":675,"props":3305,"children":3306},{"style":687},[3307],{"type":50,"value":135},{"type":44,"tag":675,"props":3309,"children":3310},{"style":737},[3311],{"type":50,"value":812},{"type":44,"tag":675,"props":3313,"children":3314},{"class":677,"line":791},[3315],{"type":44,"tag":675,"props":3316,"children":3317},{"emptyLinePlaceholder":891},[3318],{"type":50,"value":894},{"type":44,"tag":675,"props":3320,"children":3321},{"class":677,"line":867},[3322,3326],{"type":44,"tag":675,"props":3323,"children":3324},{"style":737},[3325],{"type":50,"value":740},{"type":44,"tag":675,"props":3327,"children":3328},{"style":682},[3329],{"type":50,"value":3330},"OrganizationSwitcher\n",{"type":44,"tag":675,"props":3332,"children":3333},{"class":677,"line":27},[3334],{"type":44,"tag":675,"props":3335,"children":3336},{"style":2030},[3337],{"type":50,"value":3338},"  hidePersonal\n",{"type":44,"tag":675,"props":3340,"children":3341},{"class":677,"line":897},[3342,3347,3352,3357,3362],{"type":44,"tag":675,"props":3343,"children":3344},{"style":2030},[3345],{"type":50,"value":3346},"  afterCreateOrganizationUrl",{"type":44,"tag":675,"props":3348,"children":3349},{"style":737},[3350],{"type":50,"value":3351},"=",{"type":44,"tag":675,"props":3353,"children":3354},{"style":737},[3355],{"type":50,"value":3356},"\"",{"type":44,"tag":675,"props":3358,"children":3359},{"style":687},[3360],{"type":50,"value":3361},"\u002Forgs\u002F:slug\u002Fdashboard",{"type":44,"tag":675,"props":3363,"children":3364},{"style":737},[3365],{"type":50,"value":3366},"\"\n",{"type":44,"tag":675,"props":3368,"children":3369},{"class":677,"line":906},[3370,3375,3379,3383,3387],{"type":44,"tag":675,"props":3371,"children":3372},{"style":2030},[3373],{"type":50,"value":3374},"  afterSelectOrganizationUrl",{"type":44,"tag":675,"props":3376,"children":3377},{"style":737},[3378],{"type":50,"value":3351},{"type":44,"tag":675,"props":3380,"children":3381},{"style":737},[3382],{"type":50,"value":3356},{"type":44,"tag":675,"props":3384,"children":3385},{"style":687},[3386],{"type":50,"value":3361},{"type":44,"tag":675,"props":3388,"children":3389},{"style":737},[3390],{"type":50,"value":3366},{"type":44,"tag":675,"props":3392,"children":3393},{"class":677,"line":940},[3394],{"type":44,"tag":675,"props":3395,"children":3396},{"style":737},[3397],{"type":50,"value":3398},"\u002F>\n",{"type":44,"tag":57,"props":3400,"children":3401},{},[3402],{"type":50,"value":3403},"Key props:",{"type":44,"tag":1721,"props":3405,"children":3406},{},[3407,3434,3474],{"type":44,"tag":173,"props":3408,"children":3409},{},[3410,3416,3418,3424,3426,3432],{"type":44,"tag":80,"props":3411,"children":3413},{"className":3412},[],[3414],{"type":50,"value":3415},"hidePersonal: boolean",{"type":50,"value":3417}," — hide the Personal Account option. Defaults to ",{"type":44,"tag":80,"props":3419,"children":3421},{"className":3420},[],[3422],{"type":50,"value":3423},"false",{"type":50,"value":3425},". Pass ",{"type":44,"tag":80,"props":3427,"children":3429},{"className":3428},[],[3430],{"type":50,"value":3431},"true",{"type":50,"value":3433}," for B2B-only apps.",{"type":44,"tag":173,"props":3435,"children":3436},{},[3437,3443,3444,3450,3451,3457,3458,3464,3466,3472],{"type":44,"tag":80,"props":3438,"children":3440},{"className":3439},[],[3441],{"type":50,"value":3442},"afterCreateOrganizationUrl",{"type":50,"value":227},{"type":44,"tag":80,"props":3445,"children":3447},{"className":3446},[],[3448],{"type":50,"value":3449},"afterSelectOrganizationUrl",{"type":50,"value":227},{"type":44,"tag":80,"props":3452,"children":3454},{"className":3453},[],[3455],{"type":50,"value":3456},"afterLeaveOrganizationUrl",{"type":50,"value":227},{"type":44,"tag":80,"props":3459,"children":3461},{"className":3460},[],[3462],{"type":50,"value":3463},"afterSelectPersonalUrl",{"type":50,"value":3465}," — navigation hooks. ",{"type":44,"tag":80,"props":3467,"children":3469},{"className":3468},[],[3470],{"type":50,"value":3471},":slug",{"type":50,"value":3473}," is substituted at runtime.",{"type":44,"tag":173,"props":3475,"children":3476},{},[3477,3483,3484,3490,3492,3498,3500,3506],{"type":44,"tag":80,"props":3478,"children":3480},{"className":3479},[],[3481],{"type":50,"value":3482},"createOrganizationMode",{"type":50,"value":227},{"type":44,"tag":80,"props":3485,"children":3487},{"className":3486},[],[3488],{"type":50,"value":3489},"organizationProfileMode",{"type":50,"value":3491}," — ",{"type":44,"tag":80,"props":3493,"children":3495},{"className":3494},[],[3496],{"type":50,"value":3497},"'modal' | 'navigation'",{"type":50,"value":3499}," (default ",{"type":44,"tag":80,"props":3501,"children":3503},{"className":3502},[],[3504],{"type":50,"value":3505},"'modal'",{"type":50,"value":655},{"type":44,"tag":57,"props":3508,"children":3509},{},[3510,3512,3518],{"type":50,"value":3511},"The full prop list lives in the ",{"type":44,"tag":69,"props":3513,"children":3515},{"href":1836,"rel":3514},[73],[3516],{"type":50,"value":3517},"component reference",{"type":50,"value":243},{"type":44,"tag":657,"props":3520,"children":3522},{"id":3521},"_6-session-task-choose-organization",[3523],{"type":50,"value":3524},"6. Session Task — Choose Organization",{"type":44,"tag":57,"props":3526,"children":3527},{},[3528,3530,3535,3537,3542,3544,3550],{"type":50,"value":3529},"When ",{"type":44,"tag":80,"props":3531,"children":3533},{"className":3532},[],[3534],{"type":50,"value":93},{"type":50,"value":3536}," is enabled (the default), users without an org are routed through a ",{"type":44,"tag":80,"props":3538,"children":3540},{"className":3539},[],[3541],{"type":50,"value":101},{"type":50,"value":3543}," session task after sign-in. Clerk handles this automatically inside ",{"type":44,"tag":80,"props":3545,"children":3547},{"className":3546},[],[3548],{"type":50,"value":3549},"\u003CSignIn \u002F>",{"type":50,"value":3551},", but you can host the UI yourself:",{"type":44,"tag":664,"props":3553,"children":3555},{"className":2941,"code":3554,"language":2943,"meta":669,"style":669},"import { ClerkProvider } from '@clerk\u002Fnextjs'\n\n\u003CClerkProvider taskUrls={{ 'choose-organization': '\u002Fsession-tasks\u002Fchoose-organization' }}>\n  {children}\n\u003C\u002FClerkProvider>\n",[3556],{"type":44,"tag":80,"props":3557,"children":3558},{"__ignoreMap":669},[3559,3595,3602,3656,3673],{"type":44,"tag":675,"props":3560,"children":3561},{"class":677,"line":678},[3562,3566,3570,3575,3579,3583,3587,3591],{"type":44,"tag":675,"props":3563,"children":3564},{"style":1981},[3565],{"type":50,"value":1984},{"type":44,"tag":675,"props":3567,"children":3568},{"style":737},[3569],{"type":50,"value":1989},{"type":44,"tag":675,"props":3571,"children":3572},{"style":748},[3573],{"type":50,"value":3574}," ClerkProvider",{"type":44,"tag":675,"props":3576,"children":3577},{"style":737},[3578],{"type":50,"value":1999},{"type":44,"tag":675,"props":3580,"children":3581},{"style":1981},[3582],{"type":50,"value":2004},{"type":44,"tag":675,"props":3584,"children":3585},{"style":737},[3586],{"type":50,"value":802},{"type":44,"tag":675,"props":3588,"children":3589},{"style":687},[3590],{"type":50,"value":135},{"type":44,"tag":675,"props":3592,"children":3593},{"style":737},[3594],{"type":50,"value":812},{"type":44,"tag":675,"props":3596,"children":3597},{"class":677,"line":791},[3598],{"type":44,"tag":675,"props":3599,"children":3600},{"emptyLinePlaceholder":891},[3601],{"type":50,"value":894},{"type":44,"tag":675,"props":3603,"children":3604},{"class":677,"line":867},[3605,3609,3614,3619,3623,3627,3631,3635,3639,3643,3648,3652],{"type":44,"tag":675,"props":3606,"children":3607},{"style":737},[3608],{"type":50,"value":740},{"type":44,"tag":675,"props":3610,"children":3611},{"style":682},[3612],{"type":50,"value":3613},"ClerkProvider",{"type":44,"tag":675,"props":3615,"children":3616},{"style":2030},[3617],{"type":50,"value":3618}," taskUrls",{"type":44,"tag":675,"props":3620,"children":3621},{"style":737},[3622],{"type":50,"value":3012},{"type":44,"tag":675,"props":3624,"children":3625},{"style":737},[3626],{"type":50,"value":802},{"type":44,"tag":675,"props":3628,"children":3629},{"style":2307},[3630],{"type":50,"value":101},{"type":44,"tag":675,"props":3632,"children":3633},{"style":737},[3634],{"type":50,"value":2443},{"type":44,"tag":675,"props":3636,"children":3637},{"style":737},[3638],{"type":50,"value":2314},{"type":44,"tag":675,"props":3640,"children":3641},{"style":737},[3642],{"type":50,"value":802},{"type":44,"tag":675,"props":3644,"children":3645},{"style":687},[3646],{"type":50,"value":3647},"\u002Fsession-tasks\u002Fchoose-organization",{"type":44,"tag":675,"props":3649,"children":3650},{"style":737},[3651],{"type":50,"value":2443},{"type":44,"tag":675,"props":3653,"children":3654},{"style":737},[3655],{"type":50,"value":3037},{"type":44,"tag":675,"props":3657,"children":3658},{"class":677,"line":27},[3659,3664,3669],{"type":44,"tag":675,"props":3660,"children":3661},{"style":737},[3662],{"type":50,"value":3663},"  {",{"type":44,"tag":675,"props":3665,"children":3666},{"style":748},[3667],{"type":50,"value":3668},"children",{"type":44,"tag":675,"props":3670,"children":3671},{"style":737},[3672],{"type":50,"value":2130},{"type":44,"tag":675,"props":3674,"children":3675},{"class":677,"line":897},[3676,3680,3684],{"type":44,"tag":675,"props":3677,"children":3678},{"style":737},[3679],{"type":50,"value":2689},{"type":44,"tag":675,"props":3681,"children":3682},{"style":682},[3683],{"type":50,"value":3613},{"type":44,"tag":675,"props":3685,"children":3686},{"style":737},[3687],{"type":50,"value":989},{"type":44,"tag":664,"props":3689,"children":3691},{"className":2941,"code":3690,"language":2943,"meta":669,"style":669},"\u002F\u002F app\u002Fsession-tasks\u002Fchoose-organization\u002Fpage.tsx\nimport { TaskChooseOrganization } from '@clerk\u002Fnextjs'\n\nexport default function Page() {\n  return \u003CTaskChooseOrganization redirectUrlComplete=\"\u002Fdashboard\" \u002F>\n}\n",[3692],{"type":44,"tag":80,"props":3693,"children":3694},{"__ignoreMap":669},[3695,3703,3739,3746,3775,3816],{"type":44,"tag":675,"props":3696,"children":3697},{"class":677,"line":678},[3698],{"type":44,"tag":675,"props":3699,"children":3700},{"style":831},[3701],{"type":50,"value":3702},"\u002F\u002F app\u002Fsession-tasks\u002Fchoose-organization\u002Fpage.tsx\n",{"type":44,"tag":675,"props":3704,"children":3705},{"class":677,"line":791},[3706,3710,3714,3719,3723,3727,3731,3735],{"type":44,"tag":675,"props":3707,"children":3708},{"style":1981},[3709],{"type":50,"value":1984},{"type":44,"tag":675,"props":3711,"children":3712},{"style":737},[3713],{"type":50,"value":1989},{"type":44,"tag":675,"props":3715,"children":3716},{"style":748},[3717],{"type":50,"value":3718}," TaskChooseOrganization",{"type":44,"tag":675,"props":3720,"children":3721},{"style":737},[3722],{"type":50,"value":1999},{"type":44,"tag":675,"props":3724,"children":3725},{"style":1981},[3726],{"type":50,"value":2004},{"type":44,"tag":675,"props":3728,"children":3729},{"style":737},[3730],{"type":50,"value":802},{"type":44,"tag":675,"props":3732,"children":3733},{"style":687},[3734],{"type":50,"value":135},{"type":44,"tag":675,"props":3736,"children":3737},{"style":737},[3738],{"type":50,"value":812},{"type":44,"tag":675,"props":3740,"children":3741},{"class":677,"line":867},[3742],{"type":44,"tag":675,"props":3743,"children":3744},{"emptyLinePlaceholder":891},[3745],{"type":50,"value":894},{"type":44,"tag":675,"props":3747,"children":3748},{"class":677,"line":27},[3749,3753,3757,3761,3766,3771],{"type":44,"tag":675,"props":3750,"children":3751},{"style":1981},[3752],{"type":50,"value":2264},{"type":44,"tag":675,"props":3754,"children":3755},{"style":1981},[3756],{"type":50,"value":2269},{"type":44,"tag":675,"props":3758,"children":3759},{"style":2030},[3760],{"type":50,"value":2279},{"type":44,"tag":675,"props":3762,"children":3763},{"style":2079},[3764],{"type":50,"value":3765}," Page",{"type":44,"tag":675,"props":3767,"children":3768},{"style":737},[3769],{"type":50,"value":3770},"()",{"type":44,"tag":675,"props":3772,"children":3773},{"style":737},[3774],{"type":50,"value":2346},{"type":44,"tag":675,"props":3776,"children":3777},{"class":677,"line":897},[3778,3782,3786,3791,3796,3800,3804,3808,3812],{"type":44,"tag":675,"props":3779,"children":3780},{"style":1981},[3781],{"type":50,"value":2478},{"type":44,"tag":675,"props":3783,"children":3784},{"style":737},[3785],{"type":50,"value":2483},{"type":44,"tag":675,"props":3787,"children":3788},{"style":682},[3789],{"type":50,"value":3790},"TaskChooseOrganization",{"type":44,"tag":675,"props":3792,"children":3793},{"style":2030},[3794],{"type":50,"value":3795}," redirectUrlComplete",{"type":44,"tag":675,"props":3797,"children":3798},{"style":737},[3799],{"type":50,"value":3351},{"type":44,"tag":675,"props":3801,"children":3802},{"style":737},[3803],{"type":50,"value":3356},{"type":44,"tag":675,"props":3805,"children":3806},{"style":687},[3807],{"type":50,"value":2448},{"type":44,"tag":675,"props":3809,"children":3810},{"style":737},[3811],{"type":50,"value":3356},{"type":44,"tag":675,"props":3813,"children":3814},{"style":737},[3815],{"type":50,"value":3055},{"type":44,"tag":675,"props":3817,"children":3818},{"class":677,"line":906},[3819],{"type":44,"tag":675,"props":3820,"children":3821},{"style":737},[3822],{"type":50,"value":2130},{"type":44,"tag":57,"props":3824,"children":3825},{},[3826,3831,3833,3838,3839,3844,3845,3850,3851,3856,3858,3864,3866,3872,3873,3879],{"type":44,"tag":80,"props":3827,"children":3829},{"className":3828},[],[3830],{"type":50,"value":3790},{"type":50,"value":3832}," ships as an imported component in the React-based SDKs (",{"type":44,"tag":80,"props":3834,"children":3836},{"className":3835},[],[3837],{"type":50,"value":135},{"type":50,"value":227},{"type":44,"tag":80,"props":3840,"children":3842},{"className":3841},[],[3843],{"type":50,"value":143},{"type":50,"value":227},{"type":44,"tag":80,"props":3846,"children":3848},{"className":3847},[],[3849],{"type":50,"value":1912},{"type":50,"value":227},{"type":44,"tag":80,"props":3852,"children":3854},{"className":3853},[],[3855],{"type":50,"value":1920},{"type":50,"value":3857},"). For the JS Frontend SDK (",{"type":44,"tag":80,"props":3859,"children":3861},{"className":3860},[],[3862],{"type":50,"value":3863},"@clerk\u002Fclerk-js",{"type":50,"value":3865},") the equivalent is ",{"type":44,"tag":80,"props":3867,"children":3869},{"className":3868},[],[3870],{"type":50,"value":3871},"clerk.mountTaskChooseOrganization(node)",{"type":50,"value":261},{"type":44,"tag":80,"props":3874,"children":3876},{"className":3875},[],[3877],{"type":50,"value":3878},"clerk.unmountTaskChooseOrganization(node)",{"type":50,"value":243},{"type":44,"tag":53,"props":3881,"children":3882},{},[3883],{"type":44,"tag":57,"props":3884,"children":3885},{},[3886,3890,3892,3898],{"type":44,"tag":61,"props":3887,"children":3888},{},[3889],{"type":50,"value":3162},{"type":50,"value":3891}," Session tasks aren't available. Force an org selection at sign-in by redirecting to a page that renders ",{"type":44,"tag":80,"props":3893,"children":3895},{"className":3894},[],[3896],{"type":50,"value":3897},"\u003COrganizationSwitcher hidePersonal \u002F>",{"type":50,"value":243},{"type":44,"tag":162,"props":3900,"children":3902},{"id":3901},"default-roles-system-permissions",[3903],{"type":50,"value":3904},"Default Roles + System Permissions",{"type":44,"tag":343,"props":3906,"children":3907},{},[3908,3924],{"type":44,"tag":347,"props":3909,"children":3910},{},[3911],{"type":44,"tag":351,"props":3912,"children":3913},{},[3914,3919],{"type":44,"tag":355,"props":3915,"children":3916},{},[3917],{"type":50,"value":3918},"Role",{"type":44,"tag":355,"props":3920,"children":3921},{},[3922],{"type":50,"value":3923},"Default meaning",{"type":44,"tag":366,"props":3925,"children":3926},{},[3927,3943],{"type":44,"tag":351,"props":3928,"children":3929},{},[3930,3938],{"type":44,"tag":373,"props":3931,"children":3932},{},[3933],{"type":44,"tag":80,"props":3934,"children":3936},{"className":3935},[],[3937],{"type":50,"value":2633},{"type":44,"tag":373,"props":3939,"children":3940},{},[3941],{"type":50,"value":3942},"Full access — all System Permissions, can manage org + memberships",{"type":44,"tag":351,"props":3944,"children":3945},{},[3946,3955],{"type":44,"tag":373,"props":3947,"children":3948},{},[3949],{"type":44,"tag":80,"props":3950,"children":3952},{"className":3951},[],[3953],{"type":50,"value":3954},"org:member",{"type":44,"tag":373,"props":3956,"children":3957},{},[3958],{"type":50,"value":3959},"Read members + Read billing Permissions only",{"type":44,"tag":57,"props":3961,"children":3962},{},[3963,3965,3970,3972,3977],{"type":50,"value":3964},"You can create up to 10 custom roles per instance in Dashboard → Organizations → Roles & Permissions. Role-per-org is controlled via ",{"type":44,"tag":61,"props":3966,"children":3967},{},[3968],{"type":50,"value":3969},"Role Sets",{"type":50,"value":3971}," — see ",{"type":44,"tag":80,"props":3973,"children":3975},{"className":3974},[],[3976],{"type":50,"value":382},{"type":50,"value":3978}," for the full model (custom roles, Creator\u002FDefault role settings, role sets, and the System Permissions catalog).",{"type":44,"tag":162,"props":3980,"children":3982},{"id":3981},"billing-checks",[3983],{"type":50,"value":3984},"Billing Checks",{"type":44,"tag":57,"props":3986,"children":3987},{},[3988,3993],{"type":44,"tag":80,"props":3989,"children":3991},{"className":3990},[],[3992],{"type":50,"value":1928},{"type":50,"value":3994}," also supports plan and feature checks when Clerk Billing is enabled:",{"type":44,"tag":664,"props":3996,"children":3998},{"className":1969,"code":3997,"language":1971,"meta":669,"style":669},"const { has } = await auth()\n\nhas({ plan: 'gold' })        \u002F\u002F subscription plan\nhas({ feature: 'widgets' })  \u002F\u002F feature entitlement\n",[3999],{"type":44,"tag":80,"props":4000,"children":4001},{"__ignoreMap":669},[4002,4037,4044,4095],{"type":44,"tag":675,"props":4003,"children":4004},{"class":677,"line":678},[4005,4009,4013,4017,4021,4025,4029,4033],{"type":44,"tag":675,"props":4006,"children":4007},{"style":2030},[4008],{"type":50,"value":2033},{"type":44,"tag":675,"props":4010,"children":4011},{"style":737},[4012],{"type":50,"value":1989},{"type":44,"tag":675,"props":4014,"children":4015},{"style":748},[4016],{"type":50,"value":2559},{"type":44,"tag":675,"props":4018,"children":4019},{"style":737},[4020],{"type":50,"value":2066},{"type":44,"tag":675,"props":4022,"children":4023},{"style":737},[4024],{"type":50,"value":2071},{"type":44,"tag":675,"props":4026,"children":4027},{"style":1981},[4028],{"type":50,"value":2076},{"type":44,"tag":675,"props":4030,"children":4031},{"style":2079},[4032],{"type":50,"value":1994},{"type":44,"tag":675,"props":4034,"children":4035},{"style":748},[4036],{"type":50,"value":2086},{"type":44,"tag":675,"props":4038,"children":4039},{"class":677,"line":791},[4040],{"type":44,"tag":675,"props":4041,"children":4042},{"emptyLinePlaceholder":891},[4043],{"type":50,"value":894},{"type":44,"tag":675,"props":4045,"children":4046},{"class":677,"line":867},[4047,4051,4055,4059,4064,4068,4072,4077,4081,4085,4090],{"type":44,"tag":675,"props":4048,"children":4049},{"style":2079},[4050],{"type":50,"value":2606},{"type":44,"tag":675,"props":4052,"children":4053},{"style":748},[4054],{"type":50,"value":2438},{"type":44,"tag":675,"props":4056,"children":4057},{"style":737},[4058],{"type":50,"value":2615},{"type":44,"tag":675,"props":4060,"children":4061},{"style":2307},[4062],{"type":50,"value":4063}," plan",{"type":44,"tag":675,"props":4065,"children":4066},{"style":737},[4067],{"type":50,"value":2314},{"type":44,"tag":675,"props":4069,"children":4070},{"style":737},[4071],{"type":50,"value":802},{"type":44,"tag":675,"props":4073,"children":4074},{"style":687},[4075],{"type":50,"value":4076},"gold",{"type":44,"tag":675,"props":4078,"children":4079},{"style":737},[4080],{"type":50,"value":2443},{"type":44,"tag":675,"props":4082,"children":4083},{"style":737},[4084],{"type":50,"value":1999},{"type":44,"tag":675,"props":4086,"children":4087},{"style":748},[4088],{"type":50,"value":4089},")        ",{"type":44,"tag":675,"props":4091,"children":4092},{"style":831},[4093],{"type":50,"value":4094},"\u002F\u002F subscription plan\n",{"type":44,"tag":675,"props":4096,"children":4097},{"class":677,"line":27},[4098,4102,4106,4110,4115,4119,4123,4128,4132,4136,4140],{"type":44,"tag":675,"props":4099,"children":4100},{"style":2079},[4101],{"type":50,"value":2606},{"type":44,"tag":675,"props":4103,"children":4104},{"style":748},[4105],{"type":50,"value":2438},{"type":44,"tag":675,"props":4107,"children":4108},{"style":737},[4109],{"type":50,"value":2615},{"type":44,"tag":675,"props":4111,"children":4112},{"style":2307},[4113],{"type":50,"value":4114}," feature",{"type":44,"tag":675,"props":4116,"children":4117},{"style":737},[4118],{"type":50,"value":2314},{"type":44,"tag":675,"props":4120,"children":4121},{"style":737},[4122],{"type":50,"value":802},{"type":44,"tag":675,"props":4124,"children":4125},{"style":687},[4126],{"type":50,"value":4127},"widgets",{"type":44,"tag":675,"props":4129,"children":4130},{"style":737},[4131],{"type":50,"value":2443},{"type":44,"tag":675,"props":4133,"children":4134},{"style":737},[4135],{"type":50,"value":1999},{"type":44,"tag":675,"props":4137,"children":4138},{"style":748},[4139],{"type":50,"value":2457},{"type":44,"tag":675,"props":4141,"children":4142},{"style":831},[4143],{"type":50,"value":4144},"\u002F\u002F feature entitlement\n",{"type":44,"tag":53,"props":4146,"children":4147},{},[4148],{"type":44,"tag":57,"props":4149,"children":4150},{},[4151,4155,4157,4162,4164,4170,4171,4177],{"type":44,"tag":61,"props":4152,"children":4153},{},[4154],{"type":50,"value":3162},{"type":50,"value":4156}," ",{"type":44,"tag":80,"props":4158,"children":4160},{"className":4159},[],[4161],{"type":50,"value":1928},{"type":50,"value":4163}," only supports ",{"type":44,"tag":80,"props":4165,"children":4167},{"className":4166},[],[4168],{"type":50,"value":4169},"role",{"type":50,"value":3201},{"type":44,"tag":80,"props":4172,"children":4174},{"className":4173},[],[4175],{"type":50,"value":4176},"permission",{"type":50,"value":4178},". Billing checks aren't available.",{"type":44,"tag":57,"props":4180,"children":4181},{},[4182,4184,4189],{"type":50,"value":4183},"See ",{"type":44,"tag":80,"props":4185,"children":4187},{"className":4186},[],[4188],{"type":50,"value":333},{"type":50,"value":4190}," for the full Billing surface and seat-limit plan model.",{"type":44,"tag":162,"props":4192,"children":4194},{"id":4193},"enterprise-sso",[4195],{"type":50,"value":1860},{"type":44,"tag":57,"props":4197,"children":4198},{},[4199,4201,4207,4209,4215,4217,4223,4225,4230],{"type":50,"value":4200},"Per-org SAML\u002FOIDC. Configured in Dashboard → Configure → Enterprise Connections (or per-org: Organizations → select org → SSO Connections). The SSO connection owns its domain directly; no separate Verified Domain is required (and the two features are mutually exclusive on the same domain). Auto-join on first SSO sign-in uses JIT Provisioning, not Verified Domains. Key fact: the ",{"type":44,"tag":80,"props":4202,"children":4204},{"className":4203},[],[4205],{"type":50,"value":4206},"provider",{"type":50,"value":4208}," field lives on ",{"type":44,"tag":80,"props":4210,"children":4212},{"className":4211},[],[4213],{"type":50,"value":4214},"enterpriseConnection",{"type":50,"value":4216},", not on ",{"type":44,"tag":80,"props":4218,"children":4220},{"className":4219},[],[4221],{"type":50,"value":4222},"enterpriseAccounts[0]",{"type":50,"value":4224}," directly. See ",{"type":44,"tag":80,"props":4226,"children":4228},{"className":4227},[],[4229],{"type":50,"value":408},{"type":50,"value":4231}," for the full flow and correct field access.",{"type":44,"tag":664,"props":4233,"children":4235},{"className":1969,"code":4234,"language":1971,"meta":669,"style":669},"\u002F\u002F Strategy name for Enterprise SSO (Core 3)\nstrategy: 'enterprise_sso'\n",[4236],{"type":44,"tag":80,"props":4237,"children":4238},{"__ignoreMap":669},[4239,4247],{"type":44,"tag":675,"props":4240,"children":4241},{"class":677,"line":678},[4242],{"type":44,"tag":675,"props":4243,"children":4244},{"style":831},[4245],{"type":50,"value":4246},"\u002F\u002F Strategy name for Enterprise SSO (Core 3)\n",{"type":44,"tag":675,"props":4248,"children":4249},{"class":677,"line":791},[4250,4255,4259,4263,4268],{"type":44,"tag":675,"props":4251,"children":4252},{"style":682},[4253],{"type":50,"value":4254},"strategy",{"type":44,"tag":675,"props":4256,"children":4257},{"style":737},[4258],{"type":50,"value":2314},{"type":44,"tag":675,"props":4260,"children":4261},{"style":737},[4262],{"type":50,"value":802},{"type":44,"tag":675,"props":4264,"children":4265},{"style":687},[4266],{"type":50,"value":4267},"enterprise_sso",{"type":44,"tag":675,"props":4269,"children":4270},{"style":737},[4271],{"type":50,"value":812},{"type":44,"tag":53,"props":4273,"children":4274},{},[4275],{"type":44,"tag":57,"props":4276,"children":4277},{},[4278,4282,4284,4290,4291,4297,4298,4304],{"type":44,"tag":61,"props":4279,"children":4280},{},[4281],{"type":50,"value":3162},{"type":50,"value":4283}," Uses ",{"type":44,"tag":80,"props":4285,"children":4287},{"className":4286},[],[4288],{"type":50,"value":4289},"strategy: 'saml'",{"type":50,"value":3201},{"type":44,"tag":80,"props":4292,"children":4294},{"className":4293},[],[4295],{"type":50,"value":4296},"user.samlAccounts",{"type":50,"value":3179},{"type":44,"tag":80,"props":4299,"children":4301},{"className":4300},[],[4302],{"type":50,"value":4303},"user.enterpriseAccounts",{"type":50,"value":243},{"type":44,"tag":162,"props":4306,"children":4308},{"id":4307},"gotchas",[4309],{"type":50,"value":4310},"Gotchas",{"type":44,"tag":657,"props":4312,"children":4314},{"id":4313},"maxallowedmemberships-caps-seats",[4315,4320],{"type":44,"tag":80,"props":4316,"children":4318},{"className":4317},[],[4319],{"type":50,"value":325},{"type":50,"value":4321}," caps seats",{"type":44,"tag":664,"props":4323,"children":4325},{"className":1969,"code":4324,"language":1971,"meta":669,"style":669},"const clerk = await clerkClient()\nawait clerk.organizations.createOrganization({\n  name: 'Acme Corp',\n  createdBy: userId,\n  maxAllowedMemberships: 10,\n})\n\n\u002F\u002F Update later:\nawait clerk.organizations.updateOrganization(orgId, {\n  maxAllowedMemberships: 25,\n})\n",[4326],{"type":44,"tag":80,"props":4327,"children":4328},{"__ignoreMap":669},[4329,4358,4397,4427,4448,4470,4481,4488,4496,4537,4557],{"type":44,"tag":675,"props":4330,"children":4331},{"class":677,"line":678},[4332,4336,4341,4345,4349,4354],{"type":44,"tag":675,"props":4333,"children":4334},{"style":2030},[4335],{"type":50,"value":2033},{"type":44,"tag":675,"props":4337,"children":4338},{"style":748},[4339],{"type":50,"value":4340}," clerk ",{"type":44,"tag":675,"props":4342,"children":4343},{"style":737},[4344],{"type":50,"value":3351},{"type":44,"tag":675,"props":4346,"children":4347},{"style":1981},[4348],{"type":50,"value":2076},{"type":44,"tag":675,"props":4350,"children":4351},{"style":2079},[4352],{"type":50,"value":4353}," clerkClient",{"type":44,"tag":675,"props":4355,"children":4356},{"style":748},[4357],{"type":50,"value":2086},{"type":44,"tag":675,"props":4359,"children":4360},{"class":677,"line":791},[4361,4366,4371,4375,4380,4384,4389,4393],{"type":44,"tag":675,"props":4362,"children":4363},{"style":1981},[4364],{"type":50,"value":4365},"await",{"type":44,"tag":675,"props":4367,"children":4368},{"style":748},[4369],{"type":50,"value":4370}," clerk",{"type":44,"tag":675,"props":4372,"children":4373},{"style":737},[4374],{"type":50,"value":243},{"type":44,"tag":675,"props":4376,"children":4377},{"style":748},[4378],{"type":50,"value":4379},"organizations",{"type":44,"tag":675,"props":4381,"children":4382},{"style":737},[4383],{"type":50,"value":243},{"type":44,"tag":675,"props":4385,"children":4386},{"style":2079},[4387],{"type":50,"value":4388},"createOrganization",{"type":44,"tag":675,"props":4390,"children":4391},{"style":748},[4392],{"type":50,"value":2438},{"type":44,"tag":675,"props":4394,"children":4395},{"style":737},[4396],{"type":50,"value":2114},{"type":44,"tag":675,"props":4398,"children":4399},{"class":677,"line":867},[4400,4405,4409,4413,4418,4422],{"type":44,"tag":675,"props":4401,"children":4402},{"style":2307},[4403],{"type":50,"value":4404},"  name",{"type":44,"tag":675,"props":4406,"children":4407},{"style":737},[4408],{"type":50,"value":2314},{"type":44,"tag":675,"props":4410,"children":4411},{"style":737},[4412],{"type":50,"value":802},{"type":44,"tag":675,"props":4414,"children":4415},{"style":687},[4416],{"type":50,"value":4417},"Acme Corp",{"type":44,"tag":675,"props":4419,"children":4420},{"style":737},[4421],{"type":50,"value":2443},{"type":44,"tag":675,"props":4423,"children":4424},{"style":737},[4425],{"type":50,"value":4426},",\n",{"type":44,"tag":675,"props":4428,"children":4429},{"class":677,"line":27},[4430,4435,4439,4444],{"type":44,"tag":675,"props":4431,"children":4432},{"style":2307},[4433],{"type":50,"value":4434},"  createdBy",{"type":44,"tag":675,"props":4436,"children":4437},{"style":737},[4438],{"type":50,"value":2314},{"type":44,"tag":675,"props":4440,"children":4441},{"style":748},[4442],{"type":50,"value":4443}," userId",{"type":44,"tag":675,"props":4445,"children":4446},{"style":737},[4447],{"type":50,"value":4426},{"type":44,"tag":675,"props":4449,"children":4450},{"class":677,"line":897},[4451,4456,4460,4466],{"type":44,"tag":675,"props":4452,"children":4453},{"style":2307},[4454],{"type":50,"value":4455},"  maxAllowedMemberships",{"type":44,"tag":675,"props":4457,"children":4458},{"style":737},[4459],{"type":50,"value":2314},{"type":44,"tag":675,"props":4461,"children":4463},{"style":4462},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[4464],{"type":50,"value":4465}," 10",{"type":44,"tag":675,"props":4467,"children":4468},{"style":737},[4469],{"type":50,"value":4426},{"type":44,"tag":675,"props":4471,"children":4472},{"class":677,"line":906},[4473,4477],{"type":44,"tag":675,"props":4474,"children":4475},{"style":737},[4476],{"type":50,"value":2066},{"type":44,"tag":675,"props":4478,"children":4479},{"style":748},[4480],{"type":50,"value":2814},{"type":44,"tag":675,"props":4482,"children":4483},{"class":677,"line":940},[4484],{"type":44,"tag":675,"props":4485,"children":4486},{"emptyLinePlaceholder":891},[4487],{"type":50,"value":894},{"type":44,"tag":675,"props":4489,"children":4490},{"class":677,"line":948},[4491],{"type":44,"tag":675,"props":4492,"children":4493},{"style":831},[4494],{"type":50,"value":4495},"\u002F\u002F Update later:\n",{"type":44,"tag":675,"props":4497,"children":4498},{"class":677,"line":957},[4499,4503,4507,4511,4515,4519,4524,4529,4533],{"type":44,"tag":675,"props":4500,"children":4501},{"style":1981},[4502],{"type":50,"value":4365},{"type":44,"tag":675,"props":4504,"children":4505},{"style":748},[4506],{"type":50,"value":4370},{"type":44,"tag":675,"props":4508,"children":4509},{"style":737},[4510],{"type":50,"value":243},{"type":44,"tag":675,"props":4512,"children":4513},{"style":748},[4514],{"type":50,"value":4379},{"type":44,"tag":675,"props":4516,"children":4517},{"style":737},[4518],{"type":50,"value":243},{"type":44,"tag":675,"props":4520,"children":4521},{"style":2079},[4522],{"type":50,"value":4523},"updateOrganization",{"type":44,"tag":675,"props":4525,"children":4526},{"style":748},[4527],{"type":50,"value":4528},"(orgId",{"type":44,"tag":675,"props":4530,"children":4531},{"style":737},[4532],{"type":50,"value":2047},{"type":44,"tag":675,"props":4534,"children":4535},{"style":737},[4536],{"type":50,"value":2346},{"type":44,"tag":675,"props":4538,"children":4539},{"class":677,"line":992},[4540,4544,4548,4553],{"type":44,"tag":675,"props":4541,"children":4542},{"style":2307},[4543],{"type":50,"value":4455},{"type":44,"tag":675,"props":4545,"children":4546},{"style":737},[4547],{"type":50,"value":2314},{"type":44,"tag":675,"props":4549,"children":4550},{"style":4462},[4551],{"type":50,"value":4552}," 25",{"type":44,"tag":675,"props":4554,"children":4555},{"style":737},[4556],{"type":50,"value":4426},{"type":44,"tag":675,"props":4558,"children":4559},{"class":677,"line":1000},[4560,4564],{"type":44,"tag":675,"props":4561,"children":4562},{"style":737},[4563],{"type":50,"value":2066},{"type":44,"tag":675,"props":4565,"children":4566},{"style":748},[4567],{"type":50,"value":2814},{"type":44,"tag":57,"props":4569,"children":4570},{},[4571,4573,4578],{"type":50,"value":4572},"For tier-based seat limits tied to a subscription, use a seat-limited Billing Plan (see ",{"type":44,"tag":80,"props":4574,"children":4576},{"className":4575},[],[4577],{"type":50,"value":333},{"type":50,"value":655},{"type":44,"tag":657,"props":4580,"children":4582},{"id":4581},"billing-gates-permissions-at-the-feature-level",[4583],{"type":50,"value":4584},"Billing gates Permissions at the Feature level",{"type":44,"tag":57,"props":4586,"children":4587},{},[4588,4590,4596,4598,4603],{"type":50,"value":4589},"When Clerk Billing is enabled, ",{"type":44,"tag":80,"props":4591,"children":4593},{"className":4592},[],[4594],{"type":50,"value":4595},"has({ permission: 'org:posts:edit' })",{"type":50,"value":4597}," returns ",{"type":44,"tag":80,"props":4599,"children":4601},{"className":4600},[],[4602],{"type":50,"value":3423},{"type":50,"value":4604}," if the Feature associated with that permission is not included in the organization's active Plan — even if the user has the Permission assigned via their role. Ensure the Feature is attached to the active Plan in Dashboard → Billing → Plans → Features.",{"type":44,"tag":657,"props":4606,"children":4608},{"id":4607},"metadata-updates-replace-not-merge",[4609],{"type":50,"value":4610},"Metadata updates REPLACE, not merge",{"type":44,"tag":57,"props":4612,"children":4613},{},[4614,4620],{"type":44,"tag":80,"props":4615,"children":4617},{"className":4616},[],[4618],{"type":50,"value":4619},"updateOrganization({ publicMetadata })",{"type":50,"value":4621}," overwrites all public metadata. Read first, spread, then write:",{"type":44,"tag":664,"props":4623,"children":4625},{"className":1969,"code":4624,"language":1971,"meta":669,"style":669},"const org = await clerk.organizations.getOrganization({ organizationId: orgId })\nawait clerk.organizations.updateOrganization(orgId, {\n  publicMetadata: { ...org.publicMetadata, newField: 'value' },\n})\n",[4626],{"type":44,"tag":80,"props":4627,"children":4628},{"__ignoreMap":669},[4629,4700,4739,4805],{"type":44,"tag":675,"props":4630,"children":4631},{"class":677,"line":678},[4632,4636,4641,4645,4649,4653,4657,4661,4665,4670,4674,4678,4683,4687,4692,4696],{"type":44,"tag":675,"props":4633,"children":4634},{"style":2030},[4635],{"type":50,"value":2033},{"type":44,"tag":675,"props":4637,"children":4638},{"style":748},[4639],{"type":50,"value":4640}," org ",{"type":44,"tag":675,"props":4642,"children":4643},{"style":737},[4644],{"type":50,"value":3351},{"type":44,"tag":675,"props":4646,"children":4647},{"style":1981},[4648],{"type":50,"value":2076},{"type":44,"tag":675,"props":4650,"children":4651},{"style":748},[4652],{"type":50,"value":4370},{"type":44,"tag":675,"props":4654,"children":4655},{"style":737},[4656],{"type":50,"value":243},{"type":44,"tag":675,"props":4658,"children":4659},{"style":748},[4660],{"type":50,"value":4379},{"type":44,"tag":675,"props":4662,"children":4663},{"style":737},[4664],{"type":50,"value":243},{"type":44,"tag":675,"props":4666,"children":4667},{"style":2079},[4668],{"type":50,"value":4669},"getOrganization",{"type":44,"tag":675,"props":4671,"children":4672},{"style":748},[4673],{"type":50,"value":2438},{"type":44,"tag":675,"props":4675,"children":4676},{"style":737},[4677],{"type":50,"value":2615},{"type":44,"tag":675,"props":4679,"children":4680},{"style":2307},[4681],{"type":50,"value":4682}," organizationId",{"type":44,"tag":675,"props":4684,"children":4685},{"style":737},[4686],{"type":50,"value":2314},{"type":44,"tag":675,"props":4688,"children":4689},{"style":748},[4690],{"type":50,"value":4691}," orgId ",{"type":44,"tag":675,"props":4693,"children":4694},{"style":737},[4695],{"type":50,"value":2066},{"type":44,"tag":675,"props":4697,"children":4698},{"style":748},[4699],{"type":50,"value":2814},{"type":44,"tag":675,"props":4701,"children":4702},{"class":677,"line":791},[4703,4707,4711,4715,4719,4723,4727,4731,4735],{"type":44,"tag":675,"props":4704,"children":4705},{"style":1981},[4706],{"type":50,"value":4365},{"type":44,"tag":675,"props":4708,"children":4709},{"style":748},[4710],{"type":50,"value":4370},{"type":44,"tag":675,"props":4712,"children":4713},{"style":737},[4714],{"type":50,"value":243},{"type":44,"tag":675,"props":4716,"children":4717},{"style":748},[4718],{"type":50,"value":4379},{"type":44,"tag":675,"props":4720,"children":4721},{"style":737},[4722],{"type":50,"value":243},{"type":44,"tag":675,"props":4724,"children":4725},{"style":2079},[4726],{"type":50,"value":4523},{"type":44,"tag":675,"props":4728,"children":4729},{"style":748},[4730],{"type":50,"value":4528},{"type":44,"tag":675,"props":4732,"children":4733},{"style":737},[4734],{"type":50,"value":2047},{"type":44,"tag":675,"props":4736,"children":4737},{"style":737},[4738],{"type":50,"value":2346},{"type":44,"tag":675,"props":4740,"children":4741},{"class":677,"line":867},[4742,4747,4751,4755,4760,4765,4769,4774,4778,4783,4787,4791,4796,4800],{"type":44,"tag":675,"props":4743,"children":4744},{"style":2307},[4745],{"type":50,"value":4746},"  publicMetadata",{"type":44,"tag":675,"props":4748,"children":4749},{"style":737},[4750],{"type":50,"value":2314},{"type":44,"tag":675,"props":4752,"children":4753},{"style":737},[4754],{"type":50,"value":1989},{"type":44,"tag":675,"props":4756,"children":4757},{"style":737},[4758],{"type":50,"value":4759}," ...",{"type":44,"tag":675,"props":4761,"children":4762},{"style":748},[4763],{"type":50,"value":4764},"org",{"type":44,"tag":675,"props":4766,"children":4767},{"style":737},[4768],{"type":50,"value":243},{"type":44,"tag":675,"props":4770,"children":4771},{"style":748},[4772],{"type":50,"value":4773},"publicMetadata",{"type":44,"tag":675,"props":4775,"children":4776},{"style":737},[4777],{"type":50,"value":2047},{"type":44,"tag":675,"props":4779,"children":4780},{"style":2307},[4781],{"type":50,"value":4782}," newField",{"type":44,"tag":675,"props":4784,"children":4785},{"style":737},[4786],{"type":50,"value":2314},{"type":44,"tag":675,"props":4788,"children":4789},{"style":737},[4790],{"type":50,"value":802},{"type":44,"tag":675,"props":4792,"children":4793},{"style":687},[4794],{"type":50,"value":4795},"value",{"type":44,"tag":675,"props":4797,"children":4798},{"style":737},[4799],{"type":50,"value":2443},{"type":44,"tag":675,"props":4801,"children":4802},{"style":737},[4803],{"type":50,"value":4804}," },\n",{"type":44,"tag":675,"props":4806,"children":4807},{"class":677,"line":27},[4808,4812],{"type":44,"tag":675,"props":4809,"children":4810},{"style":737},[4811],{"type":50,"value":2066},{"type":44,"tag":675,"props":4813,"children":4814},{"style":748},[4815],{"type":50,"value":2814},{"type":44,"tag":57,"props":4817,"children":4818},{},[4819,4821,4827,4829,4835],{"type":50,"value":4820},"Applies identically to ",{"type":44,"tag":80,"props":4822,"children":4824},{"className":4823},[],[4825],{"type":50,"value":4826},"privateMetadata",{"type":50,"value":4828}," and to user metadata via ",{"type":44,"tag":80,"props":4830,"children":4832},{"className":4831},[],[4833],{"type":50,"value":4834},"clerkClient.users.updateUser",{"type":50,"value":243},{"type":44,"tag":162,"props":4837,"children":4839},{"id":4838},"error-signatures-diagnose-fast",[4840],{"type":50,"value":4841},"Error Signatures (diagnose fast)",{"type":44,"tag":57,"props":4843,"children":4844},{},[4845],{"type":50,"value":4846},"Most \"org-related\" failures are configuration, not code. Do not edit components before checking these:",{"type":44,"tag":343,"props":4848,"children":4849},{},[4850,4871],{"type":44,"tag":347,"props":4851,"children":4852},{},[4853],{"type":44,"tag":351,"props":4854,"children":4855},{},[4856,4861,4866],{"type":44,"tag":355,"props":4857,"children":4858},{},[4859],{"type":50,"value":4860},"Error \u002F symptom",{"type":44,"tag":355,"props":4862,"children":4863},{},[4864],{"type":50,"value":4865},"Root cause",{"type":44,"tag":355,"props":4867,"children":4868},{},[4869],{"type":50,"value":4870},"Fix",{"type":44,"tag":366,"props":4872,"children":4873},{},[4874,4916,4952,4987,5016,5049,5086],{"type":44,"tag":351,"props":4875,"children":4876},{},[4877,4901,4906],{"type":44,"tag":373,"props":4878,"children":4879},{},[4880,4885,4886,4891,4893,4899],{"type":44,"tag":80,"props":4881,"children":4883},{"className":4882},[],[4884],{"type":50,"value":259},{"type":50,"value":261},{"type":44,"tag":80,"props":4887,"children":4889},{"className":4888},[],[4890],{"type":50,"value":267},{"type":50,"value":4892}," is ",{"type":44,"tag":80,"props":4894,"children":4896},{"className":4895},[],[4897],{"type":50,"value":4898},"undefined",{"type":50,"value":4900}," for a signed-in user",{"type":44,"tag":373,"props":4902,"children":4903},{},[4904],{"type":50,"value":4905},"Organizations not enabled for this instance, OR user has no active org (personal account)",{"type":44,"tag":373,"props":4907,"children":4908},{},[4909,4911],{"type":50,"value":4910},"Enable in Dashboard → Organizations; check Membership mode; surface ",{"type":44,"tag":80,"props":4912,"children":4914},{"className":4913},[],[4915],{"type":50,"value":225},{"type":44,"tag":351,"props":4917,"children":4918},{},[4919,4935,4940],{"type":44,"tag":373,"props":4920,"children":4921},{},[4922,4928,4930],{"type":44,"tag":80,"props":4923,"children":4925},{"className":4924},[],[4926],{"type":50,"value":4927},"has({ permission: 'org:manage_members' })",{"type":50,"value":4929}," always ",{"type":44,"tag":80,"props":4931,"children":4933},{"className":4932},[],[4934],{"type":50,"value":3423},{"type":44,"tag":373,"props":4936,"children":4937},{},[4938],{"type":50,"value":4939},"Using an invented permission slug",{"type":44,"tag":373,"props":4941,"children":4942},{},[4943,4945,4950],{"type":50,"value":4944},"Use ",{"type":44,"tag":80,"props":4946,"children":4948},{"className":4947},[],[4949],{"type":50,"value":2768},{"type":50,"value":4951}," (see roles-permissions.md catalog)",{"type":44,"tag":351,"props":4953,"children":4954},{},[4955,4971,4976],{"type":44,"tag":373,"props":4956,"children":4957},{},[4958,4963,4964,4969],{"type":44,"tag":80,"props":4959,"children":4961},{"className":4960},[],[4962],{"type":50,"value":283},{"type":50,"value":4597},{"type":44,"tag":80,"props":4965,"children":4967},{"className":4966},[],[4968],{"type":50,"value":3423},{"type":50,"value":4970}," but user looks like an admin",{"type":44,"tag":373,"props":4972,"children":4973},{},[4974],{"type":50,"value":4975},"Session token stale after role change",{"type":44,"tag":373,"props":4977,"children":4978},{},[4979,4981],{"type":50,"value":4980},"Re-sign-in, or refresh the session: ",{"type":44,"tag":80,"props":4982,"children":4984},{"className":4983},[],[4985],{"type":50,"value":4986},"await clerk.session?.reload()",{"type":44,"tag":351,"props":4988,"children":4989},{},[4990,5006,5011],{"type":44,"tag":373,"props":4991,"children":4992},{},[4993,4998,4999,5004],{"type":44,"tag":80,"props":4994,"children":4996},{"className":4995},[],[4997],{"type":50,"value":290},{"type":50,"value":4156},{"type":44,"tag":80,"props":5000,"children":5002},{"className":5001},[],[5003],{"type":50,"value":3423},{"type":50,"value":5005}," even with the role assigned",{"type":44,"tag":373,"props":5007,"children":5008},{},[5009],{"type":50,"value":5010},"Feature not attached to active Plan (Billing gates permissions)",{"type":44,"tag":373,"props":5012,"children":5013},{},[5014],{"type":50,"value":5015},"Dashboard → Billing → Plans → attach Feature",{"type":44,"tag":351,"props":5017,"children":5018},{},[5019,5029,5039],{"type":44,"tag":373,"props":5020,"children":5021},{},[5022,5027],{"type":44,"tag":80,"props":5023,"children":5025},{"className":5024},[],[5026],{"type":50,"value":225},{"type":50,"value":5028}," doesn't show \"Personal Account\"",{"type":44,"tag":373,"props":5030,"children":5031},{},[5032,5037],{"type":44,"tag":80,"props":5033,"children":5035},{"className":5034},[],[5036],{"type":50,"value":93},{"type":50,"value":5038}," mode is on (the default since Aug 22, 2025)",{"type":44,"tag":373,"props":5040,"children":5041},{},[5042,5044],{"type":50,"value":5043},"Dashboard → Organizations settings → ",{"type":44,"tag":80,"props":5045,"children":5047},{"className":5046},[],[5048],{"type":50,"value":109},{"type":44,"tag":351,"props":5050,"children":5051},{},[5052,5062,5074],{"type":44,"tag":373,"props":5053,"children":5054},{},[5055,5060],{"type":44,"tag":80,"props":5056,"children":5058},{"className":5057},[],[5059],{"type":50,"value":3790},{"type":50,"value":5061}," throws \"cannot render when a user doesn't have current session tasks\"",{"type":44,"tag":373,"props":5063,"children":5064},{},[5065,5067,5072],{"type":50,"value":5066},"Rendered outside a ",{"type":44,"tag":80,"props":5068,"children":5070},{"className":5069},[],[5071],{"type":50,"value":101},{"type":50,"value":5073}," task context",{"type":44,"tag":373,"props":5075,"children":5076},{},[5077,5079,5084],{"type":50,"value":5078},"Wrap in a ",{"type":44,"tag":80,"props":5080,"children":5082},{"className":5081},[],[5083],{"type":50,"value":101},{"type":50,"value":5085}," session-task route only; don't render unconditionally",{"type":44,"tag":351,"props":5087,"children":5088},{},[5089,5104,5116],{"type":44,"tag":373,"props":5090,"children":5091},{},[5092,5098,5099],{"type":44,"tag":80,"props":5093,"children":5095},{"className":5094},[],[5096],{"type":50,"value":5097},"enterpriseAccounts[0].provider",{"type":50,"value":4892},{"type":44,"tag":80,"props":5100,"children":5102},{"className":5101},[],[5103],{"type":50,"value":4898},{"type":44,"tag":373,"props":5105,"children":5106},{},[5107,5109,5114],{"type":50,"value":5108},"Accessing ",{"type":44,"tag":80,"props":5110,"children":5112},{"className":5111},[],[5113],{"type":50,"value":4206},{"type":50,"value":5115}," at the wrong nesting level",{"type":44,"tag":373,"props":5117,"children":5118},{},[5119,5120],{"type":50,"value":4944},{"type":44,"tag":80,"props":5121,"children":5123},{"className":5122},[],[5124],{"type":50,"value":5125},"user.enterpriseAccounts[0].enterpriseConnection?.provider",{"type":44,"tag":162,"props":5127,"children":5129},{"id":5128},"authorization-pattern-complete-example",[5130],{"type":50,"value":5131},"Authorization Pattern (Complete Example)",{"type":44,"tag":57,"props":5133,"children":5134},{},[5135],{"type":50,"value":5136},"Server component protecting a slug-scoped admin page:",{"type":44,"tag":664,"props":5138,"children":5140},{"className":1969,"code":5139,"language":1971,"meta":669,"style":669},"import { auth } from '@clerk\u002Fnextjs\u002Fserver'\nimport { redirect } from 'next\u002Fnavigation'\n\nexport default async function AdminPage({ params }: { params: { slug: string } }) {\n  const { orgSlug, has } = await auth()\n\n  if (orgSlug !== params.slug) redirect('\u002Fdashboard')\n  if (!has({ role: 'org:admin' })) redirect(`\u002Forgs\u002F${orgSlug}`)\n\n  return \u003Cdiv>Admin settings for {orgSlug}\u003C\u002Fdiv>\n}\n",[5141],{"type":44,"tag":80,"props":5142,"children":5143},{"__ignoreMap":669},[5144,5179,5216,5223,5299,5343,5350,5410,5501,5508,5561],{"type":44,"tag":675,"props":5145,"children":5146},{"class":677,"line":678},[5147,5151,5155,5159,5163,5167,5171,5175],{"type":44,"tag":675,"props":5148,"children":5149},{"style":1981},[5150],{"type":50,"value":1984},{"type":44,"tag":675,"props":5152,"children":5153},{"style":737},[5154],{"type":50,"value":1989},{"type":44,"tag":675,"props":5156,"children":5157},{"style":748},[5158],{"type":50,"value":1994},{"type":44,"tag":675,"props":5160,"children":5161},{"style":737},[5162],{"type":50,"value":1999},{"type":44,"tag":675,"props":5164,"children":5165},{"style":1981},[5166],{"type":50,"value":2004},{"type":44,"tag":675,"props":5168,"children":5169},{"style":737},[5170],{"type":50,"value":802},{"type":44,"tag":675,"props":5172,"children":5173},{"style":687},[5174],{"type":50,"value":2013},{"type":44,"tag":675,"props":5176,"children":5177},{"style":737},[5178],{"type":50,"value":812},{"type":44,"tag":675,"props":5180,"children":5181},{"class":677,"line":791},[5182,5186,5190,5195,5199,5203,5207,5212],{"type":44,"tag":675,"props":5183,"children":5184},{"style":1981},[5185],{"type":50,"value":1984},{"type":44,"tag":675,"props":5187,"children":5188},{"style":737},[5189],{"type":50,"value":1989},{"type":44,"tag":675,"props":5191,"children":5192},{"style":748},[5193],{"type":50,"value":5194}," redirect",{"type":44,"tag":675,"props":5196,"children":5197},{"style":737},[5198],{"type":50,"value":1999},{"type":44,"tag":675,"props":5200,"children":5201},{"style":1981},[5202],{"type":50,"value":2004},{"type":44,"tag":675,"props":5204,"children":5205},{"style":737},[5206],{"type":50,"value":802},{"type":44,"tag":675,"props":5208,"children":5209},{"style":687},[5210],{"type":50,"value":5211},"next\u002Fnavigation",{"type":44,"tag":675,"props":5213,"children":5214},{"style":737},[5215],{"type":50,"value":812},{"type":44,"tag":675,"props":5217,"children":5218},{"class":677,"line":867},[5219],{"type":44,"tag":675,"props":5220,"children":5221},{"emptyLinePlaceholder":891},[5222],{"type":50,"value":894},{"type":44,"tag":675,"props":5224,"children":5225},{"class":677,"line":27},[5226,5230,5234,5238,5242,5247,5251,5255,5259,5263,5267,5271,5275,5279,5283,5287,5291,5295],{"type":44,"tag":675,"props":5227,"children":5228},{"style":1981},[5229],{"type":50,"value":2264},{"type":44,"tag":675,"props":5231,"children":5232},{"style":1981},[5233],{"type":50,"value":2269},{"type":44,"tag":675,"props":5235,"children":5236},{"style":2030},[5237],{"type":50,"value":2274},{"type":44,"tag":675,"props":5239,"children":5240},{"style":2030},[5241],{"type":50,"value":2279},{"type":44,"tag":675,"props":5243,"children":5244},{"style":2079},[5245],{"type":50,"value":5246}," AdminPage",{"type":44,"tag":675,"props":5248,"children":5249},{"style":737},[5250],{"type":50,"value":2289},{"type":44,"tag":675,"props":5252,"children":5253},{"style":2292},[5254],{"type":50,"value":2295},{"type":44,"tag":675,"props":5256,"children":5257},{"style":737},[5258],{"type":50,"value":2300},{"type":44,"tag":675,"props":5260,"children":5261},{"style":737},[5262],{"type":50,"value":1989},{"type":44,"tag":675,"props":5264,"children":5265},{"style":2307},[5266],{"type":50,"value":2295},{"type":44,"tag":675,"props":5268,"children":5269},{"style":737},[5270],{"type":50,"value":2314},{"type":44,"tag":675,"props":5272,"children":5273},{"style":737},[5274],{"type":50,"value":1989},{"type":44,"tag":675,"props":5276,"children":5277},{"style":2307},[5278],{"type":50,"value":2323},{"type":44,"tag":675,"props":5280,"children":5281},{"style":737},[5282],{"type":50,"value":2314},{"type":44,"tag":675,"props":5284,"children":5285},{"style":682},[5286],{"type":50,"value":2332},{"type":44,"tag":675,"props":5288,"children":5289},{"style":737},[5290],{"type":50,"value":1999},{"type":44,"tag":675,"props":5292,"children":5293},{"style":737},[5294],{"type":50,"value":2341},{"type":44,"tag":675,"props":5296,"children":5297},{"style":737},[5298],{"type":50,"value":2346},{"type":44,"tag":675,"props":5300,"children":5301},{"class":677,"line":897},[5302,5306,5310,5314,5318,5323,5327,5331,5335,5339],{"type":44,"tag":675,"props":5303,"children":5304},{"style":2030},[5305],{"type":50,"value":2354},{"type":44,"tag":675,"props":5307,"children":5308},{"style":737},[5309],{"type":50,"value":1989},{"type":44,"tag":675,"props":5311,"children":5312},{"style":748},[5313],{"type":50,"value":2052},{"type":44,"tag":675,"props":5315,"children":5316},{"style":737},[5317],{"type":50,"value":2047},{"type":44,"tag":675,"props":5319,"children":5320},{"style":748},[5321],{"type":50,"value":5322}," has",{"type":44,"tag":675,"props":5324,"children":5325},{"style":737},[5326],{"type":50,"value":1999},{"type":44,"tag":675,"props":5328,"children":5329},{"style":737},[5330],{"type":50,"value":2071},{"type":44,"tag":675,"props":5332,"children":5333},{"style":1981},[5334],{"type":50,"value":2076},{"type":44,"tag":675,"props":5336,"children":5337},{"style":2079},[5338],{"type":50,"value":1994},{"type":44,"tag":675,"props":5340,"children":5341},{"style":2307},[5342],{"type":50,"value":2086},{"type":44,"tag":675,"props":5344,"children":5345},{"class":677,"line":906},[5346],{"type":44,"tag":675,"props":5347,"children":5348},{"emptyLinePlaceholder":891},[5349],{"type":50,"value":894},{"type":44,"tag":675,"props":5351,"children":5352},{"class":677,"line":940},[5353,5357,5361,5365,5369,5373,5377,5381,5385,5390,5394,5398,5402,5406],{"type":44,"tag":675,"props":5354,"children":5355},{"style":1981},[5356],{"type":50,"value":2390},{"type":44,"tag":675,"props":5358,"children":5359},{"style":2307},[5360],{"type":50,"value":2099},{"type":44,"tag":675,"props":5362,"children":5363},{"style":748},[5364],{"type":50,"value":267},{"type":44,"tag":675,"props":5366,"children":5367},{"style":737},[5368],{"type":50,"value":2403},{"type":44,"tag":675,"props":5370,"children":5371},{"style":748},[5372],{"type":50,"value":2295},{"type":44,"tag":675,"props":5374,"children":5375},{"style":737},[5376],{"type":50,"value":243},{"type":44,"tag":675,"props":5378,"children":5379},{"style":748},[5380],{"type":50,"value":2416},{"type":44,"tag":675,"props":5382,"children":5383},{"style":2307},[5384],{"type":50,"value":2421},{"type":44,"tag":675,"props":5386,"children":5387},{"style":2079},[5388],{"type":50,"value":5389},"redirect",{"type":44,"tag":675,"props":5391,"children":5392},{"style":2307},[5393],{"type":50,"value":2438},{"type":44,"tag":675,"props":5395,"children":5396},{"style":737},[5397],{"type":50,"value":2443},{"type":44,"tag":675,"props":5399,"children":5400},{"style":687},[5401],{"type":50,"value":2448},{"type":44,"tag":675,"props":5403,"children":5404},{"style":737},[5405],{"type":50,"value":2443},{"type":44,"tag":675,"props":5407,"children":5408},{"style":2307},[5409],{"type":50,"value":2814},{"type":44,"tag":675,"props":5411,"children":5412},{"class":677,"line":948},[5413,5417,5421,5425,5429,5433,5437,5441,5445,5449,5453,5457,5461,5465,5469,5473,5478,5483,5488,5492,5497],{"type":44,"tag":675,"props":5414,"children":5415},{"style":1981},[5416],{"type":50,"value":2390},{"type":44,"tag":675,"props":5418,"children":5419},{"style":2307},[5420],{"type":50,"value":2099},{"type":44,"tag":675,"props":5422,"children":5423},{"style":737},[5424],{"type":50,"value":2104},{"type":44,"tag":675,"props":5426,"children":5427},{"style":2079},[5428],{"type":50,"value":2606},{"type":44,"tag":675,"props":5430,"children":5431},{"style":2307},[5432],{"type":50,"value":2438},{"type":44,"tag":675,"props":5434,"children":5435},{"style":737},[5436],{"type":50,"value":2615},{"type":44,"tag":675,"props":5438,"children":5439},{"style":2307},[5440],{"type":50,"value":2620},{"type":44,"tag":675,"props":5442,"children":5443},{"style":737},[5444],{"type":50,"value":2314},{"type":44,"tag":675,"props":5446,"children":5447},{"style":737},[5448],{"type":50,"value":802},{"type":44,"tag":675,"props":5450,"children":5451},{"style":687},[5452],{"type":50,"value":2633},{"type":44,"tag":675,"props":5454,"children":5455},{"style":737},[5456],{"type":50,"value":2443},{"type":44,"tag":675,"props":5458,"children":5459},{"style":737},[5460],{"type":50,"value":1999},{"type":44,"tag":675,"props":5462,"children":5463},{"style":2307},[5464],{"type":50,"value":2646},{"type":44,"tag":675,"props":5466,"children":5467},{"style":2079},[5468],{"type":50,"value":5389},{"type":44,"tag":675,"props":5470,"children":5471},{"style":2307},[5472],{"type":50,"value":2438},{"type":44,"tag":675,"props":5474,"children":5475},{"style":737},[5476],{"type":50,"value":5477},"`",{"type":44,"tag":675,"props":5479,"children":5480},{"style":687},[5481],{"type":50,"value":5482},"\u002Forgs\u002F",{"type":44,"tag":675,"props":5484,"children":5485},{"style":737},[5486],{"type":50,"value":5487},"${",{"type":44,"tag":675,"props":5489,"children":5490},{"style":748},[5491],{"type":50,"value":267},{"type":44,"tag":675,"props":5493,"children":5494},{"style":737},[5495],{"type":50,"value":5496},"}`",{"type":44,"tag":675,"props":5498,"children":5499},{"style":2307},[5500],{"type":50,"value":2814},{"type":44,"tag":675,"props":5502,"children":5503},{"class":677,"line":957},[5504],{"type":44,"tag":675,"props":5505,"children":5506},{"emptyLinePlaceholder":891},[5507],{"type":50,"value":894},{"type":44,"tag":675,"props":5509,"children":5510},{"class":677,"line":992},[5511,5515,5519,5523,5527,5531,5536,5541,5545,5549,5553,5557],{"type":44,"tag":675,"props":5512,"children":5513},{"style":1981},[5514],{"type":50,"value":2478},{"type":44,"tag":675,"props":5516,"children":5517},{"style":2307},[5518],{"type":50,"value":2483},{"type":44,"tag":675,"props":5520,"children":5521},{"style":682},[5522],{"type":50,"value":2488},{"type":44,"tag":675,"props":5524,"children":5525},{"style":2307},[5526],{"type":50,"value":756},{"type":44,"tag":675,"props":5528,"children":5529},{"style":748},[5530],{"type":50,"value":2674},{"type":44,"tag":675,"props":5532,"children":5533},{"style":748},[5534],{"type":50,"value":5535}," settings",{"type":44,"tag":675,"props":5537,"children":5538},{"style":748},[5539],{"type":50,"value":5540}," for",{"type":44,"tag":675,"props":5542,"children":5543},{"style":737},[5544],{"type":50,"value":1989},{"type":44,"tag":675,"props":5546,"children":5547},{"style":748},[5548],{"type":50,"value":267},{"type":44,"tag":675,"props":5550,"children":5551},{"style":737},[5552],{"type":50,"value":2515},{"type":44,"tag":675,"props":5554,"children":5555},{"style":748},[5556],{"type":50,"value":2488},{"type":44,"tag":675,"props":5558,"children":5559},{"style":737},[5560],{"type":50,"value":989},{"type":44,"tag":675,"props":5562,"children":5563},{"class":677,"line":1000},[5564],{"type":44,"tag":675,"props":5565,"children":5566},{"style":737},[5567],{"type":50,"value":2130},{"type":44,"tag":57,"props":5569,"children":5570},{},[5571,5573,5578],{"type":50,"value":5572},"For middleware-level protection (Next.js) see ",{"type":44,"tag":80,"props":5574,"children":5576},{"className":5575},[],[5577],{"type":50,"value":421},{"type":50,"value":243},{"type":44,"tag":162,"props":5580,"children":5582},{"id":5581},"invitations-short-form",[5583],{"type":50,"value":5584},"Invitations (short form)",{"type":44,"tag":57,"props":5586,"children":5587},{},[5588],{"type":50,"value":5589},"Send from a server action or route handler:",{"type":44,"tag":664,"props":5591,"children":5593},{"className":1969,"code":5592,"language":1971,"meta":669,"style":669},"import { clerkClient, auth } from '@clerk\u002Fnextjs\u002Fserver'\n\nexport async function inviteMember(organizationId: string, emailAddress: string, role: string) {\n  const { userId, has } = await auth()\n\n  if (!userId) throw new Error('Not signed in')\n  if (!has({ permission: 'org:sys_memberships:manage' })) {\n    throw new Error('Not authorized to invite members')\n  }\n\n  const clerk = await clerkClient()\n  return clerk.organizations.createOrganizationInvitation({\n    organizationId,\n    inviterUserId: userId,       \u002F\u002F required per Backend API\n    emailAddress,\n    role,                        \u002F\u002F e.g. 'org:admin' or 'org:member'\n    redirectUrl: 'https:\u002F\u002Fyourapp.com\u002Faccept-invite',\n  })\n}\n",[5594],{"type":44,"tag":80,"props":5595,"children":5596},{"__ignoreMap":669},[5597,5640,5647,5726,5769,5776,5836,5895,5932,5939,5946,5973,6009,6021,6046,6058,6076,6106,6119],{"type":44,"tag":675,"props":5598,"children":5599},{"class":677,"line":678},[5600,5604,5608,5612,5616,5620,5624,5628,5632,5636],{"type":44,"tag":675,"props":5601,"children":5602},{"style":1981},[5603],{"type":50,"value":1984},{"type":44,"tag":675,"props":5605,"children":5606},{"style":737},[5607],{"type":50,"value":1989},{"type":44,"tag":675,"props":5609,"children":5610},{"style":748},[5611],{"type":50,"value":4353},{"type":44,"tag":675,"props":5613,"children":5614},{"style":737},[5615],{"type":50,"value":2047},{"type":44,"tag":675,"props":5617,"children":5618},{"style":748},[5619],{"type":50,"value":1994},{"type":44,"tag":675,"props":5621,"children":5622},{"style":737},[5623],{"type":50,"value":1999},{"type":44,"tag":675,"props":5625,"children":5626},{"style":1981},[5627],{"type":50,"value":2004},{"type":44,"tag":675,"props":5629,"children":5630},{"style":737},[5631],{"type":50,"value":802},{"type":44,"tag":675,"props":5633,"children":5634},{"style":687},[5635],{"type":50,"value":2013},{"type":44,"tag":675,"props":5637,"children":5638},{"style":737},[5639],{"type":50,"value":812},{"type":44,"tag":675,"props":5641,"children":5642},{"class":677,"line":791},[5643],{"type":44,"tag":675,"props":5644,"children":5645},{"emptyLinePlaceholder":891},[5646],{"type":50,"value":894},{"type":44,"tag":675,"props":5648,"children":5649},{"class":677,"line":867},[5650,5654,5658,5662,5667,5671,5676,5680,5684,5688,5693,5697,5701,5705,5709,5713,5717,5722],{"type":44,"tag":675,"props":5651,"children":5652},{"style":1981},[5653],{"type":50,"value":2264},{"type":44,"tag":675,"props":5655,"children":5656},{"style":2030},[5657],{"type":50,"value":2274},{"type":44,"tag":675,"props":5659,"children":5660},{"style":2030},[5661],{"type":50,"value":2279},{"type":44,"tag":675,"props":5663,"children":5664},{"style":2079},[5665],{"type":50,"value":5666}," inviteMember",{"type":44,"tag":675,"props":5668,"children":5669},{"style":737},[5670],{"type":50,"value":2438},{"type":44,"tag":675,"props":5672,"children":5673},{"style":2292},[5674],{"type":50,"value":5675},"organizationId",{"type":44,"tag":675,"props":5677,"children":5678},{"style":737},[5679],{"type":50,"value":2314},{"type":44,"tag":675,"props":5681,"children":5682},{"style":682},[5683],{"type":50,"value":2332},{"type":44,"tag":675,"props":5685,"children":5686},{"style":737},[5687],{"type":50,"value":2047},{"type":44,"tag":675,"props":5689,"children":5690},{"style":2292},[5691],{"type":50,"value":5692}," emailAddress",{"type":44,"tag":675,"props":5694,"children":5695},{"style":737},[5696],{"type":50,"value":2314},{"type":44,"tag":675,"props":5698,"children":5699},{"style":682},[5700],{"type":50,"value":2332},{"type":44,"tag":675,"props":5702,"children":5703},{"style":737},[5704],{"type":50,"value":2047},{"type":44,"tag":675,"props":5706,"children":5707},{"style":2292},[5708],{"type":50,"value":2620},{"type":44,"tag":675,"props":5710,"children":5711},{"style":737},[5712],{"type":50,"value":2314},{"type":44,"tag":675,"props":5714,"children":5715},{"style":682},[5716],{"type":50,"value":2332},{"type":44,"tag":675,"props":5718,"children":5719},{"style":737},[5720],{"type":50,"value":5721},")",{"type":44,"tag":675,"props":5723,"children":5724},{"style":737},[5725],{"type":50,"value":2346},{"type":44,"tag":675,"props":5727,"children":5728},{"class":677,"line":27},[5729,5733,5737,5741,5745,5749,5753,5757,5761,5765],{"type":44,"tag":675,"props":5730,"children":5731},{"style":2030},[5732],{"type":50,"value":2354},{"type":44,"tag":675,"props":5734,"children":5735},{"style":737},[5736],{"type":50,"value":1989},{"type":44,"tag":675,"props":5738,"children":5739},{"style":748},[5740],{"type":50,"value":4443},{"type":44,"tag":675,"props":5742,"children":5743},{"style":737},[5744],{"type":50,"value":2047},{"type":44,"tag":675,"props":5746,"children":5747},{"style":748},[5748],{"type":50,"value":5322},{"type":44,"tag":675,"props":5750,"children":5751},{"style":737},[5752],{"type":50,"value":1999},{"type":44,"tag":675,"props":5754,"children":5755},{"style":737},[5756],{"type":50,"value":2071},{"type":44,"tag":675,"props":5758,"children":5759},{"style":1981},[5760],{"type":50,"value":2076},{"type":44,"tag":675,"props":5762,"children":5763},{"style":2079},[5764],{"type":50,"value":1994},{"type":44,"tag":675,"props":5766,"children":5767},{"style":2307},[5768],{"type":50,"value":2086},{"type":44,"tag":675,"props":5770,"children":5771},{"class":677,"line":897},[5772],{"type":44,"tag":675,"props":5773,"children":5774},{"emptyLinePlaceholder":891},[5775],{"type":50,"value":894},{"type":44,"tag":675,"props":5777,"children":5778},{"class":677,"line":906},[5779,5783,5787,5791,5796,5800,5805,5810,5815,5819,5823,5828,5832],{"type":44,"tag":675,"props":5780,"children":5781},{"style":1981},[5782],{"type":50,"value":2390},{"type":44,"tag":675,"props":5784,"children":5785},{"style":2307},[5786],{"type":50,"value":2099},{"type":44,"tag":675,"props":5788,"children":5789},{"style":737},[5790],{"type":50,"value":2104},{"type":44,"tag":675,"props":5792,"children":5793},{"style":748},[5794],{"type":50,"value":5795},"userId",{"type":44,"tag":675,"props":5797,"children":5798},{"style":2307},[5799],{"type":50,"value":2421},{"type":44,"tag":675,"props":5801,"children":5802},{"style":1981},[5803],{"type":50,"value":5804},"throw",{"type":44,"tag":675,"props":5806,"children":5807},{"style":737},[5808],{"type":50,"value":5809}," new",{"type":44,"tag":675,"props":5811,"children":5812},{"style":2079},[5813],{"type":50,"value":5814}," Error",{"type":44,"tag":675,"props":5816,"children":5817},{"style":2307},[5818],{"type":50,"value":2438},{"type":44,"tag":675,"props":5820,"children":5821},{"style":737},[5822],{"type":50,"value":2443},{"type":44,"tag":675,"props":5824,"children":5825},{"style":687},[5826],{"type":50,"value":5827},"Not signed in",{"type":44,"tag":675,"props":5829,"children":5830},{"style":737},[5831],{"type":50,"value":2443},{"type":44,"tag":675,"props":5833,"children":5834},{"style":2307},[5835],{"type":50,"value":2814},{"type":44,"tag":675,"props":5837,"children":5838},{"class":677,"line":940},[5839,5843,5847,5851,5855,5859,5863,5867,5871,5875,5879,5883,5887,5891],{"type":44,"tag":675,"props":5840,"children":5841},{"style":1981},[5842],{"type":50,"value":2390},{"type":44,"tag":675,"props":5844,"children":5845},{"style":2307},[5846],{"type":50,"value":2099},{"type":44,"tag":675,"props":5848,"children":5849},{"style":737},[5850],{"type":50,"value":2104},{"type":44,"tag":675,"props":5852,"children":5853},{"style":2079},[5854],{"type":50,"value":2606},{"type":44,"tag":675,"props":5856,"children":5857},{"style":2307},[5858],{"type":50,"value":2438},{"type":44,"tag":675,"props":5860,"children":5861},{"style":737},[5862],{"type":50,"value":2615},{"type":44,"tag":675,"props":5864,"children":5865},{"style":2307},[5866],{"type":50,"value":2755},{"type":44,"tag":675,"props":5868,"children":5869},{"style":737},[5870],{"type":50,"value":2314},{"type":44,"tag":675,"props":5872,"children":5873},{"style":737},[5874],{"type":50,"value":802},{"type":44,"tag":675,"props":5876,"children":5877},{"style":687},[5878],{"type":50,"value":2768},{"type":44,"tag":675,"props":5880,"children":5881},{"style":737},[5882],{"type":50,"value":2443},{"type":44,"tag":675,"props":5884,"children":5885},{"style":737},[5886],{"type":50,"value":1999},{"type":44,"tag":675,"props":5888,"children":5889},{"style":2307},[5890],{"type":50,"value":2646},{"type":44,"tag":675,"props":5892,"children":5893},{"style":737},[5894],{"type":50,"value":2114},{"type":44,"tag":675,"props":5896,"children":5897},{"class":677,"line":948},[5898,5903,5907,5911,5915,5919,5924,5928],{"type":44,"tag":675,"props":5899,"children":5900},{"style":1981},[5901],{"type":50,"value":5902},"    throw",{"type":44,"tag":675,"props":5904,"children":5905},{"style":737},[5906],{"type":50,"value":5809},{"type":44,"tag":675,"props":5908,"children":5909},{"style":2079},[5910],{"type":50,"value":5814},{"type":44,"tag":675,"props":5912,"children":5913},{"style":2307},[5914],{"type":50,"value":2438},{"type":44,"tag":675,"props":5916,"children":5917},{"style":737},[5918],{"type":50,"value":2443},{"type":44,"tag":675,"props":5920,"children":5921},{"style":687},[5922],{"type":50,"value":5923},"Not authorized to invite members",{"type":44,"tag":675,"props":5925,"children":5926},{"style":737},[5927],{"type":50,"value":2443},{"type":44,"tag":675,"props":5929,"children":5930},{"style":2307},[5931],{"type":50,"value":2814},{"type":44,"tag":675,"props":5933,"children":5934},{"class":677,"line":957},[5935],{"type":44,"tag":675,"props":5936,"children":5937},{"style":737},[5938],{"type":50,"value":2470},{"type":44,"tag":675,"props":5940,"children":5941},{"class":677,"line":992},[5942],{"type":44,"tag":675,"props":5943,"children":5944},{"emptyLinePlaceholder":891},[5945],{"type":50,"value":894},{"type":44,"tag":675,"props":5947,"children":5948},{"class":677,"line":1000},[5949,5953,5957,5961,5965,5969],{"type":44,"tag":675,"props":5950,"children":5951},{"style":2030},[5952],{"type":50,"value":2354},{"type":44,"tag":675,"props":5954,"children":5955},{"style":748},[5956],{"type":50,"value":4370},{"type":44,"tag":675,"props":5958,"children":5959},{"style":737},[5960],{"type":50,"value":2071},{"type":44,"tag":675,"props":5962,"children":5963},{"style":1981},[5964],{"type":50,"value":2076},{"type":44,"tag":675,"props":5966,"children":5967},{"style":2079},[5968],{"type":50,"value":4353},{"type":44,"tag":675,"props":5970,"children":5971},{"style":2307},[5972],{"type":50,"value":2086},{"type":44,"tag":675,"props":5974,"children":5975},{"class":677,"line":1009},[5976,5980,5984,5988,5992,5996,6001,6005],{"type":44,"tag":675,"props":5977,"children":5978},{"style":1981},[5979],{"type":50,"value":2478},{"type":44,"tag":675,"props":5981,"children":5982},{"style":748},[5983],{"type":50,"value":4370},{"type":44,"tag":675,"props":5985,"children":5986},{"style":737},[5987],{"type":50,"value":243},{"type":44,"tag":675,"props":5989,"children":5990},{"style":748},[5991],{"type":50,"value":4379},{"type":44,"tag":675,"props":5993,"children":5994},{"style":737},[5995],{"type":50,"value":243},{"type":44,"tag":675,"props":5997,"children":5998},{"style":2079},[5999],{"type":50,"value":6000},"createOrganizationInvitation",{"type":44,"tag":675,"props":6002,"children":6003},{"style":2307},[6004],{"type":50,"value":2438},{"type":44,"tag":675,"props":6006,"children":6007},{"style":737},[6008],{"type":50,"value":2114},{"type":44,"tag":675,"props":6010,"children":6011},{"class":677,"line":1067},[6012,6017],{"type":44,"tag":675,"props":6013,"children":6014},{"style":748},[6015],{"type":50,"value":6016},"    organizationId",{"type":44,"tag":675,"props":6018,"children":6019},{"style":737},[6020],{"type":50,"value":4426},{"type":44,"tag":675,"props":6022,"children":6023},{"class":677,"line":1075},[6024,6029,6033,6037,6041],{"type":44,"tag":675,"props":6025,"children":6026},{"style":2307},[6027],{"type":50,"value":6028},"    inviterUserId",{"type":44,"tag":675,"props":6030,"children":6031},{"style":737},[6032],{"type":50,"value":2314},{"type":44,"tag":675,"props":6034,"children":6035},{"style":748},[6036],{"type":50,"value":4443},{"type":44,"tag":675,"props":6038,"children":6039},{"style":737},[6040],{"type":50,"value":2047},{"type":44,"tag":675,"props":6042,"children":6043},{"style":831},[6044],{"type":50,"value":6045},"       \u002F\u002F required per Backend API\n",{"type":44,"tag":675,"props":6047,"children":6048},{"class":677,"line":1084},[6049,6054],{"type":44,"tag":675,"props":6050,"children":6051},{"style":748},[6052],{"type":50,"value":6053},"    emailAddress",{"type":44,"tag":675,"props":6055,"children":6056},{"style":737},[6057],{"type":50,"value":4426},{"type":44,"tag":675,"props":6059,"children":6061},{"class":677,"line":6060},16,[6062,6067,6071],{"type":44,"tag":675,"props":6063,"children":6064},{"style":748},[6065],{"type":50,"value":6066},"    role",{"type":44,"tag":675,"props":6068,"children":6069},{"style":737},[6070],{"type":50,"value":2047},{"type":44,"tag":675,"props":6072,"children":6073},{"style":831},[6074],{"type":50,"value":6075},"                        \u002F\u002F e.g. 'org:admin' or 'org:member'\n",{"type":44,"tag":675,"props":6077,"children":6079},{"class":677,"line":6078},17,[6080,6085,6089,6093,6098,6102],{"type":44,"tag":675,"props":6081,"children":6082},{"style":2307},[6083],{"type":50,"value":6084},"    redirectUrl",{"type":44,"tag":675,"props":6086,"children":6087},{"style":737},[6088],{"type":50,"value":2314},{"type":44,"tag":675,"props":6090,"children":6091},{"style":737},[6092],{"type":50,"value":802},{"type":44,"tag":675,"props":6094,"children":6095},{"style":687},[6096],{"type":50,"value":6097},"https:\u002F\u002Fyourapp.com\u002Faccept-invite",{"type":44,"tag":675,"props":6099,"children":6100},{"style":737},[6101],{"type":50,"value":2443},{"type":44,"tag":675,"props":6103,"children":6104},{"style":737},[6105],{"type":50,"value":4426},{"type":44,"tag":675,"props":6107,"children":6109},{"class":677,"line":6108},18,[6110,6115],{"type":44,"tag":675,"props":6111,"children":6112},{"style":737},[6113],{"type":50,"value":6114},"  }",{"type":44,"tag":675,"props":6116,"children":6117},{"style":2307},[6118],{"type":50,"value":2814},{"type":44,"tag":675,"props":6120,"children":6122},{"class":677,"line":6121},19,[6123],{"type":44,"tag":675,"props":6124,"children":6125},{"style":737},[6126],{"type":50,"value":2130},{"type":44,"tag":57,"props":6128,"children":6129},{},[6130,6132,6137,6139,6144],{"type":50,"value":6131},"The full lifecycle (list, revoke, bulk create, built-in ",{"type":44,"tag":80,"props":6133,"children":6135},{"className":6134},[],[6136],{"type":50,"value":307},{"type":50,"value":6138}," UI) lives in ",{"type":44,"tag":80,"props":6140,"children":6142},{"className":6141},[],[6143],{"type":50,"value":395},{"type":50,"value":243},{"type":44,"tag":162,"props":6146,"children":6148},{"id":6147},"workflow",[6149],{"type":50,"value":6150},"Workflow",{"type":44,"tag":169,"props":6152,"children":6153},{},[6154,6164,6174,6190,6220,6237],{"type":44,"tag":173,"props":6155,"children":6156},{},[6157,6162],{"type":44,"tag":61,"props":6158,"children":6159},{},[6160],{"type":50,"value":6161},"Enable",{"type":50,"value":6163}," — Organizations + Membership mode in Dashboard",{"type":44,"tag":173,"props":6165,"children":6166},{},[6167,6172],{"type":44,"tag":61,"props":6168,"children":6169},{},[6170],{"type":50,"value":6171},"Create org",{"type":50,"value":6173}," — via UI component or Backend API",{"type":44,"tag":173,"props":6175,"children":6176},{},[6177,6182,6184],{"type":44,"tag":61,"props":6178,"children":6179},{},[6180],{"type":50,"value":6181},"Invite members",{"type":50,"value":6183}," — Backend API or built-in UI, with ",{"type":44,"tag":80,"props":6185,"children":6187},{"className":6186},[],[6188],{"type":50,"value":6189},"inviterUserId",{"type":44,"tag":173,"props":6191,"children":6192},{},[6193,6198,6199,6204,6205,6210,6212,6218],{"type":44,"tag":61,"props":6194,"children":6195},{},[6196],{"type":50,"value":6197},"Gate access",{"type":50,"value":3491},{"type":44,"tag":80,"props":6200,"children":6202},{"className":6201},[],[6203],{"type":50,"value":283},{"type":50,"value":261},{"type":44,"tag":80,"props":6206,"children":6208},{"className":6207},[],[6209],{"type":50,"value":290},{"type":50,"value":6211}," with canonical ",{"type":44,"tag":80,"props":6213,"children":6215},{"className":6214},[],[6216],{"type":50,"value":6217},"org:sys_*",{"type":50,"value":6219}," names",{"type":44,"tag":173,"props":6221,"children":6222},{},[6223,6228,6229,6235],{"type":44,"tag":61,"props":6224,"children":6225},{},[6226],{"type":50,"value":6227},"Scope routes",{"type":50,"value":3491},{"type":44,"tag":80,"props":6230,"children":6232},{"className":6231},[],[6233],{"type":50,"value":6234},"orgSlug === params.slug",{"type":50,"value":6236}," on every protected page",{"type":44,"tag":173,"props":6238,"children":6239},{},[6240,6245,6246,6251],{"type":44,"tag":61,"props":6241,"children":6242},{},[6243],{"type":50,"value":6244},"Switch orgs",{"type":50,"value":3491},{"type":44,"tag":80,"props":6247,"children":6249},{"className":6248},[],[6250],{"type":50,"value":225},{"type":50,"value":6252}," handles the whole flow",{"type":44,"tag":162,"props":6254,"children":6256},{"id":6255},"see-also",[6257],{"type":50,"value":6258},"See Also",{"type":44,"tag":1721,"props":6260,"children":6261},{},[6262,6272,6295,6320,6331],{"type":44,"tag":173,"props":6263,"children":6264},{},[6265,6270],{"type":44,"tag":80,"props":6266,"children":6268},{"className":6267},[],[6269],{"type":50,"value":653},{"type":50,"value":6271}," — Initial Clerk install",{"type":44,"tag":173,"props":6273,"children":6274},{},[6275,6280,6282,6288,6289],{"type":44,"tag":80,"props":6276,"children":6278},{"className":6277},[],[6279],{"type":50,"value":333},{"type":50,"value":6281}," — Seat-limit plans, per-plan billing, ",{"type":44,"tag":80,"props":6283,"children":6285},{"className":6284},[],[6286],{"type":50,"value":6287},"has({ plan })",{"type":50,"value":261},{"type":44,"tag":80,"props":6290,"children":6292},{"className":6291},[],[6293],{"type":50,"value":6294},"has({ feature })",{"type":44,"tag":173,"props":6296,"children":6297},{},[6298,6304,6306,6312,6313,6319],{"type":44,"tag":80,"props":6299,"children":6301},{"className":6300},[],[6302],{"type":50,"value":6303},"clerk-webhooks",{"type":50,"value":6305}," — Sync org events to your database (",{"type":44,"tag":80,"props":6307,"children":6309},{"className":6308},[],[6310],{"type":50,"value":6311},"organization.created",{"type":50,"value":227},{"type":44,"tag":80,"props":6314,"children":6316},{"className":6315},[],[6317],{"type":50,"value":6318},"organizationMembership.*",{"type":50,"value":5721},{"type":44,"tag":173,"props":6321,"children":6322},{},[6323,6329],{"type":44,"tag":80,"props":6324,"children":6326},{"className":6325},[],[6327],{"type":50,"value":6328},"clerk-backend-api",{"type":50,"value":6330}," — Full Backend API reference",{"type":44,"tag":173,"props":6332,"children":6333},{},[6334,6339],{"type":44,"tag":80,"props":6335,"children":6337},{"className":6336},[],[6338],{"type":50,"value":518},{"type":50,"value":6340}," — Framework-specific middleware, server actions, caching",{"type":44,"tag":6342,"props":6343,"children":6344},"style",{},[6345],{"type":50,"value":6346},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":6348,"total":6530},[6349,6365,6380,6397,6414,6427,6445,6462,6478,6495,6509,6523],{"slug":8,"name":8,"fn":6350,"description":6351,"org":6352,"tags":6353,"stars":23,"repoUrl":24,"updatedAt":6364},"route Clerk authentication requests","Clerk authentication router. Use when user asks about Clerk CLI operations, adding authentication, setting up Clerk, custom sign-in flows, Swift or native iOS auth, native Android auth, Next.js patterns, React patterns, Vue patterns, Nuxt patterns, Astro patterns, TanStack Start patterns, Expo patterns, React Router patterns, Chrome Extension patterns, organizations, billing, subscriptions, payments, pricing, plans, seat-based pricing, feature entitlements, syncing users, testing, impersonating a user, or testing webhooks locally. Automatically routes to the specific skill based on their task.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6354,6357,6358,6361],{"name":6355,"slug":6356,"type":13},"Authentication","authentication",{"name":9,"slug":8,"type":13},{"name":6359,"slug":6360,"type":13},"Mobile","mobile",{"name":6362,"slug":6363,"type":13},"Web Development","web-development","2026-07-18T05:12:23.438307",{"slug":6366,"name":6366,"fn":6367,"description":6368,"org":6369,"tags":6370,"stars":23,"repoUrl":24,"updatedAt":6379},"clerk-android","implement Clerk auth for native Android apps","Implement Clerk authentication for native Android apps using Kotlin and Jetpack Compose with clerk-android source-guided patterns. Use for prebuilt AuthView\u002FUserButton or custom API-driven auth flows. Do not use for Expo or React Native projects.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6371,6374,6375,6378],{"name":6372,"slug":6373,"type":13},"Android","android",{"name":9,"slug":8,"type":13},{"name":6376,"slug":6377,"type":13},"Kotlin","kotlin",{"name":6359,"slug":6360,"type":13},"2026-04-10T05:00:18.622871",{"slug":6381,"name":6381,"fn":6382,"description":6383,"org":6384,"tags":6385,"stars":23,"repoUrl":24,"updatedAt":6396},"clerk-astro-patterns","implement Clerk auth in Astro apps","Astro patterns with Clerk — middleware, SSR pages, island components, API routes, static vs SSR rendering. Triggers on: astro clerk, clerk astro middleware, astro protected page, clerk island component, astro API route auth, clerk astro SSR.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6386,6388,6389,6390,6393],{"name":6387,"slug":3234,"type":13},"Astro",{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},"Frontend","frontend",{"name":6394,"slug":6395,"type":13},"Serverless","serverless","2026-04-07T04:46:14.731808",{"slug":6328,"name":6328,"fn":6398,"description":6399,"org":6400,"tags":6401,"stars":23,"repoUrl":24,"updatedAt":6413},"execute Clerk Backend API requests","Clerk Backend REST API explorer and executor. Browse tags, inspect endpoint schemas, and execute authenticated requests. Use when listing users, managing organizations, or calling any Clerk API endpoint.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6402,6405,6406,6409,6410],{"name":6403,"slug":6404,"type":13},"API Development","api-development",{"name":6355,"slug":6356,"type":13},{"name":6407,"slug":6408,"type":13},"Backend","backend",{"name":9,"slug":8,"type":13},{"name":6411,"slug":6412,"type":13},"REST API","rest-api","2026-04-10T05:00:08.728072",{"slug":333,"name":333,"fn":6415,"description":6416,"org":6417,"tags":6418,"stars":23,"repoUrl":24,"updatedAt":6426},"manage subscriptions with Clerk Billing","Clerk Billing for subscription management - render Clerk's PricingTable and in-app checkout drawer, configure subscription plans, seat-limit plans for B2B, feature entitlements with has(), and billing webhooks. Use for SaaS monetization, plan gating, checkout flows, trials, invoicing, and subscription lifecycle management.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6419,6420,6421,6422,6425],{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},{"name":6423,"slug":6424,"type":13},"Payments","payments",{"name":15,"slug":16,"type":13},"2026-04-29T05:37:27.130955",{"slug":6428,"name":6428,"fn":6429,"description":6430,"org":6431,"tags":6432,"stars":23,"repoUrl":24,"updatedAt":6444},"clerk-chrome-extension-patterns","implement Clerk auth in Chrome Extensions","Chrome Extension auth with @clerk\u002Fchrome-extension -- popup\u002Fsidepanel setup, syncHost for OAuth\u002FSAML via web app, createClerkClient for service workers and headless extensions, stable CRX ID. Triggers on: Chrome extension auth, Plasmo clerk, popup sign-in, syncHost, background service worker token, createClerkClient, headless extension.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6433,6436,6437,6438,6441],{"name":6434,"slug":6435,"type":13},"Auth","auth",{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},{"name":6439,"slug":6440,"type":13},"OAuth","oauth",{"name":6442,"slug":6443,"type":13},"Security","security","2026-04-07T04:46:08.489328",{"slug":6446,"name":6446,"fn":6447,"description":6448,"org":6449,"tags":6450,"stars":23,"repoUrl":24,"updatedAt":6461},"clerk-cli","manage Clerk authentication and instances via CLI","Operate the Clerk CLI (`clerk` binary) for authentication, user\u002Forg\u002Fsession management, impersonation, local webhook testing, deploy verification, instance config, env keys, feature toggles, and any Clerk Backend, Platform, or Frontend API call. Use when the user mentions Clerk management tasks, \"list clerk users\", \"impersonate a user\", \"test webhooks locally\", \"enable orgs\", \"enable billing\", \"clerk env pull\", \"clerk doctor\", \"clerk deploy\", \"clerk api\", or any ad-hoc Clerk API request. Prefer the CLI over raw HTTP: it handles auth, key resolution, app\u002Finstance targeting, and formatting automatically.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6451,6452,6453,6454,6457,6460],{"name":6403,"slug":6404,"type":13},{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6455,"slug":6456,"type":13},"CLI","cli",{"name":6458,"slug":6459,"type":13},"Deployment","deployment",{"name":6442,"slug":6443,"type":13},"2026-07-31T05:52:40.580813",{"slug":6463,"name":6463,"fn":6464,"description":6465,"org":6466,"tags":6467,"stars":23,"repoUrl":24,"updatedAt":6477},"clerk-custom-ui","customize Clerk UI and auth flows","Custom authentication flows and component appearance - hooks (useSignIn, useSignUp), themes, colors, fonts, CSS. Use for custom sign-in\u002Fsign-up flows, appearance styling, visual customization, branding.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6468,6469,6472,6473,6476],{"name":6355,"slug":6356,"type":13},{"name":6470,"slug":6471,"type":13},"Branding","branding",{"name":9,"slug":8,"type":13},{"name":6474,"slug":6475,"type":13},"Design","design",{"name":6391,"slug":6392,"type":13},"2026-04-10T05:00:10.109158",{"slug":6479,"name":6479,"fn":6480,"description":6481,"org":6482,"tags":6483,"stars":23,"repoUrl":24,"updatedAt":6494},"clerk-expo","implement Clerk authentication in Expo apps","Add Clerk authentication to Expo and React Native apps using @clerk\u002Fexpo. Use for Expo setup, prebuilt native components (AuthView, UserButton), custom sign-in\u002Fsign-up flows (email, password, SMS\u002Fphone OTP, MFA), OAuth\u002FSSO, native Google\u002FApple sign-in, Expo Router protected routes, biometrics, and push notifications. Do not use for native Swift\u002FiOS, native Android\u002FKotlin, or web-only framework projects.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6484,6485,6486,6489,6490,6491],{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6487,"slug":6488,"type":13},"Expo","expo",{"name":6391,"slug":6392,"type":13},{"name":6359,"slug":6360,"type":13},{"name":6492,"slug":6493,"type":13},"React Native","react-native","2026-05-19T06:48:47.074181",{"slug":518,"name":518,"fn":6496,"description":6497,"org":6498,"tags":6499,"stars":23,"repoUrl":24,"updatedAt":6508},"implement advanced Next.js patterns with Clerk","Advanced Next.js patterns - middleware, Server Actions, caching with Clerk.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6500,6501,6502,6505],{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},{"name":6503,"slug":6504,"type":13},"Next.js","next-js",{"name":6506,"slug":6507,"type":13},"Performance","performance","2026-04-10T05:00:15.80215",{"slug":6510,"name":6510,"fn":6511,"description":6512,"org":6513,"tags":6514,"stars":23,"repoUrl":24,"updatedAt":6522},"clerk-nuxt-patterns","implement Clerk auth in Nuxt 3 apps","Nuxt 3 auth patterns with @clerk\u002Fnuxt - middleware, composables, server API routes, SSR. Triggers on: Nuxt auth, useAuth composable, clerkMiddleware Nuxt, server API Clerk, Nuxt route protection.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6515,6516,6517,6518,6519],{"name":6355,"slug":6356,"type":13},{"name":6407,"slug":6408,"type":13},{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},{"name":6520,"slug":6521,"type":13},"Nuxt","nuxt","2026-04-07T04:46:18.337538",{"slug":4,"name":4,"fn":5,"description":6,"org":6524,"tags":6525,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6526,6527,6528,6529],{"name":9,"slug":8,"type":13},{"name":18,"slug":19,"type":13},{"name":21,"slug":22,"type":13},{"name":15,"slug":16,"type":13},20,{"items":6532,"total":6530},[6533,6540,6547,6555,6563,6571,6579],{"slug":8,"name":8,"fn":6350,"description":6351,"org":6534,"tags":6535,"stars":23,"repoUrl":24,"updatedAt":6364},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6536,6537,6538,6539],{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6359,"slug":6360,"type":13},{"name":6362,"slug":6363,"type":13},{"slug":6366,"name":6366,"fn":6367,"description":6368,"org":6541,"tags":6542,"stars":23,"repoUrl":24,"updatedAt":6379},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6543,6544,6545,6546],{"name":6372,"slug":6373,"type":13},{"name":9,"slug":8,"type":13},{"name":6376,"slug":6377,"type":13},{"name":6359,"slug":6360,"type":13},{"slug":6381,"name":6381,"fn":6382,"description":6383,"org":6548,"tags":6549,"stars":23,"repoUrl":24,"updatedAt":6396},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6550,6551,6552,6553,6554],{"name":6387,"slug":3234,"type":13},{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},{"name":6394,"slug":6395,"type":13},{"slug":6328,"name":6328,"fn":6398,"description":6399,"org":6556,"tags":6557,"stars":23,"repoUrl":24,"updatedAt":6413},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6558,6559,6560,6561,6562],{"name":6403,"slug":6404,"type":13},{"name":6355,"slug":6356,"type":13},{"name":6407,"slug":6408,"type":13},{"name":9,"slug":8,"type":13},{"name":6411,"slug":6412,"type":13},{"slug":333,"name":333,"fn":6415,"description":6416,"org":6564,"tags":6565,"stars":23,"repoUrl":24,"updatedAt":6426},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6566,6567,6568,6569,6570],{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},{"name":6423,"slug":6424,"type":13},{"name":15,"slug":16,"type":13},{"slug":6428,"name":6428,"fn":6429,"description":6430,"org":6572,"tags":6573,"stars":23,"repoUrl":24,"updatedAt":6444},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6574,6575,6576,6577,6578],{"name":6434,"slug":6435,"type":13},{"name":9,"slug":8,"type":13},{"name":6391,"slug":6392,"type":13},{"name":6439,"slug":6440,"type":13},{"name":6442,"slug":6443,"type":13},{"slug":6446,"name":6446,"fn":6447,"description":6448,"org":6580,"tags":6581,"stars":23,"repoUrl":24,"updatedAt":6461},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6582,6583,6584,6585,6586,6587],{"name":6403,"slug":6404,"type":13},{"name":6355,"slug":6356,"type":13},{"name":9,"slug":8,"type":13},{"name":6455,"slug":6456,"type":13},{"name":6458,"slug":6459,"type":13},{"name":6442,"slug":6443,"type":13}]