Assistants API — Deprecated
- Deprecated
- —
- Shutdown
- 2026-08-26
- Status
- deprecated
- Replacement
- Responses API and Conversations API
Quick fix — copy & paste
Choose your language. The "before" block matches the deprecated call; the "after" block is the drop-in replacement.
# Assistants API (deprecated)
assistant = client.beta.assistants.create(
name="Math Tutor",
instructions="You are a personal math tutor.",
model="gpt-4o",
)
thread = client.beta.threads.create()
client.beta.threads.messages.create(
thread_id=thread.id,
role="user",
content="Solve 3x + 11 = 14",
)
run = client.beta.threads.runs.create_and_poll(
thread_id=thread.id,
assistant_id=assistant.id,
) # Responses API
response = client.responses.create(
model="gpt-5",
input=[
{"role": "system", "content": "You are a personal math tutor."},
{"role": "user", "content": "Solve 3x + 11 = 14"},
],
)
print(response.output_text) // Assistants API (deprecated)
const assistant = await openai.beta.assistants.create({
name: "Math Tutor",
instructions: "You are a personal math tutor.",
model: "gpt-4o",
});
const thread = await openai.beta.threads.create();
await openai.beta.threads.messages.create(thread.id, {
role: "user",
content: "Solve 3x + 11 = 14",
});
const run = await openai.beta.threads.runs.createAndPoll(
thread.id,
{ assistant_id: assistant.id },
); // Responses API
const response = await openai.responses.create({
model: "gpt-5",
input: [
{ role: "system", content: "You are a personal math tutor." },
{ role: "user", content: "Solve 3x + 11 = 14" },
],
});
console.log(response.output_text); POST /v1/assistants
POST /v1/threads
POST /v1/threads/{id}/messages
POST /v1/threads/{id}/runs POST /v1/responses
{
"model": "gpt-5",
"input": [
{ "role": "system", "content": "..." },
{ "role": "user", "content": "..." }
]
} Error messages
Seeing one of these? You're in the right place.
-
The Assistants API has been deprecated -
AssistantDeprecatedError -
client.beta.threads is no longer supported -
The Assistants v1 API is being deprecated
Replacement options
-
Responses API and Conversations APICompare token cost →
Other OpenAI deprecations
What this means for your code
Assistants API is a specialized model with provider-specific behavior. Verify the replacement supports the same modalities, parameters, and rate limits as the deprecated model. Read the provider's migration notes carefully — these models often have non-obvious behavioral changes.
OpenAI has scheduled Assistants API for shutdown on 2026-08-26. That gives you 110 days to migrate. Until then the model still works, but every API call after that date will return a model_not_found error.
Find every call in your codebase
Before you change anything, locate every place the deprecated model id is referenced. Search source files, environment files, feature flags, and config repos. Use these commands from your project root:
Python projects
grep -rn '"Assistants API"' --include="*.py" . JavaScript / TypeScript projects
grep -rn '"Assistants API"' --include="*.{js,ts,tsx,jsx}" . Anywhere (configs, scripts, infra)
grep -rn "Assistants API" . Migration checklist
Steps in order. Skip any that don't apply, but read the whole list — for other models, the non-obvious steps are usually the ones that break in production.
- 1. Read the provider's official migration guide for this model
- 2. Update the model id and any model-specific parameters
- 3. Audit rate limits and request size caps for the replacement
- 4. Re-run your full integration test suite against the new model
- 5. Plan a rollback path in case the new model behaves differently in production
Will this migration cost more?
Switching from Assistants API to Responses API and Conversations API could change your costs significantly. Calculate the exact difference for your prompts.
Open the cost calculator →