Batch API Outage - /v1/responses cannot access valid purpose=batch input_file_id

Hi,

I’m seeing what appears to be a file resolution / authorization issue when creating a text Batch API request using /v1/responses.

The input JSONL file is successfully uploaded with purpose=batch and is fully accessible through the Files API using the same API key, but the Batch API reports that it cannot find or access the file.

This appears similar to recently reported Batch file-access issues, but in this case the failure occurs with the Batch input JSONL file itself, not an image or attachment referenced inside a batch request.

Actual error

Cannot find file file-..., or organization org-... does not have access to it.

Reproduction

1. Upload the Batch input file

curl https://api.openai.com/v1/files \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F purpose="batch" \
  -F file="@batch.jsonl"

The upload succeeds and returns a valid file-... ID.

The returned file has:

{
  "purpose": "batch"
}

2. Retrieve the file metadata

Using the same API key:

curl https://api.openai.com/v1/files/file-... \
  -H "Authorization: Bearer $OPENAI_API_KEY"

This succeeds.

3. Retrieve the actual file contents

curl https://api.openai.com/v1/files/file-.../content \
  -H "Authorization: Bearer $OPENAI_API_KEY"

This also succeeds and returns the uploaded JSONL contents.

4. Create the Batch

Using the same API key and the same file ID:

curl https://api.openai.com/v1/batches \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input_file_id": "file-...",
    "endpoint": "/v1/responses",
    "completion_window": "24h"
  }'

The Batch API fails with:

Cannot find file file-..., or organization org-... does not have access to it.

Expected behavior

Since the file:

  • was successfully uploaded with purpose=batch,

  • can be retrieved through /v1/files/{file_id},

  • can be downloaded through /v1/files/{file_id}/content,

  • and is accessed using the same API key,

the Batch API should be able to use it as input_file_id.

Additional context

  • This reproduces with direct API calls, so it does not appear to be an SDK/client-library issue.

  • The workflow was previously working normally, and the failures started today at approximately 11:39 KST (UTC+9).

  • The problem occurs with a normal text Batch using /v1/responses, not an image Batch.

  • Similar Batch file-access issues have recently been reported by other users, including cases involving uploaded file_id resolution.

Is this a known regression affecting Batch input_file_id resolution?

I can provide request IDs, batch IDs, and file IDs privately if needed.

I can confirm I’m seeing the same issue today, independently, with Sora Batch using /v1/videos.

In my case, the Batch input JSONL uploads successfully with purpose="batch" and the Files API can retrieve the resulting file normally. However, Batch validation subsequently fails with:

Cannot find file file-..., or organization org-... does not have access to it.

The Batch ends with:

status: failed

request_counts:
  completed: 0
  failed: 0
  total: 0

I also tested whether this was simply a propagation/race issue. I reused the same input file several minutes later to create a new Batch. It entered validating, but eventually failed with the identical file_id access error.

I then downloaded/re-uploaded the JSONL as a completely new purpose=batch file and created another Batch using the new input_file_id. That also entered validating and subsequently failed with:

code: invalid_request
param: file_id
message: Cannot find file file-..., or organization org-... does not have access to it.

So my results are:

Files API upload             -> succeeds
Files API retrieve           -> succeeds
purpose                      -> batch
status                       -> processed
Batch creation               -> succeeds / validating
Batch validation             -> fails to resolve input_file_id
Batch request count          -> 0
Fresh re-upload              -> same failure
Reuse file after several min -> same failure

This workflow was previously working normally.

Since you are reproducing this with /v1/responses and I am independently reproducing it with /v1/videos, this appears to be broader than either Responses or Sora specifically. It looks like the Batch service is currently unable to resolve valid Batch input JSONL files for at least some organizations/projects.

This also seems distinct from the recent Batch issue where the input JSONL could be read but files referenced inside individual requests failed authorization. In this case, validation fails on the Batch’s own input_file_id before any requests are processed.

