{
  "openapi": "3.1.1",
  "info": {
    "title": "Motorbay API",
    "description": "Danish vehicle data from Motorstyrelsen's public DMR extract (Danish Motor Register), refreshed weekly and provided as-is. Motorbay is not affiliated with Motorstyrelsen. Authenticate with your API key in the X-Api-Key header. Errors are RFC 9457 problem details with a stable code; IDs are strings.",
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://api.motorbay.app",
      "description": "Production"
    }
  ],
  "paths": {
    "/v1/vehicles/{id}": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get a vehicle by ID",
        "description": "Retrieves a vehicle record by its ID. Includes basic registration and classification data.",
        "operationId": "getVehicle",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/vin/{vin}": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get a vehicle by VIN",
        "description": "Retrieves a vehicle by its globally unique VIN (Vehicle Identification Number).",
        "operationId": "getVehicleByVin",
        "parameters": [
          {
            "name": "vin",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/plate/{plate}": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get a vehicle by registration number",
        "description": "Looks up a vehicle by its Danish registration number (plate). Case, spaces and hyphens in the plate are ignored. Plates are reused, so one plate can belong to several vehicles. The lookup returns the vehicle that is currently registered. If there is more than one, the one with the newest registration status date wins, and on equal dates the highest id. If none is registered, it returns the vehicle with the newest registration status date (vehicles without one come last), and its registrationStatus says it is not registered. The same plate always gives the same vehicle for the same dataset. To see every vehicle that has carried the plate, use GET /v1/vehicles?registrationNumber=. 404 VehicleNotFound means no vehicle in the current extract has the plate.",
        "operationId": "getVehicleByPlate",
        "parameters": [
          {
            "name": "plate",
            "in": "path",
            "description": "The registration number. Case, spaces and hyphens are ignored, so \"ab 12 345\" and \"AB-12345\" both mean AB12345. What remains must be 1 to 10 characters from A-Z, 0-9, Æ, Ø and Å, or the request is a 400 with RegistrationNumberInvalid in errors.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "AB12345"
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each broken rule, e.g. RegistrationNumberInvalid for a malformed plate.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/plates": {
      "post": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get vehicles by registration numbers, up to 500 at once",
        "description": "Looks up 1 to 500 plates in one call. Each plate is read, and each vehicle picked, exactly as GET /v1/vehicles/plate/{plate} does it. The answer has one item per plate sent, in the order sent: found with the vehicle, or not found with error.code VehicleNotFound, or not valid with error.code InvalidPlate. An invalid plate is reported on its item and does not fail the call. The call counts as one request per distinct valid plate against your monthly quota (a plate sent twice, or in another spelling of the same plate, counts once; invalid plates don't count; a call with no valid plate counts as one). The quota is checked for all of them before any lookup: if the account can't cover them all, the whole call is a 429 QuotaExceeded, with no results and nothing counted. For the per-minute rate limit the call is one request. A body that is not {\"plates\": [...]} with 1 to 500 strings is a 400 ValidationFailed. A body over 64 KB is a 413 PayloadTooLarge before it is read.",
        "operationId": "lookupVehiclesByPlates",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BatchPlatesRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BatchPlatesResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: the body is not {\"plates\": [...]} with 1 to 500 strings. errors.Plates says which. A plate that is not valid is not this error: it is an item with error.code InvalidPlate.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "QuotaExceeded: the account can't cover every distinct valid plate in the call, so nothing was looked up or counted. Or RateLimitExceeded (per minute; the call is one request). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/technical-details": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get a vehicle's technical details",
        "description": "Returns detailed technical specifications for the specified vehicle, such as weight, seating, and dimensions.",
        "operationId": "getVehicleTechnicalDetails",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleTechnicalDetailsResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/environmental-information": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get a vehicle's environmental information",
        "description": "Retrieves environmental attributes for a vehicle, including emissions, filters, and classification data.",
        "operationId": "getVehicleEnvironmentalInformation",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleEnvironmentalInformationResponse"
                }
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/engine": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get a vehicle's engine information",
        "description": "Returns engine-specific details such as displacement, power, odometer readings, and noise levels.",
        "operationId": "getVehicleEngine",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleEngineInformationResponse"
                }
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/inspection": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Get a vehicle's latest inspection",
        "description": "Provides the most recent inspection report for the specified vehicle, including type, result, and odometer reading.",
        "operationId": "getVehicleInspection",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleInspectionReportResponse"
                }
              }
            }
          },
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles": {
      "get": {
        "tags": [
          "Vehicles"
        ],
        "summary": "Search vehicles",
        "description": "Performs a filtered search across vehicles based on attributes such as make, kind, usage, color, model year and registration number. Returns paginated results.",
        "operationId": "listVehicles",
        "parameters": [
          {
            "name": "makeId",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "kindId",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "usageId",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "colorId",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "fromModelYear",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32"
            }
          },
          {
            "name": "toModelYear",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32"
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "description": "The order of the results. A leading \"-\" sorts descending. Vehicles without the value come last in either direction. Ties are broken by id.",
            "schema": {
              "enum": [
                "firstRegisteredOn",
                "-firstRegisteredOn",
                "vin",
                "-vin",
                "registrationNumber",
                "-registrationNumber",
                "id",
                "-id"
              ],
              "type": "string",
              "default": "-firstRegisteredOn"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number, from 1. page × pageSize may be at most 10,000 (SearchTooDeep).",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "registrationNumber",
            "in": "query",
            "description": "Every vehicle that has carried this registration number, its history. Case, spaces and hyphens are ignored, so \"ab 12 345\" and \"AB-12345\" both mean AB12345. What remains must be 1 to 10 characters from A-Z, 0-9, Æ, Ø and Å, or the request is a 400 with RegistrationNumberInvalid in errors. Without sortBy the vehicles come in the same order as GET /v1/vehicles/plate/{plate} picks from, so the first is the one it returns. No match is a 200 with an empty data array.",
            "schema": {
              "type": "string"
            },
            "example": "AB12345"
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each broken rule, e.g. RegistrationNumberInvalid for a malformed plate.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/colors/{id}": {
      "get": {
        "tags": [
          "Colors"
        ],
        "summary": "Get a color",
        "description": "Fetches a specific vehicle color by ID, including original naming.",
        "operationId": "getColor",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleColorResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/colors": {
      "get": {
        "tags": [
          "Colors"
        ],
        "summary": "List colors",
        "description": "Retrieves a paginated list of all defined vehicle colors in the registry.",
        "operationId": "listColors",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleColorResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes/{id}": {
      "get": {
        "tags": [
          "Makes"
        ],
        "summary": "Get a make",
        "description": "Retrieves a vehicle manufacturer (make) by its unique ID.",
        "operationId": "getMake",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleMakeResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes": {
      "get": {
        "tags": [
          "Makes"
        ],
        "summary": "List makes",
        "description": "Returns a paginated list of all recognized vehicle makes.",
        "operationId": "listMakes",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleMakeResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes/{makeId}/models/{id}": {
      "get": {
        "tags": [
          "Models"
        ],
        "summary": "Get a model",
        "description": "Gets a specific vehicle model under the given manufacturer.",
        "operationId": "getModel",
        "parameters": [
          {
            "name": "makeId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleModelResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes/{makeId}/models": {
      "get": {
        "tags": [
          "Models"
        ],
        "summary": "List a make's models",
        "description": "Lists all models associated with the specified vehicle make.",
        "operationId": "listModels",
        "parameters": [
          {
            "name": "makeId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleModelResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes/{makeId}/models/{modelId}/variants/{id}": {
      "get": {
        "tags": [
          "Variants"
        ],
        "summary": "Get a variant",
        "description": "Retrieves a specific variant for a given model and make combination.",
        "operationId": "getVariant",
        "parameters": [
          {
            "name": "makeId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "modelId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleVariantResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes/{makeId}/models/{modelId}/variants": {
      "get": {
        "tags": [
          "Variants"
        ],
        "summary": "List a model's variants",
        "description": "Lists all variants under a specific model for the given make.",
        "operationId": "listVariants",
        "parameters": [
          {
            "name": "makeId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "modelId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleVariantResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes/{makeId}/models/{modelId}/designation-types/{id}": {
      "get": {
        "tags": [
          "Designation Types"
        ],
        "summary": "Get a designation type",
        "description": "Gets a designation type by ID for a specific model under a given make.",
        "operationId": "getDesignationType",
        "parameters": [
          {
            "name": "makeId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "modelId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleDesignationTypeResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/makes/{makeId}/models/{modelId}/designation-types": {
      "get": {
        "tags": [
          "Designation Types"
        ],
        "summary": "List a model's designation types",
        "description": "Lists all designation types defined for the given model and make.",
        "operationId": "listDesignationTypes",
        "parameters": [
          {
            "name": "makeId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "modelId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleDesignationTypeResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/emission-standards/{id}": {
      "get": {
        "tags": [
          "Emission Standards"
        ],
        "summary": "Get an emission standard",
        "description": "Retrieves a specific emission standard by ID, including naming details.",
        "operationId": "getEmissionStandard",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleEmissionStandardResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/emission-standards": {
      "get": {
        "tags": [
          "Emission Standards"
        ],
        "summary": "List emission standards",
        "description": "Returns a paginated list of known vehicle emission standards.",
        "operationId": "listEmissionStandards",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleEmissionStandardResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/fuel-types/{id}": {
      "get": {
        "tags": [
          "Fuel Types"
        ],
        "summary": "Get a fuel type",
        "description": "Retrieves a specific fuel type by ID, such as Benzin, Diesel or El.",
        "operationId": "getFuelType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FuelTypeResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/fuel-types": {
      "get": {
        "tags": [
          "Fuel Types"
        ],
        "summary": "List fuel types",
        "description": "Returns a paginated list of known fuel types.",
        "operationId": "listFuelTypes",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfFuelTypeResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/fuel-types": {
      "get": {
        "tags": [
          "Fuel Types"
        ],
        "summary": "List a vehicle's fuel types",
        "description": "Lists the fuels a vehicle runs on, primary first, with fuel efficiency, CO2 emissions and electric consumption per fuel.",
        "operationId": "listVehicleFuelTypes",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleFuelTypeResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/equipment/{id}": {
      "get": {
        "tags": [
          "Equipment"
        ],
        "summary": "Get an equipment type",
        "description": "Fetches metadata for a specific equipment feature by ID.",
        "operationId": "getEquipment",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EquipmentResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/equipment": {
      "get": {
        "tags": [
          "Equipment"
        ],
        "summary": "List equipment types",
        "description": "Lists all registered vehicle equipment items with pagination support.",
        "operationId": "listEquipment",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfEquipmentResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/equipment": {
      "get": {
        "tags": [
          "Equipment"
        ],
        "summary": "List a vehicle's equipment",
        "description": "Retrieves all equipment associated with a specific vehicle instance.",
        "operationId": "listVehicleEquipment",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleEquipmentResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/kinds/{id}": {
      "get": {
        "tags": [
          "Kinds"
        ],
        "summary": "Get a vehicle kind",
        "description": "Retrieves a specific kind (type category) of vehicle by ID.",
        "operationId": "getKind",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleKindResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/kinds": {
      "get": {
        "tags": [
          "Kinds"
        ],
        "summary": "List vehicle kinds",
        "description": "Lists all vehicle kinds, such as personal car, van, or truck.",
        "operationId": "listKinds",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleKindResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/usages/{id}": {
      "get": {
        "tags": [
          "Usages"
        ],
        "summary": "Get a usage",
        "description": "Returns a specific vehicle usage type, such as private or commercial.",
        "operationId": "getUsage",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleUsageResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/usages": {
      "get": {
        "tags": [
          "Usages"
        ],
        "summary": "List usages",
        "description": "Lists all available primary usage types defined in the registry.",
        "operationId": "listUsages",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleUsageResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/secondary-usages": {
      "get": {
        "tags": [
          "Usages"
        ],
        "summary": "List a vehicle's secondary usages",
        "description": "Retrieves secondary usage types (e.g., occasional commercial use) registered for a vehicle.",
        "operationId": "listVehicleSecondaryUsages",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleUsageMappingResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/blocking-reasons/{id}": {
      "get": {
        "tags": [
          "Blocking Reasons"
        ],
        "summary": "Get a blocking reason",
        "description": "Retrieves a specific blocking reason by ID, such as Totalskadet køretøj or Mangel.",
        "operationId": "getBlockingReason",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlockingReasonResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/blocking-reasons": {
      "get": {
        "tags": [
          "Blocking Reasons"
        ],
        "summary": "List blocking reasons",
        "description": "Returns a paginated list of the blocking reasons a vehicle can have, such as a total loss, damage or a defect.",
        "operationId": "listBlockingReasons",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfBlockingReasonResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/blocking-reasons": {
      "get": {
        "tags": [
          "Blocking Reasons"
        ],
        "summary": "List a vehicle's blocks",
        "description": "Lists the blocks registered on a vehicle in the latest extract we loaded, such as a total loss, damage, a defect or a call-in for registration. An empty list means no block was recorded in that extract.",
        "operationId": "listVehicleBlockingReasons",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfVehicleBlockingReasonResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permit-types/{id}": {
      "get": {
        "tags": [
          "Permits"
        ],
        "summary": "Get a permit type",
        "description": "Retrieves a specific permit type by ID, such as Stelnummer Genihugget (a re-stamped VIN).",
        "operationId": "getPermitType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermitTypeResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permit-types": {
      "get": {
        "tags": [
          "Permits"
        ],
        "summary": "List permit types",
        "description": "Returns a paginated list of known permit types.",
        "operationId": "listPermitTypes",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfPermitTypeResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/permits": {
      "get": {
        "tags": [
          "Permits"
        ],
        "summary": "List a vehicle's permits",
        "description": "Lists the permits registered on a vehicle, newest first, such as a re-stamped VIN or a trailer coupling. Permit comments are not included.",
        "operationId": "listVehiclePermits",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfPermitResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/leasing-periods": {
      "get": {
        "tags": [
          "Leasing Periods"
        ],
        "summary": "List a vehicle's leasing periods",
        "description": "Lists the leasing periods registered on a vehicle, newest start first, as calendar dates.",
        "operationId": "listVehicleLeasingPeriods",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int32",
              "default": 10
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationResponseOfLeasingPeriodResponse"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/{vehicleId}/check": {
      "get": {
        "tags": [
          "Vehicle Check"
        ],
        "summary": "Check a used vehicle",
        "description": "Returns the risk signals for a used vehicle in one answer: status and registration status, blocks (total loss, damaged, blocked, defect, called in for registration), traffic damage, a re-stamped VIN, a leasing period covering today, the latest inspection and the plate's expiry, plus flags with a severity. It reflects the latest weekly extract we loaded; a vehicle with no flags may still have problems the extract does not record.",
        "operationId": "checkVehicle",
        "parameters": [
          {
            "name": "vehicleId",
            "in": "path",
            "required": true,
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "type": [
                "integer",
                "string"
              ],
              "format": "int64"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleCheckResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/plate/{plate}/check": {
      "get": {
        "tags": [
          "Vehicle Check"
        ],
        "summary": "Check a used vehicle by registration number",
        "description": "Returns the risk signals for a used vehicle in one answer: status and registration status, blocks (total loss, damaged, blocked, defect, called in for registration), traffic damage, a re-stamped VIN, a leasing period covering today, the latest inspection and the plate's expiry, plus flags with a severity. It reflects the latest weekly extract we loaded; a vehicle with no flags may still have problems the extract does not record. Finds the vehicle by registration number the same way as /v1/vehicles/plate/{plate}.",
        "operationId": "checkVehicleByPlate",
        "parameters": [
          {
            "name": "plate",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleCheckResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "ValidationFailed: errors names each invalid parameter.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/vehicles/vin/{vin}/check": {
      "get": {
        "tags": [
          "Vehicle Check"
        ],
        "summary": "Check a used vehicle by VIN",
        "description": "Returns the risk signals for a used vehicle in one answer: status and registration status, blocks (total loss, damaged, blocked, defect, called in for registration), traffic damage, a re-stamped VIN, a leasing period covering today, the latest inspection and the plate's expiry, plus flags with a severity. It reflects the latest weekly extract we loaded; a vehicle with no flags may still have problems the extract does not record. Finds the vehicle by VIN.",
        "operationId": "checkVehicleByVin",
        "parameters": [
          {
            "name": "vin",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VehicleCheckResponse"
                }
              }
            }
          },
          "404": {
            "description": "A *NotFound code naming what was missing, e.g. VehicleNotFound.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "ServiceUnavailable: the API key couldn't be checked just now. The key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataset": {
      "get": {
        "tags": [
          "Dataset"
        ],
        "summary": "Describe the data being served",
        "description": "Describes the Motorstyrelsen extract currently being served: when Motorstyrelsen published it, when it was imported, and how many vehicles it holds. Returns 503 with code 'DatasetNotLoaded' before the first import completes.",
        "operationId": "getDataset",
        "responses": {
          "401": {
            "description": "ApiKeyMissing or ApiKeyInvalid: no X-Api-Key header, or the key is not valid.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DatasetResponse"
                }
              }
            }
          },
          "503": {
            "description": "DatasetNotLoaded: the first import hasn't finished. Or ServiceUnavailable: the API key couldn't be checked just now; the key is not the problem. Wait the Retry-After seconds and retry.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "402": {
            "description": "PaymentRequired: the key's account has no active plan or trial.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "RateLimitExceeded (per minute) or QuotaExceeded (the plan's monthly requests). Wait the Retry-After seconds.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "InternalError: a fault on our side. Retry with backoff, and send us the requestId if it persists.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "BatchPlateError": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "`VehicleNotFound` or `InvalidPlate`."
          },
          "message": {
            "type": [
              "null",
              "string"
            ],
            "description": "A sentence for people. Only `InvalidPlate` has one."
          }
        },
        "description": "Why one plate of a batch has no vehicle."
      },
      "BatchPlateResult": {
        "required": [
          "plate",
          "found"
        ],
        "type": "object",
        "properties": {
          "plate": {
            "type": "string",
            "description": "The plate exactly as it was sent."
          },
          "normalizedPlate": {
            "type": [
              "null",
              "string"
            ],
            "description": "The plate as looked up. Absent when the plate is not valid."
          },
          "found": {
            "type": "boolean",
            "description": "Whether a vehicle was found."
          },
          "vehicle": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The vehicle, the same one GET /v1/vehicles/plate/{plate} returns. Present only when found.",
                "$ref": "#/components/schemas/VehicleResponse"
              }
            ],
            "description": "The vehicle, the same one GET /v1/vehicles/plate/{plate} returns. Present only when found."
          },
          "error": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Why nothing was found. Present only when not found.",
                "$ref": "#/components/schemas/BatchPlateError"
              }
            ],
            "description": "Why nothing was found. Present only when not found."
          }
        },
        "description": "What was found for one plate of a batch."
      },
      "BatchPlatesRequest": {
        "required": [
          "plates"
        ],
        "type": "object",
        "properties": {
          "plates": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "1 to 500 registration numbers. Case, spaces and hyphens are ignored, as\nfor the single lookup. A plate that is not valid is reported on its own\nitem, not as an error for the call."
          }
        },
        "description": "The body of `POST /v1/vehicles/plates`."
      },
      "BatchPlatesResponse": {
        "required": [
          "results"
        ],
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BatchPlateResult"
            },
            "description": "One item per plate sent, in the order sent."
          }
        },
        "description": "The answer to `POST /v1/vehicles/plates`."
      },
      "BlockingReasonResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the blocking reason."
          },
          "name": {
            "type": "string",
            "description": "The blocking reason's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the blocking reason from the source data."
          }
        },
        "description": "Represents a data transfer object (DTO) for a blocking reason,\nwhich describes why a vehicle might be restricted or blocked."
      },
      "DatasetResponse": {
        "required": [
          "sourcePublishedAt",
          "importedAt",
          "vehicleCount",
          "source"
        ],
        "type": "object",
        "properties": {
          "sourcePublishedAt": {
            "type": "string",
            "description": "When Motorstyrelsen published the extract (the file's modification time on their server).",
            "format": "date-time"
          },
          "importedAt": {
            "type": "string",
            "description": "When the import of that extract completed and it went live.",
            "format": "date-time"
          },
          "vehicleCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "How many vehicles the extract contained, or `null` for imports recorded before the count was kept.",
            "format": "int32"
          },
          "source": {
            "type": "string",
            "description": "Where the data comes from."
          }
        },
        "description": "Describes the Motorstyrelsen extract the API is currently serving."
      },
      "EquipmentResponse": {
        "required": [
          "id",
          "name",
          "originalName",
          "isVisibleDuringInspection",
          "isVisibleUponInquiry",
          "isVisibleDuringStandardCreation"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the equipment."
          },
          "name": {
            "type": "string",
            "description": "The equipment's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the equipment from the source system."
          },
          "isVisibleDuringInspection": {
            "type": "boolean",
            "description": "Whether the equipment is visible during vehicle inspection."
          },
          "isVisibleUponInquiry": {
            "type": "boolean",
            "description": "Whether the equipment is visible upon user inquiry."
          },
          "isVisibleDuringStandardCreation": {
            "type": "boolean",
            "description": "Whether the equipment is visible during standard creation."
          }
        },
        "description": "Represents a data transfer object (DTO) for a piece of vehicle equipment,\nincluding metadata about its visibility in various contexts."
      },
      "FixedConnectionPermitResponse": {
        "required": [
          "vehicleId",
          "vin"
        ],
        "type": "object",
        "properties": {
          "vehicleId": {
            "type": [
              "null",
              "string"
            ],
            "description": "The connected vehicle's ID, usable with `/v1/vehicles/{id}`. Null when not recorded."
          },
          "vin": {
            "type": [
              "null",
              "string"
            ],
            "description": "The connected vehicle's VIN (Vehicle Identification Number). Null when not recorded."
          }
        },
        "description": "The vehicle a permit permanently connects this one to, such as a truck\nand its trailer."
      },
      "FuelTypeResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the fuel type."
          },
          "name": {
            "type": "string",
            "description": "The fuel type's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the fuel type from the source data."
          }
        },
        "description": "Represents a data transfer object (DTO) for a fuel type,\nsuch as petrol, diesel, electric, or hybrid."
      },
      "HttpValidationProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "format": "int32"
          },
          "detail": {
            "type": [
              "null",
              "string"
            ]
          },
          "instance": {
            "type": [
              "null",
              "string"
            ]
          },
          "errors": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      },
      "LeasingPeriodResponse": {
        "type": "object",
        "properties": {
          "validFromOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The day the leasing period starts (LeasingGyldigFra). Null when not recorded.",
            "format": "date"
          },
          "validUntilOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The day the leasing period ends (LeasingGyldigTil). Null when the period is open-ended.",
            "format": "date"
          }
        },
        "description": "One leasing period registered on a vehicle."
      },
      "PaginationMetadata": {
        "required": [
          "page",
          "pageSize",
          "totalCount"
        ],
        "type": "object",
        "properties": {
          "page": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "integer",
              "string"
            ],
            "description": "The current page number (1-based index).",
            "format": "int32"
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "integer",
              "string"
            ],
            "description": "The number of items per page.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "integer",
              "string"
            ],
            "description": "The total number of items across all pages.",
            "format": "int32"
          },
          "totalPages": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "integer",
              "string"
            ],
            "description": "The total number of pages based on the total item count and page size.",
            "format": "int32"
          }
        },
        "description": "Represents metadata about a paginated result set, including page information and total counts."
      },
      "PaginationResponseOfBlockingReasonResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/BlockingReasonResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfEquipmentResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/EquipmentResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfFuelTypeResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/FuelTypeResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfLeasingPeriodResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/LeasingPeriodResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfPermitResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/PermitResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfPermitTypeResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/PermitTypeResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleBlockingReasonResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleBlockingReasonResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleColorResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleColorResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleDesignationTypeResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleDesignationTypeResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleEmissionStandardResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleEmissionStandardResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleEquipmentResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleEquipmentResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleFuelTypeResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleFuelTypeResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleKindResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleKindResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleMakeResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleMakeResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleModelResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleModelResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleUsageMappingResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleUsageMappingResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleUsageResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleUsageResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PaginationResponseOfVehicleVariantResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/VehicleVariantResponse"
            },
            "description": "The collection of items returned in the current page."
          },
          "metadata": {
            "description": "Metadata about the pagination state, such as current page, total pages, and total count.",
            "$ref": "#/components/schemas/PaginationMetadata"
          }
        },
        "description": "Represents a paginated response containing a collection of items and associated pagination metadata."
      },
      "PermitResponse": {
        "required": [
          "type",
          "fixedConnection",
          "variableCombination"
        ],
        "type": "object",
        "properties": {
          "validFromAt": {
            "type": "string",
            "description": "When the permit took effect (TilladelseGyldigFra). An instant: the source carries a time of day for most permits.",
            "format": "date-time"
          },
          "type": {
            "description": "The permit type, such as \"Stelnummer Genihugget\" (a re-stamped VIN), as `{ id, name, originalName }`, the same fields `/v1/permit-types` returns.",
            "$ref": "#/components/schemas/VehicleReferenceResponse"
          },
          "fixedConnection": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/FixedConnectionPermitResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The vehicle this one is permanently connected to, such as a fixed trailer. Null when the permit has none."
          },
          "variableCombination": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VariableCombinationPermitResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The vehicle this one may be combined with. Null when the permit has none."
          }
        },
        "description": "One permit registered on a vehicle, such as a re-stamped VIN or a\ntrailer coupling. The permit's free-text comment is never served: it can\nhold a person's name or a CVR number."
      },
      "PermitTypeResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the permit type."
          },
          "name": {
            "type": "string",
            "description": "The permit type's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the permit type from the source data."
          }
        },
        "description": "Represents a data transfer object (DTO) for a type of permit that can be assigned to a vehicle,\nsuch as fixed or variable connection permits."
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "format": "int32"
          },
          "detail": {
            "type": [
              "null",
              "string"
            ]
          },
          "instance": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "VariableCombinationPermitResponse": {
        "required": [
          "registrationNumber",
          "vehicleId",
          "vin"
        ],
        "type": "object",
        "properties": {
          "registrationNumber": {
            "type": [
              "null",
              "string"
            ],
            "description": "The combined vehicle's registration number. Null when not recorded."
          },
          "vehicleId": {
            "type": [
              "null",
              "string"
            ],
            "description": "The combined vehicle's ID, usable with `/v1/vehicles/{id}`. Null when not recorded."
          },
          "vin": {
            "type": [
              "null",
              "string"
            ],
            "description": "The combined vehicle's VIN (Vehicle Identification Number). Null when not recorded."
          }
        },
        "description": "The vehicle a permit allows this one to be combined with, such as a\ntruck with one of several trailers."
      },
      "VehicleBlockingReasonResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The blocking reason's ID (KoeretoejBlokeringAarsagTypeNummer), the same value `/v1/blocking-reasons` returns. Treat it as opaque."
          },
          "name": {
            "type": "string",
            "description": "The blocking reason's name, such as \"Totalskadet køretøj\" (KoeretoejBlokeringAarsagTypeNavn), as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The blocking reason's name exactly as Motorstyrelsen writes it (in Danish). It never changes."
          }
        },
        "description": "One block registered on a vehicle, with its name."
      },
      "VehicleBodyTypeResponse": {
        "enum": [
          "unknown",
          "enclosedThreeWheeler",
          "openThreeWheeler",
          "pickup",
          "cabriolet",
          "coupe",
          "hatchback",
          "mpv",
          "sedan",
          "stationcar"
        ],
        "description": "Represents the type of body a vehicle has, such as sedan, hatchback, or pickup."
      },
      "VehicleCheckFlagCodeResponse": {
        "enum": [
          "totalLoss",
          "restampedVin",
          "scrapped",
          "blocked",
          "damaged",
          "defect",
          "calledInForRegistration",
          "trafficDamage",
          "activeLeasing",
          "inspectionNotApproved",
          "deregistered"
        ],
        "description": "What a flag on a vehicle check is about. New codes may be added; treat an\nunknown code by its severity and label."
      },
      "VehicleCheckFlagResponse": {
        "required": [
          "code",
          "severity",
          "label"
        ],
        "type": "object",
        "properties": {
          "code": {
            "description": "What the flag is about, as a stable machine-readable code.",
            "$ref": "#/components/schemas/VehicleCheckFlagCodeResponse"
          },
          "severity": {
            "description": "How much the flag matters: high, medium or info.",
            "$ref": "#/components/schemas/VehicleCheckSeverityResponse"
          },
          "label": {
            "type": "string",
            "description": "A plain English sentence describing the flag, such as \"Registered as a total loss\". The wording may change; use code for logic."
          }
        },
        "description": "One risk signal found by a vehicle check."
      },
      "VehicleCheckResponse": {
        "required": [
          "vehicleId",
          "registrationNumber",
          "vin",
          "checkedOn",
          "flags",
          "status",
          "statusUpdatedAt",
          "registrationStatus",
          "registrationStatusUpdatedAt",
          "hasTrafficDamage",
          "blocks",
          "vinRestampedAt",
          "activeLeasingPeriod",
          "latestInspection"
        ],
        "type": "object",
        "properties": {
          "vehicleId": {
            "type": "string",
            "description": "The vehicle's ID, usable with `/v1/vehicles/{id}`."
          },
          "registrationNumber": {
            "type": [
              "null",
              "string"
            ],
            "description": "The vehicle's current registration number. Null when it has none."
          },
          "vin": {
            "type": "string",
            "description": "The vehicle's VIN (Vehicle Identification Number)."
          },
          "checkedOn": {
            "type": "string",
            "description": "The Danish calendar day the check was evaluated for. activeLeasingPeriod and the ActiveLeasing flag are relative to it.",
            "format": "date"
          },
          "flags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/VehicleCheckFlagResponse"
            },
            "description": "The flags found, most severe first: high, then medium, then info. Empty when none were found."
          },
          "status": {
            "description": "The vehicle's status (KoeretoejOplysningStatus), such as registered or scrapped.",
            "$ref": "#/components/schemas/VehicleStatusResponse"
          },
          "statusUpdatedAt": {
            "type": "string",
            "description": "When the vehicle's status last changed (KoeretoejOplysningStatusDato).",
            "format": "date-time"
          },
          "registrationStatus": {
            "description": "The registration status (KoeretoejRegistreringStatus).",
            "$ref": "#/components/schemas/VehicleRegistrationStatusResponse"
          },
          "registrationStatusUpdatedAt": {
            "type": [
              "null",
              "string"
            ],
            "description": "When the registration status last changed (KoeretoejRegistreringStatusDato). Null when not recorded.",
            "format": "date-time"
          },
          "firstRegisteredOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The day the vehicle was first registered (KoeretoejOplysningFoersteRegistreringDato). Null when not recorded.",
            "format": "date"
          },
          "registrationNumberExpiresOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The day the current registration number expires (RegistreringNummerUdloebDato). Null when not recorded.",
            "format": "date"
          },
          "hasTrafficDamage": {
            "type": "boolean",
            "description": "Whether traffic damage is recorded (KoeretoejOplysningTrafikskade), the same value as hasTrafficDamage on `/technical-details`."
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/VehicleBlockingReasonResponse"
            },
            "description": "The blocks registered on the vehicle, as `/v1/vehicles/{vehicleId}/blocking-reasons` lists them. Empty when none."
          },
          "hasRestampedVin": {
            "type": "boolean",
            "description": "Whether a permit for a re-stamped VIN is registered (permit type Stelnummer Genihugget)."
          },
          "vinRestampedAt": {
            "type": [
              "null",
              "string"
            ],
            "description": "When the earliest re-stamped VIN permit took effect (TilladelseGyldigFra). Null when there is none.",
            "format": "date-time"
          },
          "activeLeasingPeriod": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/LeasingPeriodResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The leasing period that covers checkedOn, both ends inclusive. Null when no period does."
          },
          "latestInspection": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleInspectionReportResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The latest inspection, with its result, day and odometer reading, as `/v1/vehicles/{vehicleId}/inspection` returns it. Null when none is recorded."
          }
        },
        "description": "Every risk signal for a used vehicle in one answer, from the latest\nweekly extract we loaded. A vehicle with no flags is not a guarantee:\nthe extract only holds what was registered when it was made."
      },
      "VehicleCheckSeverityResponse": {
        "enum": [
          "high",
          "medium",
          "info"
        ],
        "description": "How much a flag matters to someone buying the vehicle used."
      },
      "VehicleColorResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the vehicle color."
          },
          "name": {
            "type": "string",
            "description": "The vehicle color's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the vehicle color from the source data."
          }
        },
        "description": "Represents a data transfer object (DTO) for a vehicle color,\nincluding its name and original designation from the source system."
      },
      "VehicleConditionResponse": {
        "enum": [
          "unspecified",
          "belowAverage",
          "average",
          "aboveAverage"
        ],
        "description": "Represents the general condition rating of a vehicle."
      },
      "VehicleCreationSourceResponse": {
        "enum": [
          "inspection",
          "conformityCertificate",
          "typeCertificate",
          "temporarySticker"
        ],
        "description": "Represents the source from which a vehicle's registration was initially created."
      },
      "VehicleDesignationTypeResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the vehicle designation type."
          },
          "name": {
            "type": "string",
            "description": "The vehicle designation type's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the vehicle designation type from the source data."
          }
        },
        "description": "Represents a data transfer object (DTO) for a vehicle designation type,\nsuch as a specific manufacturer-assigned label or variant name for a vehicle."
      },
      "VehicleEmissionStandardResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the vehicle emission standard."
          },
          "name": {
            "type": "string",
            "description": "The emission standard's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the emission standard from the source system."
          }
        },
        "description": "Represents a data transfer object (DTO) for a vehicle emission standard,\nsuch as Euro 6, Euro 5, or EEV (Enhanced Environmentally-friendly Vehicle)."
      },
      "VehicleEngineInformationResponse": {
        "required": [
          "cylinderCount",
          "isDisplacementUnavailable",
          "maximumPower",
          "isMaximumPowerUnavailable",
          "odometerReading",
          "hasOdometerReadingDocumentation",
          "isOdometerReadingUnavailable",
          "drivingNoise",
          "hasInnovativeTechnology",
          "displacement",
          "stationaryNoise",
          "stationaryNoiseRpm",
          "engineMarking",
          "innovativeTechnologyCount"
        ],
        "type": "object",
        "properties": {
          "cylinderCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The number of cylinders in the engine.",
            "format": "int64"
          },
          "isDisplacementUnavailable": {
            "type": "boolean",
            "description": "Whether displacement data is unavailable."
          },
          "maximumPower": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Maximum engine power, in kW (KoeretoejMotorStoersteEffekt).",
            "format": "double"
          },
          "isMaximumPowerUnavailable": {
            "type": "boolean",
            "description": "Whether maximum power is unavailable."
          },
          "odometerReading": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Odometer reading in thousands of km (1,000 km), as Motorstyrelsen records it: 228 means about 228,000 km (KoeretoejMotorKilometerstand).",
            "format": "int64"
          },
          "hasOdometerReadingDocumentation": {
            "type": "boolean",
            "description": "Whether there is documentation for the odometer reading."
          },
          "isOdometerReadingUnavailable": {
            "type": "boolean",
            "description": "Whether odometer reading is unavailable."
          },
          "drivingNoise": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Drive-by noise, in dB(A) (KoeretoejMotorKoerselStoej).",
            "format": "double"
          },
          "hasInnovativeTechnology": {
            "type": "boolean",
            "description": "Whether the engine has innovative technology."
          },
          "displacement": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Engine displacement, in cm³ (KoeretoejMotorSlagVolumen).",
            "format": "double"
          },
          "stationaryNoise": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Stationary noise, in dB(A) (KoeretoejMotorStandStoej).",
            "format": "double"
          },
          "stationaryNoiseRpm": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Engine speed for the stationary noise test, in rpm (KoeretoejMotorStandStoejOmdrejningstal).",
            "format": "int32"
          },
          "engineMarking": {
            "type": [
              "null",
              "string"
            ],
            "description": "The engine's unique marking or identifier."
          },
          "innovativeTechnologyCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "The number of innovative technologies used in the engine, if applicable.",
            "format": "double"
          }
        },
        "description": "Represents a data transfer object (DTO) containing detailed engine-related information for a vehicle."
      },
      "VehicleEnvironmentalInformationResponse": {
        "required": [
          "hasParticleFilter",
          "coEmission",
          "hcPlusNoxEmission",
          "noxEmission",
          "particleEmission",
          "smokeDensityRpm",
          "smokeDensity",
          "isHeavyZeroEmissionVehicle",
          "co2Emission",
          "payloadValue",
          "co2EmissionGroup",
          "co2EmissionGroupReclassifiedAt"
        ],
        "type": "object",
        "properties": {
          "hasParticleFilter": {
            "type": "boolean",
            "description": "Whether the vehicle has a particle filter installed."
          },
          "coEmission": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Carbon monoxide (CO), in mg/km (KoeretoejMiljoeOplysningEmissionCO).",
            "format": "double"
          },
          "hcPlusNoxEmission": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Hydrocarbons plus nitrogen oxides (HC+NOx), in mg/km (KoeretoejMiljoeOplysningEmissionHCPlusNOX).",
            "format": "double"
          },
          "noxEmission": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Nitrogen oxides (NOx), in mg/km (KoeretoejMiljoeOplysningEmissionNOX).",
            "format": "double"
          },
          "particleEmission": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Particulate matter, in mg/km (KoeretoejMiljoeOplysningPartikler).",
            "format": "double"
          },
          "smokeDensityRpm": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Engine speed for the smoke density test, in rpm (KoeretoejMiljoeOplysningRoegtaethedOmdrejningstal).",
            "format": "int32"
          },
          "smokeDensity": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Diesel smoke density (opacity), in m⁻¹ (KoeretoejMiljoeOplysningRoegtaethed).",
            "format": "double"
          },
          "isHeavyZeroEmissionVehicle": {
            "type": "boolean",
            "description": "Whether the vehicle is classified as a heavy-duty zero-emission vehicle."
          },
          "co2Emission": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Heavy-duty specific CO₂ from VECTO, in g/tkm (grams per tonne-km). Set on lorries only (KoeretoejMiljoeOplysningSpecifikCO2Emission).",
            "format": "double"
          },
          "payloadValue": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Payload used for the specific CO₂ figure, in tonnes (KoeretoejMiljoeOplysningNyttelastvaerdi).",
            "format": "double"
          },
          "co2EmissionGroup": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The CO₂ emission group classification.",
            "format": "int32"
          },
          "co2EmissionGroupReclassifiedAt": {
            "type": [
              "null",
              "string"
            ],
            "description": "The date when the vehicle's CO₂ emission group was reclassified.",
            "format": "date-time"
          }
        },
        "description": "Represents a data transfer object (DTO) for environmental and emission-related information for a vehicle."
      },
      "VehicleEquipmentResponse": {
        "required": [
          "id",
          "name",
          "originalName",
          "count"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the equipment associated with the vehicle."
          },
          "name": {
            "type": "string",
            "description": "The equipment's name, e.g. Anhængertræk (KoeretoejUdstyrTypeNavn), as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The equipment's name exactly as Motorstyrelsen writes it (in Danish). It never changes."
          },
          "count": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "integer",
              "string"
            ],
            "description": "The number of units of this equipment associated with the vehicle.",
            "format": "int64"
          }
        },
        "description": "Represents a data transfer object (DTO) for a specific piece of equipment\nassociated with a vehicle, including how many instances of it are present."
      },
      "VehicleFuelTypeResponse": {
        "required": [
          "fuelType",
          "isPrimary",
          "kilometersPerLiter",
          "co2Emission",
          "electricConsumption",
          "hasFuelCell",
          "efficiencyTestProcedure"
        ],
        "type": "object",
        "properties": {
          "fuelType": {
            "description": "The fuel type, as `{ id, name, originalName }`, the same fields `/v1/fuel-types` returns.",
            "$ref": "#/components/schemas/VehicleReferenceResponse"
          },
          "isPrimary": {
            "type": "boolean",
            "description": "Whether this is the vehicle's primary fuel. The primary fuel comes first in the list."
          },
          "kilometersPerLiter": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Fuel efficiency, in km/l (KoeretoejMotorKmPerLiter). Null when not recorded, as for electric vehicles.",
            "format": "double"
          },
          "co2Emission": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Carbon dioxide (CO₂) emissions, in g/km (KoeretoejMiljoeOplysningCO2Udslip). Null when not recorded.",
            "format": "double"
          },
          "electricConsumption": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "Electric energy consumption, in Wh/km (KoeretoejMotorElektriskForbrug). Null when not recorded.",
            "format": "double"
          },
          "hasFuelCell": {
            "type": "boolean",
            "description": "Whether the vehicle has a hydrogen fuel cell."
          },
          "efficiencyTestProcedure": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleReferenceResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The test procedure the figures were measured under, such as WLTP or NEDC, as `{ id, name, originalName }`. Null when not recorded."
          }
        },
        "description": "One fuel a vehicle runs on, with the consumption and emission figures\nMotorstyrelsen records for that fuel."
      },
      "VehicleInspectionReportResponse": {
        "required": [
          "type",
          "result",
          "status",
          "odometerReading"
        ],
        "type": "object",
        "properties": {
          "type": {
            "description": "The type of the vehicle inspection.",
            "$ref": "#/components/schemas/VehicleInspectionReportTypeResponse"
          },
          "inspectedOn": {
            "type": "string",
            "description": "The day of the inspection (SynResultatSynsDato).",
            "format": "date"
          },
          "result": {
            "description": "The result of the vehicle inspection.",
            "$ref": "#/components/schemas/VehicleInspectionReportResultResponse"
          },
          "status": {
            "description": "The current status of the inspection report.",
            "$ref": "#/components/schemas/VehicleInspectionReportStatusResponse"
          },
          "statusUpdatedOn": {
            "type": "string",
            "description": "The day the inspection result last changed (SynResultatSynStatusDato).",
            "format": "date"
          },
          "odometerReading": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Odometer reading at the inspection, in thousands of km (1,000 km), as Motorstyrelsen records it (KoeretoejMotorKilometerstand).",
            "format": "int32"
          }
        },
        "description": "Represents a data transfer object (DTO) for a vehicle inspection report,\ncontaining details such as inspection type, result, and odometer reading."
      },
      "VehicleInspectionReportResultResponse": {
        "enum": [
          "approved",
          "incomplete",
          "rejected",
          "rejectedReinspectionAllowed",
          "reinspectionCompanyReinspectionAllowed",
          "inspectionCompanyReinspectionAllowed"
        ],
        "description": "Represents the possible results of a vehicle inspection."
      },
      "VehicleInspectionReportStatusResponse": {
        "enum": [
          "active"
        ],
        "description": "Represents the status of a vehicle inspection report.\nThis enum can be expanded in the future to support additional statuses."
      },
      "VehicleInspectionReportTypeResponse": {
        "enum": [
          "scrutiny",
          "mot",
          "periodic",
          "registration",
          "customs"
        ],
        "description": "Represents the type of a vehicle inspection that has been carried out."
      },
      "VehicleKindResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the vehicle kind."
          },
          "name": {
            "type": "string",
            "description": "The vehicle kind's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the vehicle kind from the source system."
          }
        },
        "description": "Represents a data transfer object (DTO) for a vehicle kind or type,\nsuch as passenger car, truck, van, motorcycle, etc."
      },
      "VehicleMakeResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the vehicle make."
          },
          "name": {
            "type": "string",
            "description": "The make's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the make from the source system."
          }
        },
        "description": "Represents a data transfer object (DTO) for a vehicle make or manufacturer,\nsuch as Toyota, Volvo, or Ford."
      },
      "VehicleModelResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the vehicle model."
          },
          "name": {
            "type": "string",
            "description": "The vehicle model's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the vehicle model from the source system."
          }
        },
        "description": "Represents a data transfer object (DTO) for a vehicle model,\nsuch as Corolla, XC90, or Model 3."
      },
      "VehicleReferenceResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Motorstyrelsen's identifier, as a string. The same value as the vehicle's matching …Id field. Treat it as opaque."
          },
          "name": {
            "type": "string",
            "description": "The name, as Motorstyrelsen writes it (in Danish), e.g. \"Grå\" or \"VOLKSWAGEN\". The same as originalName today; English names may come later, so don't rely on it staying Danish."
          },
          "originalName": {
            "type": "string",
            "description": "The name exactly as Motorstyrelsen writes it (in Danish). It never changes."
          }
        },
        "description": "A reference from a vehicle to reference data (its make, color, kind, ...),\nembedded so the name comes with the vehicle (issue #73)."
      },
      "VehicleRegistrationStatusResponse": {
        "enum": [
          "unknown",
          "registered",
          "deregistered",
          "pending"
        ],
        "description": "Represents the registration status of a vehicle in the registry system."
      },
      "VehicleResponse": {
        "required": [
          "id",
          "registrationNumber",
          "registrationStatus",
          "registrationStatusUpdatedAt",
          "creationSource",
          "status",
          "statusUpdatedAt",
          "vin",
          "kindId",
          "kind",
          "makeId",
          "make",
          "modelId",
          "model",
          "variantId",
          "variant",
          "designationTypeId",
          "designationType",
          "colorId",
          "color",
          "emissionStandardId",
          "emissionStandard",
          "primaryUsageId",
          "primaryUsage"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "registrationNumber": {
            "type": [
              "null",
              "string"
            ],
            "description": "The registration number (plate) currently on the vehicle, e.g. \"AB12345\" (RegistreringNummerNummer). Null when unregistered."
          },
          "registrationNumberExpiresOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The day the current registration number expires (RegistreringNummerUdloebDato).",
            "format": "date"
          },
          "registrationStatus": {
            "description": "Whether the vehicle is registered (KoeretoejRegistreringStatus).",
            "$ref": "#/components/schemas/VehicleRegistrationStatusResponse"
          },
          "registrationStatusUpdatedAt": {
            "type": [
              "null",
              "string"
            ],
            "description": "When the registration status last changed, as an instant in UTC (KoeretoejRegistreringStatusDato).",
            "format": "date-time"
          },
          "registrationNumberClaimValidFromOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The first day of a reserved registration number claim (RegistreringNummerRettighedGyldigFra).",
            "format": "date"
          },
          "registrationNumberClaimValidUntilOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The last day of a reserved registration number claim (RegistreringNummerRettighedGyldigTil).",
            "format": "date"
          },
          "firstRegisteredOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The day the vehicle was first registered (KoeretoejOplysningFoersteRegistreringDato).",
            "format": "date"
          },
          "creationSource": {
            "description": "How the vehicle entered the register, e.g. by inspection or type approval (KoeretoejOplysningOprettetUdFra).",
            "$ref": "#/components/schemas/VehicleCreationSourceResponse"
          },
          "status": {
            "description": "The vehicle's status in the register (KoeretoejOplysningStatus).",
            "$ref": "#/components/schemas/VehicleStatusResponse"
          },
          "statusUpdatedAt": {
            "type": "string",
            "description": "When the vehicle's status last changed, as an instant in UTC (KoeretoejOplysningStatusDato).",
            "format": "date-time"
          },
          "commissionedOn": {
            "type": [
              "null",
              "string"
            ],
            "description": "The day the vehicle was put into service (KoeretoejOplysningIbrugtagningDato).",
            "format": "date"
          },
          "vin": {
            "type": "string",
            "description": "The vehicle identification number, as recorded (KoeretoejOplysningStelNummer)."
          },
          "kindId": {
            "type": "string",
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "kind": {
            "description": "The vehicle kind, e.g. Personbil or Varebil (KoeretoejArtNavn). The same item as kindId, with its name.",
            "$ref": "#/components/schemas/VehicleReferenceResponse"
          },
          "makeId": {
            "type": "string",
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "make": {
            "description": "The make, e.g. VOLKSWAGEN (KoeretoejMaerkeTypeNavn). The same item as makeId, with its name.",
            "$ref": "#/components/schemas/VehicleReferenceResponse"
          },
          "modelId": {
            "type": [
              "null",
              "string"
            ],
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "model": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleReferenceResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The model, e.g. GOLF (KoeretoejModelTypeNavn). The same item as modelId, with its name. Null when the vehicle has no model, or when Motorstyrelsen's model is not one we can store (an empty name, \"-\" or UOPLYST)."
          },
          "variantId": {
            "type": [
              "null",
              "string"
            ],
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "variant": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleReferenceResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The variant, e.g. 1.6 FSI (KoeretoejVariantTypeNavn). The same item as variantId, with its name. Null when the vehicle has no variant, or has no model: variants are kept per model, so variantId can then be set while this is null."
          },
          "designationTypeId": {
            "type": [
              "null",
              "string"
            ],
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "designationType": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleReferenceResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The designation type, Motorstyrelsen's type code (KoeretoejTypeTypeNavn). The same item as designationTypeId, with its name. Null when the vehicle has none, or has no model: designation types are kept per model, so designationTypeId can then be set while this is null."
          },
          "colorId": {
            "type": [
              "null",
              "string"
            ],
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "color": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleReferenceResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The color, e.g. Grå (FarveTypeNavn). The same item as colorId, with its name. Null when no color is recorded."
          },
          "emissionStandardId": {
            "type": [
              "null",
              "string"
            ],
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "emissionStandard": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleReferenceResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The emission standard, e.g. Euro 6 (NormTypeNavn). The same item as emissionStandardId, with its name. Null when none is recorded."
          },
          "primaryUsageId": {
            "type": [
              "null",
              "string"
            ],
            "description": "Motorstyrelsen's identifier, as a string. Treat it as opaque."
          },
          "primaryUsage": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VehicleReferenceResponse"
              },
              {
                "type": "null"
              }
            ],
            "description": "The primary usage, e.g. Privat personkørsel (KoeretoejAnvendelseNavn). The same item as primaryUsageId, with its name. Null when none is recorded."
          }
        },
        "description": "Represents a data transfer object (DTO) containing general information about a registered vehicle,\nincluding identity, registration, status, and classification references, each with its name."
      },
      "VehicleStatusResponse": {
        "enum": [
          "underCreation",
          "created",
          "registered",
          "deregistered",
          "exportMarking",
          "scrapped",
          "exported",
          "administrativeCreation",
          "declaredByImporter",
          "declaredByImporterAndDealer",
          "deleted",
          "completedRegistrationInspection",
          "partiallyCreated"
        ],
        "description": "Represents the current lifecycle or administrative status of a vehicle in the registry."
      },
      "VehicleTechnicalDetailsResponse": {
        "required": [
          "totalWeight",
          "ownWeight",
          "technicalTotalWeight",
          "axleCount",
          "isCouplingPossible",
          "typeReportNumber",
          "comment",
          "couplingWeightWithoutBrakes",
          "couplingWeightWithBrakes",
          "vinPlacement",
          "minimumRoadWorthyWeight",
          "roadTrainWeight",
          "minimumSeats",
          "maximumSeats",
          "wheelAndTire",
          "condition",
          "drivingAxles",
          "isSuitableForTaxi",
          "typeApprovalNumber",
          "numberOfDoors",
          "hasTrafficDamage",
          "bodyType",
          "isOriginalVeteranVehicle",
          "maximumAxleLoad",
          "trailerTotalWeight",
          "fifthWheelLoad",
          "permittedTrailerAxleLoad",
          "airDragCoefficient",
          "mechanicalDragCoefficient",
          "modelYear",
          "passengerCount",
          "maximumSpeed",
          "additionalEquipment",
          "axleDistance",
          "frontTrackWidth",
          "rearTrackWidth",
          "euVariant",
          "euVersion",
          "typeApprovedCategory",
          "manufacturer",
          "is30PercentVan",
          "numberOfGears",
          "maximumRoadWorthyWeight",
          "taxAxleCount",
          "minimumStandingPlaces",
          "taxAxleLoad",
          "maximumStandingPlaces",
          "connectedSidecarVin"
        ],
        "type": "object",
        "properties": {
          "totalWeight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Permitted total weight on the road, in kg (KoeretoejOplysningTotalVaegt).",
            "format": "int32"
          },
          "ownWeight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Own weight, empty, in kg (KoeretoejOplysningEgenVaegt).",
            "format": "int64"
          },
          "technicalTotalWeight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Technically permissible total weight, in kg (KoeretoejOplysningTekniskTotalVaegt).",
            "format": "int64"
          },
          "axleCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The number of axles on the vehicle.",
            "format": "int32"
          },
          "isCouplingPossible": {
            "type": "boolean",
            "description": "Indicates whether the vehicle supports trailer coupling."
          },
          "typeReportNumber": {
            "type": [
              "null",
              "string"
            ],
            "description": "The official type report number for the vehicle, if available."
          },
          "comment": {
            "type": [
              "null",
              "string"
            ],
            "description": "Additional comments related to the technical details of the vehicle."
          },
          "couplingWeightWithoutBrakes": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Largest trailer without brakes it may tow, in kg (KoeretoejOplysningTilkoblingsvaegtUdenBremser).",
            "format": "int32"
          },
          "couplingWeightWithBrakes": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Largest trailer with brakes it may tow, in kg (KoeretoejOplysningTilkoblingsvaegtMedBremser).",
            "format": "int32"
          },
          "vinPlacement": {
            "type": [
              "null",
              "string"
            ],
            "description": "The location of the VIN on the vehicle."
          },
          "minimumRoadWorthyWeight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Lowest roadworthy (kerb) weight, in kg (KoeretoejOplysningKoereklarVaegtMinimum).",
            "format": "int32"
          },
          "roadTrainWeight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Permitted weight of the whole road train, in kg (KoeretoejOplysningVogntogVaegt).",
            "format": "int32"
          },
          "minimumSeats": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The minimum number of seats available in the vehicle.",
            "format": "int32"
          },
          "maximumSeats": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The maximum number of seats available in the vehicle.",
            "format": "int32"
          },
          "wheelAndTire": {
            "type": [
              "null",
              "string"
            ],
            "description": "Wheel and tire information."
          },
          "hasFiveStarNcapRating": {
            "type": "boolean",
            "description": "Indicates whether the vehicle has a five-star NCAP safety rating."
          },
          "condition": {
            "description": "The general condition classification of the vehicle.",
            "$ref": "#/components/schemas/VehicleConditionResponse"
          },
          "drivingAxles": {
            "type": [
              "null",
              "string"
            ],
            "description": "A description of the vehicle’s driven axles (e.g., front, rear)."
          },
          "isSuitableForTaxi": {
            "type": "boolean",
            "description": "Indicates whether the vehicle is suitable for use as a taxi."
          },
          "typeApprovalNumber": {
            "type": [
              "null",
              "string"
            ],
            "description": "The vehicle's type approval number."
          },
          "numberOfDoors": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The number of doors on the vehicle.",
            "format": "int32"
          },
          "hasTrafficDamage": {
            "type": "boolean",
            "description": "Indicates whether the vehicle has traffic-related damage registered."
          },
          "bodyType": {
            "description": "The body type of the vehicle (e.g., Sedan, Pickup).",
            "$ref": "#/components/schemas/VehicleBodyTypeResponse"
          },
          "isOriginalVeteranVehicle": {
            "type": "boolean",
            "description": "Indicates whether the vehicle is considered an original veteran vehicle."
          },
          "maximumAxleLoad": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Largest load on any one axle, in kg (KoeretoejOplysningStoersteAkselTryk).",
            "format": "int32"
          },
          "trailerTotalWeight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Permitted total weight of a trailer, in kg (KoeretoejOplysningPaahaengVognTotalVaegt).",
            "format": "int32"
          },
          "fifthWheelLoad": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Permitted fifth-wheel (kingpin) load, in kg (KoeretoejOplysningSkammelBelastning).",
            "format": "int32"
          },
          "permittedTrailerAxleLoad": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Permitted semi-trailer axle load, in kg (KoeretoejOplysningSaettevognTilladtAkselTryk).",
            "format": "int32"
          },
          "airDragCoefficient": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "The \"V-value\" Motorstyrelsen records as KoeretoejOplysningVVaerdiLuft, passed through as is. Its unit isn't published: in the 20 Sep 2026 extract it is 0 for most vehicles and up to 24,000 for some, so don't treat it as a drag coefficient.",
            "format": "double"
          },
          "mechanicalDragCoefficient": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "type": [
              "null",
              "number",
              "string"
            ],
            "description": "The \"V-value\" Motorstyrelsen records as KoeretoejOplysningVVaerdiMekanisk, passed through as is. Its unit isn't published: in the 20 Sep 2026 extract it is 0 for most vehicles and up to 24,000 for some, so don't treat it as a drag coefficient.",
            "format": "double"
          },
          "modelYear": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The model year of the vehicle.",
            "format": "int32"
          },
          "passengerCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The maximum number of passengers.",
            "format": "int32"
          },
          "maximumSpeed": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Top speed, in km/h (KoeretoejOplysningMaksimumHastighed).",
            "format": "int32"
          },
          "additionalEquipment": {
            "type": [
              "null",
              "string"
            ],
            "description": "A string describing any additional equipment installed."
          },
          "axleDistance": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Wheelbase, in mm (KoeretoejOplysningAkselAfstand).",
            "format": "int32"
          },
          "frontTrackWidth": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Front track width, in mm (KoeretoejOplysningSporviddenForrest).",
            "format": "int32"
          },
          "rearTrackWidth": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Rear track width, in mm (KoeretoejOplysningSporviddenBagest).",
            "format": "int32"
          },
          "euVariant": {
            "type": [
              "null",
              "string"
            ],
            "description": "The EU variant identifier for the vehicle."
          },
          "euVersion": {
            "type": [
              "null",
              "string"
            ],
            "description": "The EU version identifier for the vehicle."
          },
          "typeApprovedCategory": {
            "type": [
              "null",
              "string"
            ],
            "description": "The EU type-approved category code."
          },
          "manufacturer": {
            "type": [
              "null",
              "string"
            ],
            "description": "The manufacturer’s name."
          },
          "is30PercentVan": {
            "type": "boolean",
            "description": "Indicates whether the vehicle is classified as a 30% van (skattemæssig kategori)."
          },
          "numberOfGears": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The number of gears in the vehicle's transmission.",
            "format": "int32"
          },
          "maximumRoadWorthyWeight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Highest roadworthy (kerb) weight, in kg (KoeretoejOplysningKoereklarVaegtMaksimum).",
            "format": "int32"
          },
          "taxAxleCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The number of axles relevant for taxation purposes.",
            "format": "int32"
          },
          "minimumStandingPlaces": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The minimum number of allowed standing places.",
            "format": "int32"
          },
          "taxAxleLoad": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "Axle load used for road tax, in kg (KoeretoejOplysningSkatteAkselTryk).",
            "format": "int32"
          },
          "maximumStandingPlaces": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "type": [
              "null",
              "integer",
              "string"
            ],
            "description": "The maximum number of allowed standing places.",
            "format": "int32"
          },
          "connectedSidecarVin": {
            "type": [
              "null",
              "string"
            ],
            "description": "The VIN of a connected sidecar, if applicable."
          }
        },
        "description": "Represents a data transfer object (DTO) containing technical specifications and attributes of a vehicle,\nincluding weight, configuration, capacity, and classification details."
      },
      "VehicleUsageMappingResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the usage type associated with a vehicle."
          },
          "name": {
            "type": "string",
            "description": "The usage's name, e.g. Udlejning (KoeretoejAnvendelseNavn), as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The usage's name exactly as Motorstyrelsen writes it (in Danish). It never changes."
          }
        },
        "description": "Represents a mapping between a vehicle and a specific usage type."
      },
      "VehicleUsageResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier for the vehicle usage type."
          },
          "name": {
            "type": "string",
            "description": "The usage type's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the usage type, as defined in source data."
          }
        },
        "description": "Represents a type of usage or purpose assigned to a vehicle (e.g., commercial, private, taxi)."
      },
      "VehicleVariantResponse": {
        "required": [
          "id",
          "name",
          "originalName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the vehicle variant."
          },
          "name": {
            "type": "string",
            "description": "The variant's name, as Motorstyrelsen writes it (in Danish). The same as originalName today; English names may come later."
          },
          "originalName": {
            "type": "string",
            "description": "The original name of the variant as it appears in the data source."
          }
        },
        "description": "Represents a specific variant of a vehicle model, which may differ in equipment level, engine type, or other specifications."
      }
    },
    "securitySchemes": {
      "ApiKey": {
        "type": "apiKey",
        "description": "Your API key, mbk_live_… in production. Create one in Motorbay Console.",
        "name": "X-Api-Key",
        "in": "header"
      }
    }
  },
  "security": [
    {
      "ApiKey": [ ]
    }
  ],
  "tags": [
    {
      "name": "Vehicles"
    },
    {
      "name": "Colors"
    },
    {
      "name": "Makes"
    },
    {
      "name": "Models"
    },
    {
      "name": "Variants"
    },
    {
      "name": "Designation Types"
    },
    {
      "name": "Emission Standards"
    },
    {
      "name": "Fuel Types"
    },
    {
      "name": "Equipment"
    },
    {
      "name": "Kinds"
    },
    {
      "name": "Usages"
    },
    {
      "name": "Blocking Reasons"
    },
    {
      "name": "Permits"
    },
    {
      "name": "Leasing Periods"
    },
    {
      "name": "Vehicle Check"
    },
    {
      "name": "Dataset"
    }
  ]
}