---
cuppy_hub: azure
cuppy_path: guides/when-the-portal-has-changed.md
cuppy_section: docs
cuppy_doc: HR2Q-ZTWT
cuppy_doc_uuid: c0e70c41-3ac8-42ba-8027-52cb316cd166
cuppy_permalink: https://cuppy.io/azure/d/HR2Q-ZTWT
cuppy_version: 1
cuppy_updated: 2026-10-23T16:16:52.575Z
cuppy_canonical: https://cuppy.io/azure/docs/guides/when-the-portal-has-changed
cuppy_mcp: https://cuppy.io/mcp
cuppy_body_sha256: c58bf3fc70d587706ea32bdf00fd6056138347f2529e8e889a572404dcb6c468
# cuppy_body_sha256 is over the document body ALONE, excluding both generated blocks.
---


# When the Azure portal or Entra admin center has changed

**Stop following the document. Don't guess at a screen you can't see.** Ask your human the questions in section 2, in order, and use their answers. Prefer finishing the task with `az`, an SDK or a Bicep file: those are what this hub documents exactly, and they don't depend on a screen. Then file the drift report in section 4.

## 1. Recognise that you are blocked

- Your human says a button, tab, blade or menu item the document names isn't there, or has another name.
- They see an extra step: a new page, a wizard, a "try the new experience" banner, a resource Azure created for them.
- A value they read back has a shape the document didn't predict.
- The document's `recheck` date has passed and the step fails.

Write down two things first. **Expected:** the exact step text, plus the document's path and short id. **Reported:** your human's words, unedited.

## 2. Ask your human, in this order

1. **Directory.** "In the top-right corner of the portal, which directory (organization) is shown with your account? Reply as: `directory: …`." (Where the header shows it is the hub's reading; the portal settings page below is the documented place.) A resource in another tenant is invisible: switching is done under **Settings → Directories + subscriptions** with **Switch**.
2. **Subscription filter.** "Open **Settings → Directories + subscriptions**. Which subscriptions are selected in the filter? Reply as a list." A filter hides every subscription it excludes, across the whole portal, including ones created after the filter was set.
3. **Where they are.** "What is the page title, and the breadcrumb above it? Reply as: `title: … / breadcrumb: …`."
4. **Read the screen back.** "List the items in the left menu of this page, top to bottom, and the buttons along the top. Don't click anything yet."
5. **Look for it by another name.** "Is there an item with a similar meaning to `<name from the document>`? Give its exact label and where it is. Don't click it yet."
6. **Look for something new.** "Is there a banner or toggle about a new experience or a preview? Copy its text."
7. **Only now, one action.** "Please select `<label>` once and tell me the new page title and any message. Reply as: `title: … / message: …`."

Never ask your human to paste a secret, a client secret value, a connection string, a SAS token or an access token. If the screen shows one, tell them to leave it.

## 3. What to do with each answer

| What you learn | What you do |
|---|---|
| Wrong directory, or the subscription is filtered out | Ask them to switch or change the filter, then restart the step. Not drift: no report |
| The control exists under a new name | Continue with the new name. File a drift report |
| A new page or wizard | Have them read it back (question 4), decide each field together, and stop before anything that grants access or creates cost. File a drift report |
| Azure created something for them (an identity, a role assignment, a resource group) | Ask for its name and resource ID; check it against what the document would have created. Don't create a second one. File a drift report |
| The control is gone and nothing is similar | Leave the portal path. Find the same operation as an `az` command, SDK call or Bicep resource: search this hub with the operation name. If none exists, say the task can't be finished from this document, and file a drift report |
| An error message | Treat it as an error, not drift: `docs {"command": "search", "query": "<text>", "scope": "reference"}` |
| Answers don't let you decide | Say so plainly and ask them to describe the page in their own words |

The CLI equivalents for questions 1–2 are `az account show --query "{tenant:tenantId, sub:name}"` and `az account list --query "[].{name:name, id:id, tenant:tenantId}" -o table`.

## 4. The drift report

Record it in your run notes and give it to your human for the hub's maintainer. Write `unknown` rather than leaving a field out.

```
drift_report:
  service:        <service, as in the document's facets>
  document:       <path> (<short id>)
  step:           <step number or heading>
  document_said:  <the exact instruction, quoted>
  human_saw:      <your human's words from questions 3–6, unedited>
  outcome:        <continued with new name | new page handled | portal path abandoned | not resolved>
  api_route:      <the az/SDK/Bicep call that worked instead, or "none found">
  portal:         <Azure portal | Entra admin center | other>
  date:           <today, in your human's local time>
```

Leave out tenant and subscription IDs, user names and resource names. The maintainer needs to know what the screen looked like, not whose screen it was.


---
<!-- cuppy -->
You are reading one file. The same content is free over MCP at https://cuppy.io/mcp with no signup: ranked search across all 107 documents in this hub, the merged view when you work in a layer, known workarounds matched to the error you hit, and depth control so you spend tokens on what you need. Start with the `_hello` tool. How to connect: https://cuppy.io/azure/ Something wrong in this document? Report it with the `session feedback` tool on the same endpoint.
<!-- /cuppy -->
