From 2fbbe54642d123da3e1afc1b95345a9668f399c1 Mon Sep 17 00:00:00 2001 From: "henrik.larsen@dcsa.org" Date: Fri, 24 Oct 2025 10:35:16 +0200 Subject: [PATCH 1/6] OVS 3.0: SD-2532: Create "What's New" --- ovs/v3/README.md | 48 +++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/ovs/v3/README.md b/ovs/v3/README.md index 8e92f43a2..1ea84803e 100644 --- a/ovs/v3/README.md +++ b/ovs/v3/README.md @@ -1,15 +1,54 @@ ## DCSA OVS API -The DCSA OVS API is documented on [**OVS SwaggerHub**](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS). +The DCSA OVS API is documented on [**SwaggerHub**](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS). The primary purpose of this API is to specify endPoints for schedules shared between Vessel Partners. -## [Release v3.0.0 (15 January 2024)](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS/3.0.0-Beta-2) +[Release v3.0.1 (TBD)](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS/3.0.1) --- +A minor update to improve the usage of OVS. + +Bigger changes: +- added a `MMSINumber` filter to the GET endPoint +- added a `vesselOperatorSMDGLinerCode` filter to the GET endPoint +- removed the `ISO 8601` reference in `startDate` and `endDate` descriptions +- added a `cursor` query parameter to the GET endPoint for paginated results +- changed the requirements for the `API-Version` header. Going forward the entire version (SemVer) should be included and not only the major version. This will be used for provider to know consumer version. +- `Next-Page-Cursor` header added to `200` (Ok) responses +- description modified for `vesselIMONumber` in case the `VesselSchedule` refers to a "non-dummy-vessel". The condition has been modified and the `vesselIMONumber` is no longer mandatory - a `MMSINumber` can also be provided. +- `MMSINumber` added next to `vesselIMONumber` +- `vesselName` description improved to standardize dummyVessel names +- `isDummyVessel` description improved to mention `vesselName` usage to make dummy vessel unique +- `9999R` to be used as placeholder when `carrierImportVoyageNumber` is unknown +- `statusCode` in `TransportCall` object **deprecated** - use `statusCodes` instead +- `statusCodes` added to `TransportCall` and to be used instead of `statusCode` +- `delayReasonCode` in `Timestamp` object **deprecated** - use `delayReasonCodes` instead +- `delayReasonCodes` added to `Timestamp` and to be used instead of `delayReasonCode` + +Minor changes: +- improved layout of the descriptions +- updated the 'Contact us' link +- removed the `servers` as it was wrongly added +- removed `requird=false` on queryParameters as this is default +- added `operationId` to the GET endPoint +- improved the `limit` query parameter description +- improved error examples +- description added to `ServiceSchedule`, `VesselSchedule` +- improved `title` in objects where a space was missing +- GitHub reference removed from `eventTypeCode` property +- `eventClassifierCode` description updated +- `ISO 8601` reference removed from `errorDateTime` property in the `ErrorResponse` object +- removed unused parameter declarations + + +[Release v3.0.0 (15 January 2024)](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS/3.0.0) +--- +Release of OVS 3.0.0 - Aligns with v3.0.0 Beta 2. -## [Release v3.0.0 Beta 2 (15 January 2024)](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS/3.0.0-Beta-2) + +[Release v3.0.0 Beta 2 (15 January 2024)](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS/3.0.0-Beta-2) --- - Description updated. - carrierServiceName added as a queryParameter @@ -21,8 +60,7 @@ The primary purpose of this API is to specify endPoints for schedules shared bet - Error schema updated. - -## [Release v3.0.0 Beta 1 (30 June 2022)](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS/3.0.0-Beta-1) +[Release v3.0.0 Beta 1 (30 June 2022)](https://app.swaggerhub.com/apis-docs/dcsaorg/DCSA_OVS/3.0.0-Beta-1) --- This API primarily defines endPoints and otherwise uses the following Domains: - Event Domain From 6c1790f442692f1966fce4a7e8f5f5b938257f8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Helm=C3=B8=20Larsen?= Date: Fri, 24 Oct 2025 11:35:42 +0200 Subject: [PATCH 2/6] Update ovs/v3/README.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- ovs/v3/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovs/v3/README.md b/ovs/v3/README.md index 1ea84803e..b0f1f03cf 100644 --- a/ovs/v3/README.md +++ b/ovs/v3/README.md @@ -29,7 +29,7 @@ Minor changes: - improved layout of the descriptions - updated the 'Contact us' link - removed the `servers` as it was wrongly added -- removed `requird=false` on queryParameters as this is default +- removed `required=false` on queryParameters as this is default - added `operationId` to the GET endPoint - improved the `limit` query parameter description - improved error examples From 852e7c3661feb105e1f298aa72c535b09e3ec918 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Helm=C3=B8=20Larsen?= Date: Fri, 24 Oct 2025 11:42:54 +0200 Subject: [PATCH 3/6] Update README.md --- ovs/v3/README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/ovs/v3/README.md b/ovs/v3/README.md index b0f1f03cf..2c96c7a9d 100644 --- a/ovs/v3/README.md +++ b/ovs/v3/README.md @@ -9,27 +9,27 @@ The primary purpose of this API is to specify endPoints for schedules shared bet A minor update to improve the usage of OVS. Bigger changes: -- added a `MMSINumber` filter to the GET endPoint +- added an `MMSINumber` filter to the GET endPoint - added a `vesselOperatorSMDGLinerCode` filter to the GET endPoint - removed the `ISO 8601` reference in `startDate` and `endDate` descriptions - added a `cursor` query parameter to the GET endPoint for paginated results -- changed the requirements for the `API-Version` header. Going forward the entire version (SemVer) should be included and not only the major version. This will be used for provider to know consumer version. +- changed the requirements for the `API-Version` header. Going forward, the entire version (SemVer) should be included - not only the major version. This enables the provider to identify the consumer’s version. - `Next-Page-Cursor` header added to `200` (Ok) responses -- description modified for `vesselIMONumber` in case the `VesselSchedule` refers to a "non-dummy-vessel". The condition has been modified and the `vesselIMONumber` is no longer mandatory - a `MMSINumber` can also be provided. +- description modified for `vesselIMONumber` in case the `VesselSchedule` refers to a non-dummy-vessel. The condition has been modified and the `vesselIMONumber` is no longer mandatory - a `MMSINumber` can also be provided. - `MMSINumber` added next to `vesselIMONumber` -- `vesselName` description improved to standardize dummyVessel names -- `isDummyVessel` description improved to mention `vesselName` usage to make dummy vessel unique -- `9999R` to be used as placeholder when `carrierImportVoyageNumber` is unknown +- `vesselName` description improved to standardize dummy vessel names +- `isDummyVessel` description improved to mention `vesselName` usage to make the dummy vessel unique +- `9999R` is to be used as placeholder when `carrierImportVoyageNumber` is unknown - `statusCode` in `TransportCall` object **deprecated** - use `statusCodes` instead - `statusCodes` added to `TransportCall` and to be used instead of `statusCode` - `delayReasonCode` in `Timestamp` object **deprecated** - use `delayReasonCodes` instead - `delayReasonCodes` added to `Timestamp` and to be used instead of `delayReasonCode` Minor changes: -- improved layout of the descriptions +- improved layout of descriptions - updated the 'Contact us' link - removed the `servers` as it was wrongly added -- removed `required=false` on queryParameters as this is default +- removed `required=false` from query parameters, as this is the default - added `operationId` to the GET endPoint - improved the `limit` query parameter description - improved error examples From 0761b383c14d60873d967013956f13b67fc2514f Mon Sep 17 00:00:00 2001 From: "henrik.larsen@dcsa.org" Date: Wed, 29 Oct 2025 04:48:14 +0100 Subject: [PATCH 4/6] Update according to comments --- ovs/v3/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ovs/v3/README.md b/ovs/v3/README.md index 2c96c7a9d..c18cb87af 100644 --- a/ovs/v3/README.md +++ b/ovs/v3/README.md @@ -16,14 +16,14 @@ Bigger changes: - changed the requirements for the `API-Version` header. Going forward, the entire version (SemVer) should be included - not only the major version. This enables the provider to identify the consumer’s version. - `Next-Page-Cursor` header added to `200` (Ok) responses - description modified for `vesselIMONumber` in case the `VesselSchedule` refers to a non-dummy-vessel. The condition has been modified and the `vesselIMONumber` is no longer mandatory - a `MMSINumber` can also be provided. -- `MMSINumber` added next to `vesselIMONumber` +- `MMSINumber` added next to `vesselIMONumber`. This allows carriers to provide an `MMSInumber` when available, whether or not an `vesselIMOnumber` is provided. - `vesselName` description improved to standardize dummy vessel names - `isDummyVessel` description improved to mention `vesselName` usage to make the dummy vessel unique - `9999R` is to be used as placeholder when `carrierImportVoyageNumber` is unknown - `statusCode` in `TransportCall` object **deprecated** - use `statusCodes` instead -- `statusCodes` added to `TransportCall` and to be used instead of `statusCode` +- `statusCodes` added to `TransportCall` and to be used instead of `statusCode`. This allows OVS implementers to submit multiple statuses for a transport call, reflecting real-world scenarios where more than one status may apply. - `delayReasonCode` in `Timestamp` object **deprecated** - use `delayReasonCodes` instead -- `delayReasonCodes` added to `Timestamp` and to be used instead of `delayReasonCode` +- `delayReasonCodes` added to `Timestamp` and to be used instead of `delayReasonCode`. This allows OVS implementers to submit multiple delay reasons for a timestamp, reflecting real-world scenarios where more than one cause may apply. Minor changes: - improved layout of descriptions @@ -36,7 +36,7 @@ Minor changes: - description added to `ServiceSchedule`, `VesselSchedule` - improved `title` in objects where a space was missing - GitHub reference removed from `eventTypeCode` property -- `eventClassifierCode` description updated +- `eventClassifierCode` description updated. Additional guidance provided in the API on when to send planned, estimated, and actual timestamps, clarifying semantics so implementers can align expectations with partners. - `ISO 8601` reference removed from `errorDateTime` property in the `ErrorResponse` object - removed unused parameter declarations From ac60bab7e3ec5792509aaac8d5cf6e3199e799c2 Mon Sep 17 00:00:00 2001 From: "henrik.larsen@dcsa.org" Date: Wed, 29 Oct 2025 04:59:54 +0100 Subject: [PATCH 5/6] Update according to review comments --- ovs/v3/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovs/v3/README.md b/ovs/v3/README.md index c18cb87af..955d136e1 100644 --- a/ovs/v3/README.md +++ b/ovs/v3/README.md @@ -17,7 +17,7 @@ Bigger changes: - `Next-Page-Cursor` header added to `200` (Ok) responses - description modified for `vesselIMONumber` in case the `VesselSchedule` refers to a non-dummy-vessel. The condition has been modified and the `vesselIMONumber` is no longer mandatory - a `MMSINumber` can also be provided. - `MMSINumber` added next to `vesselIMONumber`. This allows carriers to provide an `MMSInumber` when available, whether or not an `vesselIMOnumber` is provided. -- `vesselName` description improved to standardize dummy vessel names +- `vesselName` description improved with recommedation to standardize dummy vessels names - `isDummyVessel` description improved to mention `vesselName` usage to make the dummy vessel unique - `9999R` is to be used as placeholder when `carrierImportVoyageNumber` is unknown - `statusCode` in `TransportCall` object **deprecated** - use `statusCodes` instead From 196d8efea90978906e9bb32377c65171e9670b79 Mon Sep 17 00:00:00 2001 From: "henrik.larsen@dcsa.org" Date: Wed, 29 Oct 2025 05:00:43 +0100 Subject: [PATCH 6/6] Updated according to review comments --- ovs/v3/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovs/v3/README.md b/ovs/v3/README.md index 955d136e1..b52069f93 100644 --- a/ovs/v3/README.md +++ b/ovs/v3/README.md @@ -19,7 +19,7 @@ Bigger changes: - `MMSINumber` added next to `vesselIMONumber`. This allows carriers to provide an `MMSInumber` when available, whether or not an `vesselIMOnumber` is provided. - `vesselName` description improved with recommedation to standardize dummy vessels names - `isDummyVessel` description improved to mention `vesselName` usage to make the dummy vessel unique -- `9999R` is to be used as placeholder when `carrierImportVoyageNumber` is unknown +- `9999R` is to be used as placeholder when `carrierImportVoyageNumber` is unknown or not applicable. This allows carriers to provide a pseudo import voyage number in edge cases (e.g., dry dock) without failing validation on the required field. - `statusCode` in `TransportCall` object **deprecated** - use `statusCodes` instead - `statusCodes` added to `TransportCall` and to be used instead of `statusCode`. This allows OVS implementers to submit multiple statuses for a transport call, reflecting real-world scenarios where more than one status may apply. - `delayReasonCode` in `Timestamp` object **deprecated** - use `delayReasonCodes` instead