Microsoft Foundry for people who learned Azure OpenAI: what changed and what to migrate
A migration map from Azure OpenAI to Microsoft Foundry: every renamed thing side by side, the retirement dates that matter (the Assistants API, the azure-ai-inference package, stored completions), what to change in your code and resources, and what you can leave alone.
AI & agentsQuick reference7 min read
If you learned Azure OpenAI a year or two ago, almost every name has changed since: the portal, the resource type, the SDK packages, the API for agents, even the roles. The models and your existing calls still work, but three retirements have dates attached, and the new portal only shows the new kind of resource. This page is the map from the names you know to the ones Microsoft Foundry uses now, with the dates and a checklist of what actually needs changing.
The names, old and new
| What it is | You knew it as | It's now | Worth knowing |
|---|---|---|---|
| The platform | Azure OpenAI Studio, then Azure AI Studio, then Azure AI Foundry | Microsoft Foundry | One brand for models, agents and tools |
| The other AI services | Azure Cognitive Services, then Azure AI Services | Foundry Tools | Speech, Vision, Language, Content Safety, Content Understanding |
| The portal | Foundry (classic) | Foundry portal, with a New Foundry toggle in the banner | The new portal shows Foundry projects only |
| The resource | An Azure OpenAI resource, plus a hub for projects | A Foundry resource (kind AIServices) with projects inside it | The Azure resource type is still Microsoft.CognitiveServices/accounts |
| Settings | Management center | Operate and Manage sections | Quota is under Manage; compliance and guardrail policies under Operate |
| The agents API | Assistants API (threads, messages, runs, assistants) | Responses API (conversations, items, responses, agent versions) | Responses are synchronous by default; no polling loop |
| API versions | A monthly api-version parameter | Stable v1 routes (/openai/v1/) | No version parameter needed |
| Endpoints | Several: openai, cognitiveservices, azureml, search, speech | One project endpoint plus the OpenAI v1 endpoint | https://<resource>.services.ai.azure.com/api/projects/<project> |
| The Python client | AzureOpenAI() from openai; azure-ai-inference; azure-ai-generative; azure-ai-ml | OpenAI() with a base_url, and azure-ai-projects 2.x | 2.x and 1.x of azure-ai-projects target different portals and aren't interchangeable |
| Model billing name | Model-as-a-Service | Foundry Models sold by Azure, plus partner and community models | First-party models are billed through Azure meters |
| Roles | Cognitive Services OpenAI User; then Azure AI User, Azure AI Owner, Azure AI Account Owner, Azure AI Project Manager | Foundry User, Foundry Owner, Foundry Account Owner, Foundry Project Manager | Same IDs and permissions; both names show during the rename |
| Creating an agent | create_agent() | create_version() with a PromptAgentDefinition | Agents are versioned and have a kind: prompt, workflow or hosted |
The dates that matter
| Date | What | If it affects you |
|---|---|---|
| 26 August 2026 | The azure-ai-inference package retired | Move to the openai package against the v1 endpoint |
| 26 August 2026 | The Azure OpenAI Assistants API sunset | Move agents to Foundry Agent Service on the Responses API; a migration tool rewrites most of the code |
| 15 October 2026 | Stored completions retire: the UI and the API stop | Use the Responses API for response workflows and Agent Traces for observability and datasets; existing stored completions can't be exported, and each one is kept for 30 days from its creation |
The first two dates have passed. Code that still uses either is already past Microsoft's date for it, so treat it as the first thing to change rather than a plan for later. Jobs created earlier from stored-completion datasets keep working after the third date; only new use stops.
The migration checklist
- Upgrade the Azure OpenAI resource to a Foundry resource. It keeps its name, endpoint, API keys, tags, network settings, identity settings and existing state, including fine-tuning jobs. You need Owner on the subscription or resource group and a system-assigned managed identity on the resource. In the Azure portal, open the resource and select Get started on the "Want to try the latest industry models and Agents?" banner; in Bicep, change
kindfromOpenAItoAIServices, setallowProjectManagement: trueand add the identity. Resources with private endpoints can't be upgraded in either portal: delete the endpoints and recreate them after, or do it in Bicep or Terraform (AzureRM 4.56.0 or later for a non-destructive change). Customer-managed keys need a request to Microsoft first. You can roll back after deleting projects, connections and non-OpenAI deployments.previousKind: "OpenAI"on the resource tells you an upgrade happened. - Fix private DNS after the upgrade. A Foundry resource answers on three host names:
{name}.openai.azure.com,{name}.services.ai.azure.comand{name}.cognitiveservices.azure.com. Private networking needs a DNS zone, or a conditional forwarder, for each, and the private endpoint recreated so the new addresses get IPs. - Replace the SDK packages.
AzureOpenAI(azure_endpoint=…, api_version=…)becomesOpenAI(base_url="https://<project>.services.ai.azure.com/openai/v1", …)with an Entra bearer token;azure-ai-inferencegoes;azure-ai-projectsmoves to 2.x. The SDK major version must match the portal you use. - Move agents off the Assistants API. Assistants become agent versions, threads become conversations, runs become responses. Microsoft's migration tool converts the code constructs; it doesn't move old threads or runs, which stay readable through the old API until it's gone. Check that the resource's region supports the Responses API first; if not, agents don't appear in the new portal at all. Our guide Foundry Agent Service, and moving off the Assistants API walks through it.
- Replace stored completions before 15 October 2026 with the Responses API, or with Agent Traces (connect the project to Application Insights) if you used them to inspect agent runs or build evaluation datasets.
- Review access. After the upgrade, users with Cognitive Services User get every Foundry feature, while Cognitive Services OpenAI User stays limited to OpenAI features. Wildcard role assignments and Azure Policy definitions that don't name a resource kind widen in the same way. Owners and Contributors still can't create agents; building needs Foundry User (or Project Manager or Foundry Owner). An Azure Policy for model deployments keeps the model catalogue to what you allow.
What you do not have to do
- You don't need a new resource or a new endpoint. Existing Azure OpenAI calls, keys and customisations keep working on the upgraded resource, and existing use costs the same. Only the new features you adopt add cost.
- Chat completions aren't going away. The Responses API is the new default and the only API for agents, but chat completions remain available in both portals.
- Hub-based projects aren't lost. They're hidden in the new portal; switch to the classic portal to reach them, or migrate them to Foundry projects. Microsoft's new investment goes to Foundry projects.
- Your knowledge transfers. Quota, deployments, content filtering (now called guardrails) and fine-tuning work as before, under new menus.
Finding things in the new portal
| Task | Classic portal | New portal |
|---|---|---|
| Deployments and playgrounds | Models + endpoints; Playgrounds | Build > Models |
| Agents | Agents | Build > Agents |
| Model catalogue | Model catalog | Discover > Model catalog |
| Evaluations and fine-tuning | Evaluation; Fine-tuning | Build > Evaluations; Build > Fine-tuning |
| Tracing | Tracing | Operate > Tracing |
| Quota | Management center > Quota | Manage > Quota |
| Users and connected resources | Management center | Manage > Project details |
| Content filters | Guardrails + controls | Build > Guardrails to create and assign them; Operate > Compliance for policies across subscriptions |
If your SDK call fails with ModuleNotFoundError or odd behaviour, the SDK version doesn't match the portal. If agent code gets 404 or MethodNotAllowed, it's sending Assistants API calls to a Responses API endpoint. If projects are missing, they're hub-based: switch portals.
Sources
- Migrate from the Foundry (classic) portal, Microsoft Learn (the mappings, dates and navigation)
- Upgrade from Azure OpenAI to Microsoft Foundry, Microsoft Learn
- What is Microsoft Foundry?, Microsoft Learn
- Migrate to the new agents developer experience, Microsoft Learn
- Migrate from stored completions to Responses API and Agent Traces, Microsoft Learn
- Role-based access control for Microsoft Foundry, Microsoft Learn
Was this helpful?
Comments
No comments yet. Share what worked for you.
Sign in to comment. Comments show under a display name you choose, never your email.