Skip to content

fix: omit stream query parameter when stream is None on interactions get - #2886

Open
adi-IL wants to merge 1 commit into
googleapis:mainfrom
adi-IL:fix/interactions-get-stream
Open

fix: omit stream query parameter when stream is None on interactions get#2886
adi-IL wants to merge 1 commit into
googleapis:mainfrom
adi-IL:fix/interactions-get-stream

Conversation

@adi-IL

@adi-IL adi-IL commented Aug 20, 2026

Copy link
Copy Markdown

Summary

Fixes #2661.

In google/genai/_gaos/google_genai.py, Interactions.get() and AsyncInteractions.get() previously executed stream_bool = bool(_optional_bool(stream, default=False)). This forced stream to boolean False even when omitted or set to None, causing super().get to serialize ?stream=false on all HTTP GET requests.

During backend rollouts, certain endpoints reject unexpected ?stream=false parameters with Unknown name "stream".

Changes

  1. Updated Interactions.get() and AsyncInteractions.get() in google/genai/_gaos/google_genai.py to default stream: Any = None and set stream_bool = _optional_bool(stream). When stream is None (the default), stream is omitted from serialized query parameters matching how include_input is handled.
  2. Updated and expanded unit tests in google/genai/tests/interactions/test_paths.py to verify that:
    • Default client.interactions.get(id) and client.aio.interactions.get(id) omit ?stream from the request URL.
    • Explicit stream=False serializes ?stream=false.
    • Explicit stream=True serializes ?stream=true.

Testing

Ran pytest suite:

  • google/genai/tests/interactions/test_paths.py: 4 passed.
  • google/genai/tests/interactions/: 40 passed.

@Venkaiahbabuneelam Venkaiahbabuneelam self-assigned this Aug 20, 2026
@Venkaiahbabuneelam Venkaiahbabuneelam added the size:M Code changes between 10-40 lines label Aug 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M Code changes between 10-40 lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

interactions.get() always sends stream=false query param with no way to omit it (intermittent 400 "Unknown name stream" during backend rollout)

2 participants