Ah, okay the screenshot makes the problem much clearer.
The important part is this:
InvalidArgument: contents[0].parts[0].inlineData: MIME type video/mp4 is not supported for this operation.
So this isn’t really an authentication problem or a generic n8n failure.
Your request is reaching Gemini, but the request contains binary video data with video/mp4, and the particular operation/model combination isn’t accepting that media input in the way the node is sending it.
I can also see that the node has a Binary data section configured, with the binary property set to video.
What I’d check
- Check the binary property
Make sure the previous node is actually producing the binary property you’re referencing.
For example, if the previous node outputs:
binary
data
but your Gemini node is configured for:
video
then you’re referencing the wrong binary property.
- Check whether you actually need to send the video
If your intention is simply:
“Generate a new video from this text prompt”
then you probably don’t need to attach an existing MP4 to the request at all.
Your prompt is already being passed through:
{{ $json.output }}
So I’d temporarily remove/disable the binary input and test the generation with only the text prompt.
- Check the model’s supported input
The error specifically points toward a model capability / MIME-type mismatch.
That means you shouldn’t assume that because Gemini supports video somewhere in its API, every Gemini video operation accepts an MP4 as inlineData.
The exact model and operation matter.