xref: /openbmc/bmcweb/redfish-core/schema/dmtf/json-schema/CoolingLoop.v1_1_0.json (revision 5ecf7b4e1bb6988dd3403fa80b723afbe2be30ae)
1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/CoolingLoop.v1_1_0.json",
3    "$ref": "#/definitions/CoolingLoop",
4    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5    "copyright": "Copyright 2014-2025 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6    "definitions": {
7        "Actions": {
8            "additionalProperties": false,
9            "description": "The available actions for this resource.",
10            "longDescription": "This type shall contain the available actions for this resource.",
11            "patternProperties": {
12                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13                    "description": "This property shall specify a valid odata or Redfish property.",
14                    "type": [
15                        "array",
16                        "boolean",
17                        "integer",
18                        "number",
19                        "null",
20                        "object",
21                        "string"
22                    ]
23                }
24            },
25            "properties": {
26                "Oem": {
27                    "$ref": "#/definitions/OemActions",
28                    "description": "The available OEM-specific actions for this resource.",
29                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
30                }
31            },
32            "type": "object"
33        },
34        "Coolant": {
35            "additionalProperties": false,
36            "description": "This type describes coolant.",
37            "longDescription": "This type shall describe the coolant used with a device.",
38            "patternProperties": {
39                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
40                    "description": "This property shall specify a valid odata or Redfish property.",
41                    "type": [
42                        "array",
43                        "boolean",
44                        "integer",
45                        "number",
46                        "null",
47                        "object",
48                        "string"
49                    ]
50                }
51            },
52            "properties": {
53                "AdditiveName": {
54                    "description": "The name of the additive.",
55                    "longDescription": "This property shall contain the name of the additive contained in the coolant.",
56                    "readonly": false,
57                    "type": [
58                        "string",
59                        "null"
60                    ]
61                },
62                "AdditivePercent": {
63                    "description": "The percent additives contained in the coolant.",
64                    "longDescription": "This property shall contain the percent of additives, `0` to `100`, by volume, contained in the coolant mixture.",
65                    "maximum": 100,
66                    "minimum": 0,
67                    "readonly": false,
68                    "type": [
69                        "number",
70                        "null"
71                    ],
72                    "units": "%"
73                },
74                "CoolantType": {
75                    "anyOf": [
76                        {
77                            "$ref": "#/definitions/CoolantType"
78                        },
79                        {
80                            "type": "null"
81                        }
82                    ],
83                    "description": "The type of coolant.",
84                    "longDescription": "This property shall contain the type of coolant used by this resource.",
85                    "readonly": false
86                },
87                "DensityKgPerCubicMeter": {
88                    "description": "The density (kg/m^3) of the coolant.",
89                    "longDescription": "This property shall contain the density of the coolant, in kilograms per cubic meter units, as measured at room temperature (20-25 degrees C) and atmospheric pressure.",
90                    "readonly": false,
91                    "type": [
92                        "number",
93                        "null"
94                    ],
95                    "units": "kg/m3"
96                },
97                "RatedServiceHours": {
98                    "description": "The rated hours of service life for this coolant.",
99                    "longDescription": "This property shall contain the number of hours of service that the coolant is rated to provide before servicing or replacement is necessary.",
100                    "readonly": false,
101                    "type": [
102                        "number",
103                        "null"
104                    ]
105                },
106                "ServiceHours": {
107                    "description": "The hours of service this coolant has provided.",
108                    "longDescription": "This property shall contain the number of hours of service that the coolant has provided.",
109                    "readonly": false,
110                    "type": [
111                        "number",
112                        "null"
113                    ]
114                },
115                "ServicedDate": {
116                    "description": "The date the coolant was last serviced.",
117                    "format": "date-time",
118                    "longDescription": "This property shall contain the date the coolant was last serviced or tested for quality.",
119                    "readonly": false,
120                    "type": [
121                        "string",
122                        "null"
123                    ]
124                },
125                "SpecificHeatkJoulesPerKgK": {
126                    "description": "The specific heat capacity (kJ/(kg*K)) of the coolant.",
127                    "longDescription": "This property shall contain the specific heat capacity of the coolant, in kilojoules per kilogram per degree kelvin units, as measured at room temperature (20-25 degrees C) and atmospheric pressure.",
128                    "readonly": false,
129                    "type": [
130                        "number",
131                        "null"
132                    ],
133                    "units": "kJ/kg/K"
134                }
135            },
136            "type": "object"
137        },
138        "CoolantType": {
139            "enum": [
140                "Water",
141                "Hydrocarbon",
142                "Fluorocarbon",
143                "Dielectric"
144            ],
145            "enumDescriptions": {
146                "Dielectric": "Dielectric fluid.",
147                "Fluorocarbon": "Fluorocarbon-based.",
148                "Hydrocarbon": "Hydrocarbon-based.",
149                "Water": "Water or glycol mixture, including additives."
150            },
151            "type": "string"
152        },
153        "CoolingLoop": {
154            "additionalProperties": false,
155            "description": "The `CoolingLoop` schema describes a cooling loop.  A cooling loop might be any coolant-carrying vessel, such as facility-level pipework, an immersion cooling tank, or a manifold.  A loop might describe its connectors and instrumentation but does not generally include active cooling components or subsystems.",
156            "longDescription": "This resource shall represent a cooling loop for a Redfish implementation.",
157            "patternProperties": {
158                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
159                    "description": "This property shall specify a valid odata or Redfish property.",
160                    "type": [
161                        "array",
162                        "boolean",
163                        "integer",
164                        "number",
165                        "null",
166                        "object",
167                        "string"
168                    ]
169                }
170            },
171            "properties": {
172                "@odata.context": {
173                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
174                },
175                "@odata.etag": {
176                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
177                },
178                "@odata.id": {
179                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
180                },
181                "@odata.type": {
182                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
183                },
184                "Actions": {
185                    "$ref": "#/definitions/Actions",
186                    "description": "The available actions for this resource.",
187                    "longDescription": "This property shall contain the available actions for this resource."
188                },
189                "ConsumingEquipmentNames": {
190                    "description": "An array of names of downstream devices that receive coolant from this cooling loop.",
191                    "items": {
192                        "type": [
193                            "string",
194                            "null"
195                        ]
196                    },
197                    "longDescription": "This property shall contain an array of user-assigned identifying strings that describe downstream devices that receive coolant from this cooling loop.",
198                    "readonly": false,
199                    "type": "array"
200                },
201                "Coolant": {
202                    "$ref": "#/definitions/Coolant",
203                    "description": "The coolant details for this cooling loop.",
204                    "longDescription": "This property shall contain the details about the coolant contained in this cooling loop."
205                },
206                "CoolantLevelPercent": {
207                    "anyOf": [
208                        {
209                            "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorExcerpt"
210                        },
211                        {
212                            "type": "null"
213                        }
214                    ],
215                    "description": "The coolant capacity filled (percent).",
216                    "excerptCopy": "SensorExcerpt",
217                    "longDescription": "This property shall contain the amount of coolant capacity, in percent units, filled in this cooling loop.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Sensor` with the `ReadingType` property containing the value `Percent`.  Services that support this property shall also return the `CoolantLevelStatus` property.",
218                    "readonly": true
219                },
220                "CoolantLevelStatus": {
221                    "anyOf": [
222                        {
223                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Health"
224                        },
225                        {
226                            "type": "null"
227                        }
228                    ],
229                    "description": "The status of the coolant level in this cooling loop.",
230                    "longDescription": "This property shall indicate the status of the coolant level in this cooling loop.",
231                    "readonly": true
232                },
233                "CoolantQuality": {
234                    "anyOf": [
235                        {
236                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Health"
237                        },
238                        {
239                            "type": "null"
240                        }
241                    ],
242                    "description": "The quality of the coolant.",
243                    "longDescription": "This property shall indicate the quality of the coolant contained in this cooling loop.",
244                    "readonly": true
245                },
246                "CoolingLoopType": {
247                    "anyOf": [
248                        {
249                            "$ref": "#/definitions/CoolingLoopType"
250                        },
251                        {
252                            "type": "null"
253                        }
254                    ],
255                    "description": "The type of cooling loop.",
256                    "longDescription": "This property shall contain the type of cooling loop represented by this resource.",
257                    "readonly": false,
258                    "versionAdded": "v1_1_0"
259                },
260                "CoolingManagerURI": {
261                    "description": "The link to the application that manages the cooling loop.",
262                    "format": "uri-reference",
263                    "longDescription": "This property shall contain a URI to the application or device that provides administration or management of the cooling loop associated with this interface.",
264                    "readonly": false,
265                    "type": [
266                        "string",
267                        "null"
268                    ]
269                },
270                "Description": {
271                    "anyOf": [
272                        {
273                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
274                        },
275                        {
276                            "type": "null"
277                        }
278                    ],
279                    "readonly": true
280                },
281                "Id": {
282                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
283                    "readonly": true
284                },
285                "Links": {
286                    "$ref": "#/definitions/Links",
287                    "description": "The links to other resources that are related to this resource.",
288                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."
289                },
290                "LocationIndicatorActive": {
291                    "description": "An indicator allowing an operator to physically locate this resource.",
292                    "longDescription": "This property shall contain the state of the indicator used to physically identify or locate this resource.",
293                    "readonly": false,
294                    "type": [
295                        "boolean",
296                        "null"
297                    ]
298                },
299                "Name": {
300                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
301                    "readonly": true
302                },
303                "Oem": {
304                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
305                    "description": "The OEM extension property.",
306                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
307                },
308                "PrimaryCoolantConnectors": {
309                    "$ref": "http://redfish.dmtf.org/schemas/v1/CoolantConnectorCollection.json#/definitions/CoolantConnectorCollection",
310                    "description": "A link to the primary coolant connectors for this equipment.",
311                    "longDescription": "This property shall contain a link to a resource collection of type `CoolantConnectorCollection` that contains the primary coolant connectors for this equipment.",
312                    "readonly": true
313                },
314                "RatedFlowLitersPerMinute": {
315                    "description": "The rated liquid flow (L/min) for this cooling loop.",
316                    "longDescription": "This property shall contain the rated liquid flow, in liters per minute units, for this cooling loop.",
317                    "minimum": 0,
318                    "readonly": true,
319                    "type": [
320                        "number",
321                        "null"
322                    ],
323                    "units": "L/min"
324                },
325                "RatedPressurekPa": {
326                    "description": "The rated pressure (kPa) for this cooling loop.",
327                    "longDescription": "This property shall contain the rated maximum pressure, in kilopascal units, for this cooling loop.",
328                    "minimum": 0,
329                    "readonly": true,
330                    "type": [
331                        "number",
332                        "null"
333                    ],
334                    "units": "kPa"
335                },
336                "SecondaryCoolantConnectors": {
337                    "$ref": "http://redfish.dmtf.org/schemas/v1/CoolantConnectorCollection.json#/definitions/CoolantConnectorCollection",
338                    "description": "A link to the secondary coolant connectors for this equipment.",
339                    "longDescription": "This property shall contain a link to a resource collection of type `CoolantConnectorCollection` that contains the secondary coolant connectors for this equipment.",
340                    "readonly": true
341                },
342                "Status": {
343                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
344                    "description": "The status and health of the resource and its subordinate or dependent resources.",
345                    "longDescription": "This property shall contain any status or health properties of the resource."
346                },
347                "SupplyEquipmentNames": {
348                    "description": "An array of names of upstream devices that supply coolant to this cooling loop.",
349                    "items": {
350                        "type": [
351                            "string",
352                            "null"
353                        ]
354                    },
355                    "longDescription": "This property shall contain an array of user-assigned identifying strings that describe upstream devices that supply coolant to this cooling loop.",
356                    "readonly": false,
357                    "type": "array"
358                },
359                "UserLabel": {
360                    "description": "A user-assigned label.",
361                    "longDescription": "This property shall contain a user-assigned label used to identify this resource.  If a value has not been assigned by a user, the value of this property shall be an empty string.",
362                    "readonly": false,
363                    "type": "string"
364                }
365            },
366            "required": [
367                "@odata.id",
368                "@odata.type",
369                "Id",
370                "Name"
371            ],
372            "type": "object"
373        },
374        "CoolingLoopType": {
375            "enum": [
376                "FWS",
377                "TCS",
378                "RowTCS"
379            ],
380            "enumDescriptions": {
381                "FWS": "Facility Water System (FWS).",
382                "RowTCS": "A loop connecting to one or more racks or similar scope.  May connect to multiple TCS loops.",
383                "TCS": "Technology Cooling System (TCS)."
384            },
385            "type": "string"
386        },
387        "Links": {
388            "additionalProperties": false,
389            "description": "The links to other resources that are related to this resource.",
390            "longDescription": "This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
391            "patternProperties": {
392                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
393                    "description": "This property shall specify a valid odata or Redfish property.",
394                    "type": [
395                        "array",
396                        "boolean",
397                        "integer",
398                        "number",
399                        "null",
400                        "object",
401                        "string"
402                    ]
403                }
404            },
405            "properties": {
406                "Chassis": {
407                    "anyOf": [
408                        {
409                            "$ref": "http://redfish.dmtf.org/schemas/v1/Chassis.json#/definitions/Chassis"
410                        },
411                        {
412                            "type": "null"
413                        }
414                    ],
415                    "description": "A link to the chassis that contains this equipment.",
416                    "longDescription": "This property shall contain a link to resources of type `Chassis` that represent the physical container that contains this resource.",
417                    "readonly": true
418                },
419                "Facility": {
420                    "$ref": "http://redfish.dmtf.org/schemas/v1/Facility.json#/definitions/Facility",
421                    "description": "A link to the facility that contains this equipment.",
422                    "longDescription": "This property shall contain a link to a resource of type `Facility` that represents the facility that contains this equipment.",
423                    "readonly": true
424                },
425                "ManagedBy": {
426                    "description": "An array of links to the managers responsible for managing this equipment.",
427                    "items": {
428                        "$ref": "http://redfish.dmtf.org/schemas/v1/Manager.json#/definitions/Manager"
429                    },
430                    "longDescription": "This property shall contain an array of links to resources of type `Manager` that represent the managers that manage this equipment.",
431                    "readonly": true,
432                    "type": "array"
433                },
434                "ManagedBy@odata.count": {
435                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
436                },
437                "Oem": {
438                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
439                    "description": "The OEM extension property.",
440                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
441                }
442            },
443            "type": "object"
444        },
445        "OemActions": {
446            "additionalProperties": true,
447            "description": "The available OEM-specific actions for this resource.",
448            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
449            "patternProperties": {
450                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
451                    "description": "This property shall specify a valid odata or Redfish property.",
452                    "type": [
453                        "array",
454                        "boolean",
455                        "integer",
456                        "number",
457                        "null",
458                        "object",
459                        "string"
460                    ]
461                }
462            },
463            "properties": {},
464            "type": "object"
465        }
466    },
467    "language": "en",
468    "owningEntity": "DMTF",
469    "release": "2025.3",
470    "title": "#CoolingLoop.v1_1_0.CoolingLoop"
471}