Skip to content

Organizations

Organizations are the core unit of monitoring in Ospobox. Each organization represents a group of repositories on a platform like GitHub or GitLab.

Adding Organizations

Your Organizations

To monitor organizations you own or have admin access to:

  1. Go to Dashboard > Add Organization
  2. Select the platform
  3. Enter the organization name
  4. Leave "External organization" unchecked
  5. Click Add Organization

For private repositories, you'll need to connect your OAuth account:

  1. Go to Settings > Connections
  2. Click Connect next to GitHub or GitLab
  3. Authorize Ospobox to access your organizations

External Organizations

You can also monitor public organizations you don't own:

  1. Go to Dashboard > Add Organization
  2. Select the platform
  3. Enter the organization name (e.g., python, microsoft)
  4. Check "External organization"
  5. Click Add Organization

Note

External organizations only include public repositories and activity.

Organization Types

Type Description Access
Owned Organizations you administer Full access including private repos
External Organizations you don't own Public data only

Syncing

Automatic Sync

Ospobox automatically syncs organizations on a schedule:

  • Active organizations: Every 15 minutes
  • Less active organizations: Every hour
  • Inactive organizations: Daily

Manual Sync

Trigger a sync immediately:

  1. Go to the organization detail page
  2. Click Sync Now

Or use the API:

curl -X POST http://localhost:8000/api/organizations/{id}/sync \
  -H "Authorization: Bearer $TOKEN"

Sync Status

Status Description
pending Waiting to start
in_progress Currently syncing
completed Successfully synced
failed Sync failed (check logs)

Organization settings

The only per-account settings that exist today are on the main Settings page: internal contributor domains, contributor classification, and account information. There is no per-organization settings page.

Configure per-organization settings:

Internal Domains

Define email domains that identify internal contributors:

  1. Go to Organization > Settings
  2. Enter internal domains (one per line):
    mycompany.com
    mycompany.io
    
  3. Click Save

Contributors with matching email domains are classified as "internal".

Platform coverage

Platform In the UI OAuth Notes
GitHub Yes Yes Public and private organizations
GitLab Yes Yes gitlab.com and self-hosted
Codeberg Yes No Gitea API, token or public access
SourceHut No, API only No User-centric; "organization" does not fit its model

Planned

OAuth for Codeberg and SourceHut, and a way to add a SourceHut user that does not pretend it is an organization.

Repository filters

Not implemented. Every repository an organization exposes is synced.

Archived repositories are still collected, and they are skipped when scores and alerts are computed. An archive flag states that the project is finished, which is a fact about the repository.

Organization Metrics

Each organization tracks:

Metric Description
Repositories Total number of monitored repos
Health Score Average health across repos
Commits (30d) Total commits in last 30 days
Pull Requests (30d) PRs opened in last 30 days
Contributors (30d) Active contributors in last 30 days

Comparing Organizations

Compare activity across organizations:

  1. Go to Dashboard > Compare
  2. Select organizations to compare
  3. View side-by-side metrics:
  4. Activity trends
  5. Health scores
  6. Contributor breakdown

Removing Organizations

To stop monitoring an organization:

  1. Go to the organization detail page
  2. Click Settings > Remove Organization
  3. Confirm removal

Warning

Removing an organization deletes all associated data including:

  • Repository records
  • Commit history
  • Pull request data
  • Health score history

Best Practices

Start Small

Begin with your most important organizations and expand:

  1. Add your primary organization
  2. Verify data is syncing correctly
  3. Configure internal domains
  4. Add additional organizations

Regular Review

  • Check sync status weekly
  • Review health score trends
  • Update internal domains as needed
  • Remove inactive organizations

External Organizations

Monitor key external dependencies:

  • Upstream projects you depend on
  • Competitor organizations
  • Industry-standard projects

This helps you:

  • Track dependency health
  • Benchmark your activity
  • Stay informed of ecosystem changes