Deep Research API - Interaction stuck "in_progress" for some domains

Hi everyone,

We’ve been using the Deep Research API (google-genai SDK, deep-research-pro-preview-12-2025) with an API key for partner compliance research, and we’re hitting a frustrating issue.

It was working fine few days ago. On March 3, last time it worked, our compliance prompt completed in about 7 minutes — 17k chars, 752k tokens, beautiful output. Everything worked as expected.

Since March 4, the same kind of prompt just gets stuck. The interaction is created, status shows in_progress, but nothing ever happens — updated == created, no usage, no outputs. We’ve tried shorter prompts, different targets, store=True, SDK and REST

…all stuck. Simple prompts like “capital of France” still work fine though.

The weird part: if we paste the exact same prompt into the Gemini app (Google Pro, Deep Research), it works “immediately”. So, I don’t think it is a content issue.

The weirder part: we tried stream=True with thinking_summaries, and we can actually see the agent start working — it produces 4-5 thinking steps (finding social media profiles, analyzing the product catalog, planning its investigation). Then… silence. The stream just dies quietly after a few minutes. No error, no exception, no output. The script exits cleanly and the interaction stays in_progress on Google’s side forever.

So the agent clearly accepts the prompt and begins reasoning, but something kills it mid-execution.

Has anyone else experienced this? Is there a known capacity issue with the Deep Research API, or are API key requests deprioritized compared to Gemini app users?

Thanks for any insight!

2 Likes

Sorry for that! Taking a look. To confirm when you send a request it never completes?

Coulnd’t reproduce it. Can you please test again and potentially share the prompt? The snippet below worked for me

import time
from google import genai

client = genai.Client()

stream = client.interactions.create(
    input="Research the history of Google TPUs.",
    agent="deep-research-pro-preview-12-2025",
    background=True,
    stream=True,
    agent_config={
        "type": "deep-research",
        "thinking_summaries": "auto"
    }
)

interaction_id = None
last_event_id = None

for chunk in stream:
    if chunk.event_type == "interaction.start":
        interaction_id = chunk.interaction.id
        print(f"Interaction started: {interaction_id}")

    if chunk.event_id:
        last_event_id = chunk.event_id

    if chunk.event_type == "content.delta":
        if chunk.delta.type == "text":
            print(chunk.delta.text, end="", flush=True)
        elif chunk.delta.type == "thought_summary":
            print(f"Thought: {chunk.delta.content.text}", flush=True)

    elif chunk.event_type == "interaction.complete":
        print("\nResearch Complete")

Thanks for looking into this @philschmid!

Unfortunately, I can’t share the exact prompt — it contains client-specific business information. But I can confirm the pattern clearly:

Here are 7 interactions from our testing on March 3-5, and the results are very consistent:

Interaction ID Prompt type Result
v1_Chdx…gQVE Complex compliance research (March 3) completed :white_check_mark: — 7 min, 17k chars
v1_ChdJ…QXM Same type of compliance research (March 5) stuck in_progress forever
v1_Chd2…UXM Same, retry with store=True (March 5) stuck in_progress forever
v1_ChdG…QUU Shorter version of the same prompt (March 5) stuck in_progress forever
v1_ChZN…PENR “Capital of France” (March 5) completed :white_check_mark: ~2 min
v1_Chd3…UXc “Capital of Germany” via SDK (March 5) completed :white_check_mark: ~2.5 min
v1_Chd3…QTg “Capital of Germany” via REST (March 5) completed :white_check_mark: ~2.5 min

The pattern is clear: simple factual queries complete fine, complex research prompts with potentially sensitive topics get stuck — even though the exact same prompt works perfectly when pasted into the Gemini app (Google Pro, Deep Research mode).

We also tried stream=True with thinking_summaries: “auto”. The agent does start working — it produces 4-5 thinking summaries (identifying social media profiles, analyzing the product catalog, planning its investigation). Then the stream dies silently
after a few minutes. No error, no exception, the script exits cleanly. The interaction stays in_progress on Google’s side with no output.

So the agent clearly accepts and understands the prompt. Something kills it mid-execution server-side.

