Integrations

Connect GitHub, Deel, Resource Guru, Small Improvements, Google Workspace, LinkedIn, webhooks, and Supabase Analytics — setup, sync, and what data lands where.

<!-- markdownlint-disable MD025 -->

Integrations

Signals connects to external systems so you can sync people, staffing, skills signals, goals, and activity. Admins configure credentials and run syncs from the Integrations workspace.

Where in the app

  1. Open the workspace switcher.
  2. Select Integrations (requires admin:integrations).
  3. You land on the integrations hub (/t/{tenant}/admin/integrations or /t/{tenant}/workspaces/integrations).

The hub groups cards into Connected, Available, and Coming soon. Open a card to configure that provider.

Tip: Exact availability depends on feature flags and credentials for your tenant. If a card is missing, ask a platform admin.

Status at a glance

IntegrationStatusTypical use
Resource GuruAvailableSync bookings → people, clients, projects, capacity
DeelAvailableSync contractors/employees and profile fields
Small ImprovementsAvailableImport objectives, recognitions, related growth signals
GitHubAvailableLink identity; infer skills from repos/languages
Google WorkspaceAvailableConnect calendar / meeting artifacts for 1:1 workflows
LinkedInAvailableConnect profile enrichment (OAuth)
WebhooksAvailableOutbound events to your systems
Supabase AnalyticsAvailablePR analytics data source for Delivery charts
SlackComing soonPlaceholder in the hub — not configurable yet
GitLabComing soonPlaceholder in the hub — not configurable yet
BambooHRComing soonPlaceholder in the hub — not configurable yet
LatticeComing soonPlaceholder in the hub — not configurable yet

Do not follow generic “enter Client ID” steps for Coming soon cards — they only show a notice until the product ships that provider.

Common setup pattern (available integrations)

Most active providers follow this flow:

  1. Credentials — Enter OAuth Client ID/Secret or API token on the provider page (or rely on env-level credentials if your deployment already set them).
  2. Connect — Authorize Signals with the provider (OAuth redirect) when prompted.
  3. Enable — Turn the integration on in the settings panel.
  4. Sync — Use the provider sync wizard (date range, scope, mode) when available.
  5. Review health — Check run history, conflicts, and mapping ownership when the control plane panel is shown.

Redirect URIs must match exactly what the provider page or your platform admin documents (local vs cloud domain).

Per-integration how-to

Resource Guru

  1. Open Resource Guru from the hub.
  2. Connect your Resource Guru account (OAuth) if not already connected.
  3. Choose account subdomain and date range.
  4. Pick sync mode: by clients/projects or by user/resources.
  5. Run Sync. Signals creates/updates people (by email), clients, projects, and assignment rows.

After sync, review the assignments table and capacity fields. Reconnect if the token expired.

Deel

  1. Open Deel → configure credentials / connect.
  2. Enable the integration.
  3. Run the Deel sync wizard for people and employment fields.
  4. Confirm profiles and evidence on a sample person.

Small Improvements

  1. Open Small Improvements → company slug + access token.
  2. Enable and choose sync mode (full / incremental / dry run when offered).
  3. Optionally scope by person emails.
  4. Run sync; review objectives/recognitions and conflicts.

GitHub

  1. Create a GitHub OAuth App (or use deployment credentials).
  2. Save Client ID/Secret on the GitHub integration page if prompted.
  3. Connect and enable.
  4. Run the GitHub sync wizard to scan repos/languages and update skills/evidence.
  5. Members can also link GitHub from profile when tenant policy allows.

Google Workspace

  1. Open Google Workspace → configure OAuth and enable.
  2. Connect the admin user’s Google account when asked.
  3. Use connected calendar/meeting features from 1:1 / meetings flows as enabled for your tenant.

LinkedIn

  1. Open LinkedIn → OAuth credentials → connect → enable.
  2. Use profile connect flows for enrichment where exposed in the product.

Webhooks (outbound)

  1. Open Webhooks.
  2. Ensure webhooks are enabled in tenant features if required.
  3. Add endpoint — URL, optional signing secret, event types.
  4. Save and verify deliveries (idempotent handlers + signature check on your side).

Supabase Analytics (PR analytics)

  1. Open Supabase Analytics.
  2. Enter URL + service key and enable.
  3. Managers then use Delivery → PR analytics charts. Until configured, those charts stay empty.

See also PR analytics.

Sync health and the control plane

For providers wired to the shared sync engine you may see:

  • Runs — queued → running → completed/failed
  • Items — created / updated / skipped / conflict / error per entity
  • Conflicts — open queue with severity; resolve or ignore
  • Field mappings / ownership — who wins on overlapping fields (remote, local, merge, append-only)

Validate sync health before acting on Delivery or capability dashboards. Managers can read the impact path in Integrations impact map.

Successful person-scoped syncs usually upsert an Integration Sync evidence entry on the person’s Evidence tab (title summarizes what changed). Profile/skill updates can refresh embeddings so People Finder and the AI Assistant stay current.

Tips

  • Use separate OAuth apps per environment (dev vs prod).
  • Prefer dry-run or narrow date scopes on first sync.
  • Resolve open conflicts before trusting staffing or HR fields.
  • Coming soon cards are intentional placeholders — do not open tickets expecting BambooHR/Slack/GitLab/Lattice setup yet unless product confirms otherwise.