Federated Management

Route Team Requests

Goal

You will send requests through the routes owned by Product and Engineering and confirm that each request selects the intended AI Gateway model.

Understand the routes

The teams now manage three AI Gateway models on the shared Platform gateway:

Owner Route Request model value
Product /product product-assistant
Engineering /engineering engineering-assistant
Engineering /engineering/code-review engineering-code-reviewer

All three currently use the Platform team’s platform-openai provider and target the upstream gpt-4o model. The separate routes and model selectors allow each team to evolve its target, policies, and capabilities independently.

Set the local proxy URL

Use the HTTPS proxy port exposed by the local data plane:

export AIGW_PROXY_URL="https://localhost:8443"

The commands below use --insecure because the local proxy certificate is not issued for localhost.

Call the Product model

The request path and body selector must both match the Product configuration:

curl --insecure --no-progress-meter --fail-with-body \
  --request POST "${AIGW_PROXY_URL}/product/chat/completions" \
  --header "Accept: application/json" \
  --json '{
    "model": "product-assistant",
    "messages": [
      {
        "role": "user",
        "content": "Describe the value of an AI product platform."
      }
    ]
  }'

Call the Engineering model

Send an engineering question through the independently managed Engineering route:

curl --insecure --no-progress-meter --fail-with-body \
  --request POST "${AIGW_PROXY_URL}/engineering/chat/completions" \
  --header "Accept: application/json" \
  --json '{
    "model": "engineering-assistant",
    "messages": [
      {
        "role": "user",
        "content": "Explain why API contracts help engineering teams."
      }
    ]
  }'

Call the independently added model

The more specific route selects the code-review model that Engineering added without loading the Platform configuration:

curl --insecure --no-progress-meter --fail-with-body \
  --request POST \
  "${AIGW_PROXY_URL}/engineering/code-review/chat/completions" \
  --header "Accept: application/json" \
  --json '{
    "model": "engineering-code-reviewer",
    "messages": [
      {
        "role": "user",
        "content": "Give me three checks for reviewing an API change."
      }
    ]
  }'

Each successful response traveled through the same Platform-owned AI Gateway, but its route and model value selected configuration owned by a satellite team. If a request returns name resolution failed, confirm that its model value exactly matches the corresponding value in the table.