The Admin Dashboard serves as the central hub for managing your workspace and user-related activities. From here, you can efficiently oversee and control various aspects of your platform.

  • Insights Dashboard: Gain valuable insights into platform usage.
  • Manage Users: Handle user-related actions, such as inviting, elevating admins, and deleting users.
  • Manage Workspaces: Create, edit, and delete workspaces while managing workspace-specific details and user memberships.

Dashboard

The Dashboard section provides an overview of essential metrics and statistics regarding users, workspace, and activity. This snapshot allows you to track the usage and performance of your platform.

Get insights into your organization’s usage of Hoppscotch.

  • Number of Users: Monitor the count of registered users.
  • Number of Workspaces: Keep track of the total number of workspaces.
  • Number of Requests: Measure the volume of requests made by your organization.
  • Number of Collections: Track the quantity of collections within the platform.

Manage users

In Hoppscotch enterprise edition, a user needs to be explicitly invited by the admin to create an account on the platform.

The Users section empowers you to effectively control user-related actions. It streamlines the process of user management, making it simple to oversee the user base.

  • User List: View a comprehensive list of all users and their activity on your platform
  • Invite Users: Send invitations to new users, welcoming them to the platform.
  • Admin Privileges: Elevate users to administrative roles for increased permissions.
  • User Deletion: Delete users when necessary.

APIs for User Management

The RESTful APIs designed for User Management enable admins to perform a wide range of user-related actions, such as inviting new users, deleting existing ones, and updating user details. These APIs provide admins with the ability to efficiently manage user accounts and permissions. The table below introduces eight key APIs that empower admins with greater control over user management.

User ActivityDescriptionMethodEndpoint
Invite a New UserAllows admins to invite a new user to the instance.POST<base-url>/v1/infra/user-invitations
View Pending InvitesRetrieves a list of all pending invites sent to new users.GET<base-url>/v1/infra/user-invitations
Delete Pending InvitesEnables admins to delete specific pending invites using their Email ID.DELETE<base-url>/v1/infra/user-invitations
View All UsersProvides a list of all users in the instance.GET<base-url>/v1/infra/users
View a Particular UserFetches details of a specific user in the instance by their User ID.GET<base-url>/v1/infra/users/{uid}
Delete an existing UserEnables admins to delete an existing user from the instance by their User ID.DELETE<base-url>/v1/infra/users/{uid}
Update User DetailsAllows admins to update the details of an existing user.PATCH<base-url>/v1/infra/users/{uid}
Manage Admin StatusEnables admins to add or remove admin status for an existing user.PATCH<base-url>/v1/infra/users/{uid}/admin-status
To view the User Management API specifications, please visit our Swagger Documentation.

Infra-tokens

InfraTokens are special UUID tokens that provide a secure way for admins to interface with Self-Hosted APIs. They are exclusively accessible to admins, ensuring that only authorized personnel can manage sensitive operations. Unlike Personal Access Tokens, which are tied to individual users, InfraTokens are scoped at the instance level, granting access to all admins within the instance.

Steps to Generate an InfraToken

Follow these steps to create a new InfraToken:

  1. After logging into your Self-Hosted instance using your admin credentials, you can access the “Tokens” under the “Settings” section from your admin dashboard.
  2. Click on “Generate New InfraToken.”
  3. Enter a title for the token and select an expiration date. Available options include 7 days, 30 days, 60 days, 90 days, or no expiry.
  4. After providing the necessary details, confirm the creation. The new InfraToken will be displayed once, make sure to copy it securely to your clipboard for immediate use.
  5. If you decide that you no longer need the token, you can delete it by navigating back to “Tokens” section.
The details of the admin who created the InfraToken are stored for audit purposes. All admins can view and manage these tokens.

How to Use InfraTokens

InfraTokens are to be used as Bearer tokens. When making requests to the User Management APIs, include the InfraToken in the Authorization header as follows:

Bearer <Your_InfraToken>

Manage Workspaces

In the Manage Workspace section, you can efficiently handle workspace-related operations, ensuring that collaborations and projects run smoothly.

  • Workspace Creation: Establish new workspaces tailored to specific projects or departments.
  • Workspace Editing: Modify workspace details and configurations as needed.
  • Workspace Deletion: Disband workspaces that are no longer relevant.
  • User Memberships: View and manage the users associated with each workspace.

APIs for Workspace Management