All stuck interactions still show in_progress today (never transitioned to failed or cancelled), with usage: None and outputs: None.

Your snippet works for us too — because it’s a simple factual query. The issue only manifests with longer, more complex research prompts. Could there be a content filter or resource limit that applies differently to API requests vs the Gemini app?

Happy to test again if you have a specific diagnostic you’d like us to try.

Update — isolated to a specific partner domain

We did some more testing and found that the issue is domain-specific, not systemic.

We retested with the same compliance prompt but targeting the partner that worked on March 3. Result: completed successfully — 521 seconds, full report with thinking summaries throughout. Exactly the same behavior as March 3.

Meanwhile, the same prompt targeting the other partner (I just changed the domain in the prompt) still gets stuck every time.

So the prompt itself is not the problem — the agent accepts it, starts working, and completes fine for one domain. But for this specific domain, something the agent encounters during its web research triggers a silent kill.

This strongly suggests there’s a content filter on the research results (not on the input prompt) that activates based on what the agent finds while browsing. The agent starts reasoning (we can see 4-5 thinking summaries), but then gets terminated mid-execution without any error or status change. The interaction just stays `in_progress` forever.

The frustrating part is the silent failure — no error message, no failed status, no indication of what content triggered the filter. If there is a content policy violation, it would be very helpful if the API returned a failed status with a reason, rather than leaving the interaction stuck indefinitely.

Is there a way to get more visibility into why an interaction gets killed mid-execution?

I can share the prompt via DM if needed.

EDIT: What’s also strange is that researching this same domain works perfectly fine in the Gemini app (Google Pro, Deep Research mode). So the content filter seems to apply differently to the API than to the app — which shouldn’t be expected.

Thank you for exploring more. Can you send me an email

Hi @philschmid, just sent you the email with the full details : prompt, all 7 interaction IDs, GCP project, streaming observations, and the domain-specific reproduction steps. Sorry for the delay, I didn’t see your reply earlier. Let me know if you need anything else.

Seeing the EXACT same problem since the last couple of days! Stuff has been in_progress for days now!! Were you able to fix it?

Glad to see I’m not the only one facing this issue :wink:

I haven’t retried yet, but I’ve sent all the details (interaction IDs, prompts, domains, etc.) to @philschmid, and now I’m waiting for his feedback.

On a side note, to be fully transparent, I tested my prompt on other platforms offering such “deep research” features (Perplexity, OpenAI), and it works, their reports are quite comprehensive.

I am having the same issue with reports staying in_progress. This began last week but was an intermittent issue and is not a permanent issue

Is this back working for anybody?

I’m also seeing requests hang in “in_progress” indefinitely. I use the same prompt for every iteration; usually, it finishes in 8–15 minutes, but lately, it’s been taking hours or days. To clarify Im not exceeding the usage limits.

A month ago, this was an ocasional case (1 out of 20). This has been getting progressively worse over the last weeks, and today, 100% of my requests are stuck. Is anyone else seeing this level of instability?

2 Likes

Personally, I have a deadline, so I can’t wait for a fix. I’ve switched to other providers; more expensive, but far more reliable.

That said, this API is still in beta

I’ll see how it goes in a few weeks or months, but I can’t afford to be a beta tester and waste more time debugging it, sorry :roll_eyes:

For the previous two days, I was faced with a ‘403 Forbidden’ error. When Google confirmed and fixed it, I was messing around with an infinite ‘in_progress’ status. Interesting… Now I have to create some of the parts manually using the free Gemini Thinking + Deep Research instead of the paid (beta) API.

@philschmid Running into the same issue on my end. Any updates?

I’m also running into this error. Any updates on status?

1 Like

Same issue here. Have tried both the polling and SSE approaches — both stuck in_progress with no updates or completion (tested with multiple different requests). This was working fine a few days ago.

1 Like

@philschmid

Having the same problem, check also below plz.

1 Like

This happens to me as well. Another issue is responses aren’t bringing any sources into the replies so everything is blank text with no backup

Same issue. All requests are currently failing. Anything that can be done here @Mustan_lokhand?