Private pages
Private pages allow platform users to independently create personal pages and dashboards, avoiding the overhead of waiting for admins to create them and cluttering the organization sidebar.
An engineering manager can build a team health dashboard they open every Monday before their standup meeting. A developer can set up a personal deployment tracker filtered to his/her own services.
Admins can grant members the create:private-pages scope to enable this. Private pages appear in a dedicated Private section of the sidebar, separate from organization pages, and are visible only to their creator until explicitly shared or promoted org-wide. Page permissions still control who can view or edit each page.
Private pages are controlled by a feature flag.
Members: if you do not see a Private section in the catalog sidebar, contact your org admin to confirm the feature is enabled and that you have been granted the create:private-pages permission.
Catalog sidebar sections
When private pages are enabled, the catalog sidebar is split into two sections:
- Organization - shared pages visible to users according to each page's permissions.
- Private - personal pages created by individual users.
Each section shows up to 10 items by default. When a section has more pages, click Show all to expand it. If you navigate to a page that is hidden behind Show all, Port automatically expands that section so the active page is visible.
Private pages are sorted alphabetically within the Private section. You can reorder pages within a section, but dragging a page across sections changes its visibility instead of reordering it (admins only).
Clicking Collapse all folders also resets section expansion and restores the default Show all state for both sections.
Private pages do not support folders. Organization pages can still be organized into folders as usual.
Configure who can create private pages
By default, only organization admins can create private pages. Admins can grant this ability to members through organization settings.
- Go to the Builder page of your portal.
- Click Organization settings in the sidebar.
- Open the Pages tab.
- Configure who can create private pages:
- Admin role is always allowed to create private pages.
- Toggle Member to allow all members to create private pages.
- Use the user and team selectors to grant the
create:private-pagesscope to specific users or teams without enabling it for all members.
- Click Save.
Create a private page
Users who are allowed to create private pages can do so from the Private section of the catalog sidebar.
- UI
- API
- Go to the Software catalog in your portal.
- In the left sidebar, find the Private section.
- Click +, then select New catalog page or New dashboard.
- Fill in the page details. Set Visibility to Private.
- Click Create.
If you have no private pages yet, use Add new in the empty Private section to create your first one.
Members who can create private pages see the Visibility field when creating or editing a page, but it is read-only. Only admins can change a page's visibility after creation.
When creating a page via the Port API, set the visibility property to private. If visibility is omitted, the page is treated as an organization page.
{
"identifier": "my_private_dashboard",
"title": "My private dashboard",
"type": "dashboard",
"visibility": "private",
"widgets": []
}
Port appends a unique suffix to the identifier for private pages. The API response includes the resolved identifier (for example, my_private_dashboard_3559be8ff7e380f094b2dc05482ba833).
To create a private page, the requesting user must be an organization admin or have the create:private-pages scope.
See the Pages API and Swagger documentation for full endpoint details.
Change page visibility
Only organization admins can change a page's visibility between Organization and Private. You can do this by dragging a page between sections in the sidebar, or by editing the page directly. Either way, Port shows a confirmation dialog that explains how permissions are affected.
- Drag and drop
- Edit modal
Admins can drag a page between the Organization and Private sections in the catalog sidebar:
- Hover over the page in the sidebar and hold the ⠿ icon.
- Drag the page into the other section.
- Confirm the visibility change in the dialog.
Cross-section drag-and-drop changes visibility. Reordering within the same section still works as usual.
- Open the page you want to update.
- Click the page menu and select Edit page.
- Change Visibility to Organization or Private.
- Review the confirmation dialog and confirm the change.
When moving a page from Private to Organization, Port removes the private identifier suffix and places the page at the root of the Organization section.
To update visibility via the API, send a PATCH request to https://api.port.io/v1/pages/{page_identifier} with the visibility field:
{
"visibility": "org"
}
Accepted values are org and private.
Moving a page from Organization to Private may remove permissions that were configured for organization-wide access. Moving a page from Private to Organization keeps existing page permissions, but the page becomes discoverable in the shared sidebar according to those permissions.
Manage private pages
Admins
Admins can:
- Create, edit, and delete any private page.
- Change page visibility between Organization and Private.
- Access any private page using its direct link, even if they did not create it.
- Duplicate dashboards on organization pages (members cannot duplicate organization dashboards).
Members
Members who are granted permission to create private pages can:
- Create private catalog and dashboard pages.
- Edit, delete, and manage permissions on private pages they created.
- Share private pages with specific users or teams using the standard page permissions modal.
Members cannot:
- Change page visibility (including drag-and-drop across sidebar sections).
- Duplicate organization dashboards.
- Create private pages without the
create:private-pagesscope or the Member role toggle enabled in organization settings.
Page identifiers
Organization pages use the identifier you provide as-is.
Private pages use a two-part identifier:
- Prefix - the name you choose when creating or editing the page.
- Suffix - a unique ID appended automatically by Port.
When editing a private page, only the prefix is editable. The suffix stays the same so direct links and bookmarks keep working when you rename the page or change its visibility.
When a private page is moved to the Organization section, Port resolves the identifier by removing the suffix.
Discoverability and access
- Private pages appear in global search for their owner only.
- Admins can open any private page using its direct URL.
- When using View as another user, you see the same private pages that user would see in their sidebar.
- When a user is removed from the organization, their private pages are deleted automatically.
Limitations
- Each user can create up to 50 private pages.
- Private pages are not supported in Terraform or other infrastructure-as-code tools.
- Private pages cannot be placed in folders.
- Machine users querying pages receive organization pages by default. Use the API's include-private parameter when you need to retrieve private pages programmatically.