Skip to content

Realtime GA migration incomplete: /video/connect_agent rejects GA clients, and joinOpenAi is missing from the published node-sdk #316

Description

@Ekeu

Summary

As of the 2026-06-29 releases of @stream-io/openai-realtime-api@0.4.0 and @stream-io/node-sdk@0.7.61, the OpenAI Realtime integration seems unusable. There appear to be two separate problems:

  • Backend: /video/connect_agent still speaks the shut-down OpenAI Realtime Beta API and rejects the GA client.
  • SDK/docs: the entry point in thr README points to - call.joinOpenAi(); does not exist in any published node-sdk version.

Environment

Package Version Published
@stream-io/node-sdk 0.7.61 2026-06-29
@stream-io/openai-realtime-api 0.4.0 2026-06-29 (prior release 0.3.3 was 2025-06-18)
@stream-io/video-react-sdk 1.39.0 -

Server-side: Node + Next.js webhook handler.

What happens

On call.session_started, when the AI agent attempts to join, the connect call fails and the webhook returns 500 every time:

POST /api/webhook/stream 500 in 876ms (next.js: 2ms, proxy.ts: 4ms, application-code: 869ms)
⨯ Error: Stream connect_agent failed (server_error code 42). The OpenAI Realtime Beta API was shut down; Stream's /video/connect_agent backend must be updated to use the GA Realtime API. This client (v0.4.0+) no longer sends OpenAI-Beta: realtime=v1. Contact Stream support if the error persists after upgrading.
    at ignore-listed frames {
  type: 'error',
  error: {
    type: 'server_error',
    code: '42',
    message: 'Error:  code ',
    param: null,
    event_id: ''
  }
}
 POST /api/webhook/stream 500 in 798ms (next.js: 2ms, proxy.ts: 2ms, application-code: 794ms)
⨯ Error: Stream connect_agent failed (server_error code 42). The OpenAI Realtime Beta API was shut down; Stream's /video/connect_agent backend must be updated to use the GA Realtime API. This client (v0.4.0+) no longer sends OpenAI-Beta: realtime=v1. Contact Stream support if the error persists after upgrading.
    at ignore-listed frames {
  type: 'error',
  error: {
    type: 'server_error',
    code: '42',
    message: 'Error:  code ',
    param: null,
    event_id: ''
  }
}
 POST /api/webhook/stream 500 in 802ms (next.js: 1530µs, proxy.ts: 2ms, application-code: 799ms)
 POST /api/webhook/stream 200 in 179ms (next.js: 989µs, proxy.ts: 1767µs, application-code: 177ms)

1 - backend /video/connect_agent is still on the Beta interface

Seems like @stream-io/openai-realtime-api@0.4.0 is correctly built for GA but somehow the backend rejects it with the error above . Probably meaning server side has not been fully migrated.

2 - joinOpenAi is missing from the published node-sdk

The openai-realtime-api@0.4.0 README says:

This package is not meant to be used directly. Instead, install it alongside Stream Node SDK and use the call.joinOpenAi() method.

But seems like the method has not been shipped.

Reproduction

import { StreamClient } from "@stream-io/node-sdk";

const stream = new StreamClient(API_KEY, API_SECRET);

// On call.session_started:
const call = stream.video.call("default", meetingId);
const client = await stream.video.connectOpenAi({
  call,
  model: "gpt-realtime",
  openAiApiKey: process.env.OPENAI_API_KEY!,
  agentUserId: agentId,
});
client.updateSession({ instructions });
// → throws "Stream connect_agent failed (server_error code 42) ..."

Expected behavior

1 - /video/connect_agent accepts GA Realtime clients so gpt-realtime agents can join.

Questions

1 - Is the GA /video/connect_agent rollout complete?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions