feat(settings): show copyable organization ID in org settings - #71013
Conversation
Adds a read-only "Organization ID" card to the Organization > General settings page, mirroring the existing "Project ID" display in project settings. The ID is shown in a CodeSnippet with a built-in copy button. Generated-By: PostHog Code Task-Id: 18051cd2-45e3-46e9-bf81-0684ff7b397b
|
Hey @sortafreel! 👋 It looks like your git author email on this PR isn't your
You can fix it for this repo with: git config user.email "you@posthog.com"Or set it globally with |
🤖 CI report✅ Bundle size — no changeUncompressed size of every built Total: 64.80 MiB · no change No file changed by more than 1000 B. Posted automatically by build-bundle-size-report · uncompressed bytes from dist-report ✅ Eager graph — within budgetHow much code each root ships on the eager path — downloaded and parsed before the surface is interactive. Measured from the esbuild output chunks (post-tree-shake, static imports only); lazy
🟢 Largest files eagerly shipped from
|
| Size | File |
|---|---|
| 126.8 KiB | ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js |
| 24.6 KiB | ../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js |
| 6.3 KiB | ../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js |
| 4.5 KiB | ../node_modules/.pnpm/@jspm+core@2.1.0/node_modules/@jspm/core/nodelibs/browser/process.js |
| 3.9 KiB | ../node_modules/.pnpm/scheduler@0.23.2/node_modules/scheduler/cjs/scheduler.production.min.js |
| 1.4 KiB | ../node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js |
| 1.3 KiB | src/RootErrorBoundary.tsx |
| 912 B | ../node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js |
| 789 B | src/scenes/ChunkLoadErrorBoundary.tsx |
| 762 B | src/index.tsx |
Largest files eagerly shipped from src/scenes/AuthenticatedShell.tsx
| Size | File |
|---|---|
| 281.1 KiB | ../node_modules/.pnpm/posthog-js@1.401.0/node_modules/posthog-js/dist/rrweb.js |
| 267.7 KiB | ../node_modules/.pnpm/@posthog+icons@0.38.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js |
| 235.5 KiB | src/taxonomy/core-filter-definitions-by-group.json |
| 222.7 KiB | ../node_modules/.pnpm/posthog-js@1.401.0/node_modules/posthog-js/dist/module.js |
| 164.0 KiB | src/queries/validators.js |
| 154.3 KiB | ../node_modules/.pnpm/re2js@0.4.1/node_modules/re2js/build/index.esm.js |
| 126.8 KiB | ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js |
| 106.1 KiB | src/lib/api.ts |
| 93.3 KiB | ../node_modules/.pnpm/prosemirror-view@1.40.1/node_modules/prosemirror-view/dist/index.js |
| 92.7 KiB | ../packages/quill/packages/quill/dist/index.js |
Posted automatically by check-eager-graph · sizes are eager output bytes (shipped, post-tree-shake) from the esbuild metafile · part of #32479
✅ Dist folder size — 🔺 +5.6 KiB (+0.0%)
Total size of the built frontend/dist folder (all assets), compared against the base branch.
Total: 1308.72 MiB · 🔺 +5.6 KiB (+0.0%)
🦔 Hogbox preview · ✅ ready▶ Open the preview
commit |
|
Reviews (1): Last reviewed commit: "feat(settings): show copyable organizati..." | Re-trigger Greptile |
There was a problem hiding this comment.
Pull request overview
This PR adds a new read-only setting entry in Organization → General that displays the current organization’s ID in a copyable CodeSnippet, mirroring the existing “Project ID” pattern in environment (project) settings.
Changes:
- Adds a new settings-map entry (
organization-id) under organization general settings. - Extends the
SettingIdunion to includeorganization-idfor type safety. - Introduces a new
OrganizationVariablespresentational component that renders a copyable Organization ID and a link to the API docs.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| frontend/src/scenes/settings/types.ts | Adds organization-id to the SettingId union. |
| frontend/src/scenes/settings/SettingsMap.tsx | Registers the new “Organization ID” setting and wires it to the new component. |
| frontend/src/scenes/settings/organization/OrgVariables.tsx | Implements the UI card showing a copyable organization ID. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Show a skeleton instead of a copyable empty string while the organization is loading, and drop the inner label that duplicated the section heading rendered by the settings scene. Generated-By: PostHog Code Task-Id: 18051cd2-45e3-46e9-bf81-0684ff7b397b
|
👋 Visual changes detected for this PR. Review and approve in PostHog Visual Review If these changes are unexpected, they may be caused by a flaky test or a broken snapshot on master. Don't approve — rerun the job or wait for a fix. |
2 updated Run: 1937f6f7-d8ce-4d4f-bef3-d91ec402f5bb Co-authored-by: sortafreel <354488+sortafreel@users.noreply.github.com>
Problem
The organization ID is needed when working with the PostHog API (org-scoped endpoints) or when referencing an organization in support requests, but it isn't visible anywhere in the UI. Project settings already show a copyable "Project ID", while organization settings show nothing equivalent.
Changes
Adds a read-only "Organization ID" section to Organization → General settings, right below "Name & logo". It reuses the same
LemonLabel+CodeSnippetcard pattern as the "Project ID" display in project settings, so the ID comes with a built-in copy-to-clipboard button and is visible to all organization members (view only, nothing editable).I couldn't run the app or capture a screenshot in this environment, but the card is visually identical to the existing "Project ID" card on the project settings page.
How did you test this code?
pnpm --filter=@posthog/frontend formatpasses.tsgo --noEmittypecheck reports no errors in the changed files.CodeSnippethandles the copy behavior), so there's no new logic a test would guard.Automatic notifications
Docs update
🤖 Agent context
Autonomy: Human-driven (agent-assisted)
Authored by Claude (PostHog Code cloud task) from a request to make the organization ID visible and copyable in organization settings. The main decision was placement and shape: rather than inventing new UI, I mirrored the established "Project ID" card from
TeamVariablesin project settings (LemonLabel+CodeSnippet compact), registered as its own setting entry (organization-id) so it's searchable in settings. No repo skills applied to this change (no DRF, migrations, or tests involved).Created with PostHog Code