GatewayMigrate from Vercel AI Gateway

Migrate from Vercel AI Gateway

Tangle Gateway supports the same providerOptions.gateway schema as Vercel AI Gateway. Most code works unchanged.

What maps directly

Vercel FeatureTangle EquivalentNotes
providerOptions.gateway.byokSameIdentical schema
providerOptions.gateway.zeroDataRetentionSame13 verified providers
providerOptions.gateway.disallowPromptTrainingSame25 verified providers
providerOptions.gateway.caching: 'auto'SameAnthropic cache_control injection
providerOptions.gateway.orderSameProvider priority
providerOptions.gateway.onlySameProvider allowlist
models fallback arraySameModel-level failover
GET /v1/creditsSameBalance check
GET /v1/generationSameRequest detail lookup

What’s different

FeatureVercelTangle
Base URLai-gateway.vercel.sh/v1router.tangle.tools/v1
AuthAPI key or OIDC tokenAPI key, session, SIWE (wallet), or SpendAuth (on-chain)
PricingZero markup20% markup (0% with BYOK)
Operator networkNoneDecentralized operators compete on price/latency
On-chain paymentsNoneSpendAuth (EIP-712) — pay without a credit card
GuardrailsNonePII + injection detection built-in
Web search toolsPerplexity, Parallel, provider-nativeNot yet (planned)
OIDC authVercel-onlyNot applicable

Code change

AI SDK

  import { generateText } from 'ai'
+ import { createOpenAI } from '@ai-sdk/openai'
 
+ const tangle = createOpenAI({
+   apiKey: 'sk-tan-YOUR_KEY',
+   baseURL: 'https://router.tangle.tools/v1',
+ })
 
  const { text } = await generateText({
-   model: 'anthropic/claude-sonnet-4-6',
+   model: tangle('anthropic/claude-sonnet-4-6'),
    prompt: 'Hello',
    providerOptions: {
      gateway: {
        zeroDataRetention: true,  // works the same
        caching: 'auto',          // works the same
      },
    },
  })

OpenAI SDK

  const client = new OpenAI({
-   apiKey: process.env.AI_GATEWAY_API_KEY,
-   baseURL: 'https://ai-gateway.vercel.sh/v1',
+   apiKey: process.env.TANGLE_API_KEY,
+   baseURL: 'https://router.tangle.tools/v1',
  })

What you gain

  • Operator network. Access decentralized inference providers who compete on price and latency.
  • On-chain payments. Pay with crypto via SpendAuth — no Stripe/credit card required.
  • Wallet auth. Sign in with Ethereum (SIWE) for web3-native access.
  • Guardrails. Built-in PII and prompt injection detection on every request.
  • Self-hostable. Deploy your own gateway instance — it’s open source.