api-operation-id-removed

Operation ID deleted from an endpoint.

areapathskindexistenceactionremove

Not breaking (level: info)

oasdiff reports this in the changelog but does not treat it as a breaking change, so it does not fail CI by default.

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
paths:
  /users:
    get:
      operationId: listUsers
      responses:
        '200':
          description: OK
After
paths:
  /users:
    get:
      operationId: getUsers
      responses:
        '200':
          description: OK

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

Change its severity or ignore it

To change the severity oasdiff assigns to api-operation-id-removed, list its id and a level in a severity-levels file, 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

Setting the level to none disables the check, so it is no longer reported at all.

Related paths rules

Browse all 500 checks →