api-operation-id-removed

Operation ID deleted from an endpoint.

areapathskindexistenceactionremove

Not breaking (level: info)

oasdiff records this in the changelog but does not fail CI by default. It is backward compatible, so existing clients are not affected.

What this check detects

operationId is a unique, stable name for an operation. Client generators use it to name the method they emit for that endpoint, so getUser() in a generated SDK usually comes straight from an operationId of getUser.

Changing or removing an operationId renames (or drops) that generated method. Code that called the old method name no longer compiles against a regenerated client, which is why the change is surfaced even though the HTTP contract itself is unchanged.

Example

Before
After
1paths:1paths:
2 /users:2 /users:
3 get:3 get:
4 operationId: listUsers4 operationId: getUsers
5 responses:5 responses:
6 '200':6 '200':
7 description: OK7 description: OK

The operationId changed from "listUsers" to "getUsers". Generated clients that called listUsers break.

Change its severity

oasdiff reports api-operation-id-removed as informational, so it does not fail CI. To treat it as a warning or an error under your own compatibility policy, or to turn it off, set its level in a severity-levels file:

Put one rule per line; the level can be err, warn, or info, or none to disable the check entirely:

# severity.txt
api-operation-id-removed err

Then pass it to oasdiff:

oasdiff changelog base.yaml revision.yaml --severity-levels severity.txt

Related paths rules

Browse all 509 checks →