meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Last revisionBoth sides next revision
documentation:redfish_api [2017/03/24 10:45] – created bildocumentation:redfish_api [2017/04/25 09:26] – [Schema Definition] bil
Line 1: Line 1:
 ====== Redfish API Specification ====== ====== Redfish API Specification ======
-===== Used Versions ===== +===== Referenced Versions =====
-  * Redfish Scalable Platforms Management API Specification 1.1.0 ([[http://redfish.dmtf.org/schemas/DSP0266_1.1.html]]) +
-  * JSON Schema, Core Definitions and Terminology, Draft 4 ([[https://tools.ietf.org/html/draft-zyp-json-schema-04]]) +
-  * JSON Schema, Interactive and Non-Interactive Validation ([[https://tools.ietf.org/html/draft-fge-json-schema-validation-00]]) +
-  * OData Version 4.0. Part 1: Protocol, Plus Errata 03 ([[http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html]]) +
-  * OData Version 4.0. Part 2: URL Conventions, Plus Errata 03 ([[http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part2-url-conventions.html]]) +
-  * OData Version 4.0. Part 3: Common Schema Definition Language (CSDL), Plus Errata 03 ([[http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part3-csdl.html]]) +
-  * OData Version 4.0: Core Vocabulary, Plus Errata 02 ([[http://docs.oasis-open.org/odata/odata/v4.0/errata02/os/complete/vocabularies/Org.OData.Core.V1.xml]]) +
-  * OData Version 4.0: Measures Vocabulary, Plus Errata 02 ([[http://docs.oasis-open.org/odata/odata/v4.0/errata02/os/complete/vocabularies/Org.OData.Measures.V1.xml]]) +
-  * OData JSON Format Version 4.0 Plus Errata 03 (http://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html) +
-  * Simple Service Discovery Protocol/1.0, Draft 3 ([[https://tools.ietf.org/html/draft-cai-ssdp-v1-03]]) +
-  * Hypertext Transfer Protocol (HTTP/1.1)+
  
 +  * DMTF Redfish Scalable Platforms Management API Specification [[http://redfish.dmtf.org/schemas/DSP0266_1.1.html|1.1.0]]
 +  * DMTF Redfish Schema Version [[http://www.dmtf.org/sites/default/files/standards/documents/DSP8010_2016.3.zip|2016.3]]
 +  * SINA Swordfish Schema API Specification [[https://www.snia.org/sites/default/files/SMI/swordfish/v103/Swordfish_v1.0.3_Specification.html|1.0.3]] and [[http://www.snia.org/sites/default/files/technical_work/Swordfish/Swordfish_v1.0.3.zip|Schema]]
  
 +All other referred versions, such as JSON, ODATA and SSDP, are corresponding to the [[http://redfish.dmtf.org/schemas/DSP0266_1.1.html#normative-references|normative references]] of the Redfish Scalable Platforms Management API Specification of the version noted above.
 +
 +===== API Mapping (main components) =====
 +
 +^ RECS%%|%%Box Component ^ Redfish API Resource ^ Redfish Schema ^ Notes ^
 +| Root | ServiceRoot | [[http://redfish.dmtf.org/schemas/ServiceRoot.v1_1_1.json|ServiceRoot.v1_1_1]] |  |
 +| Enclosure | Chassis (ChassisType = Enclosure) | [[http://redfish.dmtf.org/schemas/Chassis.v1_4_0.json|Chassis.v1_4_0]] |  |
 +| Baseboard-Blade | Chassis (ChassisType = Blade) | [[http://redfish.dmtf.org/schemas/Chassis.v1_4_0.json|Chassis.v1_4_0]] | Dual-LP-Basebords are treated as one Blade |
 +| Extension-Blade | Chassis (ChassisType = Expansion) | [[http://redfish.dmtf.org/schemas/Chassis.v1_4_0.json|Chassis.v1_4_0]] | expands the (COM-Express) Baseboard-Blade |
 +| PCIe Card | PCIeDevice | [[http://redfish.dmtf.org/schemas/PCIeDevice.v1_0_1.json|PCIeDevice.v1_0_1]] | any PCIe Card in an Extension-Blade |
 +| Compute Node | ComputerSystem (SystemType = Physical) | [[http://redfish.dmtf.org/schemas/ComputerSystem.v1_3_0.json|ComputerSystem.v1_3_0]] | COM-Express, Apalis and Jetson Modules |
 +| Local Storage | SimpleStorage | [[http://redfish.dmtf.org/schemas/v1/SimpleStorage.v1_1_1.json|SimpleStorage.v1_1_1]] | e.g. M.2 SATA SSD @ COM Express Node \\ or eMMC @ Apalis-/Jetson Module |
 +| Storage Extension | Storage | [[http://redfish.dmtf.org/schemas/Storage.v1_1_1.json|Storage.v1_1_1]] | PCIe attached Storage |
 +| Ethernet Switch | EthernetSwitch from Intel PSME REST API (Apache 2.0 License) | [[http://www.intel.com/content/www/us/en/architecture-and-technology/rack-scale-design/psme-api-specification.html|Intel RSD PSME API]] or [[https://github.com/01org/intelRSD/blob/master/PSME/application-ref/include/psme/rest-ref/metadata/xml/EthernetSwitch.xml|GitHub]] | currently not in official Redfish API |
 +| PCIe Switch | PCIeSwitch v0.9.0 (work in progress) | [[http://www.dmtf.org/sites/default/files/standards/documents/DSP8010_WIP_2016.0.9a.zip|Redfish PCIe and FW Update Schemas (ZIP file)]] | maybe treated transparently \\ not officially released yet (work in progress) |
 +| Crosspoint Switch |  |  | maybe treated transparently |
 +| Composed Node | ComposedNode from Intel PSME REST API (Apache 2.0 License) | [[http://www.intel.com/content/www/us/en/architecture-and-technology/rack-scale-design/psme-api-specification.html|Intel RSD PSME API]] or [[https://github.com/01org/intelRSD/blob/master/PSME/application-ref/include/psme/rest-ref/metadata/xml/ComposedNode.xml|GitHub]] | to be checked if it really fits our needs |
 +
 +===== Endpoint Definition =====
 +
 +^ URI ^ Resource ^ Description ^
 +| [[documentation:redfish_api:protocol_version|/redfish]] |  | Provides the protocol version |
 +| [[documentation:redfish_api:service_root|/redfish/v1]] | ServiceRoot | Root Redfish service |
 +| [[documentation:redfish_api:metadata|/redfish/v1/$metadata]] |  | Metadata document, describes the resources available at the root, and references additional metadata documents |
 +| [[documentation:redfish_api:odata|/redfish/v1/odata]] |  | OData service document, provides a standard format for enumerating the resources exposed by the service |
 +| [[documentation:redfish_api:account_service|/redfish/v1/AccountService]] | AccountService | Resource for managing accounts |
 +| [[documentation:redfish_api:session_service|/redfish/v1/SessionService]] | SessionService | Resource for managing sessions |
 +| [[documentation:redfish_api:manager_collection|/redfish/v1/Managers]] | ManagerCollection | A Collection of Manager resource instances |
 +| [[documentation:redfish_api:chassis_collection|/redfish/v1/Chassis]] | ChassisCollection | A Collection of Chassis resource instances |
 +| [[documentation:redfish_api:system_collection|/redfish/v1/Systems]] | ComputerSystemCollection | A Collection of ComputerSystem resource instances |
 +| [[documentation:redfish_api:ethernet_switch_collection|/redfish/v1/EthernetSwitches]] | EthernetSwitchCollection | A Collection of EthernetSwitch resource instances |
 +
 +===== Schema Definition =====
 +
 +<WRAP group><WRAP quarter column>
 +  * [[documentation:redfish_api:schema_definition#accountservice|AccountService]]
 +  * [[documentation:redfish_api:schema_definition#actioninfo|ActionInfo]]
 +  * [[documentation:redfish_api:schema_definition#attributeregistry|AttributeRegistry]]
 +  * [[documentation:redfish_api:schema_definition#bios|Bios]]
 +  * [[documentation:redfish_api:schema_definition#chassis|Chassis]]
 +  * [[documentation:redfish_api:schema_definition#chassiscollection|ChassisCollection]]
 +  * [[documentation:redfish_api:schema_definition#classofservice|ClassOfService]]
 +  * [[documentation:redfish_api:schema_definition#classofservicecollection|ClassOfServiceCollection]]
 +  * [[documentation:redfish_api:schema_definition#computersystem|ComputerSystem]]
 +  * [[documentation:redfish_api:schema_definition#computersystemcollection|ComputerSystemCollection]]
 +  * [[documentation:redfish_api:schema_definition#dataprotectionloscapabilities|DataProtectionLoSCapabilities]]
 +  * [[documentation:redfish_api:schema_definition#datasecurityloscapabilities|DataSecurityLoSCapabilities]]
 +  * [[documentation:redfish_api:schema_definition#datastorageloscapabilities|DataStorageLoSCapabilities]]
 +  * [[documentation:redfish_api:schema_definition#drive|Drive]]
 +  * [[documentation:redfish_api:schema_definition#drivecollection|DriveCollection]]
 +  * [[documentation:redfish_api:schema_definition#endpoint|Endpoint]]
 +  * [[documentation:redfish_api:schema_definition#endpointcollection|EndpointCollection]]
 +  * [[documentation:redfish_api:schema_definition#endpointgroup|EndpointGroup]]
 +  * [[documentation:redfish_api:schema_definition#endpointgroupcollection|EndpointGroupCollection]]
 +  * [[documentation:redfish_api:schema_definition#ethernetinterface|EthernetInterface]]
 +  * [[documentation:redfish_api:schema_definition#ethernetinterfacecollection|EthernetInterfaceCollection]]
 +  * [[documentation:redfish_api:schema_definition#event|Event]]
 +  * [[documentation:redfish_api:schema_definition#eventdestination|EventDestination]]
 +  * [[documentation:redfish_api:schema_definition#eventdestinationcollection|EventDestinationCollection]]
 +  * [[documentation:redfish_api:schema_definition#eventservice|EventService]]
 +  * [[documentation:redfish_api:schema_definition#fabric|Fabric]]
 +  * [[documentation:redfish_api:schema_definition#fabriccollection|FabricCollection]]
 +  * [[documentation:redfish_api:schema_definition#fileshare|FileShare]]
 +</WRAP><WRAP quarter column>
 +  * [[documentation:redfish_api:schema_definition#filesystem|FileSystem]]
 +  * [[documentation:redfish_api:schema_definition#filesystemcollection|FileSystemCollection]]
 +  * [[documentation:redfish_api:schema_definition#hostinterface|HostInterface]]
 +  * [[documentation:redfish_api:schema_definition#hostinterfacecollection|HostInterfaceCollection]]
 +  * [[documentation:redfish_api:schema_definition#hostedstorageservices|HostedStorageServices]]
 +  * [[documentation:redfish_api:schema_definition#ioconnectivityloscapabilities|IOConnectivityLoSCapabilities]]
 +  * [[documentation:redfish_api:schema_definition#ioperformanceloscapabilities|IOPerformanceLoSCapabilities]]
 +  * [[documentation:redfish_api:schema_definition#jsonschemafile|JsonSchemaFile]]
 +  * [[documentation:redfish_api:schema_definition#jsonschemafilecollection|JsonSchemaFileCollection]]
 +  * [[documentation:redfish_api:schema_definition#logentry|LogEntry]]
 +  * [[documentation:redfish_api:schema_definition#logentrycollection|LogEntryCollection]]
 +  * [[documentation:redfish_api:schema_definition#logservice|LogService]]
 +  * [[documentation:redfish_api:schema_definition#logservicecollection|LogServiceCollection]]
 +  * [[documentation:redfish_api:schema_definition#manager|Manager]]
 +  * [[documentation:redfish_api:schema_definition#manageraccount|ManagerAccount]]
 +  * [[documentation:redfish_api:schema_definition#manageraccountcollection|ManagerAccountCollection]]
 +  * [[documentation:redfish_api:schema_definition#managercollection|ManagerCollection]]
 +  * [[documentation:redfish_api:schema_definition#managernetworkprotocol|ManagerNetworkProtocol]]
 +  * [[documentation:redfish_api:schema_definition#memory|Memory]]
 +  * [[documentation:redfish_api:schema_definition#memorychunks|MemoryChunks]]
 +  * [[documentation:redfish_api:schema_definition#memorychunkscollection|MemoryChunksCollection]]
 +  * [[documentation:redfish_api:schema_definition#memorycollection|MemoryCollection]]
 +  * [[documentation:redfish_api:schema_definition#memorydomain|MemoryDomain]]
 +  * [[documentation:redfish_api:schema_definition#memorydomaincollection|MemoryDomainCollection]]
 +  * [[documentation:redfish_api:schema_definition#memorymetrics|MemoryMetrics]]
 +  * [[documentation:redfish_api:schema_definition#messageregistry|MessageRegistry]]
 +  * [[documentation:redfish_api:schema_definition#messageregistrycollection|MessageRegistryCollection]]
 +  * [[documentation:redfish_api:schema_definition#messageregistryfile|MessageRegistryFile]]
 +</WRAP><WRAP quarter column>
 +  * [[documentation:redfish_api:schema_definition#messageregistryfilecollection|MessageRegistryFileCollection]]
 +  * [[documentation:redfish_api:schema_definition#networkadapter|NetworkAdapter]]
 +  * [[documentation:redfish_api:schema_definition#networkadaptercollection|NetworkAdapterCollection]]
 +  * [[documentation:redfish_api:schema_definition#networkdevicefunction|NetworkDeviceFunction]]
 +  * [[documentation:redfish_api:schema_definition#networkdevicefunctioncollection|NetworkDeviceFunctionCollection]]
 +  * [[documentation:redfish_api:schema_definition#networkinterface|NetworkInterface]]
 +  * [[documentation:redfish_api:schema_definition#networkinterfacecollection|NetworkInterfaceCollection]]
 +  * [[documentation:redfish_api:schema_definition#networkport|NetworkPort]]
 +  * [[documentation:redfish_api:schema_definition#networkportcollection|NetworkPortCollection]]
 +  * [[documentation:redfish_api:schema_definition#pciedevice|PCIeDevice]]
 +  * [[documentation:redfish_api:schema_definition#pciefunction|PCIeFunction]]
 +  * [[documentation:redfish_api:schema_definition#port|Port]]
 +  * [[documentation:redfish_api:schema_definition#portcollection|PortCollection]]
 +  * [[documentation:redfish_api:schema_definition#power|Power]]
 +  * [[documentation:redfish_api:schema_definition#privilegeregistry|PrivilegeRegistry]]
 +  * [[documentation:redfish_api:schema_definition#processor|Processor]]
 +  * [[documentation:redfish_api:schema_definition#processorcollection|ProcessorCollection]]
 +  * [[documentation:redfish_api:schema_definition#role|Role]]
 +  * [[documentation:redfish_api:schema_definition#rolecollection|RoleCollection]]
 +  * [[documentation:redfish_api:schema_definition#secureboot|SecureBoot]]
 +  * [[documentation:redfish_api:schema_definition#serialinterface|SerialInterface]]
 +  * [[documentation:redfish_api:schema_definition#serialinterfacecollection|SerialInterfaceCollection]]
 +  * [[documentation:redfish_api:schema_definition#serviceroot|ServiceRoot]]
 +  * [[documentation:redfish_api:schema_definition#session|Session]]
 +  * [[documentation:redfish_api:schema_definition#sessioncollection|SessionCollection]]
 +  * [[documentation:redfish_api:schema_definition#sessionservice|SessionService]]
 +  * [[documentation:redfish_api:schema_definition#simplestorage|SimpleStorage]]
 +  * [[documentation:redfish_api:schema_definition#simplestoragecollection|SimpleStorageCollection]]
 +</WRAP><WRAP quarter column>
 +  * [[documentation:redfish_api:schema_definition#softwareinventory|SoftwareInventory]]
 +  * [[documentation:redfish_api:schema_definition#softwareinventorycollection|SoftwareInventoryCollection]]
 +  * [[documentation:redfish_api:schema_definition#storage|Storage]]
 +  * [[documentation:redfish_api:schema_definition#storagecollection|StorageCollection]]
 +  * [[documentation:redfish_api:schema_definition#storagegroup|StorageGroup]]
 +  * [[documentation:redfish_api:schema_definition#storagegroupcollection|StorageGroupCollection]]
 +  * [[documentation:redfish_api:schema_definition#storagepool|StoragePool]]
 +  * [[documentation:redfish_api:schema_definition#storagepoolcollection|StoragePoolCollection]]
 +  * [[documentation:redfish_api:schema_definition#storageservice|StorageService]]
 +  * [[documentation:redfish_api:schema_definition#storageservicecollection|StorageServiceCollection]]
 +  * [[documentation:redfish_api:schema_definition#storagesystemcollection|StorageSystemCollection]]
 +  * [[documentation:redfish_api:schema_definition#switch|Switch]]
 +  * [[documentation:redfish_api:schema_definition#switchcollection|SwitchCollection]]
 +  * [[documentation:redfish_api:schema_definition#task|Task]]
 +  * [[documentation:redfish_api:schema_definition#taskcollection|TaskCollection]]
 +  * [[documentation:redfish_api:schema_definition#taskservice|TaskService]]
 +  * [[documentation:redfish_api:schema_definition#thermal|Thermal]]
 +  * [[documentation:redfish_api:schema_definition#updateservice|UpdateService]]
 +  * [[documentation:redfish_api:schema_definition#vlannetworkinterface|VLanNetworkInterface]]
 +  * [[documentation:redfish_api:schema_definition#vlannetworkinterfacecollection|VLanNetworkInterfaceCollection]]
 +  * [[documentation:redfish_api:schema_definition#virtualmedia|VirtualMedia]]
 +  * [[documentation:redfish_api:schema_definition#virtualmediacollection|VirtualMediaCollection]]
 +  * [[documentation:redfish_api:schema_definition#volume|Volume]]
 +  * [[documentation:redfish_api:schema_definition#volumecollection|VolumeCollection]]
 +  * [[documentation:redfish_api:schema_definition#zone|Zone]]
 +  * [[documentation:redfish_api:schema_definition#zonecollection|ZoneCollection]]
 +</WRAP></WRAP>