|
| 1 | +# Changelog: JSON for IO-Link REST API Specification |
| 2 | + |
| 3 | +## Symbols and abbreviated terms |
| 4 | + |
| 5 | +- M/O/C - Mandatory/Optional/Conditional |
| 6 | + |
| 7 | +## Version 2.0.0 |
| 8 | + |
| 9 | +### Introduced features |
| 10 | + |
| 11 | +- Wireless extension according to *IO-Link Wireless System Extensions V1.1.3 - Order No: 10.112* |
| 12 | +- IO-Link Device FW Update extension, Host-side protocol. Based on *IO-Link Profile BLOBs & FW-Update Version 1.2 - Order No: 10.082* |
| 13 | +- Power supply monitoring. |
| 14 | +- Security scheme suggestions. While the selected scheme and the way of restricting requests are the responsibility of the vendor. It is recommended to limit access to writable endpoints. |
| 15 | + |
| 16 | +### Additions |
| 17 | + |
| 18 | +#### OpenAPI 3 document |
| 19 | + |
| 20 | +New endpoints have been added to the existing ones. |
| 21 | +Endpoints marked as M must be implemented. |
| 22 | +Mandatory endpoint with a note must be implemented if the indicated optional feature is available on the gateway (GET /gateway/capabilities) or applies for that Master/Port. |
| 23 | + |
| 24 | +| Endpoint | Description | M/O/C | |
| 25 | +|---|---|---| |
| 26 | +| *[GET] /openapi* | Retrieves the OpenAPI interface description. | M | |
| 27 | +| *[GET] /apiversion* | Retrieves the REST interface version. | M | |
| 28 | +| *[GET] /gateway/diagnosis* | Retrieves the pending events. | M | |
| 29 | +| *[GET] /gateway/monitor* | Retrieves current and voltage values of the gateway. | O | |
| 30 | +| *[POST] /mqtt/topics/{topicId}* | Changes or deactivates a specific MQTT topic. | M - MQTT support | |
| 31 | +| *[GET] /masters/{masterNumber}/capabilities* | Separate response schema for IO-Link Wireless Master. | M - For Wireless Masters | |
| 32 | +| *[GET] /masters/{masterNumber}/configuration* | Reads IO-Link Wireless Master related configuration. | M - For Wireless Masters | |
| 33 | +| *[POST] /masters/{masterNumber}/configuration* | Writes IO-Link Wireless Master related configuration. | M - For Wireless Masters | |
| 34 | +| *[GET] /masters/{masterNumber}/trackstatus* | Reads the actual Track status of the specified Wireless-Master. | M - For Wireless Masters | |
| 35 | +| *[GET] /masters/{masterNumber}/scan* | Handles Wireless Master track scanning procedure. | M - For Wireless Masters | |
| 36 | +| *[POST] /masters/{masterNumber}/scan* | Handles Wireless Master track scanning procedure. | M - For Wireless Masters | |
| 37 | +| *[POST] /masters/{masterNumber}/rawsmi* | Sends an arbitrary SMI message. | O | |
| 38 | +| *[POST] /masters/{masterNumber}/ports/{portNumber}/pairing* | Pairs a Wireless-Device with the specified Wireless-Port. | M - For Wireless Ports | |
| 39 | +| *[GET] /masters/{masterNumber}/ports/{portNumber}/monitor* | Reads current and voltage or wireless info (depends on the Port type). | O - For Wired Ports / M - For Wireless Ports | |
| 40 | +| *[GET] /masters/{masterNumber}/ports/{portNumber}/power* | Reads the current power mode of the specified port. | C - For Class A with PortPowerOffOn or Class B Ports | |
| 41 | +| *[POST] /masters/{masterNumber}/ports/{portNumber}/power* | Sets the power mode of the specified port. | C - For Class A with PortPowerOffOn or Class B Ports| |
| 42 | +| *[GET] /devices/{deviceAlias}/fwupdate* | Performs Device FW Update procedure. | M - Device FW Update support | |
| 43 | +| *[POST] /devices/{deviceAlias}/fwupdate* | Performs Device FW Update procedure. | M - Device FW Update support | |
| 44 | + |
| 45 | +##### Additions affecting each endpoint |
| 46 | + |
| 47 | +- Added HTTP 401 status code as a possible response. |
| 48 | +- Updated error schemas for 4xx/5xx codes; error codes now part of schema. |
| 49 | +- Extended schemas with value range/length limitations. |
| 50 | + |
| 51 | +#### Async API document |
| 52 | + |
| 53 | +New specification available. |
| 54 | +The Async API document, called `MQTT_for_IO-Link.yaml`, which describes the MQTT interface. |
| 55 | + |
| 56 | +### Modifications |
| 57 | + |
| 58 | +Modifications are introduced in the parameter, request or response schemas for almost every endpoint. Please revise your implementation. |
| 59 | + |
| 60 | +#### OperationId and Tag |
| 61 | + |
| 62 | +Operation IDs and tags have been standardized. |
| 63 | + |
| 64 | +#### Path Structure |
| 65 | + |
| 66 | +- URL parameters *{index}*, *{parameterName}* → *{parameterIdent}* |
| 67 | +- URL parameters *{subIndex}*, *{subParameterName}* → *{subParameterIdent}* |
| 68 | +- Major versioning has been increased, all endpoints moved to basepath `/iolink/v2` from `/iolink/v1`. |
| 69 | + |
| 70 | +### Clarifications |
| 71 | + |
| 72 | +#### Optional features |
| 73 | + |
| 74 | +Optional features are defined in the OpenAPI document under GET /gateway/capabilities. If an optional feature is indicated as supported all optional feature related endpoints are mandatory, unless stated otherwise. |
| 75 | + |
| 76 | +#### Discrepancies in version 1.0.0 |
| 77 | + |
| 78 | +Property names differed between the PDF and the OpenAPI document in v1.0.0. |
| 79 | + |
| 80 | +| PDF location | PDF | OpenAPI v1.0.0 | OpenAPI v2.0.0 | |
| 81 | +|-|-|-|-| |
| 82 | +| Table 38 | iolinkRevision | ioLinkRevision | iolinkRevision | |
| 83 | +| Table 54 | iolinkRevision | ioLinkRevision | iolinkRevision | |
| 84 | +| Table 60 | iolink | ioLink | iolink | |
0 commit comments