I am experiencing the exact same issue. The same code was working perfectly until yesterday, but I started noticing the issue you mentioned today. I first tried and saw it at 10:48 (UTC+9).

I generated a new API key just in case, but the issue persisted. However, when I created a completely new project (and a new API key) and tested it, it worked fine. Therefore, this appears to be an internal issue on OpenAI’s end.

If possible, I suggest trying a new project for now until the issue is resolved."

Hi everyone,

Thank you for the detailed report. I was able to reproduce the issue in my testing and have flagged this to the team at OpenAI.

We’ll share further updates as they become available.

@a_ida @StormingBullet

Welcome to the forum!
Thanks for posting and the feedback.

@monarch102354

Thanks for the additional and unique feedback.

I’m seeing the same issue since approximately 02:00 UTC today across two independently deployed applications using the same OpenAI project.

This affects /v1/embeddings batches as well. The input files:

  • Upload successfully with purpose: "batch"
  • Show status: "processed"
  • Can be retrieved and downloaded using the same API key
  • Contain valid JSONL

However, batch validation fails with Cannot find file... or organization... does not have access, with request counts remaining at zero. The same workflows completed successfully yesterday, and no relevant uploader or SDK change occurred between the successful and failed batches.

I am facing a major issue with Batch API and getting this error:
Cannot find file <file_id>, or project <project_id> does not have access to it.

Can someone PLEASE help me. Been stuck here for the past 10 days and we have dependency on Batch API :smiling_face_with_tear:

This issue started on 19th August and is still persistent(from past 10 days)

I have verified that my API key and project configuration are correct.

This is the response I get from OpenAI Batch API:

{

  "id": "batch_<batch_id>",
  "model": null,
  "usage": {
    "input_tokens": 0,
    "total_tokens": 0,
    "output_tokens": 0
  },
"errors": {
  "data": [{
    "code": "invalid_request",
    "line": null,
    "param": "<file_id>",
    "message": "Cannot find file <generated_file_id>, or project <project_id> does not have access to it."}]}....... rest of the response

}

API Endpoint: /v1/responses

I also tried to isolate whether this is related to the Batch API itself by uploading a new file and immediately trying to retrieve it:(Ruby Code below)

client = OpenAI::Client.new(access_token: "OPENAI_API_KEY")

file = client.files.upload(
  parameters: {
    file: "test.jsonl",
    purpose: "batch"
})

file_id = file["id"]

puts "Created: #{file_id}"

retrieved = client.files.retrieve(id: file_id)

puts "Retrieved: #{retrieved}"

The upload succeeds and returns a new file ID, but retrieving that newly created file immediately fails with a 404:

No such File object: <file_id>. Faraday::ResourceNotFound: the server responded with status 404 (Faraday::ResourceNotFound)

This makes me suspect that the issue is with the Batch API from Open AI’s side, since the newly uploaded file cannot even be retrieved immediately afterward.

I have the same issue. Yesterday, it was working very well. Today, it fails systematically providing such error and we are completely blocked

Same exact issue here! Everything was working fine this morning, but by noon—BOOM, got the error out of nowhere and have no idea how to fix it.:smiling_face_with_tear:

Same issue for me, it started to fail this night.

Cannot find file file-PeugXXXXXXXXXX, or organization org-wXXXXXXXXXXXX does not have access to it.

Edit:
Accessing the file through curl works.
But that doesnt help me :).

Confirming the same Batch API issue with /v1/chat/completions.

Our unchanged workflow completed several batches successfully on 27 August 2026. From approximately 08:50 UTC on 28 August, newly created batches began failing during validation with:

Cannot find file file-..., or organization org-... does not have access to it.

Details:

  • Input JSONL uploads successfully with purpose: "batch".
  • The uploaded file reports status: "processed".
  • The same API key can retrieve both the file metadata and contents.
  • The batch is created and enters validating.
  • It then fails with request_counts.total: 0.
  • Uploading a fresh file and retrying later produces the same failure.
  • Endpoint: /v1/chat/completions
  • Model: gpt-4.1-mini-2025-04-14
  • Node SDK: openai 4.98.0

