Skip to content

feat: konnect sync integration#9795

Merged
shelby-moore merged 4 commits into
Kong:developfrom
shelby-moore:feat-konnect-integration
Apr 14, 2026
Merged

feat: konnect sync integration#9795
shelby-moore merged 4 commits into
Kong:developfrom
shelby-moore:feat-konnect-integration

Conversation

@shelby-moore

Copy link
Copy Markdown
Contributor

Add a Kong Konnect integration to Insomnia that syncs control planes, gateway services and routes into projects, collections, and requests. Users configure a Konnect PAT in settings, then use a "Konnect" tab in the sidebar to trigger sync.

Comment thread packages/insomnia/src/konnect/__tests__/sync.test.ts Dismissed
Comment thread packages/insomnia/src/konnect/__tests__/sync.test.ts Dismissed
Comment thread packages/insomnia/src/konnect/__tests__/sync.test.ts Dismissed
Comment thread packages/insomnia/src/konnect/__tests__/sync.test.ts Dismissed
@shelby-moore shelby-moore force-pushed the feat-konnect-integration branch 7 times, most recently from 96f556c to c4b8f4c Compare April 13, 2026 17:26
@shelby-moore shelby-moore marked this pull request as ready for review April 13, 2026 17:26
Copilot AI review requested due to automatic review settings April 13, 2026 17:26

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a Kong Konnect integration to Insomnia, enabling users to store a Konnect PAT, then sync Konnect control planes/services/routes into Insomnia projects/collections/requests and manage them from a new “Konnect” sidebar tab.

Changes:

  • Introduces Konnect API + sync engine with retry, mapping Konnect entities into Insomnia data models.
  • Adds UI for PAT validation/storage and a sidebar “Konnect” tab to trigger/cancel sync and show progress/errors.
  • Extends data models, analytics events, org feature gating, and test coverage (unit + smoke) for the new integration.

Reviewed changes

Copilot reviewed 27 out of 27 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
packages/insomnia/src/ui/hooks/use-konnect-sync.ts Hook to run/cancel sync, update progress, revalidate, and emit analytics.
packages/insomnia/src/ui/components/settings/konnect-settings.tsx New settings panel to validate/save/clear Konnect PAT in secret storage.
packages/insomnia/src/ui/components/project/project-list-sidebar.tsx Adds sidebar “Konnect” tab with sync controls and Konnect project list.
packages/insomnia/src/ui/components/panes/grpc-request-pane.tsx Adjusts gRPC reflection behavior to preserve method selection when still valid.
packages/insomnia/src/ui/components/modals/settings-modal.tsx Adds feature-gated “Konnect” settings tab.
packages/insomnia/src/ui/analytics.ts Adds Segment event names for Konnect PAT validation and sync completion.
packages/insomnia/src/routes/organization.$organizationId.project._index.tsx Passes org feature flag to sidebar to enable Konnect sync UI.
packages/insomnia/src/routes/organization.$organizationId.project.$projectId._index.tsx Passes org feature flag to sidebar to enable Konnect sync UI.
packages/insomnia/src/routes/organization.$organizationId.permissions.tsx Extends fallback org features to include konnectSync.
packages/insomnia/src/models/mocks/uuid.ts Adds resetV4Counter helper for deterministic tests.
packages/insomnia/src/konnect/sync.ts Core sync implementation: upserts projects/workspaces/requests and deletes stale entities.
packages/insomnia/src/konnect/api.ts Konnect API client helpers: region extraction, pagination, and 429 retry/backoff.
packages/insomnia/src/konnect/tests/sync.test.ts Extensive unit tests for sync behavior across protocols and resync semantics.
packages/insomnia/src/konnect/tests/api.test.ts Unit tests for API helpers, pagination, and retry logic.
packages/insomnia/src/insomnia-data/src/models/workspace.ts Adds konnectServiceId field for Konnect-managed collections.
packages/insomnia/src/insomnia-data/src/models/websocket-request.ts Adds konnectRouteKey to track Konnect-managed WS requests.
packages/insomnia/src/insomnia-data/src/models/settings.ts Adds hasKonnectPat setting default.
packages/insomnia/src/insomnia-data/src/models/request.ts Adds konnectRouteKey to track Konnect-managed HTTP requests.
packages/insomnia/src/insomnia-data/src/models/request-group.ts Adds konnectRouteId to tag Konnect-managed folders.
packages/insomnia/src/insomnia-data/src/models/project.ts Adds konnectControlPlaneId / konnectClusterType fields for Konnect-managed projects.
packages/insomnia/src/insomnia-data/src/models/grpc-request.ts Adds konnectRouteKey to track Konnect-managed gRPC requests.
packages/insomnia/src/common/settings.ts Extends shared Settings interface with hasKonnectPat.
packages/insomnia/src/common/constants.ts Adds getKonnectApiBaseURL() for configuring Konnect API base URL.
packages/insomnia-smoke-test/tests/smoke/git-sync.test.ts Enables konnectSync feature flag in smoke test org features.
packages/insomnia-smoke-test/server/insomnia-api.ts Seeds konnectSync in mocked organization features response.
packages/insomnia-smoke-test/playwright/test.ts Seeds a fake Konnect PAT in test setup so Konnect-enabled UI can render.
packages/insomnia-api/src/organizations.ts Extends FeatureList type to include konnectSync.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread packages/insomnia/src/ui/hooks/use-konnect-sync.ts
Comment thread packages/insomnia/src/konnect/sync.ts

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 27 out of 27 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread packages/insomnia/src/konnect/sync.ts
Comment thread packages/insomnia/src/konnect/sync.ts
Comment thread packages/insomnia/src/ui/hooks/use-konnect-sync.ts
Comment thread packages/insomnia/src/ui/components/project/project-list-sidebar.tsx Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 27 out of 27 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread packages/insomnia/src/ui/hooks/use-konnect-sync.ts
Comment thread packages/insomnia/src/ui/hooks/use-konnect-sync.ts
Comment thread packages/insomnia/src/ui/components/project/project-list-sidebar.tsx Outdated
Comment thread packages/insomnia/src/konnect/sync.ts
Comment thread packages/insomnia/src/konnect/api.ts
@shelby-moore shelby-moore force-pushed the feat-konnect-integration branch from 801ff24 to 2940821 Compare April 13, 2026 19:48
@cwangsmv cwangsmv self-requested a review April 14, 2026 05:29
projectsCount={projectsCount}
storageRules={storageRules}
onCreateProject={() => setIsNewProjectModalOpen(true)}
konnectSyncEnabled={features.konnectSync.enabled}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ensure the backend change is deployed to production before merge the PR.
Otherwise the app will crash when connecting to production environments.
Or we can add a fallback logic to set features.konnectSync to false if not exists

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Deployed :)

@shelby-moore shelby-moore enabled auto-merge (squash) April 14, 2026 15:21
@shelby-moore shelby-moore merged commit e12d662 into Kong:develop Apr 14, 2026
12 checks passed
@shelby-moore shelby-moore deleted the feat-konnect-integration branch April 14, 2026 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants