> ## Documentation Index
> Fetch the complete documentation index at: https://docs.portkey.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Any OpenAI-Compatible Project

> Add Prisma AIRS AI Gateway to any OpenAI-compatible app—just change 2 settings.

> [!NOTE]
>
> Screenshots on this page show the previous product branding and navigation. The workflow they
> illustrate is current; the interface around it has since been rebranded to Prisma AIRS.

The AI Gateway works with any tool or application that supports OpenAI-compatible APIs. Add observability, reliability, and cost controls with just 2 configuration changes.

## Quick Start

Find your project's OpenAI settings and update:

1. **Base URL:** `https://aigw.portkey.ai/v1`
2. **API Key:** Your AI Gateway API key

That's it! Your app now routes through the AI Gateway.

![](https://mintcdn.com/portkey-docs/T0lFtdapIPX8YtCI/images/integrations/observability.png?fit=max\&auto=format\&n=T0lFtdapIPX8YtCI\&q=85\&s=2ae78f4fa0c682ce65125ce6bc0d0d55)

All requests appear in the AI Gateway logs

You now get:

* ✅ Full observability (costs, latency, logs)
* ✅ Access to 3,000+ LLMs
* ✅ Automatic fallbacks and retries
* ✅ Budget controls per team/project

## Why Add the AI Gateway?

> **Observability**
>
> Every request logged with costs, latency, tokens. Track usage across teams.

> **Multi-Provider Access**
>
> Switch between OpenAI, Anthropic, Google, and 3,000+ models without code changes.

> **Production Reliability**
>
> Automatic fallbacks, retries, load balancing—configured once, works everywhere.

> **Cost & Access Control**
>
> Budget limits per team. Rate limiting. Centralized credential management.

## Setup

### 1. Add Provider in Model Catalog

1. Go to [**Model Catalog → Add Provider**](https://stratacloudmanager.paloaltonetworks.com/)
2. Select your provider (OpenAI, Anthropic, Google, etc.)
3. Choose existing credentials or create new by entering your API keys
4. Name your provider (e.g., `openai-prod`)

Your provider slug will be **`@openai-prod`** (or whatever you named it).

> **[Complete Model Catalog Guide →](https://docs.portkey.ai/docs/aigw/product/model-catalog.md)**
>
> Set up budgets, rate limits, and manage credentials

### 2. Get AI Gateway API Key

Create your AI Gateway API key at [stratacloudmanager.paloaltonetworks.com](https://stratacloudmanager.paloaltonetworks.com/)

### 3. Configure Your Application

Most OpenAI-compatible apps have settings for:

**Base URL / Endpoint**

```
https://aigw.portkey.ai/v1
```

**API Key**

```
Your Gateway API Key (from step 2)
```

**Model** (if configurable)

```
@openai-prod/gpt-4o
```

If your app requires the OpenAI format (just model name), use an AI Gateway config with your default model.

## Common Integration Patterns

### Pattern 1: Direct Configuration (Recommended)

If your app allows custom base URL and API key:

```
Base URL: https://aigw.portkey.ai/v1
API Key: PORTKEY_API_KEY
Model: @openai-prod/gpt-4o
```

### Pattern 2: With Config

If your app only accepts model names like `gpt-4o`:

1. Create a config in [Strata Cloud Manager](https://stratacloudmanager.paloaltonetworks.com/):

```json theme={"system"}
{
  "override_params": {
    "model": "@openai-prod/gpt-4o"
  }
}
```

2. Use the config in your app:

```
Base URL: https://aigw.portkey.ai/v1
API Key: PORTKEY_API_KEY
Model: gpt-4o  (the config will override this)
```

Add config to API key defaults or pass via header.

### Pattern 3: Environment Variables

Many apps use environment variables:

```bash theme={"system"}
OPENAI_API_BASE=https://aigw.portkey.ai/v1
OPENAI_API_KEY=PORTKEY_API_KEY
OPENAI_MODEL=@openai-prod/gpt-4o
```

## Switching Providers

Change the model string to switch providers:

```
@openai-prod/gpt-4o        # OpenAI
@anthropic-prod/claude-sonnet-4    # Anthropic
@google-prod/gemini-2.0-flash      # Google
```

All without changing your application code!

## Advanced Features via Configs

For production features like fallbacks, caching, and load balancing:

1. Create a config in [Strata Cloud Manager](https://stratacloudmanager.paloaltonetworks.com/)
2. Attach it to your API key defaults
3. Or pass via header: `x-portkey-config: your-config-id`

**Example config with fallbacks:**

```json theme={"system"}
{
  "strategy": {"mode": "fallback"},
  "targets": [
    {"override_params": {"model": "@openai-prod/gpt-4o"}},
    {"override_params": {"model": "@anthropic-prod/claude-sonnet-4"}}
  ]
}
```

> **[Learn About Configs →](https://docs.portkey.ai/docs/aigw/product/ai-gateway/configs.md)**
>
> Fallbacks, retries, caching, load balancing, and more

# 3. Set Up Governance

**Why Governance?**

* **Cost Management**: Controlling and tracking AI spending across teams
* **Access Control**: Managing team access and workspaces
* **Usage Analytics**: Understanding how AI is being used across the organisation
* **Security & Compliance**: Maintaining your organisation's security standards
* **Reliability**: Ensuring consistent service across all users
* **Model Management**: Managing what models are being used in your setup

The AI Gateway adds a governance layer to address these needs.

**Implementation Guide**

> **Step 1: Implement Budget Controls & Rate Limits**
>
> ### Step 1: Implement Budget Controls & Rate Limits
>
> Model Catalog enables you to have granular control over LLM access at the team/department level. This helps you:
>
> * Set up [budget limits](https://docs.portkey.ai/docs/aigw/product/policies/budget-limits.md)
> * Prevent unexpected usage spikes using Rate limits
> * Track departmental spending
>
> #### Setting Up Department-Specific Controls:
>
> 1. Navigate to [Model Catalog](https://stratacloudmanager.paloaltonetworks.com/) in Strata Cloud Manager
> 2. Create new Provider for each engineering team with budget limits and rate limits
> 3. Configure department-specific limits

> **Step 2: Define Model Access Rules**
>
> ### Step 2: Define Model Access Rules
>
> As your AI usage scales, controlling which teams can access specific models becomes crucial. You can manage AI models in your organisation by provisioning models at the top integration level.

> **Step 3: Set Routing Configuration**
>
> ### Step 3: Set Routing Configuration
>
> The AI Gateway lets you control your routing logic with its Configs feature. AI Gateway Configs provide this control layer with things like:
>
> * **Data Protection**: Implement guardrails for sensitive code and data
> * **Reliability Controls**: Add fallbacks, load-balance, retry and smart conditional routing logic
> * **Caching**: Implement Simple and Semantic Caching, and more
>
> #### Example Configuration:
>
> Here's a basic configuration to load-balance requests to OpenAI and Anthropic:
>
> ```json theme={"system"}
> {
> 	"strategy": {
> 		"mode": "load-balance"
> 	},
> 	"targets": [
> 		{
> 			"override_params": {
> 				"model": "@YOUR_OPENAI_PROVIDER_SLUG/gpt-model"
> 			}
> 		},
> 		{
> 			"override_params": {
> 				"model": "@YOUR_ANTHROPIC_PROVIDER/claude-sonnet-model"
> 			}
> 		}
> 	]
> }
> ```
>
> Create your config on the [Configs](https://stratacloudmanager.paloaltonetworks.com/) page in Strata Cloud Manager. You'll need the config ID for connecting.
>
> > [!NOTE]
> >
> > Configs can be updated anytime to adjust controls without affecting running applications.

> **Step 4: Implement Access Controls**
>
> ### Step 4: Implement Access Controls
>
> Create User-specific API keys that automatically:
>
> * Track usage per developer/team with the help of metadata
> * Apply appropriate configs to route requests
> * Collect relevant metadata to filter logs
> * Enforce access permissions
>
> Create API keys through:
>
> * [Strata Cloud Manager](https://stratacloudmanager.paloaltonetworks.com/)
> * [API Key Management API](https://docs.portkey.ai/docs/api-reference/admin-api/control-plane/api-keys/create-api-key.md)
>
> Example using Python SDK:
>
> ```python theme={"system"}
> from portkey_ai import Portkey
>
> portkey = Portkey(api_key="YOUR_ADMIN_API_KEY")
>
> api_key = portkey.api_keys.create(
>     name="frontend-engineering",
>     type="organisation",
>     workspace_id="YOUR_WORKSPACE_ID",
>     defaults={
>         "config_id": "your-config-id",
>         "metadata": {
>             "environment": "development",
>             "department": "engineering",
>             "team": "frontend"
>         }
>     },
>     scopes=["logs.view", "configs.read"]
> )
> ```
>
> For detailed key management instructions, see our [API Keys documentation](https://docs.portkey.ai/docs/api-reference/admin-api/control-plane/api-keys/create-api-key.md).

> **Step 5: Deploy & Monitor**
>
> ### Step 5: Deploy & Monitor
>
> After distributing API keys to your engineering teams, your setup is ready to go. Each developer can now use their designated API keys with appropriate access levels and budget controls.
> Apply your governance setup using the integration steps from earlier sections.
>
> Monitor usage in the AI Gateway dashboard:
>
> * Cost tracking by engineering team
> * Model usage patterns for AI agent tasks
> * Request volumes
> * Error rates and debugging logs

> [!TIP]
>
> ### What's Now Available
>
> **You now have:**
>
> * Departmental budget controls
> * Model access governance
> * Usage tracking & attribution
> * Security guardrails
> * Reliability features

# AI Gateway Features

Now that your setup is in place, let's explore the features the AI Gateway provides to ensure secure, efficient, and cost-effective AI operations.

### 1. Comprehensive Metrics

Using the AI Gateway you can track 40+ key metrics including cost, token usage, response time, and performance across all your LLM providers in real time. You can also filter these metrics based on custom metadata that you can set in your configs. Learn more about metadata here.

### 2. Advanced Logs

The AI Gateway's logging dashboard provides detailed logs for every request made to your LLMs. These logs include:

* Complete request and response tracking
* Metadata tags for filtering
* Cost attribution and much more...

### 3. Unified Access to 1600+ LLMs

You can easily switch between 1600+ LLMs. Call various LLMs such as Anthropic, Gemini, Mistral, Azure OpenAI, Google Vertex AI, AWS Bedrock, and many more by simply changing the `provider` slug in your default `config` object.

### 4. Advanced Metadata Tracking

Using the AI Gateway, you can add custom metadata to your LLM requests for detailed tracking and analytics. Use metadata tags to filter logs, track usage, and attribute costs across departments and teams.

> **[Custom Metadata](https://docs.portkey.ai/docs/aigw/product/observability/metadata.md)**

### 5. Access Management

> **[Budget Controls](https://docs.portkey.ai/docs/aigw/product/policies/budget-limits.md)**
>
> Set and manage spending limits across teams and departments. Control costs with granular budget limits and usage tracking.

> **[Single Sign-On (SSO)](https://docs.portkey.ai/docs/aigw/product/enterprise-offering/org-management/sso.md)**
>
> SSO integration with support for SAML 2.0, Okta, Azure AD, and custom providers for secure authentication.

> **[Organisation Management](https://docs.portkey.ai/docs/aigw/product/enterprise-offering/org-management.md)**
>
> Hierarchical organisation structure with workspaces, teams, and role-based access control for large-scale deployments.

> **[Access Rules & Audit Logs](https://docs.portkey.ai/docs/aigw/product/enterprise-offering/access-control-management.md#audit-logs)**
>
> Comprehensive access control rules and detailed audit logging for security compliance and usage tracking.

### 6. Reliability Features

> **[Fallbacks](https://docs.portkey.ai/docs/aigw/product/ai-gateway/fallbacks.md)**
>
> Automatically switch to backup targets if the primary target fails.

> **[Conditional Routing](https://docs.portkey.ai/docs/aigw/product/ai-gateway/conditional-routing.md)**
>
> Route requests to different targets based on specified conditions.

> **[Load Balancing](https://docs.portkey.ai/docs/aigw/product/ai-gateway/load-balancing.md)**
>
> Distribute requests across multiple targets based on defined weights.

> **[Caching](https://docs.portkey.ai/docs/aigw/product/ai-gateway/cache-simple-and-semantic.md)**
>
> Enable caching of responses to improve performance and reduce costs.

> **[Smart Retries](https://docs.portkey.ai/docs/aigw/product/ai-gateway/automatic-retries.md)**
>
> Automatic retry handling with exponential backoff for failed requests

> **[Budget Limits](https://docs.portkey.ai/docs/aigw/product/policies/budget-limits.md)**
>
> Set and manage budget limits across teams and departments. Control costs with granular budget limits and usage tracking.

### 7. Advanced Guardrails

Protect your Project's data and enhance reliability with real-time checks on LLM inputs and outputs. Leverage guardrails to:

* Prevent sensitive data leaks
* Enforce compliance with organisational policies
* PII detection and masking
* Content filtering
* Custom security rules
* Data compliance checks

> **[Guardrails](https://docs.portkey.ai/docs/aigw/product/guardrails.md)**
>
> Implement real-time protection for your LLM interactions with automatic detection and filtering of sensitive content, PII, and custom security rules. Enable comprehensive data protection while maintaining compliance with organisational policies.

# FAQs

> **How do I update my AI Provider limits after creation?**
>
> Update AI Provider limits at any time from [Model Catalog](https://stratacloudmanager.paloaltonetworks.com/): 1. Open the provider you want to modify. 2. Update the budget or rate limits. 3. Save your changes.

> **Can I use multiple LLM providers with the same API key?**
>
> Yes! Add multiple AI Providers to Model Catalog (one for each provider) and attach them to a single config. This config can then be connected to your API key, allowing you to use multiple providers through a single API key.

> **How do I track costs for different teams?**
>
> The AI Gateway provides several ways to track team costs:
>
> * Create separate AI Providers for each team
> * Use metadata tags in your configs
> * Set up team-specific API keys
> * Monitor usage in the analytics dashboard

> **What happens if a team exceeds their budget limit?**
>
> When a team reaches their budget limit:
>
> 1. Further requests will be blocked
> 2. Team admins receive notifications
> 3. Usage statistics remain available in dashboard
> 4. Limits can be adjusted if needed

# Next Steps

**Join our Community**

* [GitHub Repository](https://github.com/Portkey-AI)


## Related topics

- [Overview](https://docs.portkey.ai/docs/aigw/integrations/ai-apps.md)
- [Exa Online Search](https://docs.portkey.ai/docs/aigw/integrations/plugins/exa.md)
- [Text-to-Speech](https://docs.portkey.ai/docs/aigw/integrations/llms/vertex-ai/text-to-speech.md)
- [Open WebUI](https://docs.portkey.ai/docs/aigw/integrations/libraries/openwebui.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.