Skip to main content

URL-Based Routing

The Bloom proxy uses a simple pass-through URL format. Simply prepend your proxy domain to any API URL:
https://iam.bloomtechnologies.app/[TARGET_API_URL]

Examples

Target API URLProxy URL
https://api.openai.com/v1/chat/completionshttps://iam.bloomtechnologies.app/https://api.openai.com/v1/chat/completions
https://google.serper.dev/searchhttps://iam.bloomtechnologies.app/https://google.serper.dev/search
https://api.github.com/userhttps://iam.bloomtechnologies.app/https://api.github.com/user
The proxy automatically:
  • Extracts the base URL (e.g., https://api.openai.com/v1)
  • Matches it to your configured integrations
  • Routes the request with proper authentication

Request Validation Flow

For each request, the proxy performs these validation steps:
1

Extract Target URL

Extracts the full target URL from the proxy path (e.g., “https://api.openai.com/v1/chat/completions”)
2

Match Integration

Matches the base URL to a configured integration (e.g., “https://api.openai.com/v1” → OpenAI integration)
3

Validate Agent

Validates the agent_id from your request body or Bearer token
4

Check Scopes

Checks if the agent has scopes for that specific integration
5

Verify Permissions

Verifies the HTTP method and path are allowed by the scope
6

Route Request

Routes to the appropriate integration with proper authentication

Example Flow

When you make a request to https://iam.bloomtechnologies.app/https://api.openai.com/v1/chat/completions:
Proxy extracts the target URL: “https://api.openai.com/v1/chat/completions” Base URL: “https://api.openai.com/v1” Path: “chat/completions”
Finds your integration by matching base URL “https://api.openai.com/v1
Checks if your agent has scopes configured for this integration
Validates the POST method and “chat/completions” path are allowed
Uses your stored OpenAI API key to make the actual request
Returns the response back to your agent

Common Routing Patterns

# OpenAI Chat Completions
POST https://iam.bloomtechnologies.app/https://api.openai.com/v1/chat/completions

# Serper Web Search
POST https://iam.bloomtechnologies.app/https://google.serper.dev/search

# GitHub User Info
GET https://iam.bloomtechnologies.app/https://api.github.com/user

# Slack Message Posting
POST https://iam.bloomtechnologies.app/https://slack.com/api/chat.postMessage

Benefits of URL-Based Routing

No Configuration Changes

Use any API without manually configuring service names. Just add your integration’s credentials.

Works with Any SDK

Change the baseURL parameter in any SDK to point to the proxy - no other code changes needed.

Self-Documenting

The URL itself shows which API is being called - no need to memorize service names.

Instant Integration

Add a new API integration and start using it immediately without waiting for new routing rules.
If your agent doesn’t have the required scopes, the proxy will return a 403 Forbidden error.