Skip to main content

Connectors Overview

DgiDgi provides a comprehensive connector ecosystem that connects your AI-powered development environment with the tools and services you need. Our connectors follow a BYOI (Bring Your Own Infrastructure) architecture where your actual data lives in your chosen providers, and DgiDgi orchestrates everything.

BYOI Architecture

DgiDgi is an orchestration layer, not a data storage layer. Your code, databases, and deployments live in your infrastructure:

What DgiDgi Stores vs What You Own

Data TypeWhere It LivesWhat DgiDgi Stores
Source CodeYour GitHub/GitLab/BitbucketRepo URL, branch names, commit metadata
DatabasesYour Supabase/PlanetScale/NeonConnection string (encrypted), schema cache
DeploymentsYour Fly.io/Vercel/RailwayDeployment ID, status, URLs
SecretsYour vault or DgiDgi (encrypted)Encrypted references
Chat MediaDgiDgi R2 bucketsFull files (platform functionality)
Run ArtifactsDgiDgi R2 bucketsGenerated outputs, logs

Connector Architecture

DgiDgi uses a two-tier connector architecture that provides flexibility:

Tenant Level

  • Configured by organization owners
  • Connects services with organization credentials
  • Can override platform OAuth credentials (BYOA - Bring Your Own App)
  • Manages organization-wide connector access

Project Level

  • Configured by project members
  • Enables specific tenant connectors for a project
  • Project-specific configuration overrides
  • Controls which connectors are available in the editor/agent

Credential Modes

Every connector has a credential mode that determines how authentication works:

ModeDescriptionExample Providers
HybridPlatform provides default, tenant can overrideGitHub, OpenAI, Vercel
Tenant-ManagedTenant must provide their own credentialsAuth0, Clerk, Render

Credential Resolution Order

Why BYOI Matters

BenefitDescription
Cost IsolationUse your own OpenAI/Anthropic keys for direct billing
ComplianceUse organization-approved OAuth apps
Data ResidencyData stays in your chosen regions
Full OwnershipExport and leave anytime with your data
Custom ScopesRequest specific permissions for your apps

Connector Categories

CategoryDescriptionExamples
AILLM providers and AI servicesOpenAI, Anthropic, Groq, Gemini
CLI/AIAI-powered CLI toolsClaude Code, GitHub Copilot CLI, Aider
Source ControlVersion control systemsGitHub, GitLab, Bitbucket, Azure DevOps
DatabaseDatabase and data servicesPostgreSQL, MongoDB, Supabase, Neon
DeploymentHosting and deployment platformsVercel, Netlify, Fly.io, Cloudflare
AuthAuthentication providersClerk, Auth0, Supabase Auth, Firebase
StorageFile and object storageS3, Cloudflare R2, Google Cloud Storage
PaymentsPayment processingStripe, Paddle, LemonSqueezy
EmailEmail servicesResend, SendGrid, Postmark
AnalyticsAnalytics and monitoringPostHog, Mixpanel, Sentry
MessagingCommunication platformsSlack, Discord, Telegram
ProductivityProductivity toolsNotion, Linear, Jira
SearchSearch enginesAlgolia, Typesense, Meilisearch
Web3Blockchain and cryptoAlchemy, Infura, OpenSea
RuntimeContainer and serverlessKubernetes, Docker, AWS Lambda
SecretsSecret managementHashiCorp Vault, 1Password, Doppler
CI/CDContinuous integrationGitHub Actions, CircleCI, ArgoCD
ObservabilityLogging and tracingOpenTelemetry, Grafana, Jaeger
SecuritySecurity scanningSnyk, SonarQube
DataData pipelinesSnowflake, Airbyte
API ManagementAPI gatewaysKong
MobileMobile developmentExpo
MarketingMarketing platformsGoogle Ads, Facebook, HubSpot

Authentication Types

DgiDgi connectors support multiple authentication methods:

Auth TypeDescriptionUse Case
API KeySimple key-based authenticationMost cloud services
OAuth 2.0Secure token-based with refreshGitHub, Google, Slack
Basic AuthUsername/passwordLegacy systems
Bearer TokenPre-authenticated tokenService accounts
IAM RoleCloud IAM authenticationAWS, GCP, Azure
Connection StringDatabase connection URLsPostgreSQL, MongoDB
NoneNo authentication requiredLocal services (Ollama)

Credential Security

All credentials are encrypted and securely stored:

Connector Status

StatusDescriptionColor
ConnectedWorking and verifiedGreen
PendingAwaiting configurationYellow
Pending ApprovalRequires admin approvalOrange
ErrorConfiguration or connection issueRed
FailedAuthentication failedRed
ExpiredToken expired, needs refreshGray
DisabledManually disabledGray

Getting Started

For Organization Owners

  1. Navigate to Settings > Connectors in the DgiDgi dashboard
  2. Browse the provider catalog by category
  3. Click Connect on the connector you want to add
  4. Choose authentication method:
    • OAuth: Click "Sign in with [Provider]" for automatic setup
    • API Key: Enter credentials manually
  5. Verify the connection and save

For Project Members

  1. Open your project and go to Settings > Connectors
  2. Click Set Up Connectors
  3. Select from your organization's connected connectors
  4. Configure project-specific settings if needed
  5. The connector is now available in the editor and agent

Using Your Own Credentials (BYOI)

To use your own OAuth app or API keys:

  1. Go to Settings > Connectors
  2. Click on the connected provider
  3. Click Override Credentials
  4. Enter your own:
    • OAuth App: Client ID, Client Secret, Callback URL
    • API Key: Your API key from the provider
  5. Save and re-authenticate

API Reference

Tenant Connectors API

# List connected connectors
GET /api/v1/tenant/connectors

# Connect a new connector
POST /api/v1/tenant/connectors
{
"providerId": "github",
"providerName": "GitHub",
"category": "source_control",
"authType": "oauth",
"credentials": {}
}

# Update connector
PATCH /api/v1/tenant/connectors/:id

# Verify connector
POST /api/v1/tenant/connectors/:id/verify

# Delete connector
DELETE /api/v1/tenant/connectors/:id

Project Connectors API

# List project connectors
GET /api/v1/projects/:projectId/connectors

# Enable connector for project
POST /api/v1/projects/:projectId/connectors
{
"tenantConnectorId": "conn_123",
"config": {}
}

# Update project connector config
PATCH /api/v1/projects/:projectId/connectors/:id

# Remove from project
DELETE /api/v1/projects/:projectId/connectors/:id