We’ve introduced new APIs to make workspace management and collaboration easier for admins. These APIs enable quick actions like creating new workspaces, updating existing workspace details, and deleting workspaces as needed. Check out the table below for fourteen APIs that give admins a greater control over managing Hoppscotch workspaces.

Workspace ActivityDescriptionMethodEndpoint
Create a WorkspaceCreate a new workspace within the instance.POST<base-url>/v1/infra/workspaces
View All WorkspacesRetrieves a list of all workspaces available.GET<base-url>/v1/infra/workspaces
View Workspace DetailsList details about a specific workspace like name, members, roles, and pending invites.GET<base-url>/v1/infra/workspaces/{id}
Delete a workspaceRemove an existing workspace using its ID.DELETE<base-url>/v1/infra/workspaces/{id}
Update details for an existing workspace.Modify settings and preferences for an existing workspace.PATCH<base-url>/v1/infra/workspaces/{id}
List Members of a WorkspaceRetrieves a list of all members in a specific workspace.GET<base-url>/v1/infra/workspaces/{id}/ members
Get Workspace Owners countFetches number of Workspace members with “OWNER” permissionsGET<base-url>/v1/infra/workspaces/{id}/ owners-count
Get Workspace Editors countFetches number of Workspace members with “EDITOR” permissionsGET<base-url>/v1/infra/workspaces/{id}/ editors-count
Get Workspace Viewers countFetches number of Workspace members with “VIEWER” permissionsGET<base-url>/v1/infra/workspaces/{id}/ viewers-count
Add User to a workspaceAdd a user and assign roles (Owner, Editor, and Viewer) in a workspace.POST<base-url>/v1/infra/workspaces/{id}/ user
Change User roles in a workspaceUpdate the role (Owner, Editor, and Viewer) of a user within a workspacePATCH<base-url>/v1/infra/workspaces/{id}/ user/{uid}/role
Remove User from a workspaceRemove a user from a workspace using their IDDELETE<base-url>/v1/infra/workspaces/{id}/ user/{uid}
View all pending workspace invites.List all pending invites for workspace access.GET<base-url>/v1/infra/workspaces/{id}/ invitations
Delete pending workspace invites.Revoke Workspace invitations using invitation IDs.DELETE<base-url>/v1/infra/workspaces/{id}/ invitations/{invitation_id}
To know more about the Workspace Management API specifications, please visit our Swagger Documentation.

Server Settings

Access controls

  1. Site Protection: When site protection is activated, all visitors to your Hoppscotch instance will be prompted to create an account and log in to use Hoppscotch. Site protection is enabled by default on Hoppscotch Enterprise and can be disabled as needed.

  2. Domain Whitelisting: Domain Whitelisting enables organization admins to grant access to users with email addresses under the organization’s domain without explicit approval.

    To enable domain whitelisting, activate the “Enable Whitelisted Domains” option and simply add the domains used by your organization for email addresses.

Authentication Providers

  1. Configure Authentication Providers: Customize authentication providers, including Google, Microsoft, GitHub, and email, directly from the settings page.

  2. Configure SAML Settings: Configure your SAML settings for your SAML based Single sign on.

  3. Configure SMTP Settings: Configure your SMTP settings for seamless email integration.

  4. Configure OIDC Settings: Configure your OIDC Settings for Single Sign-On based authentication.

  5. Configure Audit Logs Settings: Configure your Clickhouse settings for audit logs and download audit logs

  6. Reset Configurations: If needed, reset your configurations back to their original state.

Custom Banner

Custom banners allow self-host admin to share important announcements such as a scheduled maintenance or instance upgrade with the rest of your team.

  • Create Announcements: Navigate to the Banners tab and toggle the “Show Banner” action. Select the type of banner (Information, Warning, or Danger), craft and preview the message content, and save it to activate announcement immediately.

  • Edit Announcements: You can modify the announcements directly by editing the message or changing the banner type and further saving the changes to implement them.

  • Delete Announcements: Manually end an announcement by toggling the “Show Banner” action OFF.

License Settings

The License Settings enable you to both configure and view your enterprise license information.

You have the following options:

  • Edit and Configure License Key: You can modify and configure your license key as needed.

  • View License Status: Obtain insights into the current status of your license. This includes details such as License Status, Issued to, Number of seats purchased, and expiry date.

Hard Reset Configurations

If you need to perform a hard reset of the server configurations, execute the following command in your terminal to reset all your environment variables:

docker exec -it <db_container_id> psql -d hoppscotch -c "TRUNCATE \"InfraConfig\";"

You can replace <db_container_id> with the actual ID of your Docker container.