# Account Setup: Configure Your Hackrate Organization
Source: https://hackrate-bb-app.mintlify.app/companies/account-setup
Set up your company account on Hackrate — create your organization, configure settings, invite team members, and control who can access each program.
Your Hackrate account is the foundation for everything your security team does on the platform. This guide covers creating and configuring your organization, inviting teammates, understanding permission roles, and managing your account preferences. Taking time to set this up correctly ensures the right people can act on reports quickly and that no access is inadvertently over- or under-provisioned.
## Creating your organization
When you register as a company on Hackrate, your first task is to create an **Organization**. An organization is the top-level container for all of your programs, team members, and settings.
To create an organization, go to **Organizations** in the main navigation and click **New Organization**. You will need to provide:
| Field | Description |
| --------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| **Name** | Your company's full display name, shown to researchers on program pages |
| **Alias** | A short, URL-safe identifier (for example, `acme`). This appears in your program URLs and cannot be changed later, so choose carefully. |
If your company runs multiple distinct products or business units with separate security budgets, consider creating one organization per unit. This makes it easier to manage team permissions and report access independently.
## Inviting team members
Security programs work best when the right colleagues have access. Hackrate uses a role-based permission system that lets you control exactly what each person can see and do.
### Roles and permissions
Full control over the program and organization. SuperAdmins can publish programs, pause programs, manage bounty tables, invite and remove administrators, and configure integrations. This role should be reserved for security leads or program owners.
Can update program details, manage the scope, publish announcements, send notifications to researchers, and triage reports. StandardAdmins cannot pause or publish programs. This is the right role for day-to-day security team members who operate the program.
Can view program details and reports but cannot make changes. Suitable for stakeholders such as legal, compliance, or executive team members who need visibility without operational access.
Access to the program analytics dashboard, including report counts, bounty spend, and budget utilization. Useful for security managers who need reporting data without access to individual vulnerability details.
### How to invite a teammate
Open the program you want to grant access to and click **Permissions** (or **Administrators**) in the program management menu.
Type the colleague's work email address and select the appropriate role from the dropdown.
Click **Add User**. If the colleague already has a Hackrate account, they receive an email notification and gain access immediately. If they do not yet have an account, they receive an invitation email prompting them to register — their role will be applied automatically once they complete registration.
Pending invitations are visible in the **Permissions** panel under the program. You can monitor whether a colleague has accepted, declined, or not yet responded to their invitation.
### Admin groups
For organizations with multiple programs, managing permissions program-by-program can become time-consuming. **Admin Groups** let you bundle a set of users and assign the group a role across one or more programs in a single step. Create and manage admin groups from the **Organization** settings page.
## Organization-level vs. program-level access
Permissions can be granted at two levels:
* **Organization level** — grants access to all current and future programs within the organization. Use this for core security team members who work across all programs.
* **Program level** — grants access to a specific program only. Use this for external consultants, product team liaisons, or temporary reviewers.
Organization-level roles are powerful — a SuperAdmin at the organization level has full access to every program in that organization. Grant this level only to colleagues who genuinely need it.
## Account and notification preferences
### Email notifications
Hackrate sends email notifications for key activity on your programs. From your **Account Settings** page you can toggle each category on or off and choose your preferred content level:
**Notification categories:**
* **New reports** — notified when a researcher submits a new vulnerability report
* **Report updates** — notified when a report's status or severity changes
* **Comments** — notified when someone posts a comment on a report
* **Internal comments** — notified for internal notes visible only to your team
* **Files** — notified when a file attachment is added to a report
* **Program updates** — notified about changes to program settings or announcements
* **Marketing updates** — product news and platform announcements from Hackrate
* **News and communication** — general Hackrate community news
**Content level** controls how much detail is included in each notification email:
* **Minimal** — brief summary only
* **Typical** *(default)* — standard detail level suitable for most users
* **Full** — complete report content and context included in the email
### Security.txt integration
If your organization publishes a `security.txt` file (as recommended by [RFC 9116](https://www.rfc-editor.org/info/rfc9116)), you can reference your Hackrate VDP form URL in it. The platform provides a ready-to-use snippet from the program's embed settings. This makes it easy for researchers who discover your assets independently to find the right reporting channel.
### Two-factor authentication
Hackrate strongly recommends enabling two-factor authentication (2FA) on your account, especially if you hold a SuperAdmin role. You can enable 2FA from your account security settings.
## Business units
If your organization is structured into distinct business units — for example, separate product teams with their own security responsibilities — Hackrate supports **Business Units** as an optional organizational layer. Business units allow you to associate specific targets with a particular team and restrict visibility of reports and scope to the appropriate group. Contact the Hackrate team to enable this feature for your organization.
# Connect Hackrate to GitHub for Issue and Advisory Tracking
Source: https://hackrate-bb-app.mintlify.app/companies/integrations/github
Install the Hackrate GitHub App on your repositories and create issues or security advisories directly from reports without leaving the platform.
The GitHub integration bridges your Hackrate program and your engineering workflow. Once connected, you can turn any triaged report into a GitHub issue — with a title, description, labels, and a link back to the Hackrate report — with one click from the report management page. For vulnerability disclosures that require coordinated remediation, you can also draft a GitHub Security Advisory directly from a report. The integration keeps the two systems in sync by tracking the last-known state of every issue it creates.
## How the Integration Works
Hackrate connects to GitHub through a GitHub App installed on your organization's or user's GitHub account. The App grants Hackrate the ability to read your repository list and create issues or advisories on your behalf. The connection is stored per-program, so if you run multiple programs, each one can be linked to the same GitHub App installation.
All authentication uses GitHub's official OAuth and App flows — Hackrate never stores your GitHub credentials.
## Installing the GitHub App
Navigate to your program in Hackrate and open **Settings**. You need a SuperAdmin or StandardAdmin role on the program to connect integrations.
In the **Integrations** section, find the GitHub card and click **Connect GitHub**. Hackrate will redirect you to GitHub to authorize the App installation.
On the GitHub authorization page, choose whether to install the App on all repositories or only on selected ones. Hackrate recommends selecting only the repositories where you track security work — this follows the principle of least privilege.
GitHub redirects you back to Hackrate automatically. The system records your installation and syncs the list of repositories you granted access to. You land back on the program settings page with the GitHub integration shown as **Connected**.
If you have already installed the Hackrate GitHub App for another program in the same organization, the new program will share the same installation. You do not need to go through the GitHub authorization flow again — simply connect the program in its settings and select from the already-synced repository list.
## Creating a GitHub Issue from a Report
Once the integration is connected, a **Create GitHub Issue** action appears in the report management view for every report in your program.
Navigate to **Reports → Manage** and open the report you want to track in GitHub.
Find the GitHub Issues section in the report management sidebar or action panel and click **Create Issue**.
A form appears with the following fields:
* **Repository** — select from the repositories synced from your GitHub App installation
* **Title** — defaults to the report title; edit as needed
* **Body** — the issue description; you can include a summary of the vulnerability and a reference to the Hackrate report ID
* **Labels** — optionally add labels such as `security`, `bug`, or a severity label
Click **Create**. Hackrate calls the GitHub API, creates the issue, and stores a link record containing the repository name, issue number, direct issue URL, and current issue state. This link is displayed on the report page so anyone managing the report can jump to GitHub in one click.
Use GitHub labels that match your team's severity taxonomy (e.g., `sev:critical`, `sev:high`) so the issue appears correctly in your engineering board filters as soon as it is created.
## Creating a GitHub Security Advisory
For vulnerabilities that require a CVE or a coordinated public disclosure, Hackrate can create a **GitHub Security Advisory** (GHSA) directly from the report management page, in addition to a regular issue.
Find the report you want to disclose and open its management view.
In the GitHub integration section, choose **Create Security Advisory** instead of **Create Issue**. Complete the advisory form, including the ecosystem and affected package details required by GitHub.
Hackrate creates a draft advisory in your chosen repository's **Security** tab. Your engineering team can refine the advisory, request a CVE, and publish it when the vulnerability is fully resolved.
## Synced Data
Hackrate tracks the following fields for every issue it creates:
| Field | Description |
| ---------------- | ------------------------------------------------------------------------------------- |
| Repository | Full name of the repository (e.g., `acme-corp/security-tracker`) |
| Issue number | The GitHub issue number |
| Issue URL | Direct link to the issue on GitHub |
| Last known state | The state of the issue the last time Hackrate synced with GitHub (`open` or `closed`) |
The state is updated automatically via GitHub webhooks whenever the issue is opened, closed, or reopened.
## Troubleshooting
This can happen if the OAuth callback did not complete successfully. Try reconnecting from program settings. If the problem persists, check whether any browser extensions or firewalls blocked the GitHub redirect back to Hackrate.
Hackrate only shows repositories that were explicitly granted access during the App installation. Go to your GitHub App installation settings (GitHub → Settings → Applications → Installed GitHub Apps) and ensure the Hackrate App has access to the repositories you expect. Then return to Hackrate program settings and click **Sync Repositories** to refresh the list.
If the Hackrate GitHub App is removed from your GitHub account, the integration will stop working. New issues cannot be created and webhook syncs will fail. To restore the integration, go to program settings and click **Connect GitHub** to go through the installation flow again. Previously created issue links remain stored in Hackrate but will no longer receive state updates.
Only SuperAdmins and StandardAdmins can create GitHub issues and advisories from reports. Read-Only and Analytics users will not see these actions in the report management view.
# Create Jira Tickets from Hackrate Reports Automatically
Source: https://hackrate-bb-app.mintlify.app/companies/integrations/jira
Connect your Jira project to a Hackrate program so your triage team can file tickets directly from the report management view without switching tools.
Security teams often work alongside engineering teams that live in Jira. The Hackrate–Jira integration removes the manual step of copying vulnerability details from Hackrate into a Jira ticket. Once configured, a **Create Jira Ticket** action becomes available on every report management page in your program. Your triagers can file a ticket without leaving Hackrate, keeping both systems up to date and reducing the risk of information getting lost in translation.
## How It Works
The Jira integration is configured at the program level. You supply your Jira instance URL and the target project details, and Hackrate stores those alongside your program. When an admin clicks to create a ticket, Hackrate uses those stored settings to open a pre-filled ticket in the correct Jira project.
The Jira integration is configured by an admin in program settings. Only one Jira project can be connected to a program at a time. If you need to route tickets to different projects depending on the type of finding, consider using multiple programs or routing rules in Jira itself.
## Configuring the Jira Integration
Go to your program in Hackrate and open **Settings**. You need a SuperAdmin or StandardAdmin role on the program to configure integrations.
In the **Integrations** tab, find the Jira card.
Provide the base URL of your Jira instance. For Jira Cloud this looks like `https://your-company.atlassian.net`. For Jira Server or Data Center, use the URL your team navigates to when opening Jira.
Supply the numeric ID of the Jira project where security tickets should be created. You can find this in your Jira project settings.
Provide the Issue Type ID for the kind of ticket you want to create — for example, the ID for "Bug" or "Security Vulnerability" in your project's issue type scheme.
Click **Save**. The Jira integration is now active for this program. The Jira details will appear in the report management sidebar for every report in the program.
## Creating a Jira Ticket from a Report
Go to **Reports → Manage** and open any report within the program that has Jira configured.
In the report management view, a Jira panel shows your configured base URL, project, and issue type. This confirms the integration is active.
Click **Create Jira Ticket**. Hackrate pre-fills the ticket with the report title, a description derived from the report content, the severity level, and a link back to the Hackrate report. Review and adjust the content if needed, then submit.
The ticket appears in your Jira project board. Your engineering team can pick it up from their normal Jira workflow. The Hackrate report retains a reference to the Jira ticket for traceability.
## What Data Is Sent to Jira
When you create a ticket from a report, the following information is included:
The vulnerability title from Hackrate becomes the Jira ticket summary.
The Hackrate severity level (Critical, High, Medium, Low) is included in the ticket body to help engineers prioritize.
The report's description, impact statement, and reproduction steps are included so engineers have the full context without needing Hackrate access.
A direct link back to the Hackrate report is embedded in the ticket so reviewers can navigate between systems easily.
## Tips for Getting the Most Out of the Integration
In Jira Cloud, go to your project, open **Project Settings → Details**, and look for the Project ID in the URL or the settings fields. In Jira Server, the Project ID is shown in **Project Settings → Edit Project**.
In Jira Cloud, go to **Project Settings → Issue Types**, click the issue type you want to use, and note the numeric ID in the URL. In Jira Server, you can find issue type IDs under **Jira Administration → Issues → Issue Types**.
If your engineering workflow requires Critical and High findings in one project and Medium and Low in another, you can configure two separate Hackrate programs with different Jira settings, or handle routing automatically with Jira Automation rules that re-assign issues based on labels or custom fields you populate.
The Jira integration stores your Jira base URL and project details in program settings. Only SuperAdmins and StandardAdmins can modify this configuration. If your Jira instance URL changes — for example, after a migration to Jira Cloud — remember to update the base URL in every program that uses the integration.
# Slack, Microsoft Teams, and Zapier Notification Setup
Source: https://hackrate-bb-app.mintlify.app/companies/integrations/slack
Route Hackrate report alerts to Slack channels, Microsoft Teams, or Zapier workflows so your team is notified the moment a new report arrives.
Staying on top of incoming vulnerability reports means being notified where your team already works. Hackrate supports real-time notification delivery to Slack and Microsoft Teams channels, so new reports and status changes appear in your existing communication tools without anyone having to log in and check the dashboard. For teams with more complex routing needs, the Zapier integration lets you build custom automation workflows that connect Hackrate to virtually any other tool.
## Slack Notifications
The Slack integration sends messages to a Slack channel of your choosing whenever a new report is submitted to your program or a report's status changes.
### Setting Up Slack
In your Slack workspace, go to **Apps → Incoming WebHooks** (or open Slack's App Directory and search for "Incoming WebHooks"). Click **Add to Slack**, choose the channel where Hackrate notifications should appear, and click **Add Incoming WebHooks Integration**. Copy the webhook URL that Slack generates.
Navigate to your program in Hackrate and open **Settings**. You need a SuperAdmin role to configure integrations.
In the **Integrations** section, find the Slack card and paste the webhook URL you copied from Slack. Click **Save**.
Submit a test report or update a report status. Within seconds, you should see a notification appear in the Slack channel you configured.
### What Triggers a Slack Notification
| Event | Description |
| --------------------- | ----------------------------------------------------------------- |
| New report submitted | A new vulnerability report lands in the program |
| Report status changed | A triager changes a report to Accepted, Resolved, Duplicate, etc. |
| Comment added | A new comment (internal or external) is posted on a report |
Point Slack notifications at a dedicated `#security-reports` channel rather than a general engineering channel. This keeps the signal clean and makes it easy to set up Slack notification preferences or integrations (like PagerDuty) on that channel independently.
## Microsoft Teams Notifications
The Microsoft Teams integration works the same way as Slack — Hackrate sends a message to a Teams channel via an incoming webhook whenever a new report arrives or a report's status changes.
### Setting Up Microsoft Teams
In your Teams workspace, navigate to the channel where you want notifications to appear. Click the **⋯ (More options)** menu next to the channel name and select **Connectors**. Find **Incoming Webhook**, click **Configure**, give it a name (e.g., "Hackrate Alerts"), and click **Create**. Copy the webhook URL that Teams provides.
Navigate to your program and open **Settings → Integrations**.
Find the Microsoft Teams card and paste the webhook URL. Click **Save**.
Trigger a report event — for example, change a report status — and confirm the notification appears in your Teams channel.
Each Hackrate program holds one Slack webhook and one Teams webhook independently. If you run multiple programs and want notifications for all of them in the same channel, configure the same webhook URL in each program's settings.
## Zapier Integration for Advanced Automation
If Slack and Teams don't cover your workflow, the Zapier integration gives you a webhook endpoint that Hackrate calls for every report event. You can use this as the trigger for any Zapier automation — routing reports to a ticketing system, populating a spreadsheet, sending a formatted email, triggering an on-call alert, or anything else Zapier supports.
### Setting Up Zapier
Log in to [zapier.com](https://zapier.com) and create a new Zap. For the trigger, choose **Webhooks by Zapier → Catch Hook**. Zapier will generate a unique webhook URL for this Zap.
Copy the webhook URL that Zapier provides on the trigger configuration step.
In your Hackrate program settings, open **Integrations** and find the Zapier card. Paste the Zapier webhook URL and click **Save**.
Back in Zapier, trigger a test event from Hackrate (by updating a report), then map the incoming data fields to your target app's action. Activate the Zap when you're satisfied.
If you want more control over how notifications look in Microsoft Teams than the default webhook message provides, you can use Zapier as a middleware:
1. Set up the Hackrate Zapier integration as described above.
2. Add a **Formatter** step in Zapier to reshape the incoming data.
3. Add a **Microsoft Teams** action step to send a card-formatted message with exactly the fields you care about.
This pattern also works for routing different severity levels to different Teams channels — add a **Filter** step between the trigger and the Teams action.
Webhook URLs — whether for Slack, Teams, or Zapier — grant the ability to post to your channel or trigger your automation without authentication. Treat them as secrets. Do not share them publicly, commit them to source control, or include them in logs.
# Webhooks, Email Alerts, and the Embedded Report Form
Source: https://hackrate-bb-app.mintlify.app/companies/integrations/webhooks
Configure email notification preferences, set up Zapier webhooks, and embed the Hackrate report form on your own website for VDP programs.
Hackrate offers several ways to push information out of the platform and into your team's workflow: per-user email notifications that each person can tune to their own preferences, Zapier webhooks for custom automation pipelines, and — for Vulnerability Disclosure Programs (VDP) — an embeddable report form that lets researchers submit reports without ever visiting the Hackrate website. This page explains all three and how to configure each one.
## Email Notifications
Every Hackrate user can configure their own email notification preferences. Notifications are sent from the platform to your registered email address and can be enabled or disabled per event type.
### Notification Event Types
Receive an email when a new vulnerability report is submitted to a program you administer. Useful for ensuring nothing is missed even when you're not actively logged in.
Get notified when the status of a report changes — for example, when a report you submitted or are managing moves to Accepted, Resolved, or Duplicate.
Receive an email when a new public comment is posted on a report you're involved with.
Receive an email when a new internal (team-only) comment is posted on a report. Only visible to admins with triage access.
Get notified when a new file or evidence attachment is added to a report.
Platform announcements, new feature releases, and other communications from the Hackrate team.
### Email Content Level
In addition to toggling individual event types, you can control how much detail each notification email contains:
| Level | What you receive |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Minimal** | A brief subject line and a link to the item in Hackrate — no vulnerability details in the email body. Best for security-conscious environments where email may be archived or forwarded. |
| **Typical** | A short summary with the report title, severity, and status — enough context to prioritize without the full report content. |
| **Full** | The complete report content, including title, description, summary, impact, and any comments included in the notification trigger. Convenient for quick triage from your inbox. |
If your organization has a policy against including sensitive information in email, set all users to **Minimal** content level. This ensures vulnerability details stay inside Hackrate and are only accessible to authenticated users with the correct role.
### Configuring Your Email Preferences
Navigate to your **Profile Settings → Notification Preferences** to enable or disable each event type and to select your preferred content level. Each user manages their own preferences independently — there is no org-wide default override.
## Zapier Webhook Integration
For teams that need to route Hackrate events into custom automation pipelines, the Zapier integration provides a webhook trigger that fires on report events. You can connect this to hundreds of downstream apps — from project management tools and ticketing systems to communication platforms and custom APIs.
In [Zapier](https://zapier.com), create a new Zap and choose **Webhooks by Zapier → Catch Hook** as the trigger. Zapier provides a unique webhook URL for this Zap.
In Hackrate, go to your program's **Settings → Integrations** and find the Zapier section. Paste the webhook URL and save.
Update a report status or add a comment in Hackrate. Zapier will receive the payload, allowing you to inspect the data fields and map them to your automation's next steps.
Add action steps in Zapier — for example, create a Jira ticket, send a formatted Slack message, update a Google Sheet row, or trigger a PagerDuty alert. Activate the Zap when ready.
Each program can have one Zapier webhook URL configured. If you need to fan out events to multiple systems, use Zapier's **Multi-Step Zaps** or a tool like Make (formerly Integromat) with a single inbound webhook that dispatches to multiple actions.
## Embedded Report Form for VDP Programs
If your program is a Vulnerability Disclosure Program (VDP), you can embed the Hackrate report submission form directly on your own company website — for example, on a `security.yourcompany.com` page or in your security policy. This allows researchers to submit reports without needing to navigate to Hackrate directly, making it easier for non-technical reporters and reducing friction in the disclosure process.
### How the Embedded Form Works
When a program is marked as **embeddable**, Hackrate serves a standalone report form that you can include in your website via an `