{

"components": {
  "schemas": {
    "request": {
      "post": {
        "type": "object",
        "xml": { "name": "/" },
        "properties": {
          "hardware": {
            "type": "object",
            "required": ["name"],
            "properties": { "$ref": "hardware.json#/components/schemas/request_properties" }
          }
        }
      },
      "put": {
        "type": "object",
        "xml": { "name": "/" },
        "properties": {
          "hardware": {
            "type": "object",
            "properties": { "$ref": "hardware.json#/components/schemas/request_properties" }
          }
        }
      }
    },
    "request_properties": {
      "name": { "type": "string", "example": "Hardware Name" },
      "description": { "type": "string", "example": "description" },
      "site": { "$ref": "../../components.json#/components/request/schemas/association_by_name" },
      "department": { "$ref": "../../components.json#/components/request/schemas/association_by_name" },
      "site_id": { "$ref": "../../components.json#/components/common/schemas/association_by_id" },
      "department_id": { "$ref": "../../components.json#/components/common/schemas/association_by_id" },
      "category": { "$ref": "../../components.json#/components/request/schemas/association_by_name" },
      "ip_address": { "type": "string", "example": "0.0.0.0" },
      "external_ip": { "type": "string", "example": "0.0.0.0" },
      "status": { "$ref": "../../components.json#/components/request/schemas/association_by_name" },
      "technical_contact": { "$ref": "../../components.json#/components/request/schemas/association_by_email" },
      "owner": { "$ref": "../../components.json#/components/request/schemas/association_by_email" },
      "notes": { "type": "string", "example": "Hardware notes" },
      "barcode_encoding_format": { "type": "string", "example": "Code1A" },
      "cpu": { "type": "string", "example": "hardware_cpu" },
      "memory": { "anyOf": [{ "type": "string", "example": "1024" },{ "type": "integer", "example": 1024 }] },
      "swap": { "type": "string", "example": "MB" },
      "domain": { "type": "string", "example": "domain description" },
      "operating_system": { "type": "string", "example": "Windows 10" },
      "active_directory": { "type": "string", "example": "Workgroup of the OS" },
      "address": { "type": "string", "example": "Site 1, Building 1, Department 1" },
      "longitude": { "type": "string", "example": "0.000" },
      "latitude": { "type": "string", "example": "0.000" },
      "product_number": { "anyOf": [{ "type": "string", "example": "1" },{ "type": "integer", "example": 1 }] },
      "custom_fields_values": { "$ref": "../../components.json#/components/request/schemas/custom_fields_values" },
      "custom_fields_values_attributes": { "$ref": "../../components.json#/components/request/schemas/custom_fields_values_attributes" },
      "bio": { "$ref": "../../components.json#/components/request/schemas/bio" },
      "tag": { "type": "string", "example": "hardware tag" },
      "asset_tag": { "anyOf": [{ "type": "string", "example": "1" },{ "type": "integer", "example": 1 }] }
    },
    "response": {
      "type": "object",
      "xml": { "name": "/", "wrapped": true },
      "properties": {
        "hardware": {
          "type": "object",
          "properties": {
            "id": { "$ref": "../../components.json#/components/response/schemas/id" },
            "name": { "type": "string", "example": "Hardware Name" },
            "ip": { "type": "string", "example": "0.0.0.0" },
            "description": { "type": "string", "example": "description" },
            "site": { "$ref": "../../components.json#/components/response/schemas/site_response" },
            "department": { "$ref": "../../components.json#/components/response/schemas/department_response" },
            "status": { "type": "string", "example": "Operational" },
            "category": {
              "type": "object",
              "properties": {
                "id": { "$ref": "../../components.json#/components/response/schemas/id" },
                "name": { "type": "string", "example": "Laptop" }
              }
            },
            "owner": { "$ref": "../../components.json#/components/response/schemas/group_details" },
            "technical_contact": { "$ref": "../../components.json#/components/response/schemas/group_details" },
            "custom_fields_values": { "$ref": "../../components.json#/components/response/schemas/custom_fields_values" },
            "notes": { "type": "string", "example": "Hardware notes" },
            "barcode_encoding_format": { "type": "string", "example": "Code1A" },
            "cpu": { "type": "string", "example": "hardware_cpu" },
            "processor_speed": { "type": "string", "example": "processor_speed" },
            "memory": { "type": "string", "example": "1024" },
            "swap": { "type": "string", "example": "MB" },
            "domain": { "type": "string", "example": "domain description" },
            "operating_system": { "type": "string", "example": "Windows 10" },
            "active_directory": { "type": "string", "example": "Workgroup of the OS" },
            "address": { "type": "string", "example": "Site 1, Building 1, Department 1" },
            "longitude": { "type": "string", "example": "0.000" },
            "latitude": { "type": "string", "example": "0.000" },
            "product_number": { "type": "integer", "example": 1 },
            "bio": { "$ref": "../../components.json#/components/response/schemas/bioses" },
            "tag": { "type": "string", "example": "hardware tag" },
            "asset_tag": { "type": "string", "example": "1" }
          }
        }
      }
    }
  }
}

}