Skip to content
Novus Examples
json1.2 KB

OpenAPI Schema Evolution - Breaking

The breaking member of a complete OpenAPI 3.1 ticket endpoint contract. Breaking relative to baseline: ticket id becomes integer and status becomes a required response property.

Preview — first 50 linesjson
{
  "openapi": "3.1.0",
  "info": {
    "title": "P6 Ticket API",
    "version": "2.0.0"
  },
  "paths": {
    "/tickets/{id}": {
      "get": {
        "operationId": "getTicket",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Ticket",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Ticket"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Ticket": {
        "type": "object",
        "required": [
          "id",
          "summary",
          "status"
        ],
        "properties": {
          "id": {
            "type": "integer"
          },
          "summary": {
            "type": "string"
64 lines total — download for the full file.

Specifications

Schema Family
OpenAPI
Version Role
breaking
Expected Compatibility
invalid
Openapi
3.1.0
Paths
1
Properties
3
Required
3

Testing contract

Expected to fail
Scenario
Compare the breaking OpenAPI contract against the baseline member using a compatibility checker.
Expected result
Breaking relative to baseline: ticket id becomes integer and status becomes a required response property.

What is a .json file?

JSON (JavaScript Object Notation) is a lightweight, text-based data-interchange format representing objects, arrays, strings, numbers, booleans, and null. It is language-independent, human-readable, and the dominant format for web APIs and configuration. It requires a single well-formed root value.

How to use this file

Use an example JSON file to test parsers and serializers, schema validation, Unicode and number-precision handling, and API request or response processing.

How to use this file for testing

“OpenAPI Schema Evolution - Breaking” is a deterministic Novus Examples fixture for Schema / OpenAPI testing, Schema validation, API testing, Conversion testing. Valid and intentionally invalid OpenAPI/JSON Schema documents plus request/response examples for schema validators and API tooling.

Documented properties for this file: JSON · 1,197 bytes. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.

Valid and intentionally invalid siblings are labelled in title and description. Assert parsers accept the valid twin and fail loudly on the invalid one; for time series, check DST gaps and duplicate keys against the spec table.

Code examples

import json

with open("openapi-breaking.json") as f:
    data = json.load(f)
print(type(data), len(data))

Generated by generation/p6_core.py. Free for any use, no attribution required — license.