openapi: 3.2.0 info: title: Hardware API (hwapi) Certification API description: API server for working with hardware information from C3 version: 1.0.0 tags: - name: Certification paths: /v1/certification/status: post: tags: - Certification summary: Check Certification description: 'Endpoint for checking certification status (whether a system is certified, not seen or some of its components have been seen on other systems)' operationId: check_certification_v1_certification_status_post requestBody: content: application/json: schema: $ref: '#/components/schemas/CertificationStatusRequest' required: true responses: '200': description: Successful Response content: application/json: schema: anyOf: - $ref: '#/components/schemas/CertifiedResponse' - $ref: '#/components/schemas/NotCertifiedResponse' - $ref: '#/components/schemas/RelatedCertifiedSystemExistsResponse' - $ref: '#/components/schemas/CertifiedImageExistsResponse' title: Response Check Certification V1 Certification Status Post '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' components: schemas: DeviceStatus: type: string enum: - known-working - known-breaking - unknown title: DeviceStatus VideoCaptureValidator: properties: status: anyOf: - $ref: '#/components/schemas/DeviceStatus' - type: 'null' model: type: string title: Model vendor: type: string title: Vendor identifier: type: string title: Identifier type: object required: - model - vendor - identifier title: VideoCaptureValidator description: Validator model for video capture devices USBPeripheralValidator: properties: status: anyOf: - $ref: '#/components/schemas/DeviceStatus' - type: 'null' usb_id: type: string title: Usb Id name: type: string title: Name vendor: type: string title: Vendor type: object required: - usb_id - name - vendor title: USBPeripheralValidator WirelessAdapterValidator: properties: status: anyOf: - $ref: '#/components/schemas/DeviceStatus' - type: 'null' model: type: string title: Model vendor: type: string title: Vendor identifier: type: string title: Identifier type: object required: - model - vendor - identifier title: WirelessAdapterValidator description: Validator model for wireless network adapters RelatedCertifiedSystemExistsResponse: properties: status: type: string const: Related Certified System Exists title: Status default: Related Certified System Exists certified_url: type: string title: Certified URL architecture: type: string title: Architecture board: anyOf: - $ref: '#/components/schemas/BoardValidator' - type: 'null' bios: anyOf: - $ref: '#/components/schemas/BiosValidator' - type: 'null' chassis: anyOf: - $ref: '#/components/schemas/ChassisValidator' - type: 'null' gpu: anyOf: - items: $ref: '#/components/schemas/GPUValidator' type: array - type: 'null' title: Gpu audio: anyOf: - items: $ref: '#/components/schemas/AudioValidator' type: array - type: 'null' title: Audio video: anyOf: - items: $ref: '#/components/schemas/VideoCaptureValidator' type: array - type: 'null' title: Video network: anyOf: - items: $ref: '#/components/schemas/NetworkAdapterValidator' type: array - type: 'null' title: Network wireless: anyOf: - items: $ref: '#/components/schemas/WirelessAdapterValidator' type: array - type: 'null' title: Wireless pci_peripherals: items: $ref: '#/components/schemas/PCIPeripheralValidator' type: array title: Pci Peripherals default: [] usb_peripherals: items: $ref: '#/components/schemas/USBPeripheralValidator' type: array title: Usb Peripherals default: [] available_releases: items: $ref: '#/components/schemas/OSValidator' type: array title: Available Releases type: object required: - certified_url - architecture - board - bios - available_releases title: RelatedCertifiedSystemExistsResponse ChassisValidator: properties: chassis_type: type: string title: Chassis Type manufacturer: type: string title: Manufacturer sku: type: string title: Sku version: type: string title: Version type: object required: - chassis_type - manufacturer - sku - version title: ChassisValidator AudioValidator: properties: model: type: string title: Model vendor: type: string title: Vendor identifier: type: string title: Identifier type: object required: - model - vendor - identifier title: AudioValidator description: Validator model for audio devices ProcessorValidator: properties: identifier: anyOf: - items: type: integer type: array - type: 'null' title: Identifier frequency: type: integer title: Frequency manufacturer: type: string title: Manufacturer version: type: string title: Version type: object required: - identifier - frequency - manufacturer - version title: ProcessorValidator HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError BoardValidator: properties: manufacturer: type: string title: Manufacturer product_name: type: string title: Product Name version: type: string title: Version type: object required: - manufacturer - product_name - version title: BoardValidator GPUValidator: properties: status: anyOf: - $ref: '#/components/schemas/DeviceStatus' - type: 'null' codename: anyOf: - type: string - type: 'null' title: Codename manufacturer: type: string title: Manufacturer version: type: string title: Version identifier: type: string title: Identifier type: object required: - manufacturer - version - identifier title: GPUValidator KernelPackageValidator: properties: name: anyOf: - type: string - type: 'null' title: Name version: type: string title: Version signature: anyOf: - type: string - type: 'null' title: Signature loaded_modules: items: type: string type: array title: Loaded Modules default: [] type: object required: - name - version - signature title: KernelPackageValidator CertifiedImageExistsResponse: properties: status: type: string const: Certified Image Exists title: Status default: Certified Image Exists certified_url: type: string title: Certified URL architecture: type: string title: Architecture bios: anyOf: - $ref: '#/components/schemas/BiosValidator' - type: 'null' board: anyOf: - $ref: '#/components/schemas/BoardValidator' - type: 'null' chassis: anyOf: - $ref: '#/components/schemas/ChassisValidator' - type: 'null' available_releases: items: $ref: '#/components/schemas/OSValidator' type: array title: Available Releases type: object required: - certified_url - architecture - bios - board - available_releases title: CertifiedImageExistsResponse CertifiedResponse: properties: status: type: string const: Certified title: Status default: Certified certified_url: type: string title: Certified URL architecture: type: string title: Architecture bios: anyOf: - $ref: '#/components/schemas/BiosValidator' - type: 'null' board: anyOf: - $ref: '#/components/schemas/BoardValidator' - type: 'null' chassis: anyOf: - $ref: '#/components/schemas/ChassisValidator' - type: 'null' available_releases: items: $ref: '#/components/schemas/OSValidator' type: array title: Available Releases type: object required: - certified_url - architecture - bios - board - available_releases title: CertifiedResponse PCIPeripheralValidator: properties: status: anyOf: - $ref: '#/components/schemas/DeviceStatus' - type: 'null' pci_id: type: string title: Pci Id name: type: string title: Name vendor: type: string title: Vendor type: object required: - pci_id - name - vendor title: PCIPeripheralValidator ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError CertificationStatusRequest: properties: vendor: type: string title: Vendor model: type: string title: Model architecture: type: string title: Architecture board: $ref: '#/components/schemas/BoardValidator' os: $ref: '#/components/schemas/OSValidator' bios: anyOf: - $ref: '#/components/schemas/BiosValidator' - type: 'null' chassis: anyOf: - $ref: '#/components/schemas/ChassisValidator' - type: 'null' processor: $ref: '#/components/schemas/ProcessorValidator' pci_peripherals: items: $ref: '#/components/schemas/PCIPeripheralValidator' type: array title: Pci Peripherals default: [] usb_peripherals: items: $ref: '#/components/schemas/USBPeripheralValidator' type: array title: Usb Peripherals default: [] type: object required: - vendor - model - architecture - board - os - processor title: CertificationStatusRequest description: Request body validator for status check endpoint NotCertifiedResponse: properties: status: type: string const: Not Seen title: Status default: Not Seen type: object title: NotCertifiedResponse NetworkAdapterValidator: properties: bus: type: string title: Bus identifier: type: string title: Identifier model: type: string title: Model vendor: type: string title: Vendor capacity: type: integer title: Capacity type: object required: - bus - identifier - model - vendor - capacity title: NetworkAdapterValidator description: Validator for ethernet network adapters BiosValidator: properties: vendor: type: string title: Vendor version: type: string title: Version revision: anyOf: - type: string - type: 'null' title: Revision firmware_revision: anyOf: - type: string - type: 'null' title: Firmware Revision release_date: anyOf: - type: string - type: 'null' title: Release Date type: object required: - vendor - version - revision - firmware_revision - release_date title: BiosValidator OSValidator: properties: distributor: type: string title: Distributor version: type: string title: Version codename: type: string title: Codename kernel: $ref: '#/components/schemas/KernelPackageValidator' type: object required: - distributor - version - codename - kernel title: OSValidator