Preserve numeric values exactly

Some numeric literals cannot survive this tool’s serialization unchanged.

Match the finding

These titles and messages come from this local checker. They are not AWS service error quotes.

Cause and scope

The parser rejects non-finite numbers, unsafe integers, negative zero, and numeric literals that would round or underflow. These guards also apply to examples and extension payloads, even when they are not interpreted as schemas.

What to do

Check the value against its original source and the API contract. Use a faithfully representable value only when it is truly intended, or a quoted string only when the contract permits a string.

  1. Locate the exact original numeric literal and confirm its intended value and type.
  2. If it must stay exact and numeric, use a workflow that preserves its precision rather than changing the contract to fit this tool.
  3. Recheck only after an intentional, reviewed change or export.

Schema fragment: an exact integer that this checker rejects

type: integer
example: 9007199254740993

This integer exceeds JavaScript’s safe integer range, so the local parser rejects it even in an example. Keep the original literal. If the contract requires an exact number, use a precision-preserving workflow; quoting it would make it a string.

Avoid a misleading fix

Do not round identifiers, replace negative zero, or quote numbers automatically. Each can change the value or type clients receive.

Check your complete file locally

Choose one OpenAPI 3.0 JSON or YAML file, diagnose the findings, and review any eligible security-copy preview before downloading. No file upload or account is needed.

Open the free OpenAPI checker →

Related findings

Sources and scope

Scope: this local checker, API Gateway REST APIs, and OpenAPI 3.0. Guidance reviewed 4 October 2026. A passing check does not guarantee import or runtime behavior.