This confirms the problem also affects Chat Completions batches, in addition to the Responses, Videos, and Embeddings reports above. It appears to be a Batch service file-resolution regression affecting existing projects.

I can provide the affected batch IDs, file IDs, organization ID, and timestamps privately if they would help OpenAI investigate.

Has there been any update with this issue?

I’ve also experienced this throughout the day and it is a huge blocker for our use case.

Yesterday it was working perfectly fine but today, it is failing with the same error over and over again.

I have tried creating the batch from the API, Node SDK and Web UI by just referencing the file and they all fail with the same error.

Please, help us, we are blocked due to this issue. Thanks in advance

Summary: Submitting a Batch API job (POST /v1/batches) shortly after uploading its input file via POST /v1/files (purpose=batch) intermittently ends in status:“failed” with error “Cannot find file <file_id> or organization does not have access to it.” – even though the file was uploaded successfully and files.retrieve(file_id) already reports status:“processed”.

Reproduction (Node.js SDK, /v1/chat/completions batch endpoint, completion_window:“24h”), observed 2026-08-28: files.create returns a file id with status:“processed”. batches.create called immediately with that file id returns status:“validating” (no error at creation time). Polling batches.retrieve later shows status:“failed”, with errors.data[0].message equal to “Cannot find file <file_id> or organization does not have access to it.”

Attempted mitigation: added a poll loop on files.retrieve after upload, waiting for status:“processed” before calling batches.create. This did NOT resolve the issue – batches created against a file that had already reported “processed” for many minutes still failed with the same error.

Retry behavior: retrying batches.create against the SAME file_id (no re-upload) sometimes eventually succeeds, but the delay is highly inconsistent. Example A, file-N6zGq6YRAyQSTRsxB6dxcT: 5 consecutive batches.create retries against it between 06:02 and 06:12 UTC, all failed identically over a roughly 12-minute span. Example B, file-RpCU9mdtGxEtRJwA7YdRCv: 6 consecutive retries against it spanning 07:02 to 11:45 UTC (batch ids batch_6a9132861e688190902bf860ef45780f, batch_6a913860abf081908b37f057afc7c4bd, batch_6a913a4bbb208190a870932915402573, batch_6a91461dafa08190b8c0a3e59e287477, batch_6a914678488081908206823e0f095634, batch_6a9174e91bd4819094cb84eebb96e487) – every attempt across more than 4.5 hours failed with the same error. Example C: a freshly uploaded, unrelated file (file-6WfLVxopPVuAhT3prQHwFs) also failed on its very first batches.create attempt (batch_6a91743960ec81908af080c9dd695a43), despite the same “wait for processed” check passing beforehand.

Impact: no reliable signal currently indicates when a file is actually visible to the Batches endpoint’s async validator, and even indefinite same-file_id retries aren’t guaranteed to succeed within a reasonable time – making the Batch API unreliable for pipelines that upload-then-submit.

Questions for the team: Is this a known or expected propagation delay? Is there any API-visible signal, besides files.retrieve.status, that reliably indicates a file is ready for batches.create? Is same-file_id retry-after-failure the recommended mitigation, and if so what is a sane backoff or give-up window?

Environment: openai Node.js SDK, Batch API, /v1/chat/completions endpoint.

I have the same problem, i’m blocked with the batch API

same here, I tried base64 with batches, and It still wont work, only the normal generations seem to work

anyone fixed it yet?

Same here, tried different model didn’t help, feels issue with openai

Hey team, thanks for flagging this.

We're aware of the issue, and it's currently being investigated. We'll share an update here if there are any developments.

Thanks for your patience.

Avinash

12 Likes

and something about org, I see alot about people experiencing the same issue, and Im in need to fix this problem urgently.

I have a temporary fix which just single generates with the images, but it costs slightly more on like 1.33x that’s all.

created entirely with claude code logic.

anyone has a fix yet??

same here, waiting for the solution