nestjs/nest · error · Error

Unsupported versioning options

Error message

Unsupported versioning options

What it means

Error "Unsupported versioning options" thrown in nestjs/nest.

Source

Thrown at packages/platform-express/adapters/express-adapter.ts:471

        } else {
          if (Array.isArray(version)) {
            if (version.includes(customHeaderVersionParameter)) {
              return handler(req, res, next);
            }
          } else if (isString(version)) {
            if (version === customHeaderVersionParameter) {
              return handler(req, res, next);
            }
          }
        }

        return callNextHandler(req, res, next);
      };

      return handlerForHeaderVersioning;
    }

    throw new Error('Unsupported versioning options');
  }

  private trackOpenConnections() {
    this.httpServer.on('connection', (socket: Duplex) => {
      this.openConnections.add(socket);

      socket.on('close', () => this.openConnections.delete(socket));
    });
  }

  private closeOpenConnections() {
    for (const socket of this.openConnections) {
      socket.destroy();
      this.openConnections.delete(socket);
    }
  }

  private isMiddlewareApplied(name: string): boolean {

View on GitHub (pinned to 6ec0e2783d)

Solutions

  1. Pass a valid VersioningOptions object to enableVersioning: type must be one of VersioningType.URI, HEADER, MEDIA_TYPE, or CUSTOM.
  2. For HEADER provide { header: 'x-version' }; for MEDIA_TYPE provide { key: 'v=' }; for CUSTOM provide { extractor }.
  3. Check for typos or unsupported 'type' values in the versioning configuration.

Example fix

app.enableVersioning({ type: VersioningType.HEADER, header: 'x-api-version' });

When it happens

Trigger: Thrown at packages/platform-express/adapters/express-adapter.ts:471 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of nestjs/nest@6ec0e2783d (2026-08-03). Data as JSON: /data/errors/89c957516a1b99cf.json. Report an issue: GitHub.