Provider Keys & Configuration

TL;DR: Connect your own API keys from OpenAI, Anthropic, Google, and 9+ other providers. Zero-downtime key rotation included. All keys are AES-256 encrypted and isolated per account.


Overview

Igris Overture supports Bring Your Own Key (BYOK) for multiple LLM providers. You can connect your existing provider accounts and manage API keys securely through our platform.

Key Benefits

  • Zero-downtime key rotation - Rotate keys without service interruption
  • Secure storage - AES-256 encryption for all API keys
  • Multi-provider support - Connect 10+ providers simultaneously
  • Automatic failover - Switch providers instantly if one becomes unavailable

Supported Providers

Major Cloud Providers

ProviderModels AvailableSetup Guide
OpenAIGPT-4, GPT-3.5 Turbo, GPT-4 TurboAdd your OPENAI_API_KEY
AnthropicClaude 3 Opus, Sonnet, HaikuAdd your ANTHROPIC_API_KEY
Google GeminiGemini Pro, Gemini UltraAdd your GOOGLE_API_KEY
xAIGrok-1Add your XAI_API_KEY
MistralMistral Large, MediumAdd your MISTRAL_API_KEY
DeepSeekDeepSeek Chat, DeepSeek CoderAdd your DEEPSEEK_API_KEY

Chinese Providers

ProviderModels AvailableSetup Guide
Kimi (Moonshot)Moonshot V1 8K, 32KAdd your KIMI_API_KEY
Qwen (Alibaba)Qwen Turbo, Plus, MaxAdd your QWEN_API_KEY
Zai (MiniMax)Abab 5.5, Abab 6Add your ZAI_API_KEY

Quick Start

1. Add Your Provider Keys

Via Dashboard:

  1. Log in to https://app.igrisinertial.com
  2. Navigate to SettingsProvider Keys
  3. Click Add Provider
  4. Select provider and paste your API key
  5. Click Save

Via API:

curl -X POST https://api.igrisinertial.com/v1/tenants/{tenant_id}/providers/openai/keys \
  -H "Authorization: Bearer YOUR_IGRIS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "sk-...",
    "config": {
      "timeout": 30,
      "max_retries": 3
    }
  }'

2. Start Using Multiple Providers

from openai import OpenAI

# Point to Igris Overture
client = OpenAI(
    base_url="https://api.igrisinertial.com/v1",
    api_key="sk-igris-YOUR_KEY"
)

# Igris Overture automatically routes to the best provider
response = client.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": "Hello!"}]
)

print(response.choices[0].message.content)

Igris Overture automatically selects the best provider based on performance, cost, and availability.


Key Rotation

Zero-Downtime Rotation

Rotate your API keys without any service interruption:

  1. Add new key as a "pending" key
  2. Grace period (15 minutes default) - both old and new keys work
  3. Automatic promotion - new key becomes active after grace period
  4. Graceful fallback - if new key fails, automatically retries with old key

How to Rotate Keys

Via Dashboard:

  1. Go to SettingsProvider Keys
  2. Click Rotate next to the provider
  3. Enter your new API key
  4. Click Initiate Rotation
  5. Monitor status - rotation completes automatically after 15 minutes

Via API:

curl -X POST https://api.igrisinertial.com/v1/tenants/{tenant_id}/providers/openai/keys/rotate \
  -H "Authorization: Bearer YOUR_IGRIS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "new_api_key": "sk-new-key...",
    "grace_period_minutes": 15
  }'

Response:

{
  "rotation_id": "rot_xyz789",
  "status": "in_progress",
  "grace_period_ends": "2025-12-08T12:15:00Z",
  "old_key_id": "key_abc123",
  "new_key_id": "key_def456"
}

Usage Examples

Python SDK

from openai import OpenAI

client = OpenAI(
    base_url="https://api.igrisinertial.com/v1",
    api_key="sk-igris-YOUR_KEY"
)

# Automatic provider selection
response = client.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": "Explain quantum computing"}]
)

# Response includes metadata about which provider was used
print(f"Provider used: {response.metadata.provider}")
print(f"Cost: ${response.metadata.cost_usd}")

JavaScript/Node.js SDK

import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: 'https://api.igrisinertial.com/v1',
  apiKey: 'sk-igris-YOUR_KEY'
});

const response = await client.chat.completions.create({
  model: 'gpt-4',
  messages: [{ role: 'user', content: 'Hello!' }]
});

console.log(response.choices[0].message.content);

cURL (HTTP)

curl -X POST https://api.igrisinertial.com/v1/infer \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-igris-YOUR_KEY" \
  -d '{
    "model": "gpt-4",
    "messages": [
      {"role": "user", "content": "Hello!"}
    ]
  }'

Security & Privacy

Encryption

  • All API keys are encrypted with AES-256-GCM
  • Keys are never stored in plaintext
  • Encryption keys are managed securely and rotated regularly

Isolation

  • Each account's keys are completely isolated
  • No cross-account access possible
  • Keys are only accessible by your authorized users

Best Practices

  1. Rotate keys regularly - Use our zero-downtime rotation feature every 90 days
  2. Monitor key usage - Review usage metrics in your dashboard
  3. Set up alerts - Get notified of unusual activity or high usage
  4. Use least privilege - Only grant necessary permissions to each API key

Troubleshooting

"Provider authentication failed"

Cause: Invalid or expired API key

Solution:

  1. Verify the API key is correct in your provider's dashboard
  2. Check the key hasn't expired
  3. Ensure the key has the necessary permissions
  4. Try creating a new key and rotating to it

"Rate limit exceeded"

Cause: Too many requests to a specific provider

Solution:

  • Igris Overture automatically fails over to other providers
  • Add additional providers to distribute load
  • Contact your provider to increase rate limits
  • Review your usage patterns in the dashboard

"All providers unavailable"

Cause: All configured providers are experiencing issues

Solution:

  • Igris Overture includes automatic retry logic
  • Add more providers for better redundancy
  • Check provider status pages for ongoing incidents
  • Contact support@igrisinertial.com if issues persist

Cost Tracking

Every request includes detailed cost information:

{
  "metadata": {
    "provider": "openai",
    "cost_usd": 0.00234,
    "cost_breakdown": {
      "input_tokens": 25,
      "output_tokens": 150,
      "input_cost": 0.00075,
      "output_cost": 0.00159
    }
  }
}

View detailed cost analytics in your dashboard:

  • Cost per provider
  • Cost per model
  • Daily/weekly/monthly trends
  • Cost forecasting

API Reference

List Your Providers

GET https://api.igrisinertial.com/v1/providers

Response:

{
  "providers": [
    {
      "name": "openai",
      "status": "active",
      "models": ["gpt-4", "gpt-3.5-turbo"],
      "health": "healthy"
    },
    {
      "name": "anthropic",
      "status": "active",
      "models": ["claude-3-opus", "claude-3-sonnet"],
      "health": "healthy"
    }
  ]
}

Add Provider Key

POST https://api.igrisinertial.com/v1/tenants/{tenant_id}/providers/{provider}/keys

Rotate Provider Key

POST https://api.igrisinertial.com/v1/tenants/{tenant_id}/providers/{provider}/keys/rotate

Next Steps