Projects

Each game you manage in Bugnet is represented as a project. Projects are the top-level organizational unit that contains all your bugs, team members, labels, templates, and settings.

Every project has the following properties:

  • Name — The display name of your game (e.g. "Starfield Explorers")
  • Slug — A URL-friendly identifier used in all API URLs (e.g. starfield-explorers)
  • Description — A short summary of what the game is about
  • Website URL — A link to the game's website or store page
  • Logo — An image that represents the project in the dashboard

Create new projects from the dashboard by clicking New Project. The maximum number of projects you can create depends on your plan.

The project slug is used in all API routes. For example, to list bugs for a project with the slug my-game, you would call:

HTTP
GET /api/projects/my-game/bugs

Project Settings

Each project has a settings page where you can configure:

  • API configuration — View and regenerate your API key
  • Public tracker — Enable or disable the public-facing bug tracker page
  • Notification defaults — Set default notification preferences for new team members

Team & Roles

Add team members to your project to collaborate on bug triage and resolution. Every team member can view bugs, leave comments, and be assigned to fix issues.

Roles

Bugnet uses three roles with increasing levels of access:

Role Access
Owner Full access to everything. Can delete the project, manage billing, and transfer ownership.
Admin Can manage team members, project settings, and all bugs. Cannot delete the project or manage billing.
Member Can view and manage bugs, add comments, and be assigned to issues.

All team members can see all bugs in the project and can be assigned to fix them.

Team Size Limits

The maximum team size depends on your plan:

  • Free Up to 3 team members
  • Studio Up to 15 team members
  • AAA Unlimited team members

Invitations

Invite new team members by email address. Invited users receive an email containing a link to join your project.

  • Invitations remain in a pending state until accepted by the recipient
  • Owners and admins can revoke pending invitations at any time
  • If the invited user does not have a Bugnet account, they will be prompted to sign up before joining
  • Each invitation is tied to a specific role — the invitee receives that role when they accept

Invite via API

HTTP
POST /api/projects/:slug/team/invite
{
  "email": "developer@example.com",
  "role": "member"
}

Permissions

Bugnet provides a fine-grained permission system with 20+ individual permissions. Default permissions are assigned based on role (owner, admin, member), but you can override permissions on a per-user basis for more precise access control.

Key Permissions

Permission Description
manage_team Invite, remove, and change roles of team members
manage_settings Edit project settings and configuration
manage_labels Create, edit, and delete labels
delete_bugs Permanently delete bug reports
manage_webhooks Create and configure webhook integrations
view_analytics Access crash analytics and dashboard metrics
manage_billing View and manage subscription and payment details

Per-User Overrides

You can customize access for individual team members by overriding their role-based defaults. For example, you might grant a member manage_labels without promoting them to admin.

To restore an individual's permissions to their role defaults, use the Reset to defaults option on their profile in the team settings page.

Labels

Labels let you organize and tag bugs with custom categories. Each label has a name and a color, making it easy to visually identify groups of bugs at a glance.

  • Add or remove labels from any bug in the bug detail view
  • Filter bugs by label in the bug list to narrow down your view
  • Labels are per-project — each project maintains its own set of labels

Common Label Strategies

Labels are flexible and can be used for many purposes. Here are some common patterns:

  • PlatformiOS, Android, Windows, Mac, Linux
  • Feature areacombat, inventory, UI, audio, networking
  • Sprint / Milestonev1.2, sprint-14, launch-blocker

Labels via API

HTTP
# Create a label
POST /api/projects/:slug/labels
{"name": "iOS", "color": "#5856D6"}

# List all labels
GET /api/projects/:slug/labels

# Add a label to a bug
POST /api/projects/:slug/bugs/:id/labels
{"label_id": "uuid-of-label"}

Bug Templates

Bug templates let you create reusable formats for common types of bug reports. When a team member files a bug from the dashboard, they can select a template to pre-fill the form with a standardized structure.

Each template can pre-fill the following fields:

  • Title prefix — Automatically prepend a prefix to the bug title (e.g. "[Crash]" or "[UI]")
  • Description format — A structured description with sections like "Steps to Reproduce", "Expected Behavior", "Actual Behavior"
  • Category — Pre-select a bug category
  • Priority — Pre-set the priority level

Templates are per-project, so each game can have its own set of templates tailored to its QA workflow.

💡

Tip: Create templates for your most common bug types to standardize reports and reduce triage time. For example, a "Crash Report" template with pre-filled priority of "critical" ensures crashes are always flagged appropriately.

Custom Fields

Extend your bug reports with custom data fields specific to your game. Custom fields let you capture structured information beyond the default bug report fields.

Field Types

Type Description Example
Text Free-form text input Character name, map location
Number Numeric value Player level, score, frame rate
Dropdown Select from predefined options Game mode (PvP, PvE, Co-op)

Configuration

  • Fields can be marked as required so reporters must fill them in
  • Field ordering is configurable — drag and drop to arrange them in your preferred order
  • Custom field values are set per-bug and displayed in the bug detail view

Custom Fields via API

HTTP
# Create a custom field
POST /api/projects/:slug/custom-fields
{
  "name": "Player Level",
  "type": "number",
  "required": true
}

# Create a dropdown field
POST /api/projects/:slug/custom-fields
{
  "name": "Game Mode",
  "type": "dropdown",
  "options": ["PvP", "PvE", "Co-op"],
  "required": false
}

Saved Filters

Save frequently used filter combinations so you can quickly recall them from the bug list. Instead of manually re-entering the same filters every time, save them once and apply them with a single click.

Filter Criteria

Saved filters can include any combination of:

  • Status — Open, in progress, resolved, closed
  • Priority — Critical, high, medium, low
  • Category — Bug, crash, performance, UI, etc.
  • Assignee — Filter by assigned team member
  • Labels — Filter by one or more labels
  • Date range — Bugs created or updated within a time window

Scope

Filters can be scoped globally (available across all your projects) or to a specific project. Saved filters are shared across your team, so everyone can use the same filter definitions.

Access saved filters from the quick-access panel in the bug list sidebar.

Saved Views

Saved views let you create custom dashboard layouts with specific filter, sort, and column settings. Each view remembers exactly how you want to see your bug list.

  • Pin views for quick access from your dashboard navigation
  • Configure sort order (e.g. by priority, date created, last updated)
  • Choose which columns are visible in the bug list table
  • Position-ordered — drag and drop to reorder your views

Saved views are per-user — each team member can customize their own set of views without affecting other team members.

SLA Rules

Service Level Agreement (SLA) rules let you set response and resolution time targets based on bug priority. When a bug is filed, Bugnet automatically calculates due dates based on your SLA configuration.

Configuration

Set response and resolution hours for each priority level:

Priority Response Time Resolution Time
Critical 1 hour 4 hours
High 4 hours 24 hours
Medium 8 hours 72 hours
Low 24 hours 168 hours

These are example values — configure the hours that match your team's capacity and commitments.

How It Works

  • When a bug is filed, Bugnet calculates the response and resolution due dates based on the bug's priority and your SLA rules
  • Due dates are visible on the bug detail page and in the bug list
  • Track SLA compliance in the dashboard to monitor how well your team is meeting targets
💡

SLA rules help ensure your team responds to critical bugs within your committed timeframes. Use SLA tracking to identify bottlenecks and adjust staffing or processes before deadlines are missed.

Audit Log

The audit log provides a complete record of all project-level changes. Every significant action is logged with details about who made the change, what changed, and when it happened.

Tracked Events

  • Settings changes — Project name, description, API key regeneration, public tracker toggle
  • Team changes — Member added, member removed, role changed
  • Label changes — Label created, updated, or deleted
  • Webhook changes — Webhook added, updated, or removed

Log Entry Details

Each audit log entry includes:

  • Actor — The team member who performed the action
  • Action — What was done (created, updated, deleted)
  • Target — What was affected (settings, team member, label, webhook)
  • Timestamp — When the action occurred

The audit log is essential for security reviews and compliance. Access it from Settings → Audit Log in your project dashboard.

Import / Export

Import

Bulk import bugs from other platforms to migrate your existing issue tracking data into Bugnet. Supported sources include:

  • GitHub Issues
  • GitLab Issues
  • Jira
  • Trello
  • CSV file
  • Other (generic format)

Imported bugs retain their original external IDs and URLs for reference, so you can always trace a bug back to its source. Import progress is tracked in real-time on the import status page.

Export

Export your bugs to CSV for reporting, backup, or migration purposes. Exports can be filtered to include only the data you need:

  • Filter by status (open, resolved, closed)
  • Filter by priority (critical, high, medium, low)
  • Filter by category
  • Filter by date range

Exported CSV files include all standard bug fields as well as any custom field values you have defined.

💡

GDPR compliance: Use the account data export feature to generate a full export of your data for GDPR data portability requests. This is available from your account settings.