Authentication Errors
”Bad credentials” or 401 Unauthorized
- The Personal Access Token (PAT) may have expired or been revoked. Generate a new Fine-grained PAT.
- Verify the token has all required repository and organization permissions.
- Ensure the token is scoped to All repositories.
”Resource not accessible by integration”
- Verify you are using an organization administrator account.
- Check that the PAT has all required permissions.
- For organizations with SAML SSO: authorize the PAT for SSO access in GitHub settings.
”Must have admin rights to Repository”
- Use a PAT created by an organization owner.
- Ensure the PAT has Administration read permission on repositories.
GitHub App Installation Errors
”Resource not accessible by integration” (App)
This error indicates insufficient GitHub App permissions. Verify:- The app has all required permissions listed in Configure a GitHub App Installation.
- The app is installed on your target organization.
- The app has access to all repositories (or the specific repositories you need).
Private Key Issues
If you encounter errors related to the private key:- Ensure the
.pemfile path is correct and accessible. - Verify the file contains a complete private key (begins with
-----BEGIN RSA PRIVATE KEY-----). - If the key doesn’t match, regenerate a new private key from the GitHub App settings.
Rate Limiting
Symptoms
- Collection pauses with messages about waiting for rate limit renewal.
403 Forbiddenerrors withX-RateLimit-Remaining: 0.- Very slow collection times.
Solutions
For small to medium environments (< 500 repos), the built-in rate limit handling automatically pauses and resumes. Allow the collection to complete. For large environments (500+ repos):- Use the App Installation method for 3x higher rate limits (15,000/hour vs 5,000/hour).
- Run collection during off-peak hours.
Large Environment Issues
Collection Takes Too Long
For organizations with thousands of repositories, a full collection can take several hours.- Use the App Installation method for higher rate limits.
- Run collection during off-peak hours.
Memory Issues
- Use a 64-bit PowerShell session.
- Close unnecessary applications to free memory.
- Use the step-by-step collection process to collect in smaller batches.
Missing Data
No Workflow or Environment Nodes
- Verify GitHub Actions is enabled in your organization settings.
- Check that the PAT has Actions read permission on repositories.
- Repositories with Actions disabled are intentionally skipped.
No External Identity Nodes (SAML/SSO)
- SAML SSO must be configured for the organization.
- The PAT user must be an organization owner.
- A GitHub Enterprise license is required for SAML identity data.
BloodHound Import Issues
Nodes or Edges Not Appearing
- Ensure you are using a BloodHound version that supports OpenGraph extensions.
- Check BloodHound logs for import errors.
- Verify the JSON structure matches the expected format.
Getting Help
If you encounter issues not covered here:- Check GitHub Issues for known problems.
- Open a new issue with your PowerShell version (
$PSVersionTable), GitHound version, full error message, and approximate environment size. - Join the
#githoundchannel on the BloodHound Community Slack.