## TL;DR

Dashboard APIs change without notice; revocation automation built on them breaks. Pin the API version, add contract checks, and prefer the provider's CLI or stable API over screen-scraping the dashboard.

## Error

```text
agent failed to revoke the leaked token -  dashboard api changed
```

## Steps

1. Confirm the breakage is a contract change: compare the expected and actual responses. Expected: the drift identified.
2. Pin the API version in requests if the provider supports versioning. Expected: stable contract.
3. Add a response-shape check that fails fast with a clear message on drift. Expected: future breaks are loud, not silent.
4. Migrate the revocation path to the provider's CLI or documented API. Expected: a supported interface.
5. Test revocation end to end in a sandbox. Expected: proven before the next real leak.

## When to use

- Revocation automation broken by API changes.
- Hardening incident-response automation.

## When not to use

- Authentication failures.
- Revocation that never worked (build it on the stable API first).

## Tool compatibility

- Provider dashboards, CLIs, and versioned APIs.

## Variant phrasings

### revoke api changed

Pin and migrate.

### dashboard scraper broke

Use the real API.

## Why it happens

Undocumented dashboard endpoints are internal implementation details; providers change them freely.

## Edge cases

- During an active leak, fall back to manual revocation; do not debug automation mid-incident.
- API deprecation notices go to account emails; monitor them.
- Keep the manual runbook current as the automation's fallback.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_QUcGv05puLTfuIGkhLiU9g
