Unique API Rollout

1 min read

How it works

The client path remains /public/chat. For enabled batches, node-chat forwards requests internally to unique-api; all other routes remain on node-chat.

Batch scope and schedule: Unique API Rollout Strategy.

Enable a cluster

  1. Deploy unique-api.

  2. Enable the dependency in the cluster's node-chat values:

yaml
internalServices:
  dependencies:
    uniqueApi:
      enabled: true
      namespace: chat

Omit namespace when both services use the same namespace. Helm generates UNIQUE_API_URL and the node-chat egress policy; do not set the URL manually. Ensure the unique-api network policy allows node-chat ingress.

If a sandbox or harness calls migrated routes, update its egress gateway host/path allowlist too.

Verify

bash
curl -i 'https://<BACKEND_URL>/public/chat/users' \
  -H 'Authorization: Bearer <API_KEY>' \
  -H 'x-app-id: <APP_ID>' \
  -H 'x-user-id: <USER_ID>' \
  -H 'x-company-id: <COMPANY_ID>' \
  -H 'x-api-version: 2023-12-06'

Expected: x-served-by: unique-api.

  • x-served-by: node-chat: forwarding is not enabled or configured for that route.

  • 502: the internal forward failed or timed out.

  • No header: the request may have been rejected by Kong or a guard before the interceptor ran.

Relevant node-chat logs: UNIQUE_API_FORWARD_SERVED and UNIQUE_API_FORWARD_FAILED.

Last updated