Skip to main content
Scanners

Service Dependencies Scanner

Map external service and platform dependencies by detecting SDK packages.

The Service Dependencies scanner maps your external service and platform integrations by detecting SDK packages. This intelligence supports vendor inventory, cost analysis, and cloud migration planning.


Detection Categories

Payment Processing

ServiceDetected Packages
Stripestripe, @stripe/react-stripe-js
Braintreebraintree, braintree-web
PayPal@paypal/checkout-server-sdk
Squaresquare
Paddle@paddle/paddle-js

Authentication & Identity

ServiceDetected Packages
Auth0@auth0/nextjs-auth0, auth0
Clerk@clerk/nextjs, @clerk/clerk-sdk-node
Firebase Authfirebase, firebase-admin
NextAuth.jsnext-auth
Passportpassport, passport-*
Supabase Auth@supabase/supabase-js

Cloud SDKs

Cloud ProviderDetected Packages
AWS@aws-sdk/*, aws-sdk
Azure@azure/*
Google Cloud@google-cloud/*
Cloudflare@cloudflare/workers-types, wrangler
Vercel@vercel/*

Databases & Storage

ServiceDetected Packages
PostgreSQLpg, postgres
MongoDBmongodb, mongoose
Redisredis, ioredis
Supabase@supabase/supabase-js
PlanetScale@planetscale/database
Neon@neondatabase/serverless

Messaging & Queues

ServiceDetected Packages
SQS/SNS@aws-sdk/client-sqs, @aws-sdk/client-sns
Kafkakafkajs
BullMQbullmq
RabbitMQamqplib
Upstash@upstash/redis, @upstash/kafka

Observability

ServiceDetected Packages
Sentry@sentry/node, @sentry/nextjs
DataDogdd-trace
New Relicnewrelic
LaunchDarkly@launchdarkly/node-server-sdk
PostHogposthog-node

Use Cases

Vendor Inventory

Generate a complete list of third-party services:

vg scan --format json | jq '.serviceDependencies'

Cloud Migration Planning

Identify AWS-specific services before migrating to Azure:

vg scan --format json | jq '.serviceDependencies.cloud'

Cost Analysis

Map services to billing by correlating detected SDKs with vendor invoices.

Compliance Documentation

Generate reports of all third-party data processors for GDPR compliance.


Example Output

{
  "serviceDependencies": {
    "payment": [
      {
        "service": "stripe",
        "packages": ["stripe", "@stripe/react-stripe-js"],
        "usedIn": ["src/payments/", "src/api/webhooks/"]
      }
    ],
    "auth": [
      {
        "service": "auth0",
        "packages": ["@auth0/nextjs-auth0"],
        "usedIn": ["src/auth/"]
      },
      {
        "service": "nextauth",
        "packages": ["next-auth"],
        "usedIn": ["src/app/api/auth/"]
      }
    ],
    "cloud": [
      {
        "provider": "aws",
        "packages": ["@aws-sdk/client-s3", "@aws-sdk/client-ses"],
        "services": ["S3", "SES"]
      }
    ],
    "database": [
      {
        "service": "prisma",
        "packages": ["@prisma/client"],
        "database": "postgresql"
      },
      {
        "service": "redis",
        "packages": ["ioredis"],
        "usedFor": "caching"
      }
    ],
    "messaging": [
      {
        "service": "bullmq",
        "packages": ["bullmq"]
      }
    ],
    "observability": [
      {
        "service": "sentry",
        "packages": ["@sentry/nextjs"]
      },
      {
        "service": "analytics",
        "packages": ["posthog-node"]
      }
    ]
  }
}

Related Documentation