From fab03a31bb943ebf0bca6e4265751c9125a671a4 Mon Sep 17 00:00:00 2001 From: HYOJIN Date: Thu, 9 Apr 2026 15:40:49 +0900 Subject: [PATCH 1/2] =?UTF-8?q?feat(swagger):=20Swagger=20=EC=9D=91?= =?UTF-8?q?=EB=8B=B5=20=EC=8A=A4=ED=82=A4=EB=A7=88=20=EC=9E=90=EB=8F=99=20?= =?UTF-8?q?=EC=83=9D=EC=84=B1=20=EB=B0=8F=20API=20=EB=AC=B8=EC=84=9C=20?= =?UTF-8?q?=EA=B0=9C=EC=84=A0=20(#14)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 (1M context) --- frontend/src/api/bypassApi.ts | 1 + frontend/src/pages/BypassCatalog.tsx | 16 +- .../batch/global/config/SwaggerConfig.java | 73 +- .../batch/global/dto/BypassConfigRequest.java | 3 + .../global/dto/BypassConfigResponse.java | 3 + .../global/dto/bypass/APSShipResult.java | 19 + .../global/dto/bypass/ComplianceDetails.java | 83 + .../batch/global/dto/bypass/PortFacility.java | 99 + .../batch/global/dto/bypass/RiskDetails.java | 97 + .../dto/bypass/RiskWithNarrativesDetails.java | 181 + .../global/dto/bypass/TargetsParameters.java | 15 + .../batch/global/dto/bypass/sTargetCount.java | 17 + .../batch/global/model/BypassApiConfig.java | 6 + .../web/ais/controller/AisController.java | 50 + .../ais/service/GetTargetCountService.java | 31 + .../controller/ComplianceController.java | 14 +- .../service/CompliancesByImosService.java | 2 +- .../controller/FacilityController.java | 45 + .../web/facility/service/PortsService.java | 31 + .../web/risk/controller/RiskController.java | 24 +- .../web/risk/service/RisksByImosService.java | 2 +- .../service/UpdatedComplianceListService.java | 2 +- .../web/ship/controller/ShipController.java | 14 +- .../GetShipDataByIHSLRorIMOService.java | 2 +- .../batch/service/BypassCodeGenerator.java | 111 +- .../batch/service/BypassConfigService.java | 3 + .../batch/service/SwaggerSchemaGenerator.java | 252 + .../resources/swagger/swagger_aisapi.json | 3853 +++++ .../resources/swagger/swagger_shipsapi.json | 11075 +++++++++++++ .../swagger/swagger_webservices.json | 13363 ++++++++++++++++ 30 files changed, 29442 insertions(+), 45 deletions(-) create mode 100644 src/main/java/com/snp/batch/global/dto/bypass/APSShipResult.java create mode 100644 src/main/java/com/snp/batch/global/dto/bypass/ComplianceDetails.java create mode 100644 src/main/java/com/snp/batch/global/dto/bypass/PortFacility.java create mode 100644 src/main/java/com/snp/batch/global/dto/bypass/RiskDetails.java create mode 100644 src/main/java/com/snp/batch/global/dto/bypass/RiskWithNarrativesDetails.java create mode 100644 src/main/java/com/snp/batch/global/dto/bypass/TargetsParameters.java create mode 100644 src/main/java/com/snp/batch/global/dto/bypass/sTargetCount.java create mode 100644 src/main/java/com/snp/batch/jobs/web/ais/controller/AisController.java create mode 100644 src/main/java/com/snp/batch/jobs/web/ais/service/GetTargetCountService.java create mode 100644 src/main/java/com/snp/batch/jobs/web/facility/controller/FacilityController.java create mode 100644 src/main/java/com/snp/batch/jobs/web/facility/service/PortsService.java create mode 100644 src/main/java/com/snp/batch/service/SwaggerSchemaGenerator.java create mode 100644 src/main/resources/swagger/swagger_aisapi.json create mode 100644 src/main/resources/swagger/swagger_shipsapi.json create mode 100644 src/main/resources/swagger/swagger_webservices.json diff --git a/frontend/src/api/bypassApi.ts b/frontend/src/api/bypassApi.ts index 1fc943d..d034062 100644 --- a/frontend/src/api/bypassApi.ts +++ b/frontend/src/api/bypassApi.ts @@ -39,6 +39,7 @@ export interface BypassConfigResponse { description: string; generated: boolean; generatedAt: string | null; + responseSchemaClass: string | null; createdAt: string; updatedAt: string; params: BypassParamDto[]; diff --git a/frontend/src/pages/BypassCatalog.tsx b/frontend/src/pages/BypassCatalog.tsx index 47c49b9..f52b0f5 100644 --- a/frontend/src/pages/BypassCatalog.tsx +++ b/frontend/src/pages/BypassCatalog.tsx @@ -14,6 +14,7 @@ interface BypassConfig { domainName: string; endpointName: string; displayName: string; + webclientBean: string; httpMethod: string; externalPath: string; description: string; @@ -36,15 +37,18 @@ const METHOD_COLORS: Record = { DELETE: 'bg-red-100 text-red-700', }; -const SWAGGER_BASE = '/snp-global/swagger-ui/index.html?urls.primaryName=3.%20Bypass%20API'; +const SWAGGER_GROUP_MAP: Record = { + maritimeApiWebClient: '3-1.%20Ships%20API', + maritimeAisApiWebClient: '3-2.%20AIS%20API', + maritimeServiceApiWebClient: '3-3.%20Web%20Services%20API', +}; function buildSwaggerDeepLink(config: BypassConfig): string { - // Swagger UI deep link: #/{Tag}/{operationId} - // Tag = domainName 첫글자 대문자 (예: compliance → Compliance) - // operationId = get{EndpointName}Data (SpringDoc 기본 패턴) + const group = SWAGGER_GROUP_MAP[config.webclientBean] ?? '3-1.%20Ships%20API'; + const base = `/snp-global/swagger-ui/index.html?urls.primaryName=${group}`; const tag = config.domainName.charAt(0).toUpperCase() + config.domainName.slice(1); const operationId = `get${config.endpointName}Data`; - return `${SWAGGER_BASE}#/${tag}/${operationId}`; + return `${base}#/${tag}/${operationId}`; } export default function BypassCatalog() { @@ -98,7 +102,7 @@ export default function BypassCatalog() {

openApi.info(new Info() - .title("Bypass Config API") - .description("Bypass API 설정 및 코드 생성 관리 API") + .title("API Config") + .description("API 설정 및 코드 생성 관리") .version("v1.0.0"))) .build(); } @Bean - @ConditionalOnProperty(name = "app.environment", havingValue = "dev", matchIfMissing = true) public GroupedOpenApi screeningGuideApi() { return GroupedOpenApi.builder() .group("4. Screening Guide") @@ -64,16 +66,59 @@ public class SwaggerConfig { } @Bean - public GroupedOpenApi bypassApi() { + public GroupedOpenApi shipsBypassApi() { + return createBypassApiGroup("3-1. Ships API", "[Ship API]", + "S&P Global Ships/Events/PSC 데이터를 제공합니다."); + } + + @Bean + public GroupedOpenApi aisBypassApi() { + return createBypassApiGroup("3-2. AIS API", "[AIS API]", + "S&P Global AIS(선박위치추적) 데이터를 제공합니다."); + } + + @Bean + public GroupedOpenApi servicesBypassApi() { + return createBypassApiGroup("3-3. Web Services API", "[Service API]", + "S&P Global Maritime Web Services 데이터를 제공합니다."); + } + + private GroupedOpenApi createBypassApiGroup(String group, String tagPrefix, String description) { return GroupedOpenApi.builder() - .group("3. Bypass API") + .group(group) .pathsToMatch("/api/**") .pathsToExclude("/api/bypass-config/**", "/api/screening-guide/**", "/api/bypass-account/**") .addOpenApiCustomizer(openApi -> { openApi.info(new Info() - .title("Bypass API") - .description("S&P Global 선박/해운 데이터를 제공합니다.") + .title(group) + .description(description) .version("v1.0.0")); + + // Tag description에 prefix가 포함된 것만 필터링 + if (openApi.getTags() != null) { + Set matchingTags = openApi.getTags().stream() + .filter(tag -> tag.getDescription() != null + && tag.getDescription().startsWith(tagPrefix)) + .map(Tag::getName) + .collect(Collectors.toSet()); + + if (openApi.getPaths() != null) { + if (matchingTags.isEmpty()) { + // 매칭 태그가 없으면 모든 경로 제거 + openApi.getPaths().clear(); + } else { + openApi.getPaths().entrySet().removeIf(entry -> { + var pathItem = entry.getValue(); + return pathItem.readOperations().stream() + .noneMatch(op -> op.getTags() != null + && op.getTags().stream().anyMatch(matchingTags::contains)); + }); + } + } + + // 매칭되지 않는 태그 제거 + openApi.getTags().removeIf(tag -> !matchingTags.contains(tag.getName())); + } }) .build(); } @@ -82,11 +127,11 @@ public class SwaggerConfig { @ConditionalOnProperty(name = "app.environment", havingValue = "dev", matchIfMissing = true) public GroupedOpenApi bypassAccountApi() { return GroupedOpenApi.builder() - .group("5. Bypass Account") + .group("5. Account Management") .pathsToMatch("/api/bypass-account/**") .addOpenApiCustomizer(openApi -> openApi.info(new Info() - .title("Bypass Account Management API") - .description("Bypass API 계정 및 신청 관리 API") + .title("Account Management API") + .description("API 계정 및 신청 관리") .version("v1.0.0"))) .build(); } @@ -123,10 +168,10 @@ public class SwaggerConfig { S&P Global Maritime 데이터 서비스 REST API 문서입니다. ### 제공 API - - **Bypass API**: S&P Global 선박/해운 데이터 조회 - - **Bypass Config API**: Bypass API 설정 관리 + - **Ships / AIS / Web Services API**: S&P Global 선박/해운 데이터 조회 + - **API Config**: API 설정 관리 - **Screening Guide API**: Risk & Compliance 스크리닝 가이드 - - **Bypass Account API**: API 계정 관리 + - **Account Management API**: API 계정 관리 ### 버전 정보 - API Version: v1.0.0 diff --git a/src/main/java/com/snp/batch/global/dto/BypassConfigRequest.java b/src/main/java/com/snp/batch/global/dto/BypassConfigRequest.java index d008ecb..ed4b224 100644 --- a/src/main/java/com/snp/batch/global/dto/BypassConfigRequest.java +++ b/src/main/java/com/snp/batch/global/dto/BypassConfigRequest.java @@ -34,6 +34,9 @@ public class BypassConfigRequest { /** 설명 */ private String description; + /** Swagger 응답 스키마 DTO 클래스 (FQCN) */ + private String responseSchemaClass; + /** 파라미터 목록 */ private List params; } diff --git a/src/main/java/com/snp/batch/global/dto/BypassConfigResponse.java b/src/main/java/com/snp/batch/global/dto/BypassConfigResponse.java index a587260..fab93cf 100644 --- a/src/main/java/com/snp/batch/global/dto/BypassConfigResponse.java +++ b/src/main/java/com/snp/batch/global/dto/BypassConfigResponse.java @@ -40,6 +40,9 @@ public class BypassConfigResponse { /** 설명 */ private String description; + /** Swagger 응답 스키마 DTO 클래스 (FQCN) */ + private String responseSchemaClass; + /** 코드 생성 완료 여부 */ private Boolean generated; diff --git a/src/main/java/com/snp/batch/global/dto/bypass/APSShipResult.java b/src/main/java/com/snp/batch/global/dto/bypass/APSShipResult.java new file mode 100644 index 0000000..640b9e3 --- /dev/null +++ b/src/main/java/com/snp/batch/global/dto/bypass/APSShipResult.java @@ -0,0 +1,19 @@ +package com.snp.batch.global.dto.bypass; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; + +/** + * S&P Global API 응답 스키마 (Swagger 문서용) + * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요. + */ +@Getter +@Schema(description = "APSShipResult") +public class APSShipResult { + @Schema(description = "apsStatus", example = "") + private String apsStatus; + @Schema(description = "shipCount", example = "0") + private Integer shipCount; + @Schema(description = "apsShipDetail", example = "") + private String apsShipDetail; +} diff --git a/src/main/java/com/snp/batch/global/dto/bypass/ComplianceDetails.java b/src/main/java/com/snp/batch/global/dto/bypass/ComplianceDetails.java new file mode 100644 index 0000000..717721f --- /dev/null +++ b/src/main/java/com/snp/batch/global/dto/bypass/ComplianceDetails.java @@ -0,0 +1,83 @@ +package com.snp.batch.global.dto.bypass; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; + +/** + * S&P Global API 응답 스키마 (Swagger 문서용) + * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요. + */ +@Getter +@Schema(description = "ComplianceDetails") +public class ComplianceDetails { + @Schema(description = "lrimoShipNo", example = "") + private String lrimoShipNo; + @Schema(description = "dateAmended", example = "") + private String dateAmended; + @Schema(description = "legalOverall", example = "0") + private Integer legalOverall; + @Schema(description = "shipBESSanctionList", example = "0") + private Integer shipBESSanctionList; + @Schema(description = "shipDarkActivityIndicator", example = "0") + private Integer shipDarkActivityIndicator; + @Schema(description = "shipDetailsNoLongerMaintained", example = "0") + private Integer shipDetailsNoLongerMaintained; + @Schema(description = "shipEUSanctionList", example = "0") + private Integer shipEUSanctionList; + @Schema(description = "shipFlagDisputed", example = "0") + private Integer shipFlagDisputed; + @Schema(description = "shipFlagSanctionedCountry", example = "0") + private Integer shipFlagSanctionedCountry; + @Schema(description = "shipHistoricalFlagSanctionedCountry", example = "0") + private Integer shipHistoricalFlagSanctionedCountry; + @Schema(description = "shipOFACNonSDNSanctionList", example = "0") + private Integer shipOFACNonSDNSanctionList; + @Schema(description = "shipOFACSanctionList", example = "0") + private Integer shipOFACSanctionList; + @Schema(description = "shipOFACAdvisoryList", example = "0") + private Integer shipOFACAdvisoryList; + @Schema(description = "shipOwnerOFACSSIList", example = "0") + private Integer shipOwnerOFACSSIList; + @Schema(description = "shipOwnerAustralianSanctionList", example = "0") + private Integer shipOwnerAustralianSanctionList; + @Schema(description = "shipOwnerBESSanctionList", example = "0") + private Integer shipOwnerBESSanctionList; + @Schema(description = "shipOwnerCanadianSanctionList", example = "0") + private Integer shipOwnerCanadianSanctionList; + @Schema(description = "shipOwnerEUSanctionList", example = "0") + private Integer shipOwnerEUSanctionList; + @Schema(description = "shipOwnerFATFJurisdiction", example = "0") + private Integer shipOwnerFATFJurisdiction; + @Schema(description = "shipOwnerHistoricalOFACSanctionedCountry", example = "0") + private Integer shipOwnerHistoricalOFACSanctionedCountry; + @Schema(description = "shipOwnerOFACSanctionList", example = "0") + private Integer shipOwnerOFACSanctionList; + @Schema(description = "shipOwnerOFACSanctionedCountry", example = "0") + private Integer shipOwnerOFACSanctionedCountry; + @Schema(description = "shipOwnerParentCompanyNonCompliance", example = "0") + private Integer shipOwnerParentCompanyNonCompliance; + @Schema(description = "shipOwnerParentFATFJurisdiction", example = "0") + private Integer shipOwnerParentFATFJurisdiction; + @Schema(description = "shipOwnerParentOFACSanctionedCountry", example = "0") + private Integer shipOwnerParentOFACSanctionedCountry; + @Schema(description = "shipOwnerSwissSanctionList", example = "0") + private Integer shipOwnerSwissSanctionList; + @Schema(description = "shipOwnerUAESanctionList", example = "0") + private Integer shipOwnerUAESanctionList; + @Schema(description = "shipOwnerUNSanctionList", example = "0") + private Integer shipOwnerUNSanctionList; + @Schema(description = "shipSanctionedCountryPortCallLast12m", example = "0") + private Integer shipSanctionedCountryPortCallLast12m; + @Schema(description = "shipSanctionedCountryPortCallLast3m", example = "0") + private Integer shipSanctionedCountryPortCallLast3m; + @Schema(description = "shipSanctionedCountryPortCallLast6m", example = "0") + private Integer shipSanctionedCountryPortCallLast6m; + @Schema(description = "shipSecurityLegalDisputeEvent", example = "0") + private Integer shipSecurityLegalDisputeEvent; + @Schema(description = "shipSTSPartnerNonComplianceLast12m", example = "0") + private Integer shipSTSPartnerNonComplianceLast12m; + @Schema(description = "shipSwissSanctionList", example = "0") + private Integer shipSwissSanctionList; + @Schema(description = "shipUNSanctionList", example = "0") + private Integer shipUNSanctionList; +} diff --git a/src/main/java/com/snp/batch/global/dto/bypass/PortFacility.java b/src/main/java/com/snp/batch/global/dto/bypass/PortFacility.java new file mode 100644 index 0000000..419c7d0 --- /dev/null +++ b/src/main/java/com/snp/batch/global/dto/bypass/PortFacility.java @@ -0,0 +1,99 @@ +package com.snp.batch.global.dto.bypass; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; + +/** + * S&P Global API 응답 스키마 (Swagger 문서용) + * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요. + */ +@Getter +@Schema(description = "PortFacility") +public class PortFacility { + @Schema(description = "port_ID", example = "0") + private Integer port_ID; + @Schema(description = "old_ID", example = "") + private String old_ID; + @Schema(description = "status", example = "") + private String status; + @Schema(description = "port_Name", example = "") + private String port_Name; + @Schema(description = "unlocode", example = "") + private String unlocode; + @Schema(description = "countryCode", example = "") + private String countryCode; + @Schema(description = "country_Name", example = "") + private String country_Name; + @Schema(description = "dec_Lat", example = "0.0") + private Double dec_Lat; + @Schema(description = "dec_Long", example = "0.0") + private Double dec_Long; + @Schema(description = "position", example = "") + private String position; + @Schema(description = "time_Zone", example = "") + private String time_Zone; + @Schema(description = "dayLight_Saving_Time", example = "false") + private Boolean dayLight_Saving_Time; + @Schema(description = "maximum_Draft", example = "0.0") + private Double maximum_Draft; + @Schema(description = "breakbulk_Facilities", example = "false") + private Boolean breakbulk_Facilities; + @Schema(description = "container_Facilities", example = "false") + private Boolean container_Facilities; + @Schema(description = "dry_Bulk_Facilities", example = "false") + private Boolean dry_Bulk_Facilities; + @Schema(description = "liquid_Facilities", example = "false") + private Boolean liquid_Facilities; + @Schema(description = "roRo_Facilities", example = "false") + private Boolean roRo_Facilities; + @Schema(description = "passenger_Facilities", example = "false") + private Boolean passenger_Facilities; + @Schema(description = "dry_Dock_Facilities", example = "false") + private Boolean dry_Dock_Facilities; + @Schema(description = "lpG_Facilities", example = "0") + private Integer lpG_Facilities; + @Schema(description = "lnG_Facilities", example = "0") + private Integer lnG_Facilities; + @Schema(description = "ispS_Compliant", example = "false") + private Boolean ispS_Compliant; + @Schema(description = "csI_Compliant", example = "false") + private Boolean csI_Compliant; + @Schema(description = "last_Update", example = "") + private String last_Update; + @Schema(description = "entry_Date", example = "") + private String entry_Date; + @Schema(description = "region_Name", example = "") + private String region_Name; + @Schema(description = "continent_Name", example = "") + private String continent_Name; + @Schema(description = "master_POID", example = "") + private String master_POID; + @Schema(description = "wS_Port", example = "0") + private Integer wS_Port; + @Schema(description = "max_LOA", example = "0.0") + private Double max_LOA; + @Schema(description = "max_Beam", example = "0.0") + private Double max_Beam; + @Schema(description = "max_DWT", example = "0") + private Integer max_DWT; + @Schema(description = "max_Offshore_Draught", example = "0.0") + private Double max_Offshore_Draught; + @Schema(description = "max_Offshore_LOA", example = "0.0") + private Double max_Offshore_LOA; + @Schema(description = "max_Offshore_BCM", example = "0.0") + private Double max_Offshore_BCM; + @Schema(description = "max_Offshore_DWT", example = "0.0") + private Double max_Offshore_DWT; + @Schema(description = "lnG_Bunker", example = "false") + private Boolean lnG_Bunker; + @Schema(description = "dO_Bunker", example = "false") + private Boolean dO_Bunker; + @Schema(description = "fO_Bunker", example = "false") + private Boolean fO_Bunker; + @Schema(description = "free_Trade_Zone", example = "false") + private Boolean free_Trade_Zone; + @Schema(description = "ecO_Port", example = "false") + private Boolean ecO_Port; + @Schema(description = "emission_Control_Area", example = "false") + private Boolean emission_Control_Area; +} diff --git a/src/main/java/com/snp/batch/global/dto/bypass/RiskDetails.java b/src/main/java/com/snp/batch/global/dto/bypass/RiskDetails.java new file mode 100644 index 0000000..372baca --- /dev/null +++ b/src/main/java/com/snp/batch/global/dto/bypass/RiskDetails.java @@ -0,0 +1,97 @@ +package com.snp.batch.global.dto.bypass; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; + +/** + * S&P Global API 응답 스키마 (Swagger 문서용) + * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요. + */ +@Getter +@Schema(description = "RiskDetails") +public class RiskDetails { + @Schema(description = "lrno", example = "") + private String lrno; + @Schema(description = "lastUpdated", example = "") + private String lastUpdated; + @Schema(description = "riskDataMaintained", example = "0") + private Integer riskDataMaintained; + @Schema(description = "daysSinceLastSeenOnAIS", example = "0") + private Integer daysSinceLastSeenOnAIS; + @Schema(description = "daysUnderAIS", example = "0") + private Integer daysUnderAIS; + @Schema(description = "imoCorrectOnAIS", example = "0") + private Integer imoCorrectOnAIS; + @Schema(description = "sailingUnderName", example = "0") + private Integer sailingUnderName; + @Schema(description = "anomalousMessagesFromMMSI", example = "0") + private Integer anomalousMessagesFromMMSI; + @Schema(description = "mostRecentDarkActivity", example = "0") + private Integer mostRecentDarkActivity; + @Schema(description = "portCalls", example = "0") + private Integer portCalls; + @Schema(description = "portRisk", example = "0") + private Integer portRisk; + @Schema(description = "stsOperations", example = "0") + private Integer stsOperations; + @Schema(description = "driftingHighSeas", example = "0") + private Integer driftingHighSeas; + @Schema(description = "riskEvents", example = "0") + private Integer riskEvents; + @Schema(description = "flagChanges", example = "0") + private Integer flagChanges; + @Schema(description = "flagParisMOUPerformance", example = "0") + private Integer flagParisMOUPerformance; + @Schema(description = "flagTokyoMOUPeformance", example = "0") + private Integer flagTokyoMOUPeformance; + @Schema(description = "flagUSCGMOUPerformance", example = "0") + private Integer flagUSCGMOUPerformance; + @Schema(description = "uscgQualship21", example = "0") + private Integer uscgQualship21; + @Schema(description = "timeSincePSCInspection", example = "0") + private Integer timeSincePSCInspection; + @Schema(description = "pscInspections", example = "0") + private Integer pscInspections; + @Schema(description = "pscDefects", example = "0") + private Integer pscDefects; + @Schema(description = "pscDetentions", example = "0") + private Integer pscDetentions; + @Schema(description = "currentSMCCertificate", example = "0") + private Integer currentSMCCertificate; + @Schema(description = "docChanges", example = "0") + private Integer docChanges; + @Schema(description = "currentClass", example = "0") + private Integer currentClass; + @Schema(description = "classStatusChanges", example = "0") + private Integer classStatusChanges; + @Schema(description = "pandICoverage", example = "0") + private Integer pandICoverage; + @Schema(description = "nameChanges", example = "0") + private Integer nameChanges; + @Schema(description = "gboChanges", example = "0") + private Integer gboChanges; + @Schema(description = "ageOfShip", example = "0") + private Integer ageOfShip; + @Schema(description = "iuuFishingViolation", example = "0") + private Integer iuuFishingViolation; + @Schema(description = "draughtChanges", example = "0") + private Integer draughtChanges; + @Schema(description = "mostRecentSanctionedPortCall", example = "0") + private Integer mostRecentSanctionedPortCall; + @Schema(description = "singleShipOperation", example = "0") + private Integer singleShipOperation; + @Schema(description = "fleetSafety", example = "0") + private Integer fleetSafety; + @Schema(description = "fleetPSC", example = "0") + private Integer fleetPSC; + @Schema(description = "specialSurveyOverdue", example = "0") + private Integer specialSurveyOverdue; + @Schema(description = "ownerUnknown", example = "0") + private Integer ownerUnknown; + @Schema(description = "russianPortCall", example = "0") + private Integer russianPortCall; + @Schema(description = "russianOwnerRegistration", example = "0") + private Integer russianOwnerRegistration; + @Schema(description = "russianSTS", example = "0") + private Integer russianSTS; +} diff --git a/src/main/java/com/snp/batch/global/dto/bypass/RiskWithNarrativesDetails.java b/src/main/java/com/snp/batch/global/dto/bypass/RiskWithNarrativesDetails.java new file mode 100644 index 0000000..2bdbcff --- /dev/null +++ b/src/main/java/com/snp/batch/global/dto/bypass/RiskWithNarrativesDetails.java @@ -0,0 +1,181 @@ +package com.snp.batch.global.dto.bypass; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; + +/** + * S&P Global API 응답 스키마 (Swagger 문서용) + * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요. + */ +@Getter +@Schema(description = "RiskWithNarrativesDetails") +public class RiskWithNarrativesDetails { + @Schema(description = "lrno", example = "") + private String lrno; + @Schema(description = "lastUpdated", example = "") + private String lastUpdated; + @Schema(description = "riskDataMaintained", example = "0") + private Integer riskDataMaintained; + @Schema(description = "daysSinceLastSeenOnAIS", example = "0") + private Integer daysSinceLastSeenOnAIS; + @Schema(description = "daysSinceLastSeenOnAISNarrative", example = "") + private String daysSinceLastSeenOnAISNarrative; + @Schema(description = "daysUnderAIS", example = "0") + private Integer daysUnderAIS; + @Schema(description = "daysUnderAISNarrative", example = "") + private String daysUnderAISNarrative; + @Schema(description = "imoCorrectOnAIS", example = "0") + private Integer imoCorrectOnAIS; + @Schema(description = "imoCorrectOnAISNarrative", example = "") + private String imoCorrectOnAISNarrative; + @Schema(description = "sailingUnderName", example = "0") + private Integer sailingUnderName; + @Schema(description = "sailingUnderNameNarrative", example = "") + private String sailingUnderNameNarrative; + @Schema(description = "anomalousMessagesFromMMSI", example = "0") + private Integer anomalousMessagesFromMMSI; + @Schema(description = "anomalousMessagesFromMMSINarrative", example = "") + private String anomalousMessagesFromMMSINarrative; + @Schema(description = "mostRecentDarkActivity", example = "0") + private Integer mostRecentDarkActivity; + @Schema(description = "mostRecentDarkActivityNarrative", example = "") + private String mostRecentDarkActivityNarrative; + @Schema(description = "portCalls", example = "0") + private Integer portCalls; + @Schema(description = "portCallsNarrative", example = "") + private String portCallsNarrative; + @Schema(description = "portRisk", example = "0") + private Integer portRisk; + @Schema(description = "portRiskNarrative", example = "") + private String portRiskNarrative; + @Schema(description = "stsOperations", example = "0") + private Integer stsOperations; + @Schema(description = "stsOperationsNarrative", example = "") + private String stsOperationsNarrative; + @Schema(description = "driftingHighSeas", example = "0") + private Integer driftingHighSeas; + @Schema(description = "driftingHighSeasNarrative", example = "") + private String driftingHighSeasNarrative; + @Schema(description = "riskEvents", example = "0") + private Integer riskEvents; + @Schema(description = "riskEventNarrative", example = "") + private String riskEventNarrative; + @Schema(description = "riskEventNarrativeExtended", example = "") + private String riskEventNarrativeExtended; + @Schema(description = "flagChanges", example = "0") + private Integer flagChanges; + @Schema(description = "flagChangeNarrative", example = "") + private String flagChangeNarrative; + @Schema(description = "flagParisMOUPerformance", example = "0") + private Integer flagParisMOUPerformance; + @Schema(description = "flagParisMOUPerformanceNarrative", example = "") + private String flagParisMOUPerformanceNarrative; + @Schema(description = "flagTokyoMOUPeformance", example = "0") + private Integer flagTokyoMOUPeformance; + @Schema(description = "flagTokyoMOUPeformanceNarrative", example = "") + private String flagTokyoMOUPeformanceNarrative; + @Schema(description = "flagUSCGMOUPerformance", example = "0") + private Integer flagUSCGMOUPerformance; + @Schema(description = "flagUSCGMOUPerformanceNarrative", example = "") + private String flagUSCGMOUPerformanceNarrative; + @Schema(description = "uscgQualship21", example = "0") + private Integer uscgQualship21; + @Schema(description = "uscgQualship21Narrative", example = "") + private String uscgQualship21Narrative; + @Schema(description = "timeSincePSCInspection", example = "0") + private Integer timeSincePSCInspection; + @Schema(description = "timeSincePSCInspectionNarrative", example = "") + private String timeSincePSCInspectionNarrative; + @Schema(description = "pscInspections", example = "0") + private Integer pscInspections; + @Schema(description = "pscInspectionNarrative", example = "") + private String pscInspectionNarrative; + @Schema(description = "pscDefects", example = "0") + private Integer pscDefects; + @Schema(description = "pscDefectsNarrative", example = "") + private String pscDefectsNarrative; + @Schema(description = "pscDetentions", example = "0") + private Integer pscDetentions; + @Schema(description = "pscDetentionsNarrative", example = "") + private String pscDetentionsNarrative; + @Schema(description = "currentSMCCertificate", example = "0") + private Integer currentSMCCertificate; + @Schema(description = "currentSMCCertificateNarrative", example = "") + private String currentSMCCertificateNarrative; + @Schema(description = "docChanges", example = "0") + private Integer docChanges; + @Schema(description = "docChangesNarrative", example = "") + private String docChangesNarrative; + @Schema(description = "currentClass", example = "0") + private Integer currentClass; + @Schema(description = "currentClassNarrative", example = "") + private String currentClassNarrative; + @Schema(description = "currentClassNarrativeExtended", example = "") + private String currentClassNarrativeExtended; + @Schema(description = "classStatusChanges", example = "0") + private Integer classStatusChanges; + @Schema(description = "classStatusChangesNarrative", example = "") + private String classStatusChangesNarrative; + @Schema(description = "pandICoverage", example = "0") + private Integer pandICoverage; + @Schema(description = "pandICoverageNarrative", example = "") + private String pandICoverageNarrative; + @Schema(description = "pandICoverageNarrativeExtended", example = "") + private String pandICoverageNarrativeExtended; + @Schema(description = "nameChanges", example = "0") + private Integer nameChanges; + @Schema(description = "nameChangesNarrative", example = "") + private String nameChangesNarrative; + @Schema(description = "gboChanges", example = "0") + private Integer gboChanges; + @Schema(description = "gboChangesNarrative", example = "") + private String gboChangesNarrative; + @Schema(description = "ageOfShip", example = "0") + private Integer ageOfShip; + @Schema(description = "ageofShipNarrative", example = "") + private String ageofShipNarrative; + @Schema(description = "iuuFishingViolation", example = "0") + private Integer iuuFishingViolation; + @Schema(description = "iuuFishingNarrative", example = "") + private String iuuFishingNarrative; + @Schema(description = "draughtChanges", example = "0") + private Integer draughtChanges; + @Schema(description = "draughtChangesNarrative", example = "") + private String draughtChangesNarrative; + @Schema(description = "mostRecentSanctionedPortCall", example = "0") + private Integer mostRecentSanctionedPortCall; + @Schema(description = "mostRecentSanctionedPortCallNarrative", example = "") + private String mostRecentSanctionedPortCallNarrative; + @Schema(description = "singleShipOperation", example = "0") + private Integer singleShipOperation; + @Schema(description = "singleShipOperationNarrative", example = "") + private String singleShipOperationNarrative; + @Schema(description = "fleetSafety", example = "0") + private Integer fleetSafety; + @Schema(description = "fleetSafetyNarrative", example = "") + private String fleetSafetyNarrative; + @Schema(description = "fleetPSC", example = "0") + private Integer fleetPSC; + @Schema(description = "fleetPSCNarrative", example = "") + private String fleetPSCNarrative; + @Schema(description = "specialSurveyOverdue", example = "0") + private Integer specialSurveyOverdue; + @Schema(description = "specialSurveyOverdueNarrative", example = "") + private String specialSurveyOverdueNarrative; + @Schema(description = "ownerUnknown", example = "0") + private Integer ownerUnknown; + @Schema(description = "ownerUnknownNarrative", example = "") + private String ownerUnknownNarrative; + @Schema(description = "russianPortCall", example = "0") + private Integer russianPortCall; + @Schema(description = "russianPortCallNarrative", example = "") + private String russianPortCallNarrative; + @Schema(description = "russianOwnerRegistration", example = "0") + private Integer russianOwnerRegistration; + @Schema(description = "russianOwnerRegistrationNarrative", example = "") + private String russianOwnerRegistrationNarrative; + @Schema(description = "russianSTS", example = "0") + private Integer russianSTS; + @Schema(description = "russianSTSNarrative", example = "") + private String russianSTSNarrative; +} diff --git a/src/main/java/com/snp/batch/global/dto/bypass/TargetsParameters.java b/src/main/java/com/snp/batch/global/dto/bypass/TargetsParameters.java new file mode 100644 index 0000000..5daa8b6 --- /dev/null +++ b/src/main/java/com/snp/batch/global/dto/bypass/TargetsParameters.java @@ -0,0 +1,15 @@ +package com.snp.batch.global.dto.bypass; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; + +/** + * S&P Global API 응답 스키마 (Swagger 문서용) + * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요. + */ +@Getter +@Schema(description = "TargetsParameters") +public class TargetsParameters { + @Schema(description = "sinceSeconds", example = "0") + private Integer sinceSeconds; +} diff --git a/src/main/java/com/snp/batch/global/dto/bypass/sTargetCount.java b/src/main/java/com/snp/batch/global/dto/bypass/sTargetCount.java new file mode 100644 index 0000000..aac7f21 --- /dev/null +++ b/src/main/java/com/snp/batch/global/dto/bypass/sTargetCount.java @@ -0,0 +1,17 @@ +package com.snp.batch.global.dto.bypass; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; + +/** + * S&P Global API 응답 스키마 (Swagger 문서용) + * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요. + */ +@Getter +@Schema(description = "sTargetCount") +public class sTargetCount { + @Schema(description = "apsStatus", example = "") + private String apsStatus; + @Schema(description = "targetCount", example = "0") + private Integer targetCount; +} diff --git a/src/main/java/com/snp/batch/global/model/BypassApiConfig.java b/src/main/java/com/snp/batch/global/model/BypassApiConfig.java index 1c5b64d..73bdf01 100644 --- a/src/main/java/com/snp/batch/global/model/BypassApiConfig.java +++ b/src/main/java/com/snp/batch/global/model/BypassApiConfig.java @@ -95,6 +95,12 @@ public class BypassApiConfig { @Column(name = "generated_at") private LocalDateTime generatedAt; + /** + * Swagger 응답 스키마 DTO 클래스 (FQCN, 코드 생성 시 자동 설정) + */ + @Column(name = "response_schema_class", length = 300) + private String responseSchemaClass; + /** * 생성 일시 (감사 필드) */ diff --git a/src/main/java/com/snp/batch/jobs/web/ais/controller/AisController.java b/src/main/java/com/snp/batch/jobs/web/ais/controller/AisController.java new file mode 100644 index 0000000..aa993e2 --- /dev/null +++ b/src/main/java/com/snp/batch/jobs/web/ais/controller/AisController.java @@ -0,0 +1,50 @@ +package com.snp.batch.jobs.web.ais.controller; + +import com.fasterxml.jackson.databind.JsonNode; +import com.snp.batch.common.web.controller.BaseBypassController; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import com.snp.batch.jobs.web.ais.service.GetTargetCountService; + +/** + * Ais API + * S&P Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 + */ +@RestController +@RequestMapping("/api/ais") +@RequiredArgsConstructor +@Tag(name = "Ais", description = "[AIS API] Ais API") +public class AisController extends BaseBypassController { + + private final GetTargetCountService getTargetCountService; + + @Operation( + summary = "선박 AIS 대상 수 조회", + description = "선박 AIS 대상 수 조회" + ) + @io.swagger.v3.oas.annotations.responses.ApiResponse( + responseCode = "200", + description = "선박 AIS 대상 수 조회", + content = @io.swagger.v3.oas.annotations.media.Content( + mediaType = "application/json", + array = @io.swagger.v3.oas.annotations.media.ArraySchema( + schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = com.snp.batch.global.dto.bypass.sTargetCount.class) + ) + ) + ) + @PostMapping("/GetTargetCount") + public ResponseEntity getGetTargetCountData(@io.swagger.v3.oas.annotations.parameters.RequestBody(description = "", + content = @io.swagger.v3.oas.annotations.media.Content( + mediaType = "application/json", + schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = com.snp.batch.global.dto.bypass.TargetsParameters.class))) + @RequestBody JsonNode sinceSeconds) { + return executeRaw(() -> getTargetCountService.getGetTargetCountData(sinceSeconds)); + } +} diff --git a/src/main/java/com/snp/batch/jobs/web/ais/service/GetTargetCountService.java b/src/main/java/com/snp/batch/jobs/web/ais/service/GetTargetCountService.java new file mode 100644 index 0000000..0d8ad95 --- /dev/null +++ b/src/main/java/com/snp/batch/jobs/web/ais/service/GetTargetCountService.java @@ -0,0 +1,31 @@ +package com.snp.batch.jobs.web.ais.service; + +import com.fasterxml.jackson.databind.JsonNode; +import com.snp.batch.common.web.service.BaseBypassService; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.core.ParameterizedTypeReference; +import org.springframework.stereotype.Service; +import org.springframework.web.reactive.function.client.WebClient; + +/** + * 선박 AIS 대상 수 조회 서비스 + * 외부 Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 + */ +@Service +public class GetTargetCountService extends BaseBypassService { + + public GetTargetCountService( + @Qualifier("maritimeAisApiWebClient") WebClient webClient) { + super(webClient, "/AisSvc.svc/AIS/GetTargetCount", "선박 AIS 대상 수 조회", + new ParameterizedTypeReference<>() {}, + new ParameterizedTypeReference<>() {}); + } + + /** + * 선박 AIS 대상 수 조회 데이터를 조회합니다. + */ + public JsonNode getGetTargetCountData(JsonNode sinceSeconds) { + return fetchRawPost(sinceSeconds, uri -> uri.path(getApiPath()) + .build()); + } +} diff --git a/src/main/java/com/snp/batch/jobs/web/compliance/controller/ComplianceController.java b/src/main/java/com/snp/batch/jobs/web/compliance/controller/ComplianceController.java index d4836fe..2f15671 100644 --- a/src/main/java/com/snp/batch/jobs/web/compliance/controller/ComplianceController.java +++ b/src/main/java/com/snp/batch/jobs/web/compliance/controller/ComplianceController.java @@ -14,13 +14,13 @@ import org.springframework.web.bind.annotation.RequestParam; import com.snp.batch.jobs.web.compliance.service.CompliancesByImosService; /** - * Compliance bypass API + * Compliance API * S&P Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @RestController @RequestMapping("/api/compliance") @RequiredArgsConstructor -@Tag(name = "Compliance", description = "[Service API] Compliance bypass API") +@Tag(name = "Compliance", description = "[Service API] Compliance API") public class ComplianceController extends BaseBypassController { private final CompliancesByImosService compliancesByImosService; @@ -29,6 +29,16 @@ public class ComplianceController extends BaseBypassController { summary = "IMO 기반 선박 규정준수 조회", description = "Gets details of the IMOs of ships with full compliance details that match given IMOs" ) + @io.swagger.v3.oas.annotations.responses.ApiResponse( + responseCode = "200", + description = "IMO 기반 선박 규정준수 조회", + content = @io.swagger.v3.oas.annotations.media.Content( + mediaType = "application/json", + array = @io.swagger.v3.oas.annotations.media.ArraySchema( + schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = com.snp.batch.global.dto.bypass.ComplianceDetails.class) + ) + ) + ) @GetMapping("/CompliancesByImos") public ResponseEntity getCompliancesByImosData(@Parameter(description = "Comma separated IMOs up to a total of 100", example = "9876543") @RequestParam(required = true) String imos) { diff --git a/src/main/java/com/snp/batch/jobs/web/compliance/service/CompliancesByImosService.java b/src/main/java/com/snp/batch/jobs/web/compliance/service/CompliancesByImosService.java index 3f96e32..32f91ce 100644 --- a/src/main/java/com/snp/batch/jobs/web/compliance/service/CompliancesByImosService.java +++ b/src/main/java/com/snp/batch/jobs/web/compliance/service/CompliancesByImosService.java @@ -8,7 +8,7 @@ import org.springframework.stereotype.Service; import org.springframework.web.reactive.function.client.WebClient; /** - * IMO 기반 선박 규정준수 조회 bypass 서비스 + * IMO 기반 선박 규정준수 조회 서비스 * 외부 Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @Service diff --git a/src/main/java/com/snp/batch/jobs/web/facility/controller/FacilityController.java b/src/main/java/com/snp/batch/jobs/web/facility/controller/FacilityController.java new file mode 100644 index 0000000..b3f786d --- /dev/null +++ b/src/main/java/com/snp/batch/jobs/web/facility/controller/FacilityController.java @@ -0,0 +1,45 @@ +package com.snp.batch.jobs.web.facility.controller; + +import com.fasterxml.jackson.databind.JsonNode; +import com.snp.batch.common.web.controller.BaseBypassController; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.GetMapping; +import com.snp.batch.jobs.web.facility.service.PortsService; + +/** + * Facility API + * S&P Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 + */ +@RestController +@RequestMapping("/api/facility") +@RequiredArgsConstructor +@Tag(name = "Facility", description = "[Service API] Facility API") +public class FacilityController extends BaseBypassController { + + private final PortsService portsService; + + @Operation( + summary = "항구 시설 조회", + description = "항구 시설 조회" + ) + @io.swagger.v3.oas.annotations.responses.ApiResponse( + responseCode = "200", + description = "항구 시설 조회", + content = @io.swagger.v3.oas.annotations.media.Content( + mediaType = "application/json", + array = @io.swagger.v3.oas.annotations.media.ArraySchema( + schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = com.snp.batch.global.dto.bypass.PortFacility.class) + ) + ) + ) + @GetMapping("/Ports") + public ResponseEntity getPortsData() { + return executeRaw(() -> portsService.getPortsData()); + } +} diff --git a/src/main/java/com/snp/batch/jobs/web/facility/service/PortsService.java b/src/main/java/com/snp/batch/jobs/web/facility/service/PortsService.java new file mode 100644 index 0000000..3765a45 --- /dev/null +++ b/src/main/java/com/snp/batch/jobs/web/facility/service/PortsService.java @@ -0,0 +1,31 @@ +package com.snp.batch.jobs.web.facility.service; + +import com.fasterxml.jackson.databind.JsonNode; +import com.snp.batch.common.web.service.BaseBypassService; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.core.ParameterizedTypeReference; +import org.springframework.stereotype.Service; +import org.springframework.web.reactive.function.client.WebClient; + +/** + * 항구 시설 조회 서비스 + * 외부 Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 + */ +@Service +public class PortsService extends BaseBypassService { + + public PortsService( + @Qualifier("maritimeServiceApiWebClient") WebClient webClient) { + super(webClient, "/Facilities/Ports", "항구 시설 조회", + new ParameterizedTypeReference<>() {}, + new ParameterizedTypeReference<>() {}); + } + + /** + * 항구 시설 조회 데이터를 조회합니다. + */ + public JsonNode getPortsData() { + return fetchRawGet(uri -> uri.path(getApiPath()) + .build()); + } +} diff --git a/src/main/java/com/snp/batch/jobs/web/risk/controller/RiskController.java b/src/main/java/com/snp/batch/jobs/web/risk/controller/RiskController.java index 9bbd908..e1ddb5c 100644 --- a/src/main/java/com/snp/batch/jobs/web/risk/controller/RiskController.java +++ b/src/main/java/com/snp/batch/jobs/web/risk/controller/RiskController.java @@ -15,13 +15,13 @@ import com.snp.batch.jobs.web.risk.service.RisksByImosService; import com.snp.batch.jobs.web.risk.service.UpdatedComplianceListService; /** - * Risk bypass API + * Risk API * S&P Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @RestController @RequestMapping("/api/risk") @RequiredArgsConstructor -@Tag(name = "Risk", description = "[Service API] Risk bypass API") +@Tag(name = "Risk", description = "[Service API] Risk API") public class RiskController extends BaseBypassController { private final RisksByImosService risksByImosService; @@ -31,6 +31,16 @@ public class RiskController extends BaseBypassController { summary = "IMO 기반 선박 위험지표 조회", description = "Gets details of the IMOs of all ships with risk updates as a collection" ) + @io.swagger.v3.oas.annotations.responses.ApiResponse( + responseCode = "200", + description = "IMO 기반 선박 위험지표 조회", + content = @io.swagger.v3.oas.annotations.media.Content( + mediaType = "application/json", + array = @io.swagger.v3.oas.annotations.media.ArraySchema( + schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = com.snp.batch.global.dto.bypass.RiskWithNarrativesDetails.class) + ) + ) + ) @GetMapping("/RisksByImos") public ResponseEntity getRisksByImosData(@Parameter(description = "Comma separated IMOs up to a total of 100", example = "9876543") @RequestParam(required = true) String imos) { @@ -41,6 +51,16 @@ public class RiskController extends BaseBypassController { summary = "기간 내 변경된 위험지표 조회", description = "Gets details of the IMOs of all ships with risk updates" ) + @io.swagger.v3.oas.annotations.responses.ApiResponse( + responseCode = "200", + description = "기간 내 변경된 위험지표 조회", + content = @io.swagger.v3.oas.annotations.media.Content( + mediaType = "application/json", + array = @io.swagger.v3.oas.annotations.media.ArraySchema( + schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = com.snp.batch.global.dto.bypass.RiskDetails.class) + ) + ) + ) @GetMapping("/UpdatedRiskList") public ResponseEntity getUpdatedComplianceListData(@Parameter(description = "Time/seconds are optional", example = "2026-03-30T07:01:27.000Z") @RequestParam(required = true) String fromDate, diff --git a/src/main/java/com/snp/batch/jobs/web/risk/service/RisksByImosService.java b/src/main/java/com/snp/batch/jobs/web/risk/service/RisksByImosService.java index 0496927..3ecc01b 100644 --- a/src/main/java/com/snp/batch/jobs/web/risk/service/RisksByImosService.java +++ b/src/main/java/com/snp/batch/jobs/web/risk/service/RisksByImosService.java @@ -8,7 +8,7 @@ import org.springframework.stereotype.Service; import org.springframework.web.reactive.function.client.WebClient; /** - * IMO 기반 선박 위험지표 조회 bypass 서비스 + * IMO 기반 선박 위험지표 조회 서비스 * 외부 Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @Service diff --git a/src/main/java/com/snp/batch/jobs/web/risk/service/UpdatedComplianceListService.java b/src/main/java/com/snp/batch/jobs/web/risk/service/UpdatedComplianceListService.java index dfb661b..bc0ae4c 100644 --- a/src/main/java/com/snp/batch/jobs/web/risk/service/UpdatedComplianceListService.java +++ b/src/main/java/com/snp/batch/jobs/web/risk/service/UpdatedComplianceListService.java @@ -8,7 +8,7 @@ import org.springframework.stereotype.Service; import org.springframework.web.reactive.function.client.WebClient; /** - * 기간 내 변경된 위험지표 조회 bypass 서비스 + * 기간 내 변경된 위험지표 조회 서비스 * 외부 Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @Service diff --git a/src/main/java/com/snp/batch/jobs/web/ship/controller/ShipController.java b/src/main/java/com/snp/batch/jobs/web/ship/controller/ShipController.java index dc79cde..a6e087a 100644 --- a/src/main/java/com/snp/batch/jobs/web/ship/controller/ShipController.java +++ b/src/main/java/com/snp/batch/jobs/web/ship/controller/ShipController.java @@ -14,13 +14,13 @@ import org.springframework.web.bind.annotation.RequestParam; import com.snp.batch.jobs.web.ship.service.GetShipDataByIHSLRorIMOService; /** - * Ship bypass API + * Ship API * S&P Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @RestController @RequestMapping("/api/ship") @RequiredArgsConstructor -@Tag(name = "Ship", description = "[Ship API] Ship bypass API") +@Tag(name = "Ship", description = "[Ship API] Ship API") public class ShipController extends BaseBypassController { private final GetShipDataByIHSLRorIMOService getShipDataByIHSLRorIMOService; @@ -29,6 +29,16 @@ public class ShipController extends BaseBypassController { summary = "IMO 기반 선박제원정보 조회", description = "IMO 기반 선박제원정보 조회" ) + @io.swagger.v3.oas.annotations.responses.ApiResponse( + responseCode = "200", + description = "IMO 기반 선박제원정보 조회", + content = @io.swagger.v3.oas.annotations.media.Content( + mediaType = "application/json", + array = @io.swagger.v3.oas.annotations.media.ArraySchema( + schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = com.snp.batch.global.dto.bypass.APSShipResult.class) + ) + ) + ) @GetMapping("/GetShipDataByIHSLRorIMO") public ResponseEntity getGetShipDataByIHSLRorIMOData(@Parameter(description = "", example = "9876543") @RequestParam(required = true) String ihslrOrImo) { diff --git a/src/main/java/com/snp/batch/jobs/web/ship/service/GetShipDataByIHSLRorIMOService.java b/src/main/java/com/snp/batch/jobs/web/ship/service/GetShipDataByIHSLRorIMOService.java index 04e6e57..9e8d95c 100644 --- a/src/main/java/com/snp/batch/jobs/web/ship/service/GetShipDataByIHSLRorIMOService.java +++ b/src/main/java/com/snp/batch/jobs/web/ship/service/GetShipDataByIHSLRorIMOService.java @@ -8,7 +8,7 @@ import org.springframework.stereotype.Service; import org.springframework.web.reactive.function.client.WebClient; /** - * IMO 기반 선박제원정보 조회 bypass 서비스 + * IMO 기반 선박제원정보 조회 서비스 * 외부 Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @Service diff --git a/src/main/java/com/snp/batch/service/BypassCodeGenerator.java b/src/main/java/com/snp/batch/service/BypassCodeGenerator.java index 9fdbc7f..c763124 100644 --- a/src/main/java/com/snp/batch/service/BypassCodeGenerator.java +++ b/src/main/java/com/snp/batch/service/BypassCodeGenerator.java @@ -3,6 +3,7 @@ package com.snp.batch.service; import com.snp.batch.global.dto.CodeGenerationResult; import com.snp.batch.global.model.BypassApiConfig; import com.snp.batch.global.model.BypassApiParam; +import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -11,8 +12,10 @@ import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.util.ArrayList; +import java.util.HashMap; import java.util.LinkedHashSet; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.stream.Collectors; @@ -23,8 +26,11 @@ import java.util.stream.Collectors; */ @Slf4j @Service +@RequiredArgsConstructor public class BypassCodeGenerator { + private final SwaggerSchemaGenerator swaggerSchemaGenerator; + private static final String BASE_PACKAGE = "com.snp.batch.jobs.web"; /** @@ -43,6 +49,26 @@ public class BypassCodeGenerator { List servicePaths = new ArrayList<>(); + // Generate response/request DTOs from swagger.json + Map responseSchemaMap = new HashMap<>(); + Map requestBodySchemaMap = new HashMap<>(); + for (BypassApiConfig config : configs) { + String fqcn = swaggerSchemaGenerator.generateResponseDto( + config.getWebclientBean(), config.getExternalPath(), force); + if (fqcn != null) { + responseSchemaMap.put(config.getId(), fqcn); + config.setResponseSchemaClass(fqcn); + } + // POST 엔드포인트의 requestBody DTO 생성 + if ("POST".equalsIgnoreCase(config.getHttpMethod())) { + String reqFqcn = swaggerSchemaGenerator.generateRequestBodyDto( + config.getWebclientBean(), config.getExternalPath(), force); + if (reqFqcn != null) { + requestBodySchemaMap.put(config.getId(), reqFqcn); + } + } + } + for (BypassApiConfig config : configs) { String endpointName = config.getEndpointName(); String servicePath = basePath + "/service/" + endpointName + "Service.java"; @@ -58,7 +84,7 @@ public class BypassCodeGenerator { } // Controller: 모든 엔드포인트를 합치므로 항상 재생성 - String controllerCode = generateControllerCode(domain, configs); + String controllerCode = generateControllerCode(domain, configs, responseSchemaMap, requestBodySchemaMap); String domainCapitalized = capitalize(domain); Path controllerFilePath = writeFile( basePath + "/controller/" + domainCapitalized + "Controller.java", controllerCode, true); @@ -83,9 +109,23 @@ public class BypassCodeGenerator { String serviceClass = endpointName + "Service"; boolean isPost = "POST".equalsIgnoreCase(config.getHttpMethod()); + // POST인데 BODY 파라미터가 없으면 자동 추가 + List effectiveParams = new ArrayList<>(params); + if (isPost && effectiveParams.stream().noneMatch(p -> "BODY".equalsIgnoreCase(p.getParamIn()))) { + BypassApiParam autoBody = new BypassApiParam(); + autoBody.setParamName("body"); + autoBody.setParamType("STRING"); + autoBody.setParamIn("BODY"); + autoBody.setRequired(false); + autoBody.setDescription("요청 본문 (JSON)"); + autoBody.setExample("{}"); + autoBody.setSortOrder(999); + effectiveParams.add(autoBody); + } + String methodName = "get" + endpointName + "Data"; - String fetchMethod = buildFetchMethodCall(config, params, isPost); - String methodParams = buildMethodParams(params); + String fetchMethod = buildFetchMethodCall(config, effectiveParams, isPost); + String methodParams = buildMethodParams(effectiveParams); return """ package {{PACKAGE}}; @@ -98,7 +138,7 @@ public class BypassCodeGenerator { import org.springframework.web.reactive.function.client.WebClient; /** - * {{DISPLAY_NAME}} bypass 서비스 + * {{DISPLAY_NAME}} 서비스 * 외부 Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환 */ @Service @@ -133,7 +173,7 @@ public class BypassCodeGenerator { * Controller 코드 생성 (RAW 모드). * 모든 엔드포인트가 ResponseEntity를 반환합니다 (외부 API 원본 JSON 그대로). */ - private String generateControllerCode(String domain, List configs) { + private String generateControllerCode(String domain, List configs, Map responseSchemaMap, Map requestBodySchemaMap) { String packageName = BASE_PACKAGE + "." + domain + ".controller"; String servicePackage = BASE_PACKAGE + "." + domain + ".service"; String domainCap = capitalize(domain); @@ -157,7 +197,7 @@ public class BypassCodeGenerator { .anyMatch(c -> c.getParams().stream().anyMatch(p -> "PATH".equalsIgnoreCase(p.getParamIn()))); boolean anyQuery = configs.stream() .anyMatch(c -> c.getParams().stream().anyMatch(p -> "QUERY".equalsIgnoreCase(p.getParamIn()))); - boolean anyBody = configs.stream() + boolean anyBody = anyPost || configs.stream() .anyMatch(c -> c.getParams().stream().anyMatch(p -> "BODY".equalsIgnoreCase(p.getParamIn()))); if (anyPost) importSet.add("import org.springframework.web.bind.annotation.PostMapping;"); @@ -181,7 +221,7 @@ public class BypassCodeGenerator { } String tagPrefix = getTagPrefix(configs.get(0).getWebclientBean()); - String tagDescription = tagPrefix + " " + domainCap + " bypass API"; + String tagDescription = tagPrefix + " " + domainCap + " API"; // 엔드포인트 메서드 목록 StringBuilder methods = new StringBuilder(); @@ -191,10 +231,25 @@ public class BypassCodeGenerator { String serviceField = Character.toLowerCase(serviceClass.charAt(0)) + serviceClass.substring(1); boolean isPost = "POST".equalsIgnoreCase(config.getHttpMethod()); + // POST인데 BODY 파라미터가 없으면 자동 추가 + List ctrlParams = new ArrayList<>(config.getParams()); + if (isPost && ctrlParams.stream().noneMatch(p -> "BODY".equalsIgnoreCase(p.getParamIn()))) { + BypassApiParam autoBody = new BypassApiParam(); + autoBody.setParamName("body"); + autoBody.setParamType("STRING"); + autoBody.setParamIn("BODY"); + autoBody.setRequired(false); + autoBody.setDescription("요청 본문 (JSON)"); + autoBody.setExample("{}"); + autoBody.setSortOrder(999); + ctrlParams.add(autoBody); + } + String mappingAnnotation = isPost ? "@PostMapping" : "@GetMapping"; - String mappingPath = buildMappingPath(config.getParams(), config.getExternalPath()); - String paramAnnotations = buildControllerParamAnnotations(config.getParams()); - String serviceCallArgs = buildServiceCallArgs(config.getParams()); + String mappingPath = buildMappingPath(ctrlParams, config.getExternalPath()); + String reqBodySchema = requestBodySchemaMap.get(config.getId()); + String paramAnnotations = buildControllerParamAnnotations(ctrlParams, reqBodySchema); + String serviceCallArgs = buildServiceCallArgs(ctrlParams); String methodName = "get" + endpointName + "Data"; methods.append("\n"); @@ -205,6 +260,20 @@ public class BypassCodeGenerator { : config.getDisplayName() + " 데이터를 요청하고 응답을 그대로 반환합니다."; methods.append(" description = \"").append(opDescription).append("\"\n"); methods.append(" )\n"); + // @ApiResponse with schema (if available) + String schemaClass = responseSchemaMap.get(config.getId()); + if (schemaClass != null && !schemaClass.isEmpty()) { + methods.append(" @io.swagger.v3.oas.annotations.responses.ApiResponse(\n"); + methods.append(" responseCode = \"200\",\n"); + methods.append(" description = \"").append(config.getDisplayName()).append("\",\n"); + methods.append(" content = @io.swagger.v3.oas.annotations.media.Content(\n"); + methods.append(" mediaType = \"application/json\",\n"); + methods.append(" array = @io.swagger.v3.oas.annotations.media.ArraySchema(\n"); + methods.append(" schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = ").append(schemaClass).append(".class)\n"); + methods.append(" )\n"); + methods.append(" )\n"); + methods.append(" )\n"); + } methods.append(" ").append(mappingAnnotation).append(mappingPath).append("\n"); methods.append(" public ResponseEntity ").append(methodName).append("("); if (!paramAnnotations.isEmpty()) { @@ -219,7 +288,7 @@ public class BypassCodeGenerator { return "package " + packageName + ";\n\n" + importsStr + "\n\n" + "/**\n" - + " * " + domainCap + " bypass API\n" + + " * " + domainCap + " API\n" + " * S&P Maritime API에서 데이터를 실시간 조회하여 JSON을 그대로 반환\n" + " */\n" + "@RestController\n" @@ -263,7 +332,10 @@ public class BypassCodeGenerator { private String buildMethodParams(List params) { return params.stream() .sorted((a, b) -> Integer.compare(a.getSortOrder(), b.getSortOrder())) - .map(p -> toJavaType(p.getParamType()) + " " + p.getParamName()) + .map(p -> { + String type = "BODY".equalsIgnoreCase(p.getParamIn()) ? "JsonNode" : toJavaType(p.getParamType()); + return type + " " + p.getParamName(); + }) .collect(Collectors.joining(", ")); } @@ -274,7 +346,7 @@ public class BypassCodeGenerator { .collect(Collectors.joining(", ")); } - private String buildControllerParamAnnotations(List params) { + private String buildControllerParamAnnotations(List params, String requestBodySchemaClass) { if (params.isEmpty()) { return ""; } @@ -290,8 +362,17 @@ public class BypassCodeGenerator { return switch (p.getParamIn().toUpperCase()) { case "PATH" -> "@Parameter(description = \"" + description + "\", example = \"" + example + "\")\n" + " @PathVariable " + javaType + " " + paramName; - case "BODY" -> "@Parameter(description = \"" + description + "\", example = \"" + example + "\")\n" - + " @RequestBody " + javaType + " " + paramName; + case "BODY" -> { + StringBuilder bodyAnno = new StringBuilder(); + bodyAnno.append("@io.swagger.v3.oas.annotations.parameters.RequestBody(description = \"").append(description).append("\""); + if (requestBodySchemaClass != null && !requestBodySchemaClass.isEmpty()) { + bodyAnno.append(",\n content = @io.swagger.v3.oas.annotations.media.Content(\n"); + bodyAnno.append(" mediaType = \"application/json\",\n"); + bodyAnno.append(" schema = @io.swagger.v3.oas.annotations.media.Schema(implementation = ").append(requestBodySchemaClass).append(".class))"); + } + bodyAnno.append(")\n @RequestBody JsonNode ").append(paramName); + yield bodyAnno.toString(); + } default -> { String required = Boolean.TRUE.equals(p.getRequired()) ? "true" : "false"; yield "@Parameter(description = \"" + description + "\", example = \"" + example + "\")\n" diff --git a/src/main/java/com/snp/batch/service/BypassConfigService.java b/src/main/java/com/snp/batch/service/BypassConfigService.java index 5e4c0d7..98116ad 100644 --- a/src/main/java/com/snp/batch/service/BypassConfigService.java +++ b/src/main/java/com/snp/batch/service/BypassConfigService.java @@ -80,6 +80,7 @@ public class BypassConfigService { config.setExternalPath(request.getExternalPath()); config.setHttpMethod(request.getHttpMethod()); config.setDescription(request.getDescription()); + config.setResponseSchemaClass(request.getResponseSchemaClass()); // params 교체: clear → flush(DELETE 실행) → 새로 추가 config.getParams().clear(); @@ -131,6 +132,7 @@ public class BypassConfigService { .externalPath(config.getExternalPath()) .httpMethod(config.getHttpMethod()) .description(config.getDescription()) + .responseSchemaClass(config.getResponseSchemaClass()) .generated(config.getGenerated()) .generatedAt(config.getGeneratedAt()) .createdAt(config.getCreatedAt()) @@ -148,6 +150,7 @@ public class BypassConfigService { .externalPath(request.getExternalPath()) .httpMethod(request.getHttpMethod() != null ? request.getHttpMethod() : "GET") .description(request.getDescription()) + .responseSchemaClass(request.getResponseSchemaClass()) .build(); } diff --git a/src/main/java/com/snp/batch/service/SwaggerSchemaGenerator.java b/src/main/java/com/snp/batch/service/SwaggerSchemaGenerator.java new file mode 100644 index 0000000..5a99c78 --- /dev/null +++ b/src/main/java/com/snp/batch/service/SwaggerSchemaGenerator.java @@ -0,0 +1,252 @@ +package com.snp.batch.service; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.io.ClassPathResource; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Iterator; +import java.util.Map; + +@Slf4j +@Service +public class SwaggerSchemaGenerator { + + private static final String DTO_PACKAGE = "com.snp.batch.global.dto.bypass"; + private static final String DTO_BASE_PATH = "src/main/java/com/snp/batch/global/dto/bypass"; + private static final ObjectMapper objectMapper = new ObjectMapper(); + + private static final Map SWAGGER_FILE_MAP = Map.of( + "maritimeAisApiWebClient", "swagger/swagger_aisapi.json", + "maritimeApiWebClient", "swagger/swagger_shipsapi.json", + "maritimeServiceApiWebClient", "swagger/swagger_webservices.json" + ); + + /** + * swagger.json에서 응답 스키마를 추출하여 DTO Java 클래스를 자동 생성합니다. + * @return 생성된 DTO의 FQCN, 스키마를 찾을 수 없으면 null + */ + public String generateResponseDto(String webclientBean, String externalPath, boolean force) { + String swaggerFile = SWAGGER_FILE_MAP.get(webclientBean); + if (swaggerFile == null) { + log.warn("Unknown webclientBean: {}, skipping DTO generation", webclientBean); + return null; + } + + try { + JsonNode swagger = loadSwaggerJson(swaggerFile); + if (swagger == null) return null; + + // Find path in swagger + JsonNode paths = swagger.get("paths"); + if (paths == null || !paths.has(externalPath)) { + log.info("Path {} not found in {}, skipping DTO generation", externalPath, swaggerFile); + return null; + } + + // Get 200 response schema $ref + JsonNode pathItem = paths.get(externalPath); + // Try GET first, then POST + JsonNode operation = pathItem.has("get") ? pathItem.get("get") : pathItem.has("post") ? pathItem.get("post") : null; + if (operation == null) return null; + + JsonNode responses = operation.get("responses"); + if (responses == null || !responses.has("200")) return null; + + JsonNode response200 = responses.get("200"); + JsonNode content = response200.get("content"); + if (content == null) return null; + + JsonNode jsonContent = content.has("application/json") ? content.get("application/json") : content.has("text/json") ? content.get("text/json") : null; + if (jsonContent == null) return null; + + JsonNode schema = jsonContent.get("schema"); + if (schema == null) return null; + + // Resolve $ref - could be direct or array items + String schemaRef = null; + boolean isArray = "array".equals(schema.has("type") ? schema.get("type").asText() : ""); + if (isArray && schema.has("items") && schema.get("items").has("$ref")) { + schemaRef = schema.get("items").get("$ref").asText(); + } else if (schema.has("$ref")) { + schemaRef = schema.get("$ref").asText(); + } + + if (schemaRef == null) return null; + + // Extract schema name from $ref (e.g., "#/components/schemas/Foo.Bar.Baz" -> "Baz") + String fullSchemaName = schemaRef.substring(schemaRef.lastIndexOf("/") + 1); + String className = fullSchemaName.contains(".") + ? fullSchemaName.substring(fullSchemaName.lastIndexOf(".") + 1) + : fullSchemaName; + + // Get schema definition + JsonNode schemas = swagger.at("/components/schemas/" + fullSchemaName); + if (schemas.isMissingNode()) return null; + + // Generate DTO file + String projectRoot = System.getProperty("user.dir"); + String filePath = projectRoot + "/" + DTO_BASE_PATH + "/" + className + ".java"; + + if (!force && Files.exists(Path.of(filePath))) { + log.info("DTO already exists, skipping: {}", filePath); + return DTO_PACKAGE + "." + className; + } + + String javaCode = generateDtoCode(className, schemas); + Files.createDirectories(Path.of(filePath).getParent()); + Files.writeString(Path.of(filePath), javaCode, StandardCharsets.UTF_8); + log.info("DTO generated: {}", filePath); + + return DTO_PACKAGE + "." + className; + + } catch (Exception e) { + log.error("Failed to generate response DTO for {} {}: {}", webclientBean, externalPath, e.getMessage()); + return null; + } + } + + /** + * swagger.json에서 requestBody 스키마를 추출하여 DTO Java 클래스를 자동 생성합니다. + * @return 생성된 DTO의 FQCN, 스키마를 찾을 수 없으면 null + */ + public String generateRequestBodyDto(String webclientBean, String externalPath, boolean force) { + String swaggerFile = SWAGGER_FILE_MAP.get(webclientBean); + if (swaggerFile == null) return null; + + try { + JsonNode swagger = loadSwaggerJson(swaggerFile); + if (swagger == null) return null; + + JsonNode paths = swagger.get("paths"); + if (paths == null || !paths.has(externalPath)) return null; + + JsonNode pathItem = paths.get(externalPath); + JsonNode operation = pathItem.has("post") ? pathItem.get("post") : null; + if (operation == null) return null; + + JsonNode requestBody = operation.get("requestBody"); + if (requestBody == null) return null; + + JsonNode content = requestBody.get("content"); + if (content == null) return null; + + JsonNode jsonContent = content.has("application/json") ? content.get("application/json") + : content.has("application/json-patch+json") ? content.get("application/json-patch+json") + : content.has("text/json") ? content.get("text/json") : null; + if (jsonContent == null) return null; + + JsonNode schema = jsonContent.get("schema"); + if (schema == null || !schema.has("$ref")) return null; + + String schemaRef = schema.get("$ref").asText(); + String fullSchemaName = schemaRef.substring(schemaRef.lastIndexOf("/") + 1); + String className = fullSchemaName.contains(".") + ? fullSchemaName.substring(fullSchemaName.lastIndexOf(".") + 1) + : fullSchemaName; + + JsonNode schemaDef = swagger.at("/components/schemas/" + fullSchemaName); + if (schemaDef.isMissingNode()) return null; + + String projectRoot = System.getProperty("user.dir"); + String filePath = projectRoot + "/" + DTO_BASE_PATH + "/" + className + ".java"; + + if (!force && Files.exists(Path.of(filePath))) { + log.info("Request DTO already exists, skipping: {}", filePath); + return DTO_PACKAGE + "." + className; + } + + String javaCode = generateDtoCode(className, schemaDef); + Files.createDirectories(Path.of(filePath).getParent()); + Files.writeString(Path.of(filePath), javaCode, StandardCharsets.UTF_8); + log.info("Request DTO generated: {}", filePath); + + return DTO_PACKAGE + "." + className; + + } catch (Exception e) { + log.error("Failed to generate request body DTO for {} {}: {}", webclientBean, externalPath, e.getMessage()); + return null; + } + } + + private JsonNode loadSwaggerJson(String resourcePath) { + try { + ClassPathResource resource = new ClassPathResource(resourcePath); + try (InputStream is = resource.getInputStream()) { + return objectMapper.readTree(is); + } + } catch (IOException e) { + log.error("Failed to load swagger file: {}", resourcePath, e); + return null; + } + } + + private String generateDtoCode(String className, JsonNode schema) { + StringBuilder sb = new StringBuilder(); + sb.append("package ").append(DTO_PACKAGE).append(";\n\n"); + sb.append("import io.swagger.v3.oas.annotations.media.Schema;\n"); + sb.append("import lombok.Getter;\n\n"); + + String title = schema.has("title") ? schema.get("title").asText() : className; + sb.append("/**\n"); + sb.append(" * S&P Global API 응답 스키마 (Swagger 문서용)\n"); + sb.append(" * 이 클래스는 자동 생성되었습니다. 직접 수정하지 마세요.\n"); + sb.append(" */\n"); + sb.append("@Getter\n"); + sb.append("@Schema(description = \"").append(title).append("\")\n"); + sb.append("public class ").append(className).append(" {\n"); + + JsonNode properties = schema.get("properties"); + if (properties != null) { + Iterator> fields = properties.fields(); + while (fields.hasNext()) { + Map.Entry field = fields.next(); + String fieldName = field.getKey(); + JsonNode fieldSchema = field.getValue(); + + String javaType = resolveJavaType(fieldSchema); + String example = getExampleValue(fieldSchema); + + sb.append(" @Schema(description = \"").append(fieldName).append("\""); + if (example != null) { + sb.append(", example = \"").append(example).append("\""); + } + sb.append(")\n"); + sb.append(" private ").append(javaType).append(" ").append(fieldName).append(";\n"); + } + } + + sb.append("}\n"); + return sb.toString(); + } + + private String resolveJavaType(JsonNode fieldSchema) { + String type = fieldSchema.has("type") ? fieldSchema.get("type").asText() : "string"; + String format = fieldSchema.has("format") ? fieldSchema.get("format").asText() : ""; + + return switch (type) { + case "integer" -> "int64".equals(format) ? "Long" : "Integer"; + case "number" -> "Double"; + case "boolean" -> "Boolean"; + case "array" -> "java.util.List"; + default -> "String"; + }; + } + + private String getExampleValue(JsonNode fieldSchema) { + String type = fieldSchema.has("type") ? fieldSchema.get("type").asText() : "string"; + return switch (type) { + case "integer" -> "0"; + case "number" -> "0.0"; + case "boolean" -> "false"; + case "array" -> null; + default -> ""; + }; + } +} diff --git a/src/main/resources/swagger/swagger_aisapi.json b/src/main/resources/swagger/swagger_aisapi.json new file mode 100644 index 0000000..fdccda1 --- /dev/null +++ b/src/main/resources/swagger/swagger_aisapi.json @@ -0,0 +1,3853 @@ +{ + "openapi": "3.0.1", + "info": { + "title": "S&P Global - AIS API", + "description": "Provides S&P Global AIS data", + "version": "v1" + }, + "paths": { + "/AisSvc.svc/AIS/GetTargetByMMSI": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetByMMSI", + "description": " Sample request:\r\n```\r\n POST {\"MMSI\": \"235100795\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByMMSIs": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByMMSIs", + "description": " Sample request:\r\n```\r\n POST {\"MMSI\": \"235100795,265878000,422386000\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetByMMSIEx": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetByMMSIEx", + "description": " Sample request:\r\n```\r\n POST {\"MMSI\": \"235100795\", \"vesselType\": \"%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetCount": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetCount", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"45\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetCount" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetCount" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetCount" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargets": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargets", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"45\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByCallSign": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByCallSign", + "description": " Sample request:\r\n```\r\n POST {\"callSign\": \"3FKQ6\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByCallSigns": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByCallSigns", + "description": " Sample request:\r\n```\r\n POST {\"callSigns\": \"3FKQ6,9VFV5\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByIMO": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByIMO", + "description": " Sample request:\r\n```\r\n POST {\"IMO\": 9601728}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByIMOs": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByIMOs", + "description": " Sample request:\r\n```\r\n POST {\"IMO\": \"9251743,1000019\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByIMOEx": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByIMOEx", + "description": " Sample request:\r\n```\r\n POST {\"IMO\": \"9251743\", \"vesselType\": \"A%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByName": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByName", + "description": " Sample request:\r\n```\r\n POST {\"name\": \"COLOMBO EXPRESS\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByNameEx": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByNameEx", + "description": " Sample request:\r\n```\r\n POST {\"name\": \"ALPHA\", \"vesselType\": \"A%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsInArea": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsInArea", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"60\", \"minLat\": \"30\", \"maxLat\": \"32\", \"minLong\": \"121\", \"maxLong\": \"122\" }\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsInAreaEx": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsInAreaEx", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"60\", \"minLat\": \"30\", \"maxLat\": \"32\", \"minLong\": \"121\", \"maxLong\": \"122\", \"vesselType\": \"A%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\" }\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetHydroCarbonCarriers": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetHydroCarbonCarriers", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSourceArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSourceArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSourceArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsInClientArea": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsInClientArea", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/QueryDownloadEntitlementStatus": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "QueryDownloadEntitlementStatus", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.DownloadEntitlementResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.DownloadEntitlementResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.DownloadEntitlementResult" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTankerSubsetOne": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTankerSubsetOne", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSourceArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSourceArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSourceArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByStatCode": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByStatCode", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"120\", \"statCode\": \"A13%,B35E%,W11%\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetExArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetLrnoMmsiXref": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetLrnoMmsiXref", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.imoLinkToMMSIArr" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.imoLinkToMMSIArr" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.imoLinkToMMSIArr" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByNameEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByNameEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"name\": \"COLOMBO EXPRESS\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetHydroCarbonCarriersEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetHydroCarbonCarriersEnhanced", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTankerSubsetOneEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTankerSubsetOneEnhanced", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetByMMSIEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetByMMSIEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"MMSI\": \"235100795\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetByMMSIExEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetByMMSIExEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"MMSI\": \"235100795\", \"vesselType\": \"%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetByMMSIExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByMMSIsEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByMMSIsEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"MMSI\": \"235100795,265878000,422386000\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByMMSIParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByNameExEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByNameExEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"name\": \"ALPHA\", \"vesselType\": \"A%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByNameExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetCountEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetCountEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"45\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.EnhancedTargetCount" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.EnhancedTargetCount" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.EnhancedTargetCount" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"45\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByCallSignEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByCallSignEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"callSign\": \"3FKQ6\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByIMOEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByIMOEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"IMO\": 9601728}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByIMOsEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByIMOsEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"IMO\": \"9251743,1000019\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByIMOExEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByIMOExEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"IMO\": \"9251743\", \"vesselType\": \"A%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByIMOExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsInAreaEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsInAreaEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"60\", \"minLat\": \"30\", \"maxLat\": \"32\", \"minLong\": \"121\", \"maxLong\": \"122\" }\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsInAreaExEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsInAreaExEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"60\", \"minLat\": \"30\", \"maxLat\": \"32\", \"minLong\": \"121\", \"maxLong\": \"122\", \"vesselType\": \"A%\", \"minDWT\": \"0\", \"maxDWT\": \"999999\" }\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsInAreaExParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByStatCodeEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByStatCodeEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": \"120\", \"statCode\": \"A13%,B35E%,W11\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByStatCodeParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsInClientAreaEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsInClientAreaEnhanced", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsByCallSignsEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsByCallSignsEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"callSigns\": \"3FKQ6,9VFV5\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsByCallSignsParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetPortZones": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetPortZones", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortZoneList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortZoneList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortZoneList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetPortByZoneID": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetPortByZoneID", + "description": " Sample request:\r\n```\r\n POST { \"zoneID\" : 5210 }\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortByZoneIDParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortByZoneIDParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortByZoneIDParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortByZoneIDParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortZoneSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortZoneSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.PortZoneSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinRadiusFromLatLon": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinRadiusFromLatLon", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": 900, \"radiusNm\": 50, \"lat\": 31.4, \"lon\": 121.5}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinRadiusFromImo": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinRadiusFromImo", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": 900, \"radiusNm\": 50, \"imo\": \"9238076\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinRadiusFromMmsi": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinRadiusFromMmsi", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": 900, \"radiusNm\": 50, \"mmsi\": \"354040000\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinWktPolygon": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinWktPolygon", + "description": " Sample request:\r\n```\r\n POST {\r\n \"sinceSeconds\": 900, \r\n \"wktPolygon\": \"POLYGON((-11.74467303112902 36.70011654393193, \r\n -8.120362353775773 35.67819158970612, 1.073316356091019 35.86666578061244, \r\n 3.745296407683512 42.40997961828092, -9.49604660283727 44.33403108762421, \r\n -11.74467303112902 36.70011654393193))\"\r\n }\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.sTargetArrSB" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinRadiusFromLatLonEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinRadiusFromLatLonEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": 900, \"radiusNm\": 50, \"lat\": 31.4, \"lon\": 121.5}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromLatLonParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinRadiusFromImoEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinRadiusFromImoEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": 900, \"radiusNm\": 50, \"imo\": \"9238076\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromImoParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinRadiusFromMmsiEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinRadiusFromMmsiEnhanced", + "description": " Sample request:\r\n```\r\n POST {\"sinceSeconds\": 900, \"radiusNm\": 50, \"mmsi\": \"354040000\"}\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinRadiusFromMmsiParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetTargetsWithinWktPolygonEnhanced": { + "post": { + "tags": [ + "AIS API" + ], + "summary": "GetTargetsWithinWktPolygonEnhanced", + "description": " Sample request:\r\n```\r\n POST {\r\n \"sinceSeconds\": 900, \r\n \"wktPolygon\": \"POLYGON((-11.74467303112902 36.70011654393193, \r\n -8.120362353775773 35.67819158970612, 1.073316356091019 35.86666578061244, \r\n 3.745296407683512 42.40997961828092, -9.49604660283727 44.33403108762421, \r\n -11.74467303112902 36.70011654393193))\"\r\n }\r\n ```", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetsWithinWktPolygonParameters" + } + } + } + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhancedList" + } + } + } + } + } + } + }, + "/AisSvc.svc/AIS/GetStatcodes": { + "get": { + "tags": [ + "AIS API" + ], + "summary": "GetStatcodes", + "description": "This endpoint requires no data to be passed in the body", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.StatcodeList" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.StatcodeList" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AisApi.Models.StatcodeList" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "AisApi.Models.APSStatus": { + "type": "object", + "properties": { + "systemVersion": { + "type": "string", + "nullable": true + }, + "systemDate": { + "type": "string", + "format": "date-time" + }, + "jobRunDate": { + "type": "string", + "format": "date-time" + }, + "completedOK": { + "type": "boolean" + }, + "errorLevel": { + "type": "string", + "nullable": true + }, + "errorMessage": { + "type": "string", + "nullable": true + }, + "remedialAction": { + "type": "string", + "nullable": true + }, + "guid": { + "type": "string", + "format": "uuid" + } + }, + "additionalProperties": false + }, + "AisApi.Models.DownloadEntitlementResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "order_Detail_No": { + "type": "integer", + "format": "int32" + }, + "subscription_StartDate": { + "type": "string", + "format": "date-time" + }, + "subscription_EndDate": { + "type": "string", + "format": "date-time" + }, + "current_Entitlement": { + "type": "integer", + "format": "int32" + }, + "download_Count": { + "type": "integer", + "format": "int64" + }, + "hint": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.EnhancedTargetCount": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "targetEnhancedCount": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "AisApi.Models.PortByZoneIDParameters": { + "type": "object", + "properties": { + "zoneId": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.PortZone": { + "type": "object", + "properties": { + "zoneID": { + "type": "integer", + "format": "int32" + }, + "portID": { + "type": "integer", + "format": "int32" + }, + "oldID": { + "type": "string", + "nullable": true + }, + "portName": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "zoneName": { + "type": "string", + "nullable": true + }, + "zoneType": { + "type": "string", + "nullable": true + }, + "lpcCode": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "AisApi.Models.PortZoneList": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "portZoneArr": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AisApi.Models.PortZone" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.PortZoneSB": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "portZone": { + "$ref": "#/components/schemas/AisApi.Models.PortZone" + } + }, + "additionalProperties": false + }, + "AisApi.Models.Statcode": { + "type": "object", + "properties": { + "level1": { + "type": "string", + "nullable": true + }, + "level1Decode": { + "type": "string", + "nullable": true + }, + "level2": { + "type": "string", + "nullable": true + }, + "level2Decode": { + "type": "string", + "nullable": true + }, + "level3": { + "type": "string", + "nullable": true + }, + "level3Decode": { + "type": "string", + "nullable": true + }, + "level4": { + "type": "string", + "nullable": true + }, + "level4Decode": { + "type": "string", + "nullable": true + }, + "level5": { + "type": "string", + "nullable": true + }, + "level5Decode": { + "type": "string", + "nullable": true + }, + "description": { + "type": "string", + "nullable": true + }, + "release": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.StatcodeList": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "statcodeArr": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AisApi.Models.Statcode" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetByMMSIExParameters": { + "type": "object", + "properties": { + "mmsi": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "minDwt": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxDwt": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetEnhanced": { + "type": "object", + "properties": { + "mmsi": { + "type": "integer", + "format": "int32" + }, + "imo": { + "type": "integer", + "format": "int32" + }, + "ageMinutes": { + "type": "number", + "format": "double" + }, + "lat": { + "type": "number", + "format": "double" + }, + "lon": { + "type": "number", + "format": "double" + }, + "heading": { + "type": "number", + "format": "double" + }, + "soG": { + "type": "number", + "format": "double" + }, + "width": { + "type": "integer", + "format": "int32" + }, + "length": { + "type": "integer", + "format": "int32" + }, + "draught": { + "type": "number", + "format": "double" + }, + "name": { + "type": "string", + "nullable": true + }, + "callsign": { + "type": "string", + "nullable": true + }, + "destination": { + "type": "string", + "nullable": true + }, + "eta": { + "type": "string", + "format": "date-time" + }, + "status": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "extraInfo": { + "type": "string", + "nullable": true + }, + "positionAccuracy": { + "type": "integer", + "format": "int32" + }, + "roT": { + "type": "integer", + "format": "int32" + }, + "timestampUTC": { + "type": "integer", + "format": "int32" + }, + "repeatIndicator": { + "type": "integer", + "format": "int32" + }, + "raimFlag": { + "type": "integer", + "format": "int32" + }, + "radioStatus": { + "type": "integer", + "format": "int32" + }, + "regional": { + "type": "integer", + "format": "int32" + }, + "regional2": { + "type": "integer", + "format": "int32" + }, + "spare": { + "type": "integer", + "format": "int32" + }, + "spare2": { + "type": "integer", + "format": "int32" + }, + "aisVersion": { + "type": "integer", + "format": "int32" + }, + "positionFixType": { + "type": "integer", + "format": "int32" + }, + "dte": { + "type": "integer", + "format": "int32" + }, + "bandFlag": { + "type": "integer", + "format": "int32" + }, + "receivedDate": { + "type": "string", + "format": "date-time" + }, + "messageTimestamp": { + "type": "string", + "format": "date-time" + }, + "lengthBow": { + "type": "integer", + "format": "int32" + }, + "lengthStern": { + "type": "integer", + "format": "int32" + }, + "widthPort": { + "type": "integer", + "format": "int32" + }, + "widthStarboard": { + "type": "integer", + "format": "int32" + }, + "dwt": { + "type": "integer", + "format": "int32" + }, + "staT5CODE": { + "type": "string", + "nullable": true + }, + "source": { + "type": "string", + "nullable": true + }, + "coG": { + "type": "number", + "format": "double" + }, + "lastStaticUpdateReceived": { + "type": "string", + "format": "date-time" + }, + "zoneId": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "lpcCode": { + "type": "integer", + "format": "int32" + }, + "tonnesCargo": { + "type": "integer", + "format": "int32" + }, + "stationId": { + "type": "string", + "nullable": true + }, + "inSTS": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "imoVerified": { + "type": "integer", + "format": "int32" + }, + "onBerth": { + "type": "boolean", + "nullable": true + }, + "destinationTidied": { + "type": "string", + "nullable": true + }, + "anomalous": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "messageType": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "destinationPortID": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "destinationUNLOCODE": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetEnhancedList": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "targetEnhancedArr": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhanced" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetEnhancedSB": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "targetEnhanced": { + "$ref": "#/components/schemas/AisApi.Models.TargetEnhanced" + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByCallSignParameters": { + "type": "object", + "properties": { + "callSign": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByCallSignsParameters": { + "type": "object", + "properties": { + "callSigns": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByIMOExParameters": { + "type": "object", + "properties": { + "imo": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "minDwt": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxDwt": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByIMOParameters": { + "type": "object", + "properties": { + "imo": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByMMSIParameters": { + "type": "object", + "properties": { + "mmsi": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByNameExParameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "minDwt": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxDwt": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByNameParameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsByStatCodeParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "statCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsInAreaExParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "minLat": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxLat": { + "type": "number", + "format": "double", + "nullable": true + }, + "minLong": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxLong": { + "type": "number", + "format": "double", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "minDwt": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxDwt": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsInAreaParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "minLat": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxLat": { + "type": "number", + "format": "double", + "nullable": true + }, + "minLong": { + "type": "number", + "format": "double", + "nullable": true + }, + "maxLong": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsWithinRadiusFromImoParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "radiusNm": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "imo": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsWithinRadiusFromLatLonParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "radiusNm": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "lat": { + "type": "number", + "format": "double", + "nullable": true + }, + "lon": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsWithinRadiusFromMmsiParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "radiusNm": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "mmsi": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.TargetsWithinWktPolygonParameters": { + "type": "object", + "properties": { + "sinceSeconds": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "wktPolygon": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.imoLinkToMMSI": { + "type": "object", + "properties": { + "lrno": { + "type": "integer", + "format": "int32" + }, + "mmsi": { + "type": "integer", + "format": "int32" + }, + "ruleNumber": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "AisApi.Models.imoLinkToMMSIArr": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "lrnoMssiXref": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AisApi.Models.imoLinkToMMSI" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTarget": { + "type": "object", + "properties": { + "mmsi": { + "type": "integer", + "format": "int32" + }, + "imo": { + "type": "integer", + "format": "int32" + }, + "ageMinutes": { + "type": "number", + "format": "double" + }, + "lat": { + "type": "number", + "format": "double" + }, + "lon": { + "type": "number", + "format": "double" + }, + "heading": { + "type": "number", + "format": "double" + }, + "soG": { + "type": "number", + "format": "double" + }, + "width": { + "type": "integer", + "format": "int32" + }, + "length": { + "type": "integer", + "format": "int32" + }, + "draught": { + "type": "number", + "format": "double" + }, + "name": { + "type": "string", + "nullable": true + }, + "callsign": { + "type": "string", + "nullable": true + }, + "destination": { + "type": "string", + "nullable": true + }, + "eta": { + "type": "string", + "format": "date-time" + }, + "status": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "extraInfo": { + "type": "string", + "nullable": true + }, + "positionAccuracy": { + "type": "integer", + "format": "int32" + }, + "roT": { + "type": "integer", + "format": "int32" + }, + "timestampUTC": { + "type": "integer", + "format": "int32" + }, + "repeatIndicator": { + "type": "integer", + "format": "int32" + }, + "raimFlag": { + "type": "integer", + "format": "int32" + }, + "radioStatus": { + "type": "integer", + "format": "int32" + }, + "regional": { + "type": "integer", + "format": "int32" + }, + "regional2": { + "type": "integer", + "format": "int32" + }, + "spare": { + "type": "integer", + "format": "int32" + }, + "spare2": { + "type": "integer", + "format": "int32" + }, + "aisVersion": { + "type": "integer", + "format": "int32" + }, + "positionFixType": { + "type": "integer", + "format": "int32" + }, + "dte": { + "type": "integer", + "format": "int32" + }, + "bandFlag": { + "type": "integer", + "format": "int32" + }, + "receivedDate": { + "type": "string", + "format": "date-time" + }, + "messageTimestamp": { + "type": "string", + "format": "date-time" + }, + "lengthBow": { + "type": "integer", + "format": "int32" + }, + "lengthStern": { + "type": "integer", + "format": "int32" + }, + "widthPort": { + "type": "integer", + "format": "int32" + }, + "widthStarboard": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTargetArrSB": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "targetArr": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AisApi.Models.sTarget" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTargetCount": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "targetCount": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTargetEx": { + "type": "object", + "properties": { + "mmsi": { + "type": "integer", + "format": "int32" + }, + "imo": { + "type": "integer", + "format": "int32" + }, + "ageMinutes": { + "type": "number", + "format": "double" + }, + "lat": { + "type": "number", + "format": "double" + }, + "lon": { + "type": "number", + "format": "double" + }, + "heading": { + "type": "number", + "format": "double" + }, + "soG": { + "type": "number", + "format": "double" + }, + "width": { + "type": "integer", + "format": "int32" + }, + "length": { + "type": "integer", + "format": "int32" + }, + "draught": { + "type": "number", + "format": "double" + }, + "name": { + "type": "string", + "nullable": true + }, + "callsign": { + "type": "string", + "nullable": true + }, + "destination": { + "type": "string", + "nullable": true + }, + "eta": { + "type": "string", + "format": "date-time" + }, + "status": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "extraInfo": { + "type": "string", + "nullable": true + }, + "positionAccuracy": { + "type": "integer", + "format": "int32" + }, + "roT": { + "type": "integer", + "format": "int32" + }, + "timestampUTC": { + "type": "integer", + "format": "int32" + }, + "repeatIndicator": { + "type": "integer", + "format": "int32" + }, + "raimFlag": { + "type": "integer", + "format": "int32" + }, + "radioStatus": { + "type": "integer", + "format": "int32" + }, + "regional": { + "type": "integer", + "format": "int32" + }, + "regional2": { + "type": "integer", + "format": "int32" + }, + "spare": { + "type": "integer", + "format": "int32" + }, + "spare2": { + "type": "integer", + "format": "int32" + }, + "aisVersion": { + "type": "integer", + "format": "int32" + }, + "positionFixType": { + "type": "integer", + "format": "int32" + }, + "dte": { + "type": "integer", + "format": "int32" + }, + "bandFlag": { + "type": "integer", + "format": "int32" + }, + "receivedDate": { + "type": "string", + "format": "date-time" + }, + "messageTimestamp": { + "type": "string", + "format": "date-time" + }, + "lengthBow": { + "type": "integer", + "format": "int32" + }, + "lengthStern": { + "type": "integer", + "format": "int32" + }, + "widthPort": { + "type": "integer", + "format": "int32" + }, + "widthStarboard": { + "type": "integer", + "format": "int32" + }, + "dwt": { + "type": "integer", + "format": "int32" + }, + "statCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTargetExArrSB": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "targetExArr": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AisApi.Models.sTargetEx" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTargetSB": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "target": { + "$ref": "#/components/schemas/AisApi.Models.sTarget" + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTargetSource": { + "type": "object", + "properties": { + "mmsi": { + "type": "integer", + "format": "int32" + }, + "imo": { + "type": "integer", + "format": "int32" + }, + "ageMinutes": { + "type": "number", + "format": "double" + }, + "lat": { + "type": "number", + "format": "double" + }, + "lon": { + "type": "number", + "format": "double" + }, + "heading": { + "type": "number", + "format": "double" + }, + "soG": { + "type": "number", + "format": "double" + }, + "width": { + "type": "integer", + "format": "int32" + }, + "length": { + "type": "integer", + "format": "int32" + }, + "draught": { + "type": "number", + "format": "double" + }, + "name": { + "type": "string", + "nullable": true + }, + "callsign": { + "type": "string", + "nullable": true + }, + "destination": { + "type": "string", + "nullable": true + }, + "eta": { + "type": "string", + "format": "date-time" + }, + "status": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "extraInfo": { + "type": "string", + "nullable": true + }, + "positionAccuracy": { + "type": "integer", + "format": "int32" + }, + "roT": { + "type": "integer", + "format": "int32" + }, + "timestampUTC": { + "type": "integer", + "format": "int32" + }, + "repeatIndicator": { + "type": "integer", + "format": "int32" + }, + "raimFlag": { + "type": "integer", + "format": "int32" + }, + "radioStatus": { + "type": "integer", + "format": "int32" + }, + "regional": { + "type": "integer", + "format": "int32" + }, + "regional2": { + "type": "integer", + "format": "int32" + }, + "spare": { + "type": "integer", + "format": "int32" + }, + "spare2": { + "type": "integer", + "format": "int32" + }, + "aisVersion": { + "type": "integer", + "format": "int32" + }, + "positionFixType": { + "type": "integer", + "format": "int32" + }, + "dte": { + "type": "integer", + "format": "int32" + }, + "bandFlag": { + "type": "integer", + "format": "int32" + }, + "receivedDate": { + "type": "string", + "format": "date-time" + }, + "messageTimestamp": { + "type": "string", + "format": "date-time" + }, + "lengthBow": { + "type": "integer", + "format": "int32" + }, + "lengthStern": { + "type": "integer", + "format": "int32" + }, + "widthPort": { + "type": "integer", + "format": "int32" + }, + "widthStarboard": { + "type": "integer", + "format": "int32" + }, + "source": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "AisApi.Models.sTargetSourceArrSB": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/AisApi.Models.APSStatus" + }, + "targetSourceArr": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AisApi.Models.sTargetSource" + }, + "nullable": true + } + }, + "additionalProperties": false + } + }, + "securitySchemes": { + "Basic": { + "type": "http", + "description": "Basic authentication added to authorization header", + "scheme": "basic" + } + } + }, + "security": [ + { + "Basic": [ ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/swagger/swagger_shipsapi.json b/src/main/resources/swagger/swagger_shipsapi.json new file mode 100644 index 0000000..aecbfbc --- /dev/null +++ b/src/main/resources/swagger/swagger_shipsapi.json @@ -0,0 +1,11075 @@ +{ + "openapi": "3.0.1", + "info": { + "title": "S&P Global - Ships Events PSC API", + "description": "Provides S&P Global Ships, Events and PSC data", + "version": "v1" + }, + "paths": { + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipDataByIHSLRorIMO": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipDataByIHSLRorIMO", + "description": " Sample request:\r\n```\r\n GET GetShipDataByIHSLRorIMO?IHSLRorIMO=1234567\r\n ```", + "parameters": [ + { + "name": "ihslrOrImo", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsByIHSLRorIMONumbers": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsByIHSLRorIMONumbers", + "description": " Sample request:\r\n```\r\n GET GetShipsByIHSLRorIMONumbers?IHSLRorIMONumbers=1234567,9876543\r\n ```", + "parameters": [ + { + "name": "ihslrOrImoNumbers", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsByIHSLRorIMONumbersAll": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsByIHSLRorIMONumbersAll", + "description": " Sample request:\r\n```\r\n GET GetShipsByIHSLRorIMONumbersAll?IMONumbers=1234567,9876543\r\n ```", + "parameters": [ + { + "name": "imoNumbers", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipMultiResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipMultiResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipMultiResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipDataByMMSI": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipDataByMMSI", + "description": " Sample request:\r\n```\r\n GET GetShipDataByMMSI?MMSI=234028000\r\n ```", + "parameters": [ + { + "name": "mmsi", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipDataByCallSign": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipDataByCallSign", + "description": " Sample request:\r\n```\r\n GET GetShipDataByCallSign?CallSign=MVWV7\r\n ```", + "parameters": [ + { + "name": "callSign", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsByName": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsByName", + "description": " Sample request:\r\n```\r\n GET GetShipsByName?ShipsCategory=1&NameString=Oceana\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "nameString", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsNeverExisted": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsNeverExisted", + "description": " Sample request:\r\n```\r\n GET GetShipsNeverExisted\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsByStatcode": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsByStatcode", + "description": " Sample request:\r\n```\r\n GET GetShipsByStatcode?Statcode=X11A2YP\r\n ```", + "parameters": [ + { + "name": "statcode", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsByFlag": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsByFlag", + "description": " Sample request:\r\n```\r\n GET GetShipsByFlag?FlagCode=GBI\r\n ```", + "parameters": [ + { + "name": "flagCode", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipChangesByLastUpdate": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipChangesByLastUpdate", + "description": " Sample request:\r\n```\r\n GET GetShipChangesByLastUpdate?ShipsCategory=1&Year=2023&Month=7&Day=5\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "year", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "month", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "day", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipChangesByLastUpdateDateRange": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipChangesByLastUpdateDateRange", + "description": " Sample request:\r\n```\r\n GET GetShipChangesByLastUpdateDateRange?ShipsCategory=1&FromYear=2023&FromMonth=5&FromDay=1&ToYear=2023&ToMonth=5&ToDay=10\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetCompanyDataByCode": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetCompanyDataByCode", + "description": " Sample request:\r\n```\r\n GET GetCompanyDataByCode?CompanyCode=3020695\r\n ```", + "parameters": [ + { + "name": "companyCode", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetCompaniesByName": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetCompaniesByName", + "description": " Sample request:\r\n```\r\n GET GetCompaniesByName?NameString=maersk\r\n ```", + "parameters": [ + { + "name": "nameString", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanySearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanySearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanySearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetCompanyChangesByLastUpdateDateRange": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetCompanyChangesByLastUpdateDateRange", + "description": " Sample request:\r\n```\r\n GET GetCompanyChangesByLastUpdateDateRange?FromYear=2023&FromMonth=4&FromDay=1&ToYear=2023&ToMonth=4&ToDay=10\r\n ```", + "parameters": [ + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanySearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanySearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanySearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetAssociatedDataByName": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetAssociatedDataByName", + "description": " Sample request:\r\n```\r\n GET GetAssociatedDataByName?EnglishName=Flag Code\r\n ```", + "parameters": [ + { + "name": "englishName", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetAssociatedFlagISOByName": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetAssociatedFlagISOByName", + "description": " Sample request:\r\n```\r\n GET GetAssociatedFlagISOByName\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedFlagISOResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedFlagISOResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedFlagISOResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetAssociatedShipTypeByName": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetAssociatedShipTypeByName", + "description": " Sample request:\r\n```\r\n GET GetAssociatedShipTypeByName\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedShipTypeResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedShipTypeResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedShipTypeResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsByExName": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsByExName", + "description": " Sample request:\r\n```\r\n GET GetShipsByExName?ShipsCategory=1&ExNameString=oscar\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "exNameString", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipsByOfficialNumber": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipsByOfficialNumber", + "description": " Sample request:\r\n```\r\n GET GetShipsByOfficialNumber?OfficialNumber=741896\r\n ```", + "parameters": [ + { + "name": "officialNumber", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetDownloadEntitlement": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetDownloadEntitlement", + "description": " Sample request:\r\n```\r\n GET GetDownloadEntitlement\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.DownloadEntitlementResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.DownloadEntitlementResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.DownloadEntitlementResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetShipCountByLastUpdateYearAndMonth": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetShipCountByLastUpdateYearAndMonth", + "description": " Sample request:\r\n```\r\n GET GetShipCountByLastUpdateYearAndMonth\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipCountResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipCountResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipCountResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetAllIMONumbersToDelete": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetAllIMONumbersToDelete", + "description": " Sample request:\r\n```\r\n GET GetAllIMONumbersToDelete\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/APSShipService.svc/RESTFul/GetAllIMONumbers": { + "get": { + "tags": [ + "Ships API" + ], + "summary": "GetAllIMONumbers", + "description": " Sample request:\r\n```\r\n GET GetAllIMONumbers?includeDeadShips=0\r\n ```", + "parameters": [ + { + "name": "includeDeadShips", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventDataByEventID": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventDataByEventID", + "description": " Sample request:\r\n```\r\n GET GetEventDataByEventID?EventID=512591\r\n ```", + "parameters": [ + { + "name": "eventID", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Event" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Event" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Event" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByIHSLRorIMO": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByIHSLRorIMO", + "description": " Sample request:\r\n```\r\n GET GetEventListByIHSLRorIMO?IHSLRorIMO=1234567\r\n ```", + "parameters": [ + { + "name": "ihslrOrImo", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByName": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByName", + "description": " Sample request:\r\n```\r\n GET GetEventListByName?Name=merrick\r\n ```", + "parameters": [ + { + "name": "name", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetDownloadEntitlement": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetDownloadEntitlement", + "description": " Sample request:\r\n```\r\n GET GetDownloadEntitlement\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeDownloadEntitlementResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeDownloadEntitlementResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeDownloadEntitlementResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetAssociatedDataByName": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetAssociatedDataByName", + "description": " Sample request:\r\n```\r\n GET GetAssociatedDataByName?EnglishName=Classification Society\r\n ```", + "parameters": [ + { + "name": "englishName", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetAssociatedFlagISOByName": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetAssociatedFlagISOByName", + "description": " Sample request:\r\n```\r\n GET GetAssociatedFlagISOByName\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedFlagISOResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedFlagISOResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedFlagISOResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByEventStartDate": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByEventStartDate", + "description": " Sample request:\r\n```\r\n GET GetEventListByEventStartDate?FromYear=2023&FromMonth=7&FromDay=1\r\n ```", + "parameters": [ + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByEventStartDateRange": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByEventStartDateRange", + "description": " Sample request:\r\n```\r\n GET GetEventListByEventStartDateRange?FromYear=2023&FromMonth=1&FromDay=1&ToYear=2023&ToMonth=2&ToDay=1\r\n ```", + "parameters": [ + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByEventUpdateDate": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByEventUpdateDate", + "description": " Sample request:\r\n```\r\n GET GetEventListByEventUpdateDate?FromYear=2023&FromMonth=12&FromDay=1&FromHour=20&FromMinute=30\r\n ```", + "parameters": [ + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromHour", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMinute", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByEventUpdateDateRange": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByEventUpdateDateRange", + "description": " Sample request:\r\n```\r\n GET GetEventListByEventUpdateDateRange?FromYear=2023&FromMonth=9&FromDay=9&FromHour=17&FromMinute=15&ToYear=2023&ToMonth=9&ToDay=1&ToHour=17&ToMinute=45\r\n ```", + "parameters": [ + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromHour", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMinute", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toHour", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMinute", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventCountByLastUpdateYearAndMonth": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventCountByLastUpdateYearAndMonth", + "description": " Sample request:\r\n```\r\n GET GetEventCountByLastUpdateYearAndMonth\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventCountResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventCountResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventCountResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByEventChangeDate": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByEventChangeDate", + "description": " Sample request:\r\n```\r\n GET GetEventListByEventChangeDate?FromYear=2023&FromMonth=8&FromDay=1&FromHour=20&FromMinute=00\r\n ```", + "parameters": [ + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromHour", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMinute", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/MaritimeAndTradeEventsService.svc/RESTFul/GetEventListByEventChangeDateRange": { + "get": { + "tags": [ + "Events API" + ], + "summary": "GetEventListByEventChangeDateRange", + "description": " Sample request:\r\n```\r\n GET GetEventListByEventChangeDateRange?FromYear=2023&FromMonth=6&FromDay=15&FromHour=11&FromMinute=20&ToYear=2023&ToMonth=6&ToDay=15&ToHour=11&ToMinute=50\r\n ```", + "parameters": [ + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromHour", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMinute", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toHour", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMinute", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.EventResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCListOfChangesByInspectionDateRange": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCListOfChangesByInspectionDateRange", + "description": " Sample request:\r\n```\r\n GET GetPSCListOfChangesByInspectionDateRange?ShipsCategory=1&FromYear=2023&FromMonth=8&FromDay=1&ToYear=2023&ToMonth=8&ToDay=2\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCListOfChangesByLastUpdateDateRange": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCListOfChangesByLastUpdateDateRange", + "description": " Sample request:\r\n```\r\n GET GetPSCListOfChangesByLastUpdateDateRange?ShipsCategory=1&FromYear=2023&FromMonth=11&FromDay=1&ToYear=2023&ToMonth=11&ToDay=2\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCDataByInspectionID": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCDataByInspectionID", + "description": " Sample request:\r\n```\r\n GET GetPSCDataByInspectionID?InspectionId={sInspectionId}\r\n ```", + "parameters": [ + { + "name": "inspectionId", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCDataByIHSLRorIMO": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCDataByIHSLRorIMO", + "description": " Sample request:\r\n```\r\n GET GetPSCDataByIHSLRorIMO?IHSLRorIMO=1234567\r\n ```", + "parameters": [ + { + "name": "ihslrOrImo", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCDataByInspectionDateRange": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCDataByInspectionDateRange", + "description": " Sample request:\r\n```\r\n GET GetPSCDataByInspectionDateRange?ShipsCategory=1&FromYear=2023&FromMonth=10&FromDay=1&ToYear=2023&ToMonth=10&ToDay=2\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCDataByLastUpdateDateRange": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCDataByLastUpdateDateRange", + "description": " Sample request:\r\n```\r\n GET GetPSCDataByLastUpdateDateRange?ShipsCategory=1&FromYear=2023&FromMonth=2&FromDay=1&ToYear=2023&ToMonth=2&ToDay=28\r\n ```", + "parameters": [ + { + "name": "shipsCategory", + "in": "query", + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.ShipsCategory" + } + }, + { + "name": "fromYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "fromDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toYear", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toMonth", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "toDay", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCListOfInspectionsByIHSLRorIMO": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCListOfInspectionsByIHSLRorIMO", + "description": " Sample request:\r\n```\r\n GET GetPSCListOfInspectionsByIHSLRorIMO?IHSLRorIMO={nIHSLRorIMO}\r\n ```", + "parameters": [ + { + "name": "ihslrOrImo", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCInspectionsSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCInspectionsSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCInspectionsSearchResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCCountByLastUpdateYearAndMonth": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCCountByLastUpdateYearAndMonth", + "description": " Sample request:\r\n```\r\n GET GetPSCCountByLastUpdateYearAndMonth\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCListResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCListResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCListResult" + } + } + } + } + } + } + }, + "/MaritimeWCF/PSCService.svc/RESTFul/GetPSCDeletedInspectionIDs": { + "get": { + "tags": [ + "PSC API" + ], + "summary": "GetPSCDeletedInspectionIDs", + "description": " Sample request:\r\n```\r\n GET GetPSCDeletedInspectionIDs\r\n ```", + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCInspectionsSearchResult" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCInspectionsSearchResult" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCInspectionsSearchResult" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "ShipsEventsPscApi.Models.APSAdditionalInformationDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "tweenDeckFixed": { + "type": "string", + "nullable": true + }, + "tweenDeckPortable": { + "type": "string", + "nullable": true + }, + "deckHeatExchangerInd": { + "type": "string", + "nullable": true + }, + "deckHeatExchangerMaterial": { + "type": "string", + "nullable": true + }, + "drillBargeInd": { + "type": "string", + "nullable": true + }, + "drillDepthMax": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "productionVesselInd": { + "type": "string", + "nullable": true + }, + "shipEmail": { + "type": "string", + "nullable": true + }, + "waterDepthMax": { + "type": "string", + "nullable": true + }, + "satComID": { + "type": "string", + "nullable": true + }, + "satComAnsBack": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSArrangementsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "structure": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "position": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + }, + "material": { + "type": "string", + "nullable": true + }, + "length": { + "type": "string", + "nullable": true + }, + "breadth": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAssociatedDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "code": { + "type": "string", + "nullable": true + }, + "decode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAssociatedFlagISODetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "code": { + "type": "string", + "nullable": true + }, + "decode": { + "type": "string", + "nullable": true + }, + "isO2": { + "type": "string", + "nullable": true + }, + "isO3": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAssociatedFlagISOResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "associatedName": { + "type": "string", + "nullable": true + }, + "associatedCount": { + "type": "integer", + "format": "int32" + }, + "apsAssociatedFlagISODetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedFlagISODetail" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAssociatedResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "associatedName": { + "type": "string", + "nullable": true + }, + "associatedCount": { + "type": "integer", + "format": "int32" + }, + "apsAssociatedDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedDetail" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAssociatedShipTypeDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "statCode5": { + "type": "string", + "nullable": true + }, + "shiptypeLevel5": { + "type": "string", + "nullable": true + }, + "level4Code": { + "type": "string", + "nullable": true + }, + "shipTypeLevel4": { + "type": "string", + "nullable": true + }, + "level3Code": { + "type": "string", + "nullable": true + }, + "shipTypeLevel3": { + "type": "string", + "nullable": true + }, + "level2Code": { + "type": "string", + "nullable": true + }, + "shipTypeLevel2": { + "type": "string", + "nullable": true + }, + "shipTypeLevel1Code": { + "type": "string", + "nullable": true + }, + "shiptypeLevel1": { + "type": "string", + "nullable": true + }, + "hullType": { + "type": "string", + "nullable": true + }, + "subGroup": { + "type": "string", + "nullable": true + }, + "subType": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAssociatedShipTypeResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "associatedName": { + "type": "string", + "nullable": true + }, + "associatedCount": { + "type": "integer", + "format": "int32" + }, + "apsAssociatedShipTypeDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAssociatedShipTypeDetail" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAuxEngineDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "bore": { + "type": "string", + "nullable": true + }, + "engineDesigner": { + "type": "string", + "nullable": true + }, + "engineModel": { + "type": "string", + "nullable": true + }, + "engineBuilder": { + "type": "string", + "nullable": true + }, + "engineSequence": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "maxPower": { + "type": "string", + "nullable": true + }, + "numberOfCylinders": { + "type": "string", + "nullable": true + }, + "stroke": { + "type": "string", + "nullable": true + }, + "strokeType": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSAuxGeneratorDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "acdc": { + "type": "string", + "nullable": true + }, + "frequency": { + "type": "string", + "nullable": true + }, + "kwEach": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "mainEngineDriven": { + "type": "string", + "nullable": true + }, + "number": { + "type": "string", + "nullable": true + }, + "seq": { + "type": "string", + "nullable": true + }, + "voltage1": { + "type": "string", + "nullable": true + }, + "voltage2": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSBoilerDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "boiler": { + "type": "string", + "nullable": true + }, + "boilerCode": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "numberOfBoilers": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSBoilersExpandedDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "builder": { + "type": "string", + "nullable": true + }, + "design": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "numberOfBoilers": { + "type": "string", + "nullable": true + }, + "boilerTypeCode": { + "type": "string", + "nullable": true + }, + "boilerTypeDecode": { + "type": "string", + "nullable": true + }, + "firingTypeCode": { + "type": "string", + "nullable": true + }, + "firingTypeDecode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSBuilderAddressDetail": { + "type": "object", + "properties": { + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "builderCode": { + "type": "string", + "nullable": true + }, + "contact": { + "type": "string", + "nullable": true + }, + "countryCode": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailAddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "shipBuilder": { + "type": "string", + "nullable": true + }, + "shipBuilderFullStyle": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "town": { + "type": "string", + "nullable": true + }, + "townCode": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + }, + "builderStatus": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCapacitiesDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "bale": { + "type": "string", + "nullable": true + }, + "horsepower": { + "type": "string", + "nullable": true + }, + "numberOfBarges": { + "type": "string", + "nullable": true + }, + "bollardPull": { + "type": "string", + "nullable": true + }, + "numberOfCars": { + "type": "string", + "nullable": true + }, + "gasCapacity": { + "type": "string", + "nullable": true + }, + "grainCapacity": { + "type": "string", + "nullable": true + }, + "indicatedHorsepower": { + "type": "string", + "nullable": true + }, + "liquidCapacity": { + "type": "string", + "nullable": true + }, + "numberOfPassengers": { + "type": "string", + "nullable": true + }, + "numberRefrigeratedContainers": { + "type": "string", + "nullable": true + }, + "numberOfTEU": { + "type": "string", + "nullable": true + }, + "numberOfTrucks": { + "type": "string", + "nullable": true + }, + "numberOfVehicles": { + "type": "string", + "nullable": true + }, + "numberOfRailWagons": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCargoPumpDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "cubicMetersCapacity": { + "type": "string", + "nullable": true + }, + "cubicTonsCapacity": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "numberOfPumps": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSClassCurrentDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "class": { + "type": "string", + "nullable": true + }, + "classCode": { + "type": "string", + "nullable": true + }, + "classID": { + "type": "string", + "nullable": true + }, + "classIndicator": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSClassHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "class": { + "type": "string", + "nullable": true + }, + "classCode": { + "type": "string", + "nullable": true + }, + "classIndicator": { + "type": "string", + "nullable": true + }, + "classID": { + "type": "string", + "nullable": true + }, + "currentIndicator": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSClassWithdrawnDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "class": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "reason": { + "type": "string", + "nullable": true + }, + "withdrawnDate": { + "type": "string", + "format": "date-time", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyCompliance": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "owCode": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "companyOnOFACSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnUNSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnEUSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnBESSanctionList": { + "type": "string", + "nullable": true + }, + "companyInOFACSanctionedCountry": { + "type": "string", + "nullable": true + }, + "companyInFATFJurisdiction": { + "type": "string", + "nullable": true + }, + "parentCompanyComplianceRisk": { + "type": "string", + "nullable": true + }, + "overallComplianceStatus": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyComplianceDetails": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "owCode": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "companyOnOFACSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnUNSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnEUSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnBESSanctionList": { + "type": "string", + "nullable": true + }, + "companyInOFACSanctionedCountry": { + "type": "string", + "nullable": true + }, + "companyInFATFJurisdiction": { + "type": "string", + "nullable": true + }, + "parentCompanyComplianceRisk": { + "type": "string", + "nullable": true + }, + "companyOverallComplianceStatus": { + "type": "string", + "nullable": true + }, + "companyOnAustralianSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnCanadianSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnSwissSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnOFACSSIList": { + "type": "string", + "nullable": true + }, + "companyOnOFACNonSDNSanctionList": { + "type": "string", + "nullable": true + }, + "companyOnUAESanctionList": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "nationalityOfControl": { + "type": "string", + "nullable": true + }, + "nationalityOfRegistration": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetailsAndParentCodeDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "nationalityOfControl": { + "type": "string", + "nullable": true + }, + "nationalityOfRegistration": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "parentCompany": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetailsComplexAndParentCodeDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "careOfCode": { + "type": "string", + "nullable": true + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullCompanyName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "nationalityofControl": { + "type": "string", + "nullable": true + }, + "nationalityofRegistration": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "parentCompany": { + "type": "string", + "nullable": true + }, + "poBox": { + "type": "string", + "nullable": true + }, + "postPostcode": { + "type": "string", + "nullable": true + }, + "prePostcode": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding1": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding2": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding3": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "street": { + "type": "string", + "nullable": true + }, + "streetNumber": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "townName": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetailsComplexDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "careOfCode": { + "type": "string", + "nullable": true + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "nationalityofControl": { + "type": "string", + "nullable": true + }, + "nationalityofRegistration": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "poBox": { + "type": "string", + "nullable": true + }, + "postPostcode": { + "type": "string", + "nullable": true + }, + "prePostcode": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding1": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding2": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding3": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "street": { + "type": "string", + "nullable": true + }, + "streetNumber": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "townName": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetailsComplexWithCodesAndParentDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "careOfCode": { + "type": "string", + "nullable": true + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "foundedDate": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "locationCode": { + "type": "string", + "nullable": true + }, + "nationalityofControl": { + "type": "string", + "nullable": true + }, + "nationalityofControlCode": { + "type": "string", + "nullable": true + }, + "nationalityofRegistration": { + "type": "string", + "nullable": true + }, + "nationalityofRegistrationCode": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "parentCompany": { + "type": "string", + "nullable": true + }, + "poBox": { + "type": "string", + "nullable": true + }, + "postPostcode": { + "type": "string", + "nullable": true + }, + "prePostcode": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding1": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding2": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding3": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "street": { + "type": "string", + "nullable": true + }, + "streetNumber": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "townName": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetailsComplexWithCodesDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "careOfCode": { + "type": "string", + "nullable": true + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "foundedDate": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "locationCode": { + "type": "string", + "nullable": true + }, + "nationalityofControl": { + "type": "string", + "nullable": true + }, + "nationalityofControlCode": { + "type": "string", + "nullable": true + }, + "nationalityofRegistration": { + "type": "string", + "nullable": true + }, + "nationalityofRegistrationCode": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "poBox": { + "type": "string", + "nullable": true + }, + "postPostcode": { + "type": "string", + "nullable": true + }, + "prePostcode": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding1": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding2": { + "type": "string", + "nullable": true + }, + "roomFloorBuilding3": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "street": { + "type": "string", + "nullable": true + }, + "streetNumber": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "townName": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetailsWithCodesAndParentCodeDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "locationCode": { + "type": "string", + "nullable": true + }, + "nationalityofControl": { + "type": "string", + "nullable": true + }, + "nationalityofControlCode": { + "type": "string", + "nullable": true + }, + "nationalityofRegistration": { + "type": "string", + "nullable": true + }, + "nationalityofRegistrationCode": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "parentCompany": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyDetailsWithCodesDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "locationCode": { + "type": "string", + "nullable": true + }, + "nationalityofControl": { + "type": "string", + "nullable": true + }, + "nationalityofControlCode": { + "type": "string", + "nullable": true + }, + "nationalityofRegistration": { + "type": "string", + "nullable": true + }, + "nationalityofRegistrationCode": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "parentCompany": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyFleetCountsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "docCount": { + "type": "string", + "nullable": true + }, + "fleetSize": { + "type": "string", + "nullable": true + }, + "groupOwnerCount": { + "type": "string", + "nullable": true + }, + "inServiceCount": { + "type": "string", + "nullable": true + }, + "operatorCount": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "registeredOwnerCount": { + "type": "string", + "nullable": true + }, + "shipManagerCount": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "technicalManagerCount": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyInformationDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailaddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "fullName": { + "type": "string", + "nullable": true + }, + "nationalityofControl": { + "type": "string", + "nullable": true + }, + "nationalityofRegistration": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "shortCompanyName": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + }, + "countryOfRegistration": { + "type": "string", + "nullable": true + }, + "countryOfRegistrationCode": { + "type": "string", + "nullable": true + }, + "imoCompanyNumber": { + "type": "string", + "nullable": true + }, + "operationalAddress": { + "type": "string", + "nullable": true + }, + "ownerNameAdministrationNameStyle": { + "type": "string", + "nullable": true + }, + "ownerNameLRFNameStyle": { + "type": "string", + "nullable": true + }, + "ownerRegisteredAddressAdministrationSupplied": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyOrderBookCountsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "docOrderbookCount": { + "type": "string", + "nullable": true + }, + "groupOwnerOrderbookCount": { + "type": "string", + "nullable": true + }, + "operatorOrderbookCount": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "registeredOrderbookOwnerCount": { + "type": "string", + "nullable": true + }, + "shipManagerOrderbookCount": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyPersonnelDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "afterOfficeHoursTelephone": { + "type": "string", + "nullable": true + }, + "directLine": { + "type": "string", + "nullable": true + }, + "email": { + "type": "string", + "nullable": true + }, + "fullname": { + "type": "string", + "nullable": true + }, + "generalContact": { + "type": "string", + "nullable": true + }, + "initials": { + "type": "string", + "nullable": true + }, + "marketingContact": { + "type": "string", + "nullable": true + }, + "mobile": { + "type": "string", + "nullable": true + }, + "owcode": { + "type": "string", + "nullable": true + }, + "parentOwcode": { + "type": "string", + "nullable": true + }, + "personnelID": { + "type": "string", + "nullable": true + }, + "position": { + "type": "string", + "nullable": true + }, + "salutation": { + "type": "string", + "nullable": true + }, + "surname": { + "type": "string", + "nullable": true + }, + "technicalContact": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "companyCount": { + "type": "integer", + "format": "int32" + }, + "apsCompanyInformationDetail": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyInformationDetail" + }, + "apsCompanyCompliance": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyCompliance" + }, + "apsCompanyComplianceDetails": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyComplianceDetails" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanySearchResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "companyCount": { + "type": "integer", + "format": "int32" + }, + "companies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyInformationDetail" + }, + "nullable": true + }, + "companyCompliance": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyCompliance" + }, + "nullable": true + }, + "companyComplianceDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyComplianceDetails" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCompanyVesselRelationshipsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "docCode": { + "type": "string", + "nullable": true + }, + "docCompany": { + "type": "string", + "nullable": true + }, + "docGroup": { + "type": "string", + "nullable": true + }, + "docGroupCode": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwner": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCode": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "operator": { + "type": "string", + "nullable": true + }, + "operatorCode": { + "type": "string", + "nullable": true + }, + "operatorGroup": { + "type": "string", + "nullable": true + }, + "operatorGroupCode": { + "type": "string", + "nullable": true + }, + "registeredOwner": { + "type": "string", + "nullable": true + }, + "registeredOwnerCode": { + "type": "string", + "nullable": true + }, + "shipManager": { + "type": "string", + "nullable": true + }, + "shipManagerCode": { + "type": "string", + "nullable": true + }, + "shipManagerGroup": { + "type": "string", + "nullable": true + }, + "shipManagerGroupCode": { + "type": "string", + "nullable": true + }, + "technicalManager": { + "type": "string", + "nullable": true + }, + "technicalManagerCode": { + "type": "string", + "nullable": true + }, + "technicalManagerGroup": { + "type": "string", + "nullable": true + }, + "technicalManagerGroupCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSCrewListDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "id": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "shipname": { + "type": "string", + "nullable": true + }, + "crewListDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "nationality": { + "type": "string", + "nullable": true + }, + "totalCrew": { + "type": "string", + "nullable": true + }, + "totalRatings": { + "type": "string", + "nullable": true + }, + "totalOfficers": { + "type": "string", + "nullable": true + }, + "totalCadets": { + "type": "string", + "nullable": true + }, + "totalTrainees": { + "type": "string", + "nullable": true + }, + "totalRidingSquad": { + "type": "string", + "nullable": true + }, + "totalUndeclared": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSDOCHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "docCompany": { + "type": "string", + "nullable": true + }, + "docCompanyCode": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSDUNSNumberDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "owcode": { + "type": "string", + "nullable": true + }, + "dunsNumber": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSDarkActivityConfirmed": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "mmsi": { + "type": "string", + "nullable": true + }, + "vessel_Name": { + "type": "string", + "nullable": true + }, + "dark_Hours": { + "type": "string", + "nullable": true + }, + "dark_Activity": { + "type": "string", + "nullable": true + }, + "dark_Status": { + "type": "string", + "nullable": true + }, + "area_Id": { + "type": "string", + "nullable": true + }, + "area_Name": { + "type": "string", + "nullable": true + }, + "area_Country": { + "type": "string", + "nullable": true + }, + "dark_Time": { + "type": "string", + "nullable": true + }, + "dark_Latitude": { + "type": "string", + "nullable": true + }, + "dark_Longitude": { + "type": "string", + "nullable": true + }, + "dark_Speed": { + "type": "string", + "nullable": true + }, + "dark_Heading": { + "type": "string", + "nullable": true + }, + "dark_Draught": { + "type": "string", + "nullable": true + }, + "nextSeen": { + "type": "string", + "nullable": true + }, + "nextSeen_Latitude": { + "type": "string", + "nullable": true + }, + "nextSeen_Longitude": { + "type": "string", + "nullable": true + }, + "nextSeen_Speed": { + "type": "string", + "nullable": true + }, + "nextSeen_Draught": { + "type": "string", + "nullable": true + }, + "nextSeen_Heading": { + "type": "string", + "nullable": true + }, + "dark_Reported_Destination": { + "type": "string", + "nullable": true + }, + "nextSeen_Reported_Destination": { + "type": "string", + "nullable": true + }, + "last_Port_of_Call": { + "type": "string", + "nullable": true + }, + "last_Port_Country_Code": { + "type": "string", + "nullable": true + }, + "last_Port_Country": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSDefectDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "action_1": { + "type": "string", + "nullable": true + }, + "action_2": { + "type": "string", + "nullable": true + }, + "action_3": { + "type": "string", + "nullable": true + }, + "action_Code_1": { + "type": "string", + "nullable": true + }, + "action_Code_2": { + "type": "string", + "nullable": true + }, + "action_Code_3": { + "type": "string", + "nullable": true + }, + "classIsResponsible": { + "type": "string", + "nullable": true + }, + "defect_Code": { + "type": "string", + "nullable": true + }, + "defect_ID": { + "type": "string", + "nullable": true + }, + "defect_Text": { + "type": "string", + "nullable": true + }, + "defectiveItemCode": { + "type": "string", + "nullable": true + }, + "detentionReasonDeficiency": { + "type": "string", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "main_Defect_Code": { + "type": "string", + "nullable": true + }, + "main_Defect_Text": { + "type": "string", + "nullable": true + }, + "natureOfDefectCode": { + "type": "string", + "nullable": true + }, + "natureOfDefectDecode": { + "type": "string", + "nullable": true + }, + "other_Action": { + "type": "string", + "nullable": true + }, + "other_Recognised_Org_Resp": { + "type": "string", + "nullable": true + }, + "recognised_Org_Resp": { + "type": "string", + "nullable": true + }, + "recognised_Org_Resp_Code": { + "type": "string", + "nullable": true + }, + "recognised_Org_Resp_YN": { + "type": "string", + "nullable": true + }, + "isAccidentalDamage": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSDestinationDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "aisDestinationRaw": { + "type": "string", + "nullable": true + }, + "destinationCountry": { + "type": "string", + "nullable": true + }, + "destinationCountryCode": { + "type": "string", + "nullable": true + }, + "destinationPortOfCall": { + "type": "string", + "nullable": true + }, + "eta": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "lastUpdated": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "shipName": { + "type": "string", + "nullable": true + }, + "worldPortNumber": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSEngineBuilderDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "engineBuilderLargestCode": { + "type": "string", + "nullable": true + }, + "engineBuilderShortName": { + "type": "string", + "nullable": true + }, + "engineBuilderFullName": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "townName": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "emailAddress": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "countryCode": { + "type": "string", + "nullable": true + }, + "townCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSFixtureDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "charterer": { + "type": "string", + "nullable": true + }, + "chartererCode": { + "type": "string", + "nullable": true + }, + "charterPartyCommodity": { + "type": "string", + "nullable": true + }, + "charterPartyDates": { + "type": "string", + "nullable": true + }, + "charterPartyRate": { + "type": "string", + "nullable": true + }, + "charterPartyTerms": { + "type": "string", + "nullable": true + }, + "charterPartyTonnage": { + "type": "string", + "nullable": true + }, + "commoditySubtype": { + "type": "string", + "nullable": true + }, + "commodity": { + "type": "string", + "nullable": true + }, + "dateOffFixture": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "dateOnFixture": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "dateReported": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "destinationArea": { + "type": "string", + "nullable": true + }, + "destinationPort": { + "type": "string", + "nullable": true + }, + "destinationPortCode": { + "type": "string", + "nullable": true + }, + "fixtureID": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "originArea": { + "type": "string", + "nullable": true + }, + "originPort": { + "type": "string", + "nullable": true + }, + "originPortCode": { + "type": "string", + "nullable": true + }, + "shipnameReported": { + "type": "string", + "nullable": true + }, + "size": { + "type": "string", + "nullable": true + }, + "timeCharterRate": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSFlagHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "flag": { + "type": "string", + "nullable": true + }, + "flagCode": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSFlagStateSpecialDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "countryOfRegistration": { + "type": "string", + "nullable": true + }, + "countryOfRegistrationCode": { + "type": "string", + "nullable": true + }, + "imoCompanyNumber": { + "type": "string", + "nullable": true + }, + "lastChangeDate": { + "type": "string", + "nullable": true + }, + "operationalAddress": { + "type": "string", + "nullable": true + }, + "ownerNameAdministrationNameStyle": { + "type": "string", + "nullable": true + }, + "ownerNameLRFNameStyle": { + "type": "string", + "nullable": true + }, + "ownerRegisteredAddressAdministrationSupplied": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSGrossTonnageHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "gt": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSGroupBeneficialOwnerHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwner": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCode": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSIceClassDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "iceClass": { + "type": "string", + "nullable": true + }, + "iceClassCode": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSInspectionDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "authorisation": { + "type": "string", + "nullable": true + }, + "callSign": { + "type": "string", + "nullable": true + }, + "cargo": { + "type": "string", + "nullable": true + }, + "charterer": { + "type": "string", + "nullable": true + }, + "class": { + "type": "string", + "nullable": true + }, + "country": { + "type": "string", + "nullable": true + }, + "date_Release": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "detained": { + "type": "string", + "nullable": true + }, + "dwt": { + "type": "string", + "nullable": true + }, + "expanded_Inspection": { + "type": "string", + "nullable": true + }, + "flag": { + "type": "string", + "nullable": true + }, + "follow_Up_Inspection": { + "type": "string", + "nullable": true + }, + "gt": { + "type": "string", + "nullable": true + }, + "inspection_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "manager": { + "type": "string", + "nullable": true + }, + "no_Days_Detained": { + "type": "string", + "nullable": true + }, + "no_Defects": { + "type": "string", + "nullable": true + }, + "number_Part_Days_Detained": { + "type": "string", + "nullable": true + }, + "other_Inspection_Type": { + "type": "string", + "nullable": true + }, + "owner": { + "type": "string", + "nullable": true + }, + "port": { + "type": "string", + "nullable": true + }, + "shipname": { + "type": "string", + "nullable": true + }, + "shiptype": { + "type": "string", + "nullable": true + }, + "source": { + "type": "string", + "nullable": true + }, + "yob": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSInvestigationIndicatorsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "changeType": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "notes": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSLastRecordedPortOfCallDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "arrivalDateFull": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "country": { + "type": "string", + "nullable": true + }, + "hoursInPort": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "moveType": { + "type": "string", + "nullable": true + }, + "port": { + "type": "string", + "nullable": true + }, + "sailDateFull": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "worldPortNumber": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSLiftingGearDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "gearType": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "maxSWLOfGear": { + "type": "string", + "nullable": true + }, + "numberOfGears": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSMainEngineDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "bhpOfMainOilEngines": { + "type": "string", + "nullable": true + }, + "bore": { + "type": "string", + "nullable": true + }, + "cylinderArrangementCode": { + "type": "string", + "nullable": true + }, + "cylinderArrangementDecode": { + "type": "string", + "nullable": true + }, + "engineBuilder": { + "type": "string", + "nullable": true + }, + "engineBuilderCode": { + "type": "string", + "nullable": true + }, + "engineDesigner": { + "type": "string", + "nullable": true + }, + "engineMakerCode": { + "type": "string", + "nullable": true + }, + "engineModel": { + "type": "string", + "nullable": true + }, + "engineType": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "numberOfCylinders": { + "type": "string", + "nullable": true + }, + "position": { + "type": "string", + "nullable": true + }, + "powerBHP": { + "type": "string", + "nullable": true + }, + "powerKW": { + "type": "string", + "nullable": true + }, + "rpm": { + "type": "string", + "nullable": true + }, + "stroke": { + "type": "string", + "nullable": true + }, + "strokeType": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSMainGeneratorDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "aC_DCIndicator": { + "type": "string", + "nullable": true + }, + "frequency": { + "type": "string", + "nullable": true + }, + "generatorMaker": { + "type": "string", + "nullable": true + }, + "generatorPosition": { + "type": "string", + "nullable": true + }, + "kw": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "number": { + "type": "string", + "nullable": true + }, + "sequenceNumber": { + "type": "string", + "nullable": true + }, + "voltage": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSNameHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "effective_Date": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "vesselName": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSOFACReportDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "inspectedDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSOperatorHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "operator": { + "type": "string", + "nullable": true + }, + "operatorCode": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSOwnerHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "owner": { + "type": "string", + "nullable": true + }, + "ownerCode": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSPandIHistory": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "pandIClubCode": { + "type": "string", + "nullable": true + }, + "pandIClubDecode": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "source": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSPropellerDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "nozzleType": { + "type": "string", + "nullable": true + }, + "propellerPosition": { + "type": "string", + "nullable": true + }, + "propellerType": { + "type": "string", + "nullable": true + }, + "propellerTypeCode": { + "type": "string", + "nullable": true + }, + "rpmMaximum": { + "type": "string", + "nullable": true + }, + "rpmService": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSRORODoorsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "roroDoorPosition": { + "type": "string", + "nullable": true + }, + "roroDoorWidth": { + "type": "string", + "nullable": true + }, + "roroDoorHeight": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSRORORampsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "numberOfRORORamps": { + "type": "string", + "nullable": true + }, + "roroRampPosition": { + "type": "string", + "nullable": true + }, + "roroRampLength": { + "type": "string", + "nullable": true + }, + "roroRampWidth": { + "type": "string", + "nullable": true + }, + "roroRampSWL": { + "type": "string", + "nullable": true + }, + "roroRampInclinationUp": { + "type": "string", + "nullable": true + }, + "roroRampInclinationDown": { + "type": "string", + "nullable": true + }, + "roroRampMaximumAxleWeight": { + "type": "string", + "nullable": true + }, + "roroRampType": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSRecentTerrestrialPositionDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "heading": { + "type": "string", + "nullable": true + }, + "lastUpdateReceived": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "latitude": { + "type": "string", + "nullable": true + }, + "longitude": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "speed": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSSafetyManagementCertificateHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateAuditor": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateConventionOrVol": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateDateExpires": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateDateIssued": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateDOCCompany": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateFlag": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateIssuer": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateOtherDescription": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateShipName": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateShipType": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateSource": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateCompanyCode": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSSalesDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "reportedSoldTo": { + "type": "string", + "nullable": true + }, + "reportedSoldToCode": { + "type": "string", + "nullable": true + }, + "saleDate": { + "type": "string", + "nullable": true + }, + "salePriceUSD": { + "type": "string", + "nullable": true + }, + "salesText": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSScrubberDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "scrubberDesigner": { + "type": "string", + "nullable": true + }, + "scrubberRetrofitted": { + "type": "string", + "nullable": true + }, + "scrubberRetrofittedYear": { + "type": "string", + "nullable": true + }, + "scrubberType": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipBuilderAndSubContractorDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "builderCode": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "section": { + "type": "string", + "nullable": true + }, + "sequenceNumber": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipBuilderDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "builderCode": { + "type": "string", + "nullable": true + }, + "builderStatus": { + "type": "string", + "nullable": true + }, + "contact": { + "type": "string", + "nullable": true + }, + "countryCode": { + "type": "string", + "nullable": true + }, + "countryName": { + "type": "string", + "nullable": true + }, + "emailAddress": { + "type": "string", + "nullable": true + }, + "facsimile": { + "type": "string", + "nullable": true + }, + "fullAddress": { + "type": "string", + "nullable": true + }, + "shipbuilder": { + "type": "string", + "nullable": true + }, + "shipbuilderFullStyle": { + "type": "string", + "nullable": true + }, + "telephone": { + "type": "string", + "nullable": true + }, + "telex": { + "type": "string", + "nullable": true + }, + "town": { + "type": "string", + "nullable": true + }, + "townCode": { + "type": "string", + "nullable": true + }, + "website": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipBuilderHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "builderCode": { + "type": "string", + "nullable": true + }, + "builderHistory": { + "type": "string", + "nullable": true + }, + "builderType": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipCallSignAndMmsiHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "seqNo": { + "type": "string", + "nullable": true + }, + "callSign": { + "type": "string", + "nullable": true + }, + "mmsi": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipCertificateAllDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "certificate_ID": { + "type": "string", + "nullable": true + }, + "certificate_Title": { + "type": "string", + "nullable": true + }, + "certificate_Title_Code": { + "type": "string", + "nullable": true + }, + "class_SOC_Of_Issuer": { + "type": "string", + "nullable": true + }, + "expiry_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "issue_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "issuing_Authority": { + "type": "string", + "nullable": true + }, + "issuing_Authority_Code": { + "type": "string", + "nullable": true + }, + "last_Survey_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "latest_Survey_Place": { + "type": "string", + "nullable": true + }, + "latest_Survey_Place_Code": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "other_Issuing_Authority": { + "type": "string", + "nullable": true + }, + "other_Survey_Authority": { + "type": "string", + "nullable": true + }, + "survey_Authority": { + "type": "string", + "nullable": true + }, + "survey_Authority_Code": { + "type": "string", + "nullable": true + }, + "survey_Authority_Type": { + "type": "string", + "nullable": true + }, + "inspection_Date": { + "type": "string", + "nullable": true + }, + "inspected_By": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipCertificateDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "certificate_ID": { + "type": "string", + "nullable": true + }, + "certificate_Title": { + "type": "string", + "nullable": true + }, + "certificate_Title_Code": { + "type": "string", + "nullable": true + }, + "class_SOC_Of_Issuer": { + "type": "string", + "nullable": true + }, + "expiry_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "issue_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "issuing_Authority": { + "type": "string", + "nullable": true + }, + "issuing_Authority_Code": { + "type": "string", + "nullable": true + }, + "last_Survey_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "latest_Survey_Place": { + "type": "string", + "nullable": true + }, + "latest_Survey_Place_Code": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "other_Issuing_Authority": { + "type": "string", + "nullable": true + }, + "other_Survey_Authority": { + "type": "string", + "nullable": true + }, + "survey_Authority": { + "type": "string", + "nullable": true + }, + "survey_Authority_Code": { + "type": "string", + "nullable": true + }, + "survey_Authority_Type": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipCountResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "periodsCount": { + "type": "integer", + "format": "int32" + }, + "shipYearMonthCount": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.YearMonthCount" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "alterationsDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "auxiliaryEnginesNarrative": { + "type": "string", + "nullable": true + }, + "auxiliaryGeneratorsDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "baleCapacity": { + "type": "string", + "nullable": true + }, + "bareboatCharterCompanyCode": { + "type": "string", + "nullable": true + }, + "bareboatCharterEffectiveDate": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryOfControlCode": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryOfControl": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryOfDomicileCode": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryOfDomicile": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryOfRegistrationCode": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryOfRegistration": { + "type": "string", + "nullable": true + }, + "bareboatCharterCompany": { + "type": "string", + "nullable": true + }, + "bollardPull": { + "type": "string", + "nullable": true + }, + "boilersDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "boilerManufacturer": { + "type": "string", + "nullable": true + }, + "bowDischargeFacility": { + "type": "string", + "nullable": true + }, + "bowLoadingFacility": { + "type": "string", + "nullable": true + }, + "bowStoppersNo": { + "type": "string", + "nullable": true + }, + "bowStoppersSWL": { + "type": "string", + "nullable": true + }, + "bowStoppersType": { + "type": "string", + "nullable": true + }, + "bowToCentreManifold": { + "type": "string", + "nullable": true + }, + "breadth": { + "type": "string", + "nullable": true + }, + "bulbousBow": { + "type": "string", + "nullable": true + }, + "breadthExtreme": { + "type": "string", + "nullable": true + }, + "breadthMoulded": { + "type": "string", + "nullable": true + }, + "bunkersDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "callSign": { + "type": "string", + "nullable": true + }, + "cancelDate": { + "type": "string", + "nullable": true + }, + "cargoCapacitiesNarrative": { + "type": "string", + "nullable": true + }, + "cargoGradesSegregations": { + "type": "string", + "nullable": true + }, + "cargoManifoldType": { + "type": "string", + "nullable": true + }, + "cargoTankCoatings": { + "type": "string", + "nullable": true + }, + "cargoTankHeatExchangerMaterial": { + "type": "string", + "nullable": true + }, + "cargoTankHeatExchangers": { + "type": "string", + "nullable": true + }, + "casualtyDate": { + "type": "string", + "nullable": true + }, + "chartererLatestReported": { + "type": "string", + "nullable": true + }, + "chartererLatestReportedOffFixture": { + "type": "string", + "nullable": true + }, + "chartererLatestReportedOnFixture": { + "type": "string", + "nullable": true + }, + "classNarrative": { + "type": "string", + "nullable": true + }, + "classificationSociety": { + "type": "string", + "nullable": true + }, + "classificationSocietyCode": { + "type": "string", + "nullable": true + }, + "cleanBallastCapacity": { + "type": "string", + "nullable": true + }, + "clearDeckArea_m2": { + "type": "string", + "nullable": true + }, + "clearHeightOfROROLanes": { + "type": "string", + "nullable": true + }, + "closedLoadingSystem": { + "type": "string", + "nullable": true + }, + "compensatedGrossTonnageCGT": { + "type": "string", + "nullable": true + }, + "contractDate": { + "type": "string", + "nullable": true + }, + "constructionDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "consumptionSpeed1": { + "type": "string", + "nullable": true + }, + "consumptionSpeed2": { + "type": "string", + "nullable": true + }, + "consumptionValue1": { + "type": "string", + "nullable": true + }, + "consumptionValue2": { + "type": "string", + "nullable": true + }, + "conversionDateLatest": { + "type": "string", + "nullable": true + }, + "coreShipInd": { + "type": "string", + "nullable": true + }, + "countryOfBreaking": { + "type": "string", + "nullable": true + }, + "countryOfBuild": { + "type": "string", + "nullable": true + }, + "countryOfBuildCode": { + "type": "string", + "nullable": true + }, + "countryOfEconomicBenefit": { + "type": "string", + "nullable": true + }, + "craneSWL": { + "type": "string", + "nullable": true + }, + "crudeOilWashingCOW": { + "type": "string", + "nullable": true + }, + "dateBreakingCommenced": { + "type": "string", + "nullable": true + }, + "dateOfBuild": { + "type": "string", + "nullable": true + }, + "dateOfBuildConversionInd": { + "type": "string", + "nullable": true + }, + "dateOfBuildConvertedDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "dateOfLastInspection": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "deadweight": { + "type": "string", + "nullable": true + }, + "deathDate": { + "type": "string", + "nullable": true + }, + "deliveryDate": { + "type": "string", + "nullable": true + }, + "deliveryDateConversionInd": { + "type": "string", + "nullable": true + }, + "deliveryDateConvertedDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "depth": { + "type": "string", + "nullable": true + }, + "derrickSWL": { + "type": "string", + "nullable": true + }, + "dischargeDiameterOfCargoManifold": { + "type": "string", + "nullable": true + }, + "displacement": { + "type": "string", + "nullable": true + }, + "docCompany": { + "type": "string", + "nullable": true + }, + "docCountryOfControl": { + "type": "string", + "nullable": true + }, + "docCompanyCountryOfDomicileCode": { + "type": "string", + "nullable": true + }, + "documentOfComplianceDOCCompanyCode": { + "type": "string", + "nullable": true + }, + "docCompanyCountryOfDomicile": { + "type": "string", + "nullable": true + }, + "docCountryOfRegistration": { + "type": "string", + "nullable": true + }, + "draught": { + "type": "string", + "nullable": true + }, + "exName": { + "type": "string", + "nullable": true + }, + "fairplayID": { + "type": "string", + "nullable": true + }, + "fishingNumber": { + "type": "string", + "nullable": true + }, + "flagCode": { + "type": "string", + "nullable": true + }, + "flagEffectiveDate": { + "type": "string", + "nullable": true + }, + "flagName": { + "type": "string", + "nullable": true + }, + "flashPointOver60c": { + "type": "string", + "nullable": true + }, + "flashPointUnder60c": { + "type": "string", + "nullable": true + }, + "formulaDWT": { + "type": "string", + "nullable": true + }, + "freeboard": { + "type": "string", + "nullable": true + }, + "fuelConsumptionMainEnginesOnly": { + "type": "string", + "nullable": true + }, + "fuelConsumptionTotal": { + "type": "string", + "nullable": true + }, + "fuelType1Capacity": { + "type": "string", + "nullable": true + }, + "fuelType1Code": { + "type": "string", + "nullable": true + }, + "fuelType1First": { + "type": "string", + "nullable": true + }, + "fuelType2Capacity": { + "type": "string", + "nullable": true + }, + "fuelType2Code": { + "type": "string", + "nullable": true + }, + "fuelType2Second": { + "type": "string", + "nullable": true + }, + "gasCapacity": { + "type": "string", + "nullable": true + }, + "gearDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "gearNoLargest": { + "type": "string", + "nullable": true + }, + "gearTypeLargest": { + "type": "string", + "nullable": true + }, + "gearSWLLargest": { + "type": "string", + "nullable": true + }, + "gearless": { + "type": "string", + "nullable": true + }, + "grainCapacity": { + "type": "string", + "nullable": true + }, + "grossTonnage": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwner": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCompanyCode": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfControl": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfDomicile": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfDomicileCode": { + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfRegistration": { + "type": "string", + "nullable": true + }, + "hatchesDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "heatingCoilsInCargoTanks": { + "type": "string", + "nullable": true + }, + "heatingCoilsInSlopTanks": { + "type": "string", + "nullable": true + }, + "heatingCoilsMaterial": { + "type": "string", + "nullable": true + }, + "heightOfROROLanes": { + "type": "string", + "nullable": true + }, + "holdsDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "hullMaterial": { + "type": "string", + "nullable": true + }, + "hullMaterialCode": { + "type": "string", + "nullable": true + }, + "hullShapeCode": { + "type": "string", + "nullable": true + }, + "hullType": { + "type": "string", + "nullable": true + }, + "hullTypeCode": { + "type": "string", + "nullable": true + }, + "iceCapabilityDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "imoChemicalClassI": { + "type": "string", + "nullable": true + }, + "imoChemicalClassII": { + "type": "string", + "nullable": true + }, + "imoChemicalClassIII": { + "type": "string", + "nullable": true + }, + "inertGasSystemIGS": { + "type": "string", + "nullable": true + }, + "inmarsatNumberSatCommID": { + "type": "string", + "nullable": true + }, + "insulatedCapacity": { + "type": "string", + "nullable": true + }, + "keelLaidDate": { + "type": "string", + "nullable": true + }, + "keelLaidDateConversionInd": { + "type": "string", + "nullable": true + }, + "keelLaidDateConvertedDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "keelToMastHeight": { + "type": "string", + "nullable": true + }, + "lanesDoorsRampsNarrative": { + "type": "string", + "nullable": true + }, + "largestHatchBreadth": { + "type": "string", + "nullable": true + }, + "largestHatchLength": { + "type": "string", + "nullable": true + }, + "lastUpdateDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "lastUpdateDateString": { + "type": "string", + "nullable": true + }, + "launchDate": { + "type": "string", + "nullable": true + }, + "launchDateConversionInd": { + "type": "string", + "nullable": true + }, + "launchDateConvertedDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "leadShipInSeriesByIMONumber": { + "type": "string", + "nullable": true + }, + "legalAnnex4": { + "type": "string", + "nullable": true + }, + "legalAnnex5": { + "type": "string", + "nullable": true + }, + "legalDai": { + "type": "string", + "nullable": true + }, + "legalFlagDisputed": { + "type": "string", + "nullable": true + }, + "legalFlag": { + "type": "string", + "nullable": true + }, + "legalFlagHistory": { + "type": "string", + "nullable": true + }, + "legalOwnershipHistory": { + "type": "string", + "nullable": true + }, + "legalOverall": { + "type": "string", + "nullable": true + }, + "legalOwnershipFatf": { + "type": "string", + "nullable": true + }, + "legalOwnership": { + "type": "string", + "nullable": true + }, + "legalBeSanctionedCompany": { + "type": "string", + "nullable": true + }, + "legalEuSanctionedCompany": { + "type": "string", + "nullable": true + }, + "legalOwnerOfac": { + "type": "string", + "nullable": true + }, + "legalUnsanctionedCompany": { + "type": "string", + "nullable": true + }, + "legalOwnershipOwnerFatf": { + "type": "string", + "nullable": true + }, + "legalOwnershipOwner": { + "type": "string", + "nullable": true + }, + "legalPortCall1Y": { + "type": "string", + "nullable": true + }, + "legalPortCall3M": { + "type": "string", + "nullable": true + }, + "legalPortCall180D": { + "type": "string", + "nullable": true + }, + "legalEuSanctioned": { + "type": "string", + "nullable": true + }, + "legalShipNonSdn": { + "type": "string", + "nullable": true + }, + "legalShip": { + "type": "string", + "nullable": true + }, + "legalUnsanctioned": { + "type": "string", + "nullable": true + }, + "shipOverallComplianceStatus": { + "type": "string", + "nullable": true + }, + "shipANNEX4SuspectedSTSTransferswithNKorea": { + "type": "string", + "nullable": true + }, + "shipANNEX5SuspectedExportOfNKoreanCoal": { + "type": "string", + "nullable": true + }, + "shipDarkActivityIndicator": { + "type": "string", + "nullable": true + }, + "shipFlagDisputed": { + "type": "string", + "nullable": true + }, + "shipFlagSanctionedCountry": { + "type": "string", + "nullable": true + }, + "shipHistoricalFlagSanctionedCountry": { + "type": "string", + "nullable": true + }, + "shipOwnerHistoricalOFACSanctionedCountry": { + "type": "string", + "nullable": true + }, + "shipOwnerFATFJurisdiction": { + "type": "string", + "nullable": true + }, + "shipOwnerOFACSanctionedCountry": { + "type": "string", + "nullable": true + }, + "shipOwnerBESSanctionList": { + "type": "string", + "nullable": true + }, + "shipOwnerEUSanctionList": { + "type": "string", + "nullable": true + }, + "shipOwnerOFACSanctionList": { + "type": "string", + "nullable": true + }, + "shipOwnerUNSanctionList": { + "type": "string", + "nullable": true + }, + "shipOwnerParentFATFJurisdiction": { + "type": "string", + "nullable": true + }, + "shipOwnerParentOFACSanctionedCountry": { + "type": "string", + "nullable": true + }, + "shipSanctionedCountryPortCallLast12m": { + "type": "string", + "nullable": true + }, + "shipSanctionedCountryPortCallLast3m": { + "type": "string", + "nullable": true + }, + "shipSanctionedCountryPortCallLast6m": { + "type": "string", + "nullable": true + }, + "shipEUSanctionList": { + "type": "string", + "nullable": true + }, + "shipOFACNonSDNSanctionList": { + "type": "string", + "nullable": true + }, + "shipOFACSanctionList": { + "type": "string", + "nullable": true + }, + "shipUNSanctionList": { + "type": "string", + "nullable": true + }, + "shipOFACSSIList": { + "type": "string", + "nullable": true + }, + "shipOwnerCanadianSanctionList": { + "type": "string", + "nullable": true + }, + "shipOwnerAustralianSanctionList": { + "type": "string", + "nullable": true + }, + "shipUSTreasuryOFACAdvisoryList": { + "type": "string", + "nullable": true + }, + "shipSwissSanctionList": { + "type": "string", + "nullable": true + }, + "shipOwnerSwissSanctionList": { + "type": "string", + "nullable": true + }, + "shipSTSPartnerNonComplianceLast12m": { + "type": "string", + "nullable": true + }, + "shipSecurityLegalDisputeEventLast12m": { + "type": "string", + "nullable": true + }, + "shipDetailsNoLongerMaintained": { + "type": "string", + "nullable": true + }, + "shipBESSanctionList": { + "type": "string", + "nullable": true + }, + "shipOwnerParentCompanyNonCompliance": { + "type": "string", + "nullable": true + }, + "shipOwnerUAESanctionList": { + "type": "string", + "nullable": true + }, + "length": { + "type": "string", + "nullable": true + }, + "lengthBetweenPerpendicularsLBP": { + "type": "string", + "nullable": true + }, + "lengthOfROROLanes": { + "type": "string", + "nullable": true + }, + "lengthOverallLOA": { + "type": "string", + "nullable": true + }, + "lengthRegistered": { + "type": "string", + "nullable": true + }, + "lightDisplacementTonnage": { + "type": "string", + "nullable": true + }, + "linesPerSide": { + "type": "string", + "nullable": true + }, + "liquidCapacity": { + "type": "string", + "nullable": true + }, + "ihslRorIMOShipNo": { + "type": "string", + "nullable": true + }, + "mainEngineBore": { + "type": "string", + "nullable": true + }, + "mainEngineBuilder": { + "type": "string", + "nullable": true + }, + "mainEngineBuilderCode": { + "type": "string", + "nullable": true + }, + "mainEngineDesigner": { + "type": "string", + "nullable": true + }, + "mainEngineDesignerCode": { + "type": "string", + "nullable": true + }, + "mainEngineDesignerGroup": { + "type": "string", + "nullable": true + }, + "mainEngineDesignerGroupCode": { + "type": "string", + "nullable": true + }, + "mainEngineModel": { + "type": "string", + "nullable": true + }, + "mainEngineNumberOfCylinders": { + "type": "string", + "nullable": true + }, + "mainEngineRPM": { + "type": "string", + "nullable": true + }, + "mainEngineStrokeType": { + "type": "string", + "nullable": true + }, + "mainEngineType": { + "type": "string", + "nullable": true + }, + "manifoldHeightAtBallastCondition": { + "type": "string", + "nullable": true + }, + "manifoldHeightAtLadenCondition": { + "type": "string", + "nullable": true + }, + "maritimeMobileServiceIdentityMMSINumber": { + "type": "string", + "nullable": true + }, + "marpoL13GPhaseOutCategory": { + "type": "string", + "nullable": true + }, + "midPointManifoldAftBallast": { + "type": "string", + "nullable": true + }, + "midPointManifoldAftLaden": { + "type": "string", + "nullable": true + }, + "midPointManifoldAftLight": { + "type": "string", + "nullable": true + }, + "midPointManifoldForwardBallast": { + "type": "string", + "nullable": true + }, + "midPointManifoldForwardLaden": { + "type": "string", + "nullable": true + }, + "midPointManifoldForwardLight": { + "type": "string", + "nullable": true + }, + "multiLoadLines": { + "type": "string", + "nullable": true + }, + "netTonnage": { + "type": "string", + "nullable": true + }, + "newbuildPrice": { + "type": "string", + "nullable": true + }, + "newbuildPriceCurrency": { + "type": "string", + "nullable": true + }, + "newbuildPriceUSD": { + "type": "string", + "nullable": true + }, + "newbuildSubStatus": { + "type": "string", + "nullable": true + }, + "newbuildSubStatusNote": { + "type": "string", + "nullable": true + }, + "newconstructionDateConversionInd": { + "type": "string", + "nullable": true + }, + "newconstructionEntryDate": { + "type": "string", + "nullable": true + }, + "newConstructionEntryDateConverted": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "nonSpecificCargoCoatingTarEpoxy": { + "type": "string", + "nullable": true + }, + "nonSpecificSlopCoatingTarEpoxy": { + "type": "string", + "nullable": true + }, + "numberOfAllEngines": { + "type": "string", + "nullable": true + }, + "numberOfAuxiliaryEngines": { + "type": "string", + "nullable": true + }, + "numberOfCabins": { + "type": "string", + "nullable": true + }, + "numberOfCargoPumps": { + "type": "string", + "nullable": true + }, + "numberOfCargoTanks": { + "type": "string", + "nullable": true + }, + "numberOfCars": { + "type": "string", + "nullable": true + }, + "numberOfDecks": { + "type": "string", + "nullable": true + }, + "numberOfGenerators": { + "type": "string", + "nullable": true + }, + "numberOfHatches": { + "type": "string", + "nullable": true + }, + "numberOfHolds": { + "type": "string", + "nullable": true + }, + "numberOfMainEngines": { + "type": "string", + "nullable": true + }, + "numberOfPropulsionUnits": { + "type": "string", + "nullable": true + }, + "numberOfRamps": { + "type": "string", + "nullable": true + }, + "numberOfROROLanes": { + "type": "string", + "nullable": true + }, + "numberOfRORORamps": { + "type": "string", + "nullable": true + }, + "numberOfSlopTanks": { + "type": "string", + "nullable": true + }, + "numberOfTanks": { + "type": "string", + "nullable": true + }, + "numberOfThrusters": { + "type": "string", + "nullable": true + }, + "officialNumber": { + "type": "string", + "nullable": true + }, + "operator": { + "type": "string", + "nullable": true + }, + "operatorCompanyCode": { + "type": "string", + "nullable": true + }, + "operatorCountryOfControl": { + "type": "string", + "nullable": true + }, + "operatorCountryOfDomicileCode": { + "type": "string", + "nullable": true + }, + "operatorCountryOfDomicileName": { + "type": "string", + "nullable": true + }, + "operatorCountryOfRegistration": { + "type": "string", + "nullable": true + }, + "panamaCanalNetTonnagePCNT": { + "type": "string", + "nullable": true + }, + "pandIClub": { + "type": "string", + "nullable": true + }, + "pandIClubCode": { + "type": "string", + "nullable": true + }, + "parallelBodyLengthBallast": { + "type": "string", + "nullable": true + }, + "parallelBodyLengthLaden": { + "type": "string", + "nullable": true + }, + "parallelBodyLengthLight": { + "type": "string", + "nullable": true + }, + "passengerCapacity": { + "type": "string", + "nullable": true + }, + "passengersBerthed": { + "type": "string", + "nullable": true + }, + "permanentBallastCapacity": { + "type": "string", + "nullable": true + }, + "photoPresent": { + "type": "string", + "nullable": true + }, + "placeOfBreaking": { + "type": "string", + "nullable": true + }, + "portOfRegistryCode": { + "type": "string", + "nullable": true + }, + "portOfRegistry": { + "type": "string", + "nullable": true + }, + "portOfRegistryFullCode": { + "type": "string", + "nullable": true + }, + "powerBHPIHPSHPMax": { + "type": "string", + "nullable": true + }, + "powerBHPIHPSHPService": { + "type": "string", + "nullable": true + }, + "powerKWMax": { + "type": "string", + "nullable": true + }, + "powerKWService": { + "type": "string", + "nullable": true + }, + "primeMoverDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "primeMoverDescriptiveOverviewNarrative": { + "type": "string", + "nullable": true + }, + "propellerManufacturer": { + "type": "string", + "nullable": true + }, + "propellerType": { + "type": "string", + "nullable": true + }, + "propulsionType": { + "type": "string", + "nullable": true + }, + "propulsionTypeCode": { + "type": "string", + "nullable": true + }, + "pumpingCapacityM3": { + "type": "string", + "nullable": true + }, + "rampLocation": { + "type": "string", + "nullable": true + }, + "rampSWL": { + "type": "string", + "nullable": true + }, + "recyclingDateArrival": { + "type": "string", + "nullable": true + }, + "recyclingDateCommenced": { + "type": "string", + "nullable": true + }, + "recyclingCountry": { + "type": "string", + "nullable": true + }, + "recyclingCountryCode": { + "type": "string", + "nullable": true + }, + "recyclingPerLDTPrice": { + "type": "string", + "nullable": true + }, + "recyclingShipbreaker": { + "type": "string", + "nullable": true + }, + "recyclingTotalPrice": { + "type": "string", + "nullable": true + }, + "reeferPoints": { + "type": "string", + "nullable": true + }, + "registeredOwner": { + "type": "string", + "nullable": true + }, + "registeredOwnerCode": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfControl": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfDomicile": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfDomicileCode": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfRegistration": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateAuditor": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateConventionOrVol": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateDateExpires": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateDateIssued": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateDOCCompany": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateFlag": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateIssuer": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateOtherDescription": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateShipName": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateShipType": { + "type": "string", + "nullable": true + }, + "safetyManagementCertificateSource": { + "type": "string", + "nullable": true + }, + "saleDate": { + "type": "string", + "nullable": true + }, + "salePriceUSD": { + "type": "string", + "nullable": true + }, + "sbtplsbtProtectedLocation": { + "type": "string", + "nullable": true + }, + "segregatedBallastCapacity": { + "type": "string", + "nullable": true + }, + "segregatedBallastTanks": { + "type": "string", + "nullable": true + }, + "shipManager": { + "type": "string", + "nullable": true + }, + "shipManagerCompanyCode": { + "type": "string", + "nullable": true + }, + "shipManagerCountryOfControl": { + "type": "string", + "nullable": true + }, + "shipManagerCountryOfDomicileName": { + "type": "string", + "nullable": true + }, + "shipManagerCountryOfDomicileCode": { + "type": "string", + "nullable": true + }, + "shipManagerCountryOfRegistration": { + "type": "string", + "nullable": true + }, + "shipName": { + "type": "string", + "nullable": true + }, + "shipStatus": { + "type": "string", + "nullable": true + }, + "shipStatusCode": { + "type": "string", + "nullable": true + }, + "shipStatusEffectiveDate": { + "type": "string", + "nullable": true + }, + "shipbuilder": { + "type": "string", + "nullable": true + }, + "shipbuilderCompanyCode": { + "type": "string", + "nullable": true + }, + "shipbuilderFullStyle": { + "type": "string", + "nullable": true + }, + "shipbuilderFullStyleSBR": { + "type": "string", + "nullable": true + }, + "shipbuilderSubContractor": { + "type": "string", + "nullable": true + }, + "shipbuilderSubContractorCode": { + "type": "string", + "nullable": true + }, + "shipbuilderSubContractorShipyardYardHullNo": { + "type": "string", + "nullable": true + }, + "shiptypeGroup": { + "type": "string", + "nullable": true + }, + "shiptypeLevel2": { + "type": "string", + "nullable": true + }, + "shiptypeLevel3": { + "type": "string", + "nullable": true + }, + "shiptypeLevel4": { + "type": "string", + "nullable": true + }, + "shiptypeLevel5": { + "type": "string", + "nullable": true + }, + "shiptypeLevel5HullType": { + "type": "string", + "nullable": true + }, + "shiptypeLevel5SubGroup": { + "type": "string", + "nullable": true + }, + "shiptypeLevel5SubType": { + "type": "string", + "nullable": true + }, + "singlePointMooring": { + "type": "string", + "nullable": true + }, + "slopTankCapacity": { + "type": "string", + "nullable": true + }, + "slopTankCoatings": { + "type": "string", + "nullable": true + }, + "specialTanksDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "specialistTankerNarrative": { + "type": "string", + "nullable": true + }, + "speed": { + "type": "string", + "nullable": true + }, + "speedMax": { + "type": "string", + "nullable": true + }, + "speedService": { + "type": "string", + "nullable": true + }, + "standardShipDesign": { + "type": "string", + "nullable": true + }, + "statCode5": { + "type": "string", + "nullable": true + }, + "sternDischargeFacility": { + "type": "string", + "nullable": true + }, + "sternLoadingFacility": { + "type": "string", + "nullable": true + }, + "suezCanalNetTonnageSCNT": { + "type": "string", + "nullable": true + }, + "tankCoatingsNarrative": { + "type": "string", + "nullable": true + }, + "tanksDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "technicalManager": { + "type": "string", + "nullable": true + }, + "technicalManagerCode": { + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfControl": { + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfDomicile": { + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfDomicileCode": { + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfRegistration": { + "type": "string", + "nullable": true + }, + "tempMaximum": { + "type": "string", + "nullable": true + }, + "tempMinimum": { + "type": "string", + "nullable": true + }, + "teu": { + "type": "string", + "nullable": true + }, + "teuCapacity14THomogenous": { + "type": "string", + "nullable": true + }, + "thrustersDescriptiveNarrative": { + "type": "string", + "nullable": true + }, + "tonnageEffectiveDate": { + "type": "string", + "nullable": true + }, + "tonnageSystem69Convention": { + "type": "string", + "nullable": true + }, + "tonnesPerCentimetreImmersionTPCI": { + "type": "string", + "nullable": true + }, + "totalBunkerCapacity": { + "type": "string", + "nullable": true + }, + "totalHorsepowerOfAuxiliaryGenerators": { + "type": "string", + "nullable": true + }, + "totalHorsepowerOfMainEngines": { + "type": "string", + "nullable": true + }, + "totalHorsepowerOfMainGenerators": { + "type": "string", + "nullable": true + }, + "totalKilowattsOfMainEngines": { + "type": "string", + "nullable": true + }, + "totalPowerOfAllEngines": { + "type": "string", + "nullable": true + }, + "totalPowerOfAuxiliaryEngines": { + "type": "string", + "nullable": true + }, + "tveExpiryDate": { + "type": "string", + "nullable": true + }, + "vapourRecoverySystem": { + "type": "string", + "nullable": true + }, + "widthOfROROLanes": { + "type": "string", + "nullable": true + }, + "yardNumber": { + "type": "string", + "nullable": true + }, + "yearOfBuild": { + "type": "string", + "nullable": true + }, + "numberofMotors": { + "type": "string", + "nullable": true + }, + "totalPowerofMotors": { + "type": "string", + "nullable": true + }, + "mainEngineTypeCode": { + "type": "string", + "nullable": true + }, + "cargoOtherType": { + "type": "string", + "nullable": true + }, + "cargoOtherCapacity": { + "type": "string", + "nullable": true + }, + "nuclearPowerIndicator": { + "type": "string", + "nullable": true + }, + "auxPropulsionIndicator": { + "type": "string", + "nullable": true + }, + "mainEngineReEngineIndicator": { + "type": "string", + "nullable": true + }, + "mainEngineTypeOfInstallation": { + "type": "string", + "nullable": true + }, + "mainEngineTypeOfInstallationDecode": { + "type": "string", + "nullable": true + }, + "eedi": { + "type": "string", + "nullable": true + }, + "mainEngineStrokeCycle": { + "type": "string", + "nullable": true + }, + "eexi": { + "type": "string", + "nullable": true + }, + "alternativeDraught": { + "type": "string", + "nullable": true + }, + "alternativeDWT": { + "type": "string", + "nullable": true + }, + "additionalInformation": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAdditionalInformationDetail" + }, + "nullable": true + }, + "arrangements": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSArrangementsDetail" + }, + "nullable": true + }, + "auxEngine": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAuxEngineDetail" + }, + "nullable": true + }, + "auxGenerator": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSAuxGeneratorDetail" + }, + "nullable": true + }, + "boiler": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSBoilerDetail" + }, + "nullable": true + }, + "boilersExpanded": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSBoilersExpandedDetail" + }, + "nullable": true + }, + "builderAddress": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSBuilderAddressDetail" + }, + "nullable": true + }, + "capacities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCapacitiesDetail" + }, + "nullable": true + }, + "cargoPump": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCargoPumpDetail" + }, + "nullable": true + }, + "classCurrent": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSClassCurrentDetail" + }, + "nullable": true + }, + "classHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSClassHistoryDetail" + }, + "nullable": true + }, + "classHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSClassHistoryDetail" + }, + "nullable": true + }, + "classWithdrawn": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSClassWithdrawnDetail" + }, + "nullable": true + }, + "crewList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCrewListDetail" + }, + "nullable": true + }, + "companyCompliance": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyCompliance" + }, + "nullable": true + }, + "companyComplianceDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyComplianceDetails" + }, + "nullable": true + }, + "company": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetail" + }, + "nullable": true + }, + "companyDetailsAndParent": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetailsAndParentCodeDetail" + }, + "nullable": true + }, + "companyDetailsComplex": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetailsComplexDetail" + }, + "nullable": true + }, + "companyDetailsComplexAndParentCode": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetailsComplexAndParentCodeDetail" + }, + "nullable": true + }, + "companyDetailsComplexWithCodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetailsComplexWithCodesDetail" + }, + "nullable": true + }, + "companyDetailsComplexWithCodesAndParent": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetailsComplexWithCodesAndParentDetail" + }, + "nullable": true + }, + "companyDetailsWithCodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetailsWithCodesDetail" + }, + "nullable": true + }, + "companyDetailsWithCodesAndParentCode": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyDetailsWithCodesAndParentCodeDetail" + }, + "nullable": true + }, + "companyFleetCounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyFleetCountsDetail" + }, + "nullable": true + }, + "companyOrderBookCounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyOrderBookCountsDetail" + }, + "nullable": true + }, + "companyPersonnel": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyPersonnelDetail" + }, + "nullable": true + }, + "companyVesselRelationships": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSCompanyVesselRelationshipsDetail" + }, + "nullable": true + }, + "darkActivityConfirmed": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSDarkActivityConfirmed" + }, + "nullable": true + }, + "defect": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSDefectDetail" + }, + "nullable": true + }, + "destination": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSDestinationDetail" + }, + "nullable": true + }, + "docHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSDOCHistoryDetail" + }, + "nullable": true + }, + "docHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSDOCHistoryDetail" + }, + "nullable": true + }, + "engineBuilder": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSEngineBuilderDetail" + }, + "nullable": true + }, + "fixture": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSFixtureDetail" + }, + "nullable": true + }, + "fixture3Months": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSFixtureDetail" + }, + "nullable": true + }, + "flagHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSFlagHistoryDetail" + }, + "nullable": true + }, + "flagHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSFlagHistoryDetail" + }, + "nullable": true + }, + "flagStateSpecial": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSFlagStateSpecialDetail" + }, + "nullable": true + }, + "grossTonnageHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSGrossTonnageHistoryDetail" + }, + "nullable": true + }, + "groupBeneficialOwnerHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSGroupBeneficialOwnerHistoryDetail" + }, + "nullable": true + }, + "groupBeneficialOwnerHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSGroupBeneficialOwnerHistoryDetail" + }, + "nullable": true + }, + "iceClass": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSIceClassDetail" + }, + "nullable": true + }, + "inspection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSInspectionDetail" + }, + "nullable": true + }, + "investigationIndicators": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSInvestigationIndicatorsDetail" + }, + "nullable": true + }, + "lastRecordedPortOfCall": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSLastRecordedPortOfCallDetail" + }, + "nullable": true + }, + "liftingGear": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSLiftingGearDetail" + }, + "nullable": true + }, + "mainEngine": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSMainEngineDetail" + }, + "nullable": true + }, + "mainGenerator": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSMainGeneratorDetail" + }, + "nullable": true + }, + "nameHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSNameHistoryDetail" + }, + "nullable": true + }, + "nameHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSNameHistoryDetail" + }, + "nullable": true + }, + "ofacReport": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSOFACReportDetail" + }, + "nullable": true + }, + "operatorHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSOperatorHistoryDetail" + }, + "nullable": true + }, + "operatorHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSOperatorHistoryDetail" + }, + "nullable": true + }, + "ownerHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSOwnerHistoryDetail" + }, + "nullable": true + }, + "ownerHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSOwnerHistoryDetail" + }, + "nullable": true + }, + "pandIHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSPandIHistory" + }, + "nullable": true + }, + "propellers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSPropellerDetail" + }, + "nullable": true + }, + "recentTerrestrialPositions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSRecentTerrestrialPositionDetail" + }, + "nullable": true + }, + "roroDoors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSRORODoorsDetail" + }, + "nullable": true + }, + "roroRamps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSRORORampsDetail" + }, + "nullable": true + }, + "sales": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSSalesDetail" + }, + "nullable": true + }, + "safetyManagementCertificateHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSSafetyManagementCertificateHistoryDetail" + }, + "nullable": true + }, + "scrubberDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSScrubberDetail" + }, + "nullable": true + }, + "shipCertificates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipCertificateDetail" + }, + "nullable": true + }, + "shipCertificatesAll": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipCertificateAllDetail" + }, + "nullable": true + }, + "shipBuilderDetail": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipBuilderDetail" + }, + "nullable": true + }, + "shipBuilderAndSubContractor": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipBuilderAndSubContractorDetail" + }, + "nullable": true + }, + "shipBuilderHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipBuilderHistoryDetail" + }, + "nullable": true + }, + "shipManagerHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipManagerHistoryDetail" + }, + "nullable": true + }, + "shipManagerHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipManagerHistoryDetail" + }, + "nullable": true + }, + "shipThumbsIndex": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipThumbsIndexDetail" + }, + "nullable": true + }, + "shipTrackHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipTrackHistoryDetail" + }, + "nullable": true + }, + "shipTypeHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipTypeHistoryDetail" + }, + "nullable": true + }, + "sisterShipLinks": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSSisterShipLinks" + }, + "nullable": true + }, + "specialFeature": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSSpecialFeatureDetail" + }, + "nullable": true + }, + "statusHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatusHistoryDetail" + }, + "nullable": true + }, + "statusHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatusHistoryDetail" + }, + "nullable": true + }, + "stowageCommodity": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStowageCommodityDetail" + }, + "nullable": true + }, + "surveyDates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSSurveyDatesDetail" + }, + "nullable": true + }, + "surveyDatesHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSSurveyDatesHistoryDetail" + }, + "nullable": true + }, + "tankCoatings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSTankCoatingsDetail" + }, + "nullable": true + }, + "technicalManagerHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSTechnicalManagerHistoryDetail" + }, + "nullable": true + }, + "technicalManagerHistorySince2000": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSTechnicalManagerHistoryDetail" + }, + "nullable": true + }, + "thirdPartyIdentification": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSThirdPartyIdentificationDetail" + }, + "nullable": true + }, + "thrusters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSThrustersDetail" + }, + "nullable": true + }, + "tradingZoneLastSeen": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSTradingZoneLastSeenDetail" + }, + "nullable": true + }, + "turboCharger": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSTurboChargerDetail" + }, + "nullable": true + }, + "underHijack": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSUnderHijackDetail" + }, + "nullable": true + }, + "callSignAndMmsiHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipCallSignAndMmsiHistoryDetail" + }, + "nullable": true + }, + "dunsNumbers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSDUNSNumberDetail" + }, + "nullable": true + }, + "surveyDatesHistoryUnique": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.SurveyDatesHistoryUnique" + }, + "nullable": true + }, + "bareBoatCharterHistory": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.BareBoatCharterHistory" + }, + "nullable": true + }, + "batteries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Batteries" + }, + "nullable": true + }, + "ballastWaterManagement": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.BallastWaterManagement" + }, + "nullable": true + }, + "bareboatCharterCountryControlCodeISO2": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryDomicileCodeISO2": { + "type": "string", + "nullable": true + }, + "bareboatCharterCountryRegistrationCodeISO2": { + "type": "string", + "nullable": true + }, + "docCompanyCountryDomicileCodeISO2": { + "type": "string", + "nullable": true + }, + "docCountryControlCodeISO2": { + "type": "string", + "nullable": true + }, + "docCountryRegistrationCodeISO2": { + "type": "string", + "nullable": true + }, + "groupOwnerCountryControlCodeISO2": { + "type": "string", + "nullable": true + }, + "groupOwnerCountryDomicileCodeISO2": { + "type": "string", + "nullable": true + }, + "groupOwnerCountryRegistrationCodeISO2": { + "type": "string", + "nullable": true + }, + "operatorCountryControlCodeISO2": { + "type": "string", + "nullable": true + }, + "operatorCountryDomicileCodeISO2": { + "type": "string", + "nullable": true + }, + "operatorCountryRegistrationCodeISO2": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryControlCodeISO2": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryDomicileCodeISO2": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryRegistrationCodeISO2": { + "type": "string", + "nullable": true + }, + "shipManagerCountryControlCodeISO2": { + "type": "string", + "nullable": true + }, + "shipManagerCountryDomicileCodeISO2": { + "type": "string", + "nullable": true + }, + "shipManagerCountryRegistrationCodeISO2": { + "type": "string", + "nullable": true + }, + "technicalManagerCountryControlCodeISO2": { + "type": "string", + "nullable": true + }, + "technicalManagerCountryDomicileCodeISO2": { + "type": "string", + "nullable": true + }, + "technicalManagerCountryRegistrationCodeISO2": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipManagerHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "shipManager": { + "type": "string", + "nullable": true + }, + "shipManagerCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipMultiResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "shipCount": { + "type": "integer", + "format": "int32" + }, + "shipResult": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipResult" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "shipCount": { + "type": "integer", + "format": "int32" + }, + "apsShipDetail": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipDetail" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipSearchResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "shipCount": { + "type": "integer", + "format": "int32" + }, + "ships": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSShipDetail" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipThumbsIndexDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "copyright": { + "type": "string", + "nullable": true + }, + "dateOfPhoto": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "height": { + "type": "string", + "nullable": true + }, + "item_ID": { + "type": "string", + "nullable": true + }, + "landScape": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "photoFileName": { + "type": "string", + "nullable": true + }, + "width": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipTrackHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "autoID": { + "type": "string", + "nullable": true + }, + "lastUpdateReceived": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "latitude": { + "type": "string", + "nullable": true + }, + "longitude": { + "type": "string", + "nullable": true + }, + "mmsi": { + "type": "string", + "nullable": true + }, + "speed": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSShipTypeHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "effDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "shiptype": { + "type": "string", + "nullable": true + }, + "shiptypeCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSSisterShipLinks": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "linkedLRNO": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSSpecialFeatureDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "specialFeature": { + "type": "string", + "nullable": true + }, + "specialFeatureCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSStatus": { + "type": "object", + "properties": { + "systemVersion": { + "type": "string", + "nullable": true + }, + "systemDate": { + "type": "string", + "format": "date-time" + }, + "jobRunDate": { + "type": "string", + "format": "date-time" + }, + "completedOK": { + "type": "boolean" + }, + "errorLevel": { + "type": "string", + "nullable": true + }, + "errorMessage": { + "type": "string", + "nullable": true + }, + "remedialAction": { + "type": "string", + "nullable": true + }, + "guid": { + "type": "string", + "format": "uuid" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSStatusHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "status": { + "type": "string", + "nullable": true + }, + "statusCode": { + "type": "string", + "nullable": true + }, + "statusDate": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSStowageCommodityDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "commodityCode": { + "type": "string", + "nullable": true + }, + "commodityDecode": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "stowageCode": { + "type": "string", + "nullable": true + }, + "stowageDecode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSSurveyDatesDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "annualSurvey": { + "type": "string", + "nullable": true + }, + "classSociety": { + "type": "string", + "nullable": true + }, + "classSocietyCode": { + "type": "string", + "nullable": true + }, + "continuousHullSurvey": { + "type": "string", + "nullable": true + }, + "continuousMachinerySurvey": { + "type": "string", + "nullable": true + }, + "dockingSurvey": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "specialSurvey": { + "type": "string", + "nullable": true + }, + "specialSurveyLakes": { + "type": "string", + "nullable": true + }, + "tailShaftSurvey": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSSurveyDatesHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "classSociety": { + "type": "string", + "nullable": true + }, + "classSocietyCode": { + "type": "string", + "nullable": true + }, + "continuousSurvey": { + "type": "string", + "nullable": true + }, + "dockingSurvey": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "specialSurvey": { + "type": "string", + "nullable": true + }, + "tailshaftSurvey": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSTankCoatingsDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "tank_Coat": { + "type": "string", + "nullable": true + }, + "tank_Type": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSTechnicalManagerHistoryDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "companyStatus": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "technicalManager": { + "type": "string", + "nullable": true + }, + "technicalManagerCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSThirdPartyIdentificationDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrimoihsno": { + "type": "string", + "nullable": true + }, + "officialNumberType": { + "type": "string", + "nullable": true + }, + "officialNumber": { + "type": "string", + "nullable": true + }, + "seqNo": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSThrustersDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "thrusterType": { + "type": "string", + "nullable": true + }, + "thrusterTypeCode": { + "type": "string", + "nullable": true + }, + "numberOfThrusters": { + "type": "string", + "nullable": true + }, + "thrusterPosition": { + "type": "string", + "nullable": true + }, + "thrusterBHP": { + "type": "string", + "nullable": true + }, + "thrusterKW": { + "type": "string", + "nullable": true + }, + "typeOfInstallation": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSTradingZoneLastSeenDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "tradingZone": { + "type": "string", + "nullable": true + }, + "lastSeenDate": { + "type": "string", + "format": "date-time", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSTurboChargerDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "builder": { + "type": "string", + "nullable": true + }, + "countryOfBuild": { + "type": "string", + "nullable": true + }, + "design": { + "type": "string", + "nullable": true + }, + "designation": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "main_AuxEng": { + "type": "string", + "nullable": true + }, + "model": { + "type": "string", + "nullable": true + }, + "sequenceNumber": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.APSUnderHijackDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "eventTimeLine": { + "type": "string", + "nullable": true + }, + "description": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.BallastWaterManagement": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "ballastWaterManufacturer": { + "type": "string", + "nullable": true + }, + "ballastWaterModel": { + "type": "string", + "nullable": true + }, + "ballastWaterClassNotation": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.BareBoatCharterHistory": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "sequence": { + "type": "string", + "nullable": true + }, + "effectiveDate": { + "type": "string", + "nullable": true + }, + "bbChartererCode": { + "type": "string", + "nullable": true + }, + "bbCharterer": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.Batteries": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "batteryManufacturer": { + "type": "string", + "nullable": true + }, + "batteryCapacitykWh": { + "type": "string", + "nullable": true + }, + "batteryVoltageMaxVDC": { + "type": "string", + "nullable": true + }, + "batteryVoltageMinVDC": { + "type": "string", + "nullable": true + }, + "batteryTechnology": { + "type": "string", + "nullable": true + }, + "batteryPropulsionType": { + "type": "string", + "nullable": true + }, + "batteryRetrofitted": { + "type": "string", + "nullable": true + }, + "batteryRetrofittedYear": { + "type": "string", + "nullable": true + }, + "batteryIntegrator": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.Cargo": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "eventID": { + "type": "integer", + "format": "int32" + }, + "sequence": { + "type": "string", + "nullable": true + }, + "ihslRorIMOShipNo": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + }, + "quantity": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "unitShort": { + "type": "string", + "nullable": true + }, + "unit": { + "type": "string", + "nullable": true + }, + "text": { + "type": "string", + "nullable": true + }, + "cargoDamage": { + "type": "string", + "nullable": true + }, + "dangerous": { + "type": "string", + "nullable": true + }, + "damage": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.DownloadEntitlementResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "order_Detail_No": { + "type": "string", + "nullable": true + }, + "current_Entitlement": { + "type": "integer", + "format": "int32" + }, + "download_Count": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.Event": { + "type": "object", + "properties": { + "maritimeAndTradeEventsRequestStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventsStatus" + }, + "maritimeEvent": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeEvent" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.EventResult": { + "type": "object", + "properties": { + "maritimeAndTradeEventsRequestStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventsStatus" + }, + "eventCount": { + "type": "integer", + "format": "int32" + }, + "maritimeEvents": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeEvent" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.HumanCasualty": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "eventID": { + "type": "integer", + "format": "int32" + }, + "scope": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + }, + "qualifier": { + "type": "string", + "nullable": true + }, + "count": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.Location": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "eventID": { + "type": "integer", + "format": "int32" + }, + "sequence": { + "type": "string", + "nullable": true + }, + "sequenceCode": { + "type": "string", + "nullable": true + }, + "locationName": { + "type": "string", + "nullable": true + }, + "locationType": { + "type": "string", + "nullable": true + }, + "longitude": { + "type": "number", + "format": "double" + }, + "latitude": { + "type": "number", + "format": "double" + }, + "townName": { + "type": "string", + "nullable": true + }, + "offsetDistance": { + "type": "number", + "format": "double", + "nullable": true + }, + "offsetDirection": { + "type": "string", + "nullable": true + }, + "offsetUnitOfMeasureShort": { + "type": "string", + "nullable": true + }, + "offsetUnitOfMeasure": { + "type": "string", + "nullable": true + }, + "locationAccuracy": { + "type": "string", + "nullable": true + }, + "locationAccuracyCode": { + "type": "string", + "nullable": true + }, + "environmentLocationStart": { + "type": "string", + "nullable": true + }, + "environmentLocationStartCode": { + "type": "string", + "nullable": true + }, + "environmentLocationEnd": { + "type": "string", + "nullable": true + }, + "environmentLocationEndCode": { + "type": "string", + "nullable": true + }, + "casualtyZone": { + "type": "string", + "nullable": true + }, + "casualtyZoneCode": { + "type": "string", + "nullable": true + }, + "marsdenGridReference": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "isO31662": { + "type": "string", + "nullable": true + }, + "isoName": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "code": { + "type": "string", + "nullable": true + }, + "decode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedFlagISODetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "code": { + "type": "string", + "nullable": true + }, + "decode": { + "type": "string", + "nullable": true + }, + "isO2": { + "type": "string", + "nullable": true + }, + "isO3": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedFlagISOResult": { + "type": "object", + "properties": { + "maritimeAndTradeEventsRequestStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventsStatus" + }, + "associatedName": { + "type": "string", + "nullable": true + }, + "associatedCount": { + "type": "integer", + "format": "int32" + }, + "associatedFlagISODetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedFlagISODetail" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedResult": { + "type": "object", + "properties": { + "maritimeAndTradeEventsRequestStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventsStatus" + }, + "associatedName": { + "type": "string", + "nullable": true + }, + "associatedCount": { + "type": "integer", + "format": "int32" + }, + "associatedDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeAssociatedDetail" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeDownloadEntitlementResult": { + "type": "object", + "properties": { + "maritimeAndTradeEventsRequestStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventsStatus" + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "order_Detail_No": { + "type": "string", + "nullable": true + }, + "current_Entitlement": { + "type": "integer", + "format": "int32" + }, + "download_Count": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeEventCountResult": { + "type": "object", + "properties": { + "maritimeAndTradeEventsRequestStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeEventsStatus" + }, + "periodsCount": { + "type": "integer", + "format": "int32" + }, + "eventYearMonthCount": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.MaritimeAndTradeYearMonthCount" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeEventsStatus": { + "type": "object", + "properties": { + "systemVersion": { + "type": "string", + "nullable": true + }, + "systemDate": { + "type": "string", + "format": "date-time" + }, + "jobRunDate": { + "type": "string", + "format": "date-time" + }, + "completedOK": { + "type": "boolean" + }, + "errorLevel": { + "type": "string", + "nullable": true + }, + "errorMessage": { + "type": "string", + "nullable": true + }, + "remedialAction": { + "type": "string", + "nullable": true + }, + "guid": { + "type": "string", + "format": "uuid" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeAndTradeYearMonthCount": { + "type": "object", + "properties": { + "year": { + "type": "integer", + "format": "int32" + }, + "month": { + "type": "integer", + "format": "int32" + }, + "count": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.MaritimeEvent": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "incidentID": { + "type": "integer", + "format": "int32" + }, + "eventID": { + "type": "integer", + "format": "int32" + }, + "startDate": { + "type": "string", + "format": "date-time" + }, + "eventTypeID": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "eventType": { + "type": "string", + "nullable": true + }, + "significance": { + "type": "string", + "nullable": true + }, + "headline": { + "type": "string", + "nullable": true + }, + "endDate": { + "type": "string", + "format": "date-time" + }, + "ihslRorIMOShipNo": { + "type": "string", + "nullable": true + }, + "vesselName": { + "type": "string", + "nullable": true + }, + "vesselType": { + "type": "string", + "nullable": true + }, + "vesselTypeDecode": { + "type": "string", + "nullable": true + }, + "vesselFlag": { + "type": "string", + "nullable": true + }, + "flag": { + "type": "string", + "nullable": true + }, + "cargoLoadingStatusCode": { + "type": "string", + "nullable": true + }, + "vesselDWT": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "vesselGT": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "ldtAtTime": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "dateOfBuild": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "registeredOwnerCodeAtTime": { + "type": "string", + "nullable": true + }, + "registeredOwnerAtTime": { + "type": "string", + "nullable": true + }, + "registeredOwnerCoDAtTime": { + "type": "string", + "nullable": true + }, + "registeredOwnerCountryAtTime": { + "type": "string", + "nullable": true + }, + "classSearch": { + "type": "string", + "nullable": true + }, + "class": { + "type": "string", + "nullable": true + }, + "loadStatus": { + "type": "string", + "nullable": true + }, + "weather": { + "type": "string", + "nullable": true + }, + "eventTypeDetail": { + "type": "string", + "nullable": true + }, + "eventTypeDetailID": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "casualtyAction": { + "type": "string", + "nullable": true + }, + "component": { + "type": "string", + "nullable": true + }, + "externalItem": { + "type": "string", + "nullable": true + }, + "externalItemCode": { + "type": "string", + "nullable": true + }, + "totalLoss": { + "type": "string", + "nullable": true + }, + "pollution": { + "type": "string", + "nullable": true + }, + "locationName": { + "type": "string", + "nullable": true + }, + "townName": { + "type": "string", + "nullable": true + }, + "marsdenGridReference": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "environmentLocation": { + "type": "string", + "nullable": true + }, + "casualtyZone": { + "type": "string", + "nullable": true + }, + "casualtyZoneCode": { + "type": "string", + "nullable": true + }, + "countryCode": { + "type": "string", + "nullable": true + }, + "portID": { + "type": "string", + "nullable": true + }, + "attemptedBoarding": { + "type": "string", + "nullable": true + }, + "description": { + "type": "string", + "nullable": true + }, + "endTime": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "firedUpon": { + "type": "string", + "nullable": true + }, + "pollutant": { + "type": "string", + "nullable": true + }, + "pollutantUnit": { + "type": "string", + "nullable": true + }, + "pollutantQuantity": { + "type": "number", + "format": "double", + "nullable": true + }, + "publishedDate": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "serious": { + "type": "string", + "nullable": true + }, + "startTime": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "updated": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "securityTeamOnBoard": { + "type": "string", + "nullable": true + }, + "component2": { + "type": "string", + "nullable": true + }, + "cargoes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Cargo" + }, + "nullable": true + }, + "locations": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Location" + }, + "nullable": true + }, + "humanCasualties": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.HumanCasualty" + }, + "nullable": true + }, + "vessels": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Vessel" + }, + "nullable": true + }, + "relationships": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.Relationship" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCAllCertificates": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "certificate_ID": { + "type": "string", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "certificate_Title_Code": { + "type": "string", + "nullable": true + }, + "certificate_Title": { + "type": "string", + "nullable": true + }, + "issuing_Authority_Code": { + "type": "string", + "nullable": true + }, + "issuing_Authority": { + "type": "string", + "nullable": true + }, + "class_Soc_of_Issuer": { + "type": "string", + "nullable": true + }, + "other_Issuing_Authority": { + "type": "string", + "nullable": true + }, + "issue_Date": { + "type": "string", + "nullable": true + }, + "expiry_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "last_Survey_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "survey_Authority_Code": { + "type": "string", + "nullable": true + }, + "survey_Authority": { + "type": "string", + "nullable": true + }, + "other_Survey_Authority": { + "type": "string", + "nullable": true + }, + "latest_Survey_Place": { + "type": "string", + "nullable": true + }, + "latest_Survey_Place_Code": { + "type": "string", + "nullable": true + }, + "survey_Authority_Type": { + "type": "string", + "nullable": true + }, + "inspection_Date": { + "type": "string", + "nullable": true + }, + "inspected_By": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCCertificate": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "certificate_ID": { + "type": "string", + "nullable": true + }, + "certificate_Title": { + "type": "string", + "nullable": true + }, + "certificate_Title_Code": { + "type": "string", + "nullable": true + }, + "class_SOC_Of_Issuer": { + "type": "string", + "nullable": true + }, + "expiry_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "issue_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "issuing_Authority": { + "type": "string", + "nullable": true + }, + "issuing_Authority_Code": { + "type": "string", + "nullable": true + }, + "last_Survey_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "latest_Survey_Place": { + "type": "string", + "nullable": true + }, + "latest_Survey_Place_Code": { + "type": "string", + "nullable": true + }, + "lrno": { + "type": "string", + "nullable": true + }, + "other_Issuing_Authority": { + "type": "string", + "nullable": true + }, + "other_Survey_Authority": { + "type": "string", + "nullable": true + }, + "survey_Authority": { + "type": "string", + "nullable": true + }, + "survey_Authority_Code": { + "type": "string", + "nullable": true + }, + "survey_Authority_Type": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCDefect": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "action_1": { + "type": "string", + "nullable": true + }, + "action_2": { + "type": "string", + "nullable": true + }, + "action_3": { + "type": "string", + "nullable": true + }, + "action_Code_1": { + "type": "string", + "nullable": true + }, + "action_Code_2": { + "type": "string", + "nullable": true + }, + "action_Code_3": { + "type": "string", + "nullable": true + }, + "amsA_Action_Code_1": { + "type": "string", + "nullable": true + }, + "amsA_Action_Code_2": { + "type": "string", + "nullable": true + }, + "amsA_Action_Code_3": { + "type": "string", + "nullable": true + }, + "class_Is_Responsible": { + "type": "string", + "nullable": true + }, + "defect_Code": { + "type": "string", + "nullable": true + }, + "defect_ID": { + "type": "string", + "nullable": true + }, + "defect_Text": { + "type": "string", + "nullable": true + }, + "defective_Item_Code": { + "type": "string", + "nullable": true + }, + "detention_Reason_Deficiency": { + "type": "string", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "main_Defect_Code": { + "type": "string", + "nullable": true + }, + "main_Defect_Text": { + "type": "string", + "nullable": true + }, + "nature_Of_Defect_Code": { + "type": "string", + "nullable": true + }, + "nature_Of_Defect_DeCode": { + "type": "string", + "nullable": true + }, + "other_Action": { + "type": "string", + "nullable": true + }, + "other_Recognised_Org_Resp": { + "type": "string", + "nullable": true + }, + "recognised_Org_Resp": { + "type": "string", + "nullable": true + }, + "recognised_Org_Resp_Code": { + "type": "string", + "nullable": true + }, + "recognised_Org_Resp_YN": { + "type": "string", + "nullable": true + }, + "isAccidentalDamage": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCDetail": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "authorisation": { + "type": "string", + "nullable": true + }, + "callSign": { + "type": "string", + "nullable": true + }, + "cargo": { + "type": "string", + "nullable": true + }, + "charterer": { + "type": "string", + "nullable": true + }, + "class": { + "type": "string", + "nullable": true + }, + "country": { + "type": "string", + "nullable": true + }, + "inspection_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "release_Date": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "ship_Detained": { + "type": "string", + "nullable": true + }, + "dead_Weight": { + "type": "string", + "nullable": true + }, + "expanded_Inspection": { + "type": "string", + "nullable": true + }, + "flag": { + "type": "string", + "nullable": true + }, + "follow_Up_Inspection": { + "type": "string", + "nullable": true + }, + "gross_Tonnage": { + "type": "string", + "nullable": true + }, + "inspection_ID": { + "type": "string", + "nullable": true + }, + "inspection_Port_Code": { + "type": "string", + "nullable": true + }, + "inspection_Port_Decode": { + "type": "string", + "nullable": true + }, + "keel_Laid": { + "type": "string", + "nullable": true + }, + "last_Updated": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "ihslR_or_IMO_Ship_No": { + "type": "string", + "nullable": true + }, + "manager": { + "type": "string", + "nullable": true + }, + "number_Of_Days_Detained": { + "type": "string", + "nullable": true + }, + "number_Of_Defects": { + "type": "string", + "nullable": true + }, + "number_Of_Part_Days_Detained": { + "type": "string", + "nullable": true + }, + "other_Inspection_Type": { + "type": "string", + "nullable": true + }, + "owner": { + "type": "string", + "nullable": true + }, + "ship_Name": { + "type": "string", + "nullable": true + }, + "ship_Type_Code": { + "type": "string", + "nullable": true + }, + "ship_Type_Decode": { + "type": "string", + "nullable": true + }, + "source": { + "type": "string", + "nullable": true + }, + "unlocode": { + "type": "string", + "nullable": true + }, + "year_Of_Build": { + "type": "string", + "nullable": true + }, + "pscDefects": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCDefect" + }, + "nullable": true + }, + "pscCertificates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCCertificate" + }, + "nullable": true + }, + "pscAllCertificates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCAllCertificates" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCInspectionsSearchResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "inspectionCount": { + "type": "integer", + "format": "int32" + }, + "inspection_IDs": { + "type": "array", + "items": { + "type": "string" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCListResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "periodsCount": { + "type": "integer", + "format": "int32" + }, + "pscYearMonthCount": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.YearMonthCount" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "inspectionCount": { + "type": "integer", + "format": "int32" + }, + "pscDetail": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCDetail" + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.PSCSearchResult": { + "type": "object", + "properties": { + "apsStatus": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.APSStatus" + }, + "inspectionCount": { + "type": "integer", + "format": "int32" + }, + "inspections": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.PSCDetail" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.Relationship": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "incidentID": { + "type": "string", + "nullable": true + }, + "eventID": { + "type": "integer", + "format": "int32" + }, + "relationshipType": { + "type": "string", + "nullable": true + }, + "relationshipTypeCode": { + "type": "string", + "nullable": true + }, + "eventID2": { + "type": "integer", + "format": "int32" + }, + "eventType": { + "type": "string", + "nullable": true + }, + "eventTypeCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.ShipsCategory": { + "enum": [ + 0, + 1, + 2 + ], + "type": "integer", + "format": "int32" + }, + "ShipsEventsPscApi.Models.SurveyDatesHistoryUnique": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "dataSetVersion": { + "$ref": "#/components/schemas/ShipsEventsPscApi.Models.WebServiceVersion" + }, + "lrno": { + "type": "string", + "nullable": true + }, + "classSocietyCode": { + "type": "string", + "nullable": true + }, + "surveyDate": { + "type": "string", + "nullable": true + }, + "surveyType": { + "type": "string", + "nullable": true + }, + "classSociety": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.Vessel": { + "type": "object", + "properties": { + "typeId": { + "nullable": true, + "readOnly": true + }, + "eventID": { + "type": "integer", + "format": "int32" + }, + "ihslRorIMOShipNo": { + "type": "string", + "nullable": true + }, + "name": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + }, + "typeCode": { + "type": "string", + "nullable": true + }, + "flag": { + "type": "string", + "nullable": true + }, + "movementStatus": { + "type": "string", + "nullable": true + }, + "damage": { + "type": "string", + "nullable": true + }, + "status": { + "type": "string", + "nullable": true + }, + "statusCode": { + "type": "string", + "nullable": true + }, + "detailStatus": { + "type": "string", + "nullable": true + }, + "detailStatusCode": { + "type": "string", + "nullable": true + }, + "callsign": { + "type": "string", + "nullable": true + }, + "officialNumber": { + "type": "string", + "nullable": true + }, + "gt": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "dwt": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "ldt": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "mmsi": { + "type": "string", + "nullable": true + }, + "dateOfBuild": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "identifier": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "cargoLoadingStatus": { + "type": "string", + "nullable": true + }, + "cargoLoadingStatusCode": { + "type": "string", + "nullable": true + }, + "removalType": { + "type": "string", + "nullable": true + }, + "removalTypeCode": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.WebServiceVersion": { + "type": "object", + "properties": { + "dataSetVersion": { + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "ShipsEventsPscApi.Models.YearMonthCount": { + "type": "object", + "properties": { + "year": { + "type": "integer", + "format": "int32" + }, + "month": { + "type": "integer", + "format": "int32" + }, + "count": { + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + } + }, + "securitySchemes": { + "Basic": { + "type": "http", + "description": "Basic authentication added to authorization header", + "scheme": "basic" + } + } + }, + "security": [ + { + "Basic": [ ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/swagger/swagger_webservices.json b/src/main/resources/swagger/swagger_webservices.json new file mode 100644 index 0000000..344714b --- /dev/null +++ b/src/main/resources/swagger/swagger_webservices.json @@ -0,0 +1,13363 @@ +{ + "openapi": "3.0.1", + "info": { + "title": "IHS Markit Maritime Web Services", + "description": "Provides IHS Markit Maritime data", + "version": "v1" + }, + "paths": { + "/Facilities": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all facilities data.", + "description": "Sample requests:\r\n```\r\n GET /facilities\r\n```", + "parameters": [ + { + "name": "lastUpdateStart", + "in": "query", + "description": "Last Update Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2017-07-03T14:36:41.000Z" + }, + { + "name": "lastUpdateStop", + "in": "query", + "description": "Last Update Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2017-07-03T14:56:41.000Z" + }, + { + "name": "berthId", + "in": "query", + "description": "Berth ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 63473 + }, + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 19057 + }, + { + "name": "terminalId", + "in": "query", + "description": "Terminal ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 12345 + } + ], + "responses": { + "200": { + "description": "Returns Facilities", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.FacilitiesModel" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Berths": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all berths.", + "description": "Sample request:\r\n```\r\n GET /facilities/berths\r\n```", + "parameters": [ + { + "name": "lastUpdateStart", + "in": "query", + "description": "Last Update Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-09-23T09:31:00.000Z" + }, + { + "name": "lastUpdateStop", + "in": "query", + "description": "Last Update Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-09-30T09:31:00.000Z" + }, + { + "name": "berthId", + "in": "query", + "description": "Berth ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 31785 + }, + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 13567 + }, + { + "name": "terminalId", + "in": "query", + "description": "Terminal ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 20197 + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.BerthFacility" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Ports": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all ports.", + "description": "Sample request:\r\n```\r\n GET /facilities/ports\r\n```", + "parameters": [ + { + "name": "lastUpdateStart", + "in": "query", + "description": "Last Update Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-05-23T01:12:18.000Z" + }, + { + "name": "lastUpdateStop", + "in": "query", + "description": "Last Update Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-05-30T01:12:18.000Z" + }, + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 10914 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.PortFacility" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Ports/Filtered": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all ports filtered by starts with.", + "description": "Sample request:\r\n```\r\n GET /facilities/ports/filtered\r\n```", + "parameters": [ + { + "name": "startsWith", + "in": "query", + "description": "The startsWith parameter is used as a filter for the port name. For example, if startsWith is \"Gda\", the method will return only those ports whose names start with \"Gda\".", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Gda" + }, + { + "name": "limit", + "in": "query", + "description": "How many elements will be returned", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + }, + { + "name": "lastUpdateStart", + "in": "query", + "description": "Last Update Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-05-23T01:12:18.000Z" + }, + { + "name": "lastUpdateStop", + "in": "query", + "description": "Last Update Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-05-30T01:12:18.000Z" + }, + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 10914 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns filtered list of ports", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.PortFacility" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Terminals": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all terminals.", + "description": "Sample request:\r\n```\r\n GET /facilities/terminals\r\n```", + "parameters": [ + { + "name": "lastUpdateStart", + "in": "query", + "description": "Last Update Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2014-08-18T14:41:14.000Z" + }, + { + "name": "lastUpdateStop", + "in": "query", + "description": "Last Update Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2014-08-30T14:41:14.000Z" + }, + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 11049 + }, + { + "name": "terminalId", + "in": "query", + "description": "Terminal ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 44701 + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.TerminalFacility" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Cranes": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all cranes.", + "description": "Sample request:\r\n```\r\n GET /facilities/cranes\r\n```", + "parameters": [ + { + "name": "berthId", + "in": "query", + "description": "Berth ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 77715 + }, + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.Crane" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Connections": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all connections.", + "description": "Sample request:\r\n```\r\n GET /facilities/connections\r\n```", + "parameters": [ + { + "name": "berthId", + "in": "query", + "description": "Berth ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 33524 + }, + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.Connection" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Countries": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all countries.", + "description": "Sample request:\r\n```\r\n GET /facilities/countries\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.Country" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/Zones": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets all zones.", + "description": "Sample request:\r\n```\r\n GET /facilities/zones\r\n```", + "parameters": [ + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.GeoZone" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/FacilitiesInArea": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets facilities in an area.", + "description": "Sample request:\r\n```\r\n GET /FacilitiesInArea\r\n```", + "parameters": [ + { + "name": "polygon", + "in": "query", + "description": "Polygon", + "schema": { + "title": "String", + "type": "string" + }, + "example": "-11.74467303112902 36.70011654393193, -8.120362353775773 35.67819158970612, 1.073316356091019 35.86666578061244, 3.745296407683512 42.40997961828092, -9.49604660283727 44.33403108762421, -11.74467303112902 36.70011654393193" + }, + { + "name": "pointLatitude", + "in": "query", + "description": "Latitude for a point", + "schema": { + "title": "Nullable`1", + "type": "number", + "format": "float" + }, + "example": 121.5 + }, + { + "name": "pointLongitude", + "in": "query", + "description": "Longitude for a point", + "schema": { + "title": "Nullable`1", + "type": "number", + "format": "float" + }, + "example": 31.4 + }, + { + "name": "radius", + "in": "query", + "description": "Radius", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 92600 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns facilities in an area", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.FacilitiesInAreaModel" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/PortOperatorAddresses": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets port operator addresses.", + "description": "Sample request:\r\n```\r\n GET /facilities/portoperatoraddresses\r\n```", + "parameters": [ + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.PortOperatorAddress" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/PortAuthorityAddresses": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets port authority addresses.", + "description": "Sample request:\r\n```\r\n GET /facilities/portauthorityaddresses\r\n```", + "parameters": [ + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.PortAuthorityAddress" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/PortMarpolDetails": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets port MARPOL details.", + "description": "Sample request:\r\n```\r\n GET /facilities/portmarpoldetails\r\n```", + "parameters": [ + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.PortMarpol" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/TerminalStorageDetails": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets terminal storage details.", + "description": "Sample request:\r\n```\r\n GET /facilities/terminalstoragedetails\r\n```", + "parameters": [ + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + }, + { + "name": "terminalId", + "in": "query", + "description": "Terminal ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 44701 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.TerminalStorage" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Facilities/PortThroughput": { + "get": { + "tags": [ + "Facilities" + ], + "summary": "Gets port throughputs.", + "description": "Sample request:\r\n```\r\n GET /facilities/portthroughput\r\n```", + "parameters": [ + { + "name": "portId", + "in": "query", + "description": "Port ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 21646 + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "ITL" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.PortThroughput" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets all movement data.", + "description": "Sample requests:\r\n```\r\n GET /movements?startDate=2011-01-01&stopDate=2019-01-01\r\n |\r\n GET /movements?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9371414" + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2019-01-07T07:01:27.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns Movements", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.MovementsModel" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + }, + "204": { + "description": "No Movements data" + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets all movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n}\r\n```", + "requestBody": { + "description": "Movements Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.MovementsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.MovementsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.MovementsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns Movements", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.MovementsModel" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/Transits": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Transit movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/Transits?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T14:32:51.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9732369" + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-02-05T14:32:51.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Transit" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets Transit movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "Transits Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TransitsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TransitsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TransitsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Transit" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/TerminalCalls": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets TerminalCall movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/TerminalCalls?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254&subFacilityId=1&facilityId=999&parentFacilityId=12345\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T14:32:51.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9183984" + }, + { + "name": "subFacilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 72798 + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 43770 + }, + { + "name": "parentFacilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 19473 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T14:32:51.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TerminalCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets TerminalCall movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"subFacilityId\": 12,\n\r\n \"facilityId\": 9000,\n\r\n \"parentFacilityId\": 23415,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "Terminal Calls Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TerminalCallsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TerminalCallsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TerminalCallsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TerminalCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/StsTypes": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets StsTypes movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/StsTypes\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsDecodeType" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/CurrentStsOperations": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets current StsOperation movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/CurrentStsOperations?stsType=Bunkering\r\n```", + "parameters": [ + { + "name": "stsType", + "in": "query", + "description": "STS Type", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Fishing" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsOperation" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/StsOperations": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets StsOperation movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/StsOperations?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254&facilityId=1&parentFacilityId=999\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T14:32:51.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9813060" + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 9424522 + }, + { + "name": "parentFacilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 57553 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T14:32:51.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsOperation" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets StsOperation movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"facilityId\": 9000,\n\r\n \"parentFacilityId\": 23415,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "STS Operations Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsOperationsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsOperationsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsOperationsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsOperation" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DriftingStsTypes": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Get DriftingStsTypes movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/DriftingStsTypes\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DriftingStsDecodeType" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/CurrentDriftingStsOperations": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets current DriftingStsOperation movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/CurrentDriftingStsOperations?stsType=Drifting\r\n```", + "parameters": [ + { + "name": "driftingStsType", + "in": "query", + "description": "Drifting STS Type", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Possible Bunkerer" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DriftingStsOperation" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DriftingStsOperations": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets DriftingStsOperation movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/DriftingStsOperations?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-01T00:00:00.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T00:00:00.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9787948" + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-01T00:00:00.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-30T00:00:00.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A13A2TW" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DriftingStsOperation" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/BerthCalls": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets BerthCall movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/BerthCalls?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254&facilityId=1&parentFacilityId=999\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T14:32:51.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9813060" + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 57552 + }, + { + "name": "parentFacilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 15843 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-06T14:32:51.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.BerthCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets BerthCall movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"facilityId\": 9000,\n\r\n \"parentFacilityId\": 23415,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "Berth Calls Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.BerthCallsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.BerthCallsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.BerthCallsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.BerthCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DarkActivity": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets DarkActivity movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/DarkActivity?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254&facilityId=999\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2020-01-31T00:06:25.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2020-06-12T13:39:02.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "7819876" + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 3 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2020-01-31T00:06:25.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2020-06-12T13:39:02.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivity" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets DarkActivity movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"facilityId\": 9000,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "Dark Activity Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivityRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivityRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivityRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivity" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/CurrentDarkActivity": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets current DarkActivity movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/CurrentDarkActivity?facilityId=999\r\n```", + "parameters": [ + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 3 + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivity" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/AnchorageCalls": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets AnchorageCall movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/AnchorageCalls?startDate=2019-01-01T10:00&stopDate=2019-01-01T10:10&lrno=9015254&subFacilityId=1&facilityId=999\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-24T09:59:23.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-25T09:59:23.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "8618994" + }, + { + "name": "subFacilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 186 + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 25732 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-24T09:59:23.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-25T09:59:23.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + }, + { + "name": "callId", + "in": "query", + "description": "Call ID - can be a comma- or space-separated list - Maximum of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "402163" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.AnchorageCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets AnchorageCall movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"subFacilityId\": 9000,\n\r\n \"facilityId\": 23415,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n \"callId\": \"36357,32468\"\n\r\n}\r\n```", + "requestBody": { + "description": "Anchorage Calls Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.AnchorageCallsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.AnchorageCallsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.AnchorageCallsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.AnchorageCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/PortCalls": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets PortCall movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/PortCalls?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254&subFacilityId=1&facilityId=999\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-18T21:59:53.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-19T21:59:53.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "8716863" + }, + { + "name": "subFacilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 109 + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 20497 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-18T21:59:53.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2004-07-19T21:59:53.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + }, + { + "name": "callId", + "in": "query", + "description": "Call ID - can be a comma- or space-separated list - Maximum of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "407372" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets PortCall movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"subFacilityId\": 12,\n\r\n \"facilityId\": 9000,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n \"callId\": \"12345,59876\"\n\r\n}\r\n```", + "requestBody": { + "description": "Port Calls Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCallsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCallsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCallsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/Destinations": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Destination movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/Destinations?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254&facilityId=999\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2020-01-31T00:06:25.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2020-06-12T13:39:02.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "8540862" + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 17132 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2020-01-31T00:06:25.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2020-06-12T13:39:02.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Destination" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets Destination movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"facilityId\": 23415,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "Destinations Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DestinationsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DestinationsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DestinationsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Destination" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/BerthIds": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Berth IDs.", + "description": "Sample request:\r\n```\r\n GET /movements/BerthIds\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Berth" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/PortIds": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Port IDs.", + "description": "Sample request:\r\n```\r\n GET /movements/PortIds?parentPortName=Singapore\r\n```", + "parameters": [ + { + "name": "portId", + "in": "query", + "description": "The ID of the port", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 26060 + }, + { + "name": "portName", + "in": "query", + "description": "The name of the port", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Columbia" + }, + { + "name": "portStatus", + "in": "query", + "description": "The status of the port", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Sub-Port" + }, + { + "name": "parentPortId", + "in": "query", + "description": "The ID of the parent port", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 15445 + }, + { + "name": "parentPortName", + "in": "query", + "description": "The name of the parent port", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Alabama Inland Ports" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Port" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/TerminalIds": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Terminal IDs.", + "description": "Sample request:\r\n```\r\n GET /movements/TerminalIds\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Terminal" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/StatCodes": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets StatCode code and decodes.", + "description": "Sample request:\r\n```\r\n GET /movements/StatCodes\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StatCode" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/Zones": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets all zones.", + "description": "Sample request:\r\n```\r\n GET /movements/Zones\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Zone" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/TransitDetails": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets transit details.", + "description": "Sample request:\r\n```\r\n GET /movements/TransitDetails\r\n```", + "parameters": [ + { + "name": "facilityId", + "in": "query", + "description": "Transit ID", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "facilityName", + "in": "query", + "description": "Transit Name", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Dover Straits" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TransitDetail" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DarkActivityAreas": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets dark activity areas.", + "description": "Sample request:\r\n```\r\n GET /movements/DarkActivityAreas\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivityArea" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DarkActivityTypes": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets dark activity types.", + "description": "Sample request:\r\n```\r\n GET /movements/DarkActivityTypes\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivityType" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/Countries": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets countries.", + "description": "Sample request:\r\n```\r\n GET /movements/countries\r\n```", + "parameters": [ + { + "name": "countryName", + "in": "query", + "description": "Country Name", + "schema": { + "title": "String", + "type": "string" + }, + "example": "United Kingdom" + }, + { + "name": "countryCode", + "in": "query", + "description": "Country Code", + "schema": { + "title": "String", + "type": "string" + }, + "example": "GBI" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Country" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/CurrentlyAt": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets data for ships still in port.", + "description": "Sample request:\r\n```\r\n GET /movements/CurrentlyAt?dateCreatedUpdatedStart=2011-01-01&dateCreatedUpdatedStop=2019-01-01&statCode=A1&facilityId=999\r\n```", + "parameters": [ + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9371414" + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 13073 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2019-01-07T07:01:27.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets data for ships still in port.", + "description": "Ship LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"facilityId\": 23415,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "Currently At Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.CurrentlyAtRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.CurrentlyAtRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.CurrentlyAtRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/VoyageDistances": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets the distance for a voyage terminating at a call ID.", + "description": "Sample request:\r\n```\r\n GET /movements/VoyageDistances?startDate=2011-01-01&stopDate=2019-01-01&callId=82596408&lrno=9263708\r\n```", + "parameters": [ + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9371414" + }, + { + "name": "callId", + "in": "query", + "description": "Call ID - can be a comma- or space-separated list - Recommended maximum of 100 Call IDs", + "schema": { + "title": "String", + "type": "string" + }, + "example": "142998653" + }, + { + "name": "startDate", + "in": "query", + "description": "Voyage Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-04-22T20:02:13.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Voyage End - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2021-04-23T14:17:42.000Z" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.VoyageDistance" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets the distance for a voyage terminating at a call ID.", + "description": "Ship LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nCall ID - can be comma- or space-separated values within a string - Maximum 1000 Call IDs\n\r\nVoyage Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nVoyage End - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"callId\": \"132452578,486729086\",\n\r\n \"startDate\": \"2019-05-02T09:05\",\n\r\n \"stopDate\": \"2019-05-26T23:59\",\n\r\n}\r\n```", + "requestBody": { + "description": "Voyage Distances Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.VoyageDistancesRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.VoyageDistancesRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.VoyageDistancesRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.VoyageDistance" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DistanceTravelled": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets the distance travelled for a vessel between a specified date range.", + "description": "Sample request:\r\n```\r\n GET /movements/DistanceTravelled?startDate=2021-02-18&stopDate=2021-05-17&lrno=9269207\r\n```", + "parameters": [ + { + "name": "lrno", + "in": "query", + "description": "Ship LR number", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9269207" + }, + { + "name": "startDate", + "in": "query", + "description": "Date Range Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional, maximum 90 days", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-05T14:32:51.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Date Range End - yyyy-MM-dd hh:mm:ss - Time/seconds are optional, maximum 90 days", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2021-01-26T02:16:52.000Z" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DistanceTravelled" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DistanceTablesTransitParameters": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Distance Tables transit parameters.", + "description": "Sample request:\r\n```\r\n GET /movements/DistanceTablesTransitParameters\r\n```", + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Resources.DistanceTablesTransitParameter" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/DistanceTablesData": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Distance Tables data.", + "description": "Sample request:\r\n```\r\n GET /movements/DistanceTablesData\r\n```", + "parameters": [ + { + "name": "lat", + "in": "query", + "description": "Latitude - specify either a start port by name or by Distance Table ID, or a lat/lon", + "schema": { + "title": "Nullable`1", + "type": "number", + "format": "double" + }, + "example": 8.659347 + }, + { + "name": "lon", + "in": "query", + "description": "Longitude - specify either a start port by name or by Distance Table ID, or a lat/lon", + "schema": { + "title": "Nullable`1", + "type": "number", + "format": "double" + }, + "example": -82.567276 + }, + { + "name": "startPortName", + "in": "query", + "description": "Start port name - specify either a start port by name or by Distance Table ID, or a lat/lon", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Guayabal" + }, + { + "name": "startPortId", + "in": "query", + "description": "Start port ID", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 29842 + }, + { + "name": "destinationPortName", + "in": "query", + "description": "Name of the destination port - specify either by name or by Distance Table ID", + "schema": { + "title": "String", + "type": "string" + }, + "example": "Primorsk" + }, + { + "name": "destinationPortId", + "in": "query", + "description": "Destination port ID", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 244652 + }, + { + "name": "speed", + "in": "query", + "description": "Speed", + "schema": { + "title": "Double", + "type": "number", + "format": "double" + }, + "example": 12.3 + }, + { + "name": "distanceTablesTransitId", + "in": "query", + "description": "Distance Table ID of the waypoint location - optional", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": -1 + } + ], + "responses": { + "200": { + "description": "Returns the newly created item", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Resources.DistanceTablesData" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/HistoricalPositions": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets Historical Positions data.", + "description": "Sample request:\r\n```\r\n GET /movements/HistoricalPositions\r\n```", + "parameters": [ + { + "name": "lrno", + "in": "query", + "description": "Ship LR number", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9292228" + }, + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2020-01-10T12:00" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2020-01-12T12:00" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.HistoricalPosition" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/ShipyardCalls": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets ShipyardCall movement data.", + "description": "Sample request:\r\n```\r\n GET /movements/ShipyardCalls?startDate=2011-01-01&stopDate=2019-01-01&lrno=9015254&subFacilityId=1&facilityId=999\r\n```", + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2019-05-01T10:25:11.000Z" + }, + { + "name": "stopDate", + "in": "query", + "description": "Stop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2019-05-01T13:47:12.000Z" + }, + { + "name": "lrno", + "in": "query", + "description": "Ship LR number - can be a comma- or space-separated list - Recommended maximum of 100 LR numbers", + "schema": { + "title": "String", + "type": "string" + }, + "example": "9463059" + }, + { + "name": "subFacilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 10200 + }, + { + "name": "facilityId", + "in": "query", + "description": "", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 27999 + }, + { + "name": "dateCreatedUpdatedStart", + "in": "query", + "description": "Date Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2019-05-01T10:25:11.000Z" + }, + { + "name": "dateCreatedUpdatedStop", + "in": "query", + "description": "Date Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "Nullable`1", + "type": "string", + "format": "date-time" + }, + "example": "2019-06-01T10:25:11.000Z" + }, + { + "name": "statCode", + "in": "query", + "description": "StatCode", + "schema": { + "title": "String", + "type": "string" + }, + "example": "A" + } + ], + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Movements" + ], + "summary": "Gets ShipyardCall movement data.", + "description": "Start Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nStop Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nShip LR number - can be comma- or space-separated values within a string - Maximum 1000 LR numbers\n\r\nDate Created Updated Start - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\r\nDate Created Updated Stop - yyyy-MM-dd hh:mm:ss - Time/seconds are optional\n\n\r\nSample request:\n\n```\r\n{\n\r\n \"startDate\": \"2021-05-20T00:00\",\n\r\n \"stopDate\": \"2021-05-26T23:59\",\n\r\n \"lrno\": \"9503718,9741607,9568316\",\n\r\n \"subFacilityId\": 12,\n\r\n \"facilityId\": 9000,\n\r\n \"dateCreatedUpdatedStart\": \"2019-05-02T09:05\",\n\r\n \"dateCreatedUpdatedStop\": \"2019-05-26T23:59\",\n\r\n \"statCode\": \"B33A2DG\"\n\r\n}\r\n```", + "requestBody": { + "description": "Shipyard Calls Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ShipyardCallsRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ShipyardCallsRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ShipyardCallsRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created item list", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/ContainerScreeningCarriers": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets a list of container screening Carriers.", + "description": "Sample request:\r\n```\r\n GET /movements/ContainerScreeningCarriers\r\n```", + "responses": { + "200": { + "description": "Returns received item", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Carrier" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/ContainersScreening": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets container screening data.", + "description": "Sample request:\r\n```\r\n GET /movements/ContainersScreening?documentNumber=123456789&carrier=carrier\r\n```", + "parameters": [ + { + "name": "documentNumber", + "in": "query", + "description": "documentNumber", + "schema": { + "title": "String", + "type": "string" + }, + "example": "MSKU0335951" + }, + { + "name": "carrier", + "in": "query", + "description": "carrier", + "schema": { + "title": "String", + "type": "string" + }, + "example": "MAEU" + } + ], + "responses": { + "200": { + "description": "Returns received item", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.ContainerTrackingResult" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/BillofLadingScreening": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets bill of lading screening data.", + "description": "Sample request:\r\n```\r\n GET /movements/BillofLadingScreening?documentNumber=123456789&carrier=carrier\r\n```", + "parameters": [ + { + "name": "documentNumber", + "in": "query", + "description": "documentNumber", + "schema": { + "title": "String", + "type": "string" + }, + "example": "HLCUEUR2105EQKM6" + }, + { + "name": "carrier", + "in": "query", + "description": "carrier", + "schema": { + "title": "String", + "type": "string" + }, + "example": "HLCU" + } + ], + "responses": { + "200": { + "description": "Returns received item", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.BolTrackingResult" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/ContainerCarriers": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets a list of container carriers.", + "description": "Sample request:\r\n```\r\n GET /movements/ContainerCarriers\r\n```", + "responses": { + "200": { + "description": "Returns received item", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.ContainerCarrier" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/Movements/ContainerEvents": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets container screening data.", + "description": "Sample request:\r\n```\r\n GET /movements/ContainerEvents?documentNumber=123456789&carrier=carrier\r\n```", + "parameters": [ + { + "name": "documentNumber", + "in": "query", + "description": "documentNumber", + "schema": { + "title": "String", + "type": "string" + }, + "example": "MSKU0335951" + }, + { + "name": "carrier", + "in": "query", + "description": "carrier", + "schema": { + "title": "String", + "type": "string" + }, + "example": "MAEU" + } + ], + "responses": { + "200": { + "description": "Returns received item", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.V2Events" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + }, + "404": { + "description": "No content found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + }, + "202": { + "description": "Request accepted and in progress" + } + } + } + }, + "/Movements/BillOfLadingEvents": { + "get": { + "tags": [ + "Movements" + ], + "summary": "Gets bill of lading screening data.", + "description": "Sample request:\r\n```\r\n GET /movements/BillOfLadingEvents?documentNumber=123456789&carrier=carrier\r\n```", + "parameters": [ + { + "name": "documentNumber", + "in": "query", + "description": "documentNumber", + "schema": { + "title": "String", + "type": "string" + }, + "example": "HLCUEUR2105EQKM6" + }, + { + "name": "carrier", + "in": "query", + "description": "carrier", + "schema": { + "title": "String", + "type": "string" + }, + "example": "HLCU" + } + ], + "responses": { + "200": { + "description": "Returns received item", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.TransportEvents" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + }, + "404": { + "description": "No content found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + }, + "202": { + "description": "Request accepted and in progress" + } + } + } + }, + "/RiskAndCompliance/AllShipsWithCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Get all ships with a compliance", + "description": "Sample requests:\r\n```\r\n GET /AllShipsWithCompliance\r\n```", + "parameters": [ + { + "name": "complianceLevel", + "in": "query", + "description": "Optionally specify the compliance level. Valid values are 0, 1 or 2.", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 1 + } + ], + "responses": { + "200": { + "description": "Returns All ships with compliance", + "content": { + "application/json": { + "schema": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedAllShipsWithCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged collection of the details of all available ships with risk maintained", + "description": "Sample requests:\r\n```\r\n GET /PagedAllShipsWithCompliance\r\n```", + "parameters": [ + { + "name": "complianceLevel", + "in": "query", + "description": "Optionally specify the compliance level. Valid values are 0, 1 or 2.", + "schema": { + "title": "Nullable`1", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + } + ], + "responses": { + "200": { + "description": "Paged collection of the details of all available ships with risk maintained", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/ImosOfShipsWithCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets collection of the IMOs of all available ships with compliance maintained", + "description": "Sample requests:\r\n```\r\n GET /ImosOfShipsWithCompliance\r\n```", + "responses": { + "200": { + "description": "Collection of the IMOs of all available ships with compliance maintained", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "title": "String", + "type": "string" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/CompliancesByImos": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of the IMOs of ships with full compliance details that match given IMOs", + "description": "Sample requests:\r\n```\r\n GET /ComplianceByImos\r\n```", + "parameters": [ + { + "name": "imos", + "in": "query", + "description": "Comma separated IMOs up to a total of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "1234567,9876543" + } + ], + "responses": { + "200": { + "description": "Returns collection of compliance", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/UpdatedComplianceList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of the IMOs of all ships with compliance updates", + "description": "Sample requests:\r\n```\r\n GET /UpdatedComplianceList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + } + ], + "responses": { + "200": { + "description": "Returns Collection of UpdatedCompliance", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedUpdatedComplianceList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of the IMOs of all ships with compliance updates as a paginated collection", + "description": "Sample requests:\r\n```\r\n GET /PagedUpdatedComplianceList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns Paged Collection of UpdatedCompliance", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/ComplianceValuesMeaning": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets all possible compliance values and meanings", + "description": "Sample requests:\r\n```\r\n GET /ComplianceValuesMeaning\r\n```", + "responses": { + "200": { + "description": "Returns all possible compliance values and meanings", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceValueMeaning" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/AllShipsWithRisk": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets collection of the details of all available ships with risk maintained", + "description": "Sample requests:\r\n```\r\n GET /AllShipsWithRisk\r\n```", + "responses": { + "200": { + "description": "Collection of the details of all available ships with risk maintained", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedAllShipsWithRisk": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged collection of the details of all available ships with risk maintained", + "description": "Sample requests:\r\n```\r\n GET /PagedAllShipsWithRisk\r\n```", + "parameters": [ + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + } + ], + "responses": { + "200": { + "description": "Paged collection of the details of all available ships with risk maintained", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/ImosOfShipsWithRisk": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets collection of the IMOs of all available ships with risk maintained", + "description": "Sample requests:\r\n```\r\n GET /ImosOfShipsWithRisk\r\n```", + "responses": { + "200": { + "description": "Collection of the IMOs of all available ships with risk maintained", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "title": "String", + "type": "string" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/RisksByImos": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of the IMOs of all ships with risk updates as a collection", + "description": "Sample requests:\r\n```\r\n GET /RiskByImos\r\n```", + "parameters": [ + { + "name": "imos", + "in": "query", + "description": "Comma separated IMOs up to a total of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "1234567,9876543" + } + ], + "responses": { + "200": { + "description": "Returns collection of risk", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/UpdatedRiskList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of the IMOs of all ships with risk updates", + "description": "Sample requests:\r\n```\r\n GET /UpdatedRiskList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + } + ], + "responses": { + "200": { + "description": "Returns collection of all ships with risk updates", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.RiskDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedUpdatedRiskList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged collection of the IMOs of all ships with risk updates", + "description": "Sample requests:\r\n```\r\n GET /PagedUpdatedRiskList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged collection of the IMOs of all ships with risk updates", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.RiskDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/UpdatedRiskWithNarrativesList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of the IMOs of all ships with risk updates including narratives", + "description": "Sample requests:\r\n```\r\n GET /UpdatedRiskWithNarrativesList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + } + ], + "responses": { + "200": { + "description": "Returns collection of risks with narratives", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedUpdatedRiskWithNarrativesList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged collection of the details of all available ships with risk maintained including narratives", + "description": "Sample requests:\r\n```\r\n GET /PagedUpdatedRiskWithNarrativesList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged collection of risks with narratives", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/RiskValuesMeaning": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets all possible risk values and meanings", + "description": "Sample requests:\r\n```\r\n GET /RiskValuesMeaning\r\n```", + "responses": { + "200": { + "description": "Returns all possible risk values and meanings", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.RiskValueMeaning" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/UpdatedCompanyComplianceList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets the details of the Owcodes and compliance of all companies with compliance updates", + "description": "Sample requests:\r\n```\r\n GET /UpdatedCompanyComplianceList \r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + } + ], + "responses": { + "200": { + "description": "Returns the details of the Owcodes and compliance of all companies with compliance updates", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedUpdatedCompanyComplianceList": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged collection of the details of the Owcodes and compliance of all companies with compliance updates", + "description": "Sample requests:\r\n```\r\n GET /PagedUpdatedCompanyComplianceList \r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged collection of the details of the Owcodes and compliance of all companies with compliance updates", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/CompanyComplianceByOWCODE": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets data for specific OWCODEs along with their compliance", + "description": "Sample requests:\r\n```\r\n GET /CompanyComplianceByOWCODE\r\n```", + "parameters": [ + { + "name": "owcodes", + "in": "query", + "description": "Comma separated OWCODEs up to a total of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "4300685,5411574" + } + ], + "responses": { + "200": { + "description": "Returns data for specific OWCODEs along with their compliance", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/AllCompanyCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets the details of the Owcodes and compliance of all companies with compliance", + "description": "Sample requests:\r\n```\r\n GET /AllCompanyCompliance\r\n```", + "responses": { + "200": { + "description": "Returns the details of the Owcodes and compliance of all companies with compliance", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedAllCompanyCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged collection of the details of the Owcodes and compliance of all companies with compliance updates", + "description": "Sample requests:\r\n```\r\n GET /PagedAllCompanyCompliance \r\n```", + "parameters": [ + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged collection of the details of the Owcodes and compliance of all companies with compliance", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/ShipsForCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of all available ships", + "description": "Sample requests:\r\n```\r\n GET /ShipsForCompliance\r\n```", + "responses": { + "200": { + "description": "Returns list of details of all available ships", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedShipsForCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged details of all available ships", + "description": "Sample requests:\r\n```\r\n GET /PagedShipsForCompliance\r\n```", + "parameters": [ + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged list of details of all available ships", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/UpdatedShipsForCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of all updated ships", + "description": "Sample requests:\r\n```\r\n GET /UpdatedShipsForCompliance\r\n```", + "parameters": [ + { + "name": "requestedDate", + "in": "query", + "description": "Requested Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + } + ], + "responses": { + "200": { + "description": "Returns list of details of all updated ships", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/PagedUpdatedShipsForCompliance": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets paged details of updated available ships", + "description": "Sample requests:\r\n```\r\n GET /PagedUpdatedShipsForCompliance\r\n```", + "parameters": [ + { + "name": "requestedDate", + "in": "query", + "description": "Requested Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged list of details of all updated ships", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/RiskAndCompliance/ShipsForComplianceByImos": { + "get": { + "tags": [ + "Risk and Compliance" + ], + "summary": "Gets details of all ships by IMOs", + "description": "Sample requests:\r\n```\r\n GET /ShipsForComplianceByImos\r\n```", + "parameters": [ + { + "name": "imos", + "in": "query", + "description": "Comma separated IMOs up to a total of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "1234567,9876543" + } + ], + "responses": { + "200": { + "description": "Returns list of details of all ships specified by IMOs", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/AllShipsWithSustainabilityWithNarratives": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets collection of the details of all available ships with sustainability maintained including narratives", + "description": "Sample requests:\r\n```\r\n GET /AllShipsWithSustainabilityWithNarratives\r\n```", + "responses": { + "200": { + "description": "Collection of the details of all available ships with sustainability maintained including narratives", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/PagedAllShipsWithSustainabilityWithNarratives": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets paged collection of the details of all available ships with sustainability maintained including narratives", + "description": "Sample requests:\r\n```\r\n GET /PagedAllShipsWithSustainabilityWithNarratives\r\n```", + "parameters": [ + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + } + ], + "responses": { + "200": { + "description": "Paged collection of the details of all available ships with sustainability maintained including narratives", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/AllShipsWithSustainability": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets collection of the details of all available ships with sustainability maintained", + "description": "Sample requests:\r\n```\r\n GET /AllShipsWithSustainability\r\n```", + "responses": { + "200": { + "description": "Collection of the details of all available ships with sustainability maintained", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/PagedAllShipsWithSustainability": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets paged collection of the details of all available ships with sustainability maintained", + "description": "Sample requests:\r\n```\r\n GET /PagedAllShipsWithSustainability\r\n```", + "parameters": [ + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + } + ], + "responses": { + "200": { + "description": "Paged collection of the details of all available ships with sustainability maintained", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/UpdatedSustainabilityWithNarrativesList": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets details of the IMOs of all ships with sustainability updates including narratives", + "description": "Sample requests:\r\n```\r\n GET /UpdatedSustainabilityWithNarrativesList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + } + ], + "responses": { + "200": { + "description": "Returns collection of sustainability updates including narratives", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/PagedUpdatedSustainabilityWithNarrativesList": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets paged collection of the details of all available ships with sustainability maintained including narratives", + "description": "Sample requests:\r\n```\r\n GET /PagedUpdatedSustainabilityWithNarrativesList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged collection of sustainability updates including narratives", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/UpdatedSustainabilityList": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets details of the IMOs of all ships with sustainability updates", + "description": "Sample requests:\r\n```\r\n GET /UpdatedSustainabilityList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + } + ], + "responses": { + "200": { + "description": "Returns collection of all ships with sustainability updates", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/PagedUpdatedSustainabilityList": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets paged collection of the IMOs of all ships with sustainability updates", + "description": "Sample requests:\r\n```\r\n GET /PagedUpdatedSustainabilityList\r\n```", + "parameters": [ + { + "name": "fromDate", + "in": "query", + "description": "From Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-13T07:01:27.000Z" + }, + { + "name": "toDate", + "in": "query", + "description": "To Date - yyyy-MM-dd hh:mm:ss - Time/seconds are optional. If unspecified, the current UTC date and time is used", + "schema": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "example": "2022-01-20T07:01:27.000Z" + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page number to display.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 1 + }, + { + "name": "pageSize", + "in": "query", + "description": "How many elements will be on the single page. Maximum allowed is 1000.", + "schema": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "example": 100 + } + ], + "responses": { + "200": { + "description": "Returns paged collection of the IMOs of all ships with sustainability updates", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]" + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/SustainabilityWithNarrativesByImos": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets details and narratives of the IMOs of all ships with sustainability as a collection", + "description": "Sample requests:\r\n```\r\n GET /SustainabilityWithNarrativesByImos\r\n```", + "parameters": [ + { + "name": "imos", + "in": "query", + "description": "Comma separated IMOs up to a total of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "1234567,9876543" + } + ], + "responses": { + "200": { + "description": "Available sustainability details with narratives", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/SustainabilityByImos": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets details of the IMOs of all ships with sustainability as a collection", + "description": "Sample requests:\r\n```\r\n GET /SustainabilityByImos\r\n```", + "parameters": [ + { + "name": "imos", + "in": "query", + "description": "Comma separated IMOs up to a total of 100", + "schema": { + "title": "String", + "type": "string" + }, + "example": "1234567,9876543" + } + ], + "responses": { + "200": { + "description": "Available sustainability details", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/ImosOfShipsWithSustainability": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets collection of the IMOs of all available ships with sustainability maintained", + "description": "Sample requests:\r\n```\r\n GET /ImosOfShipsWithSustainability\r\n```", + "responses": { + "200": { + "description": "Collection of the IMOs of all available ships with sustainability maintained", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "title": "String", + "type": "string" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + }, + "/ShipSustainability/SustainabilityValueMeanings": { + "get": { + "tags": [ + "Ship Sustainability" + ], + "summary": "Gets all possible sustainability values and meanings", + "description": "Sample requests:\r\n```\r\n GET /SustainabilityValueMeanings\r\n```", + "responses": { + "200": { + "description": "Returns all possible sustainability values and meanings", + "content": { + "application/json": { + "schema": { + "title": "IReadOnlyCollection`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityValueMeaning" + } + } + } + } + }, + "401": { + "description": "Unauthorised request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "MaritimeWebServices.Features.Facilities.Models.BerthFacility": { + "title": "BerthFacility", + "type": "object", + "properties": { + "berth_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "terminal_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berth_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "berth_Operator": { + "title": "String", + "type": "string", + "nullable": true + }, + "berth_Type": { + "title": "String", + "type": "string", + "nullable": true + }, + "berth_Status": { + "title": "String", + "type": "string", + "nullable": true + }, + "facility_Type": { + "title": "String", + "type": "string", + "nullable": true + }, + "dec_Latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "dec_Longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "berth_Length_Flat_Side": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berth_Length_Incl_Dolphins": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berth_Length_Continuous": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berth_Additional_Info": { + "title": "String", + "type": "string", + "nullable": true + }, + "depth_Alongside_LW": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "draught_HW_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "draught_LW_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "berth_UKC_Min": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "tidal_Range_Spring": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "tidal_Range_Neap": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "night_Berthing": { + "title": "String", + "type": "string", + "nullable": true + }, + "night_Unberthing": { + "title": "String", + "type": "string", + "nullable": true + }, + "ship_LOA_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "ship_LOA_Min": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "ship_Dwt_Max": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "ship_Dwt_Min": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "ship_Disp_Max": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "ship_Disp_Min": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "gas_Capacity_Min": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "gas_Capacity_Max": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "ship_Beam_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "berth_Disp_Max": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "gT_Max": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "teu": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "total_PBL_Min": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_BCM_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_BCM_Min": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_SCM_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_SCM_Min": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_Height_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_Height_Min": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "derrick_SWL_Min": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "wL_Masthead_Height_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_PBL_Min_Fwd": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_PBL_Min_Aft": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "manifold_Used": { + "title": "String", + "type": "string", + "nullable": true + }, + "ro_Ro": { + "title": "String", + "type": "string", + "nullable": true + }, + "passenger": { + "title": "String", + "type": "string", + "nullable": true + }, + "ramp_Width": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "ramp_SWL": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "breakbulk": { + "title": "Boolean", + "type": "boolean" + }, + "naval": { + "title": "Boolean", + "type": "boolean" + }, + "coastal": { + "title": "Boolean", + "type": "boolean" + }, + "timber_Products": { + "title": "Boolean", + "type": "boolean" + }, + "fishing": { + "title": "Boolean", + "type": "boolean" + }, + "container": { + "title": "Boolean", + "type": "boolean" + }, + "transhipment": { + "title": "Boolean", + "type": "boolean" + }, + "offshore": { + "title": "Boolean", + "type": "boolean" + }, + "project_Heavy": { + "title": "Boolean", + "type": "boolean" + }, + "steel_Products": { + "title": "Boolean", + "type": "boolean" + }, + "all_Weather_Berth": { + "title": "Boolean", + "type": "boolean" + }, + "cold_Ironing": { + "title": "Boolean", + "type": "boolean" + }, + "side_Alongside": { + "title": "String", + "type": "string", + "nullable": true + }, + "bunkers_HFO": { + "title": "String", + "type": "string", + "nullable": true + }, + "delivery_HFO": { + "title": "String", + "type": "string", + "nullable": true + }, + "gangway_Used": { + "title": "String", + "type": "string", + "nullable": true + }, + "bunkers_DO_GO": { + "title": "String", + "type": "string", + "nullable": true + }, + "delivery_DO_GO": { + "title": "String", + "type": "string", + "nullable": true + }, + "moorings_Fwd": { + "title": "String", + "type": "string", + "nullable": true + }, + "moorings_Aft": { + "title": "String", + "type": "string", + "nullable": true + }, + "bunkers_LNG": { + "title": "String", + "type": "string", + "nullable": true + }, + "delivery_LNG": { + "title": "String", + "type": "string", + "nullable": true + }, + "fresh_Water": { + "title": "String", + "type": "string", + "nullable": true + }, + "delivery_FW": { + "title": "String", + "type": "string", + "nullable": true + }, + "cow": { + "title": "Boolean", + "type": "boolean" + }, + "entry_Date": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "last_Update": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "reefer": { + "title": "Boolean", + "type": "boolean" + }, + "livestock": { + "title": "Boolean", + "type": "boolean" + }, + "waterlineHeightHWMaxDecimal": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "dryBulkCargo": { + "title": "String", + "type": "string", + "nullable": true + }, + "cranes_Note": { + "title": "String", + "type": "string", + "nullable": true + }, + "gas_Capacity_Note": { + "title": "String", + "type": "string", + "nullable": true + }, + "night_Berthing_Note": { + "title": "String", + "type": "string", + "nullable": true + }, + "ship_Beam_Note": { + "title": "String", + "type": "string", + "nullable": true + }, + "ship_Disp_Note": { + "title": "String", + "type": "string", + "nullable": true + }, + "ship_DWT_Note": { + "title": "String", + "type": "string", + "nullable": true + }, + "ship_LOA_Note": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.Connection": { + "title": "Connection", + "type": "object", + "properties": { + "connection_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berth_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "cargo_Type": { + "title": "String", + "type": "string", + "nullable": true + }, + "connection_Type": { + "title": "String", + "type": "string", + "nullable": true + }, + "asa": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "manifold_Size": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "max_Rate": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "max_BP": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "loading": { + "title": "Boolean", + "type": "boolean" + }, + "discharge": { + "title": "Boolean", + "type": "boolean" + }, + "vapour_Return": { + "title": "Boolean", + "type": "boolean" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.Country": { + "title": "Country (MaritimeWebServices.Features.Facilities.Models.Country Web Service)", + "type": "object", + "properties": { + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.Crane": { + "title": "Crane", + "type": "object", + "properties": { + "crane_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berth_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "cranes_Type": { + "title": "String", + "type": "string", + "nullable": true + }, + "cranes_Quantity": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "cranes_SWL_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "cranes_Outreach": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "cranes_Use": { + "title": "String", + "type": "string", + "nullable": true + }, + "grabs_Quantity": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "grabs_SWL_Max": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "cargo_Rate_Max_tph": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "port_Name": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.FacilitiesInAreaModel": { + "title": "FacilitiesInAreaModel", + "type": "object", + "properties": { + "berthIds": { + "title": "IList`1", + "type": "array", + "items": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "nullable": true + }, + "portIds": { + "title": "IList`1", + "type": "array", + "items": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "nullable": true + }, + "terminalIds": { + "title": "IList`1", + "type": "array", + "items": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.FacilitiesModel": { + "title": "FacilitiesModel", + "type": "object", + "properties": { + "berths": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.BerthFacility" + }, + "nullable": true + }, + "ports": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.PortFacility" + }, + "nullable": true + }, + "terminals": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.TerminalFacility" + }, + "nullable": true + }, + "cranes": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.Crane" + }, + "nullable": true + }, + "connections": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.Connection" + }, + "nullable": true + }, + "zones": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.GeoZone" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.GeoPolygon": { + "title": "GeoPolygon", + "type": "object", + "properties": { + "wkt": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.GeoZone": { + "title": "GeoZone", + "type": "object", + "properties": { + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "zoneId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "zoneName": { + "title": "String", + "type": "string", + "nullable": true + }, + "port_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "zoneType": { + "title": "String", + "type": "string", + "nullable": true + }, + "polygon": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Facilities.Models.GeoPolygon" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.PortAuthorityAddress": { + "title": "PortAuthorityAddress", + "type": "object", + "properties": { + "officeID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "companyName": { + "title": "String", + "type": "string", + "nullable": true + }, + "fullCompanyName": { + "title": "String", + "type": "string", + "nullable": true + }, + "country": { + "title": "String", + "type": "string", + "nullable": true + }, + "telephone": { + "title": "String", + "type": "string", + "nullable": true + }, + "facsimile": { + "title": "String", + "type": "string", + "nullable": true + }, + "email": { + "title": "String", + "type": "string", + "nullable": true + }, + "aohTelephone": { + "title": "String", + "type": "string", + "nullable": true + }, + "lastUpdate": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "address": { + "title": "String", + "type": "string", + "nullable": true + }, + "addressLine1": { + "title": "String", + "type": "string", + "nullable": true + }, + "addressLine2": { + "title": "String", + "type": "string", + "nullable": true + }, + "addressLine3": { + "title": "String", + "type": "string", + "nullable": true + }, + "town": { + "title": "String", + "type": "string", + "nullable": true + }, + "county": { + "title": "String", + "type": "string", + "nullable": true + }, + "postalCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "officeURL": { + "title": "String", + "type": "string", + "nullable": true + }, + "businessArea": { + "title": "String", + "type": "string", + "nullable": true + }, + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.PortFacility": { + "title": "PortFacility", + "type": "object", + "properties": { + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "old_ID": { + "title": "String", + "type": "string", + "nullable": true + }, + "status": { + "title": "String", + "type": "string", + "nullable": true + }, + "port_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "unlocode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "country_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "dec_Lat": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "dec_Long": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "time_Zone": { + "title": "String", + "type": "string", + "nullable": true + }, + "dayLight_Saving_Time": { + "title": "Boolean", + "type": "boolean" + }, + "maximum_Draft": { + "title": "Single", + "type": "number", + "format": "float" + }, + "breakbulk_Facilities": { + "title": "Boolean", + "type": "boolean" + }, + "container_Facilities": { + "title": "Boolean", + "type": "boolean" + }, + "dry_Bulk_Facilities": { + "title": "Boolean", + "type": "boolean" + }, + "liquid_Facilities": { + "title": "Boolean", + "type": "boolean" + }, + "roRo_Facilities": { + "title": "Boolean", + "type": "boolean" + }, + "passenger_Facilities": { + "title": "Boolean", + "type": "boolean" + }, + "dry_Dock_Facilities": { + "title": "Boolean", + "type": "boolean" + }, + "lpG_Facilities": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "lnG_Facilities": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "ispS_Compliant": { + "title": "Boolean", + "type": "boolean" + }, + "csI_Compliant": { + "title": "Boolean", + "type": "boolean" + }, + "last_Update": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "entry_Date": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "region_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "continent_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "master_POID": { + "title": "String", + "type": "string", + "nullable": true + }, + "wS_Port": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "max_LOA": { + "title": "Single", + "type": "number", + "format": "float" + }, + "max_Beam": { + "title": "Single", + "type": "number", + "format": "float" + }, + "max_DWT": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "max_Offshore_Draught": { + "title": "Single", + "type": "number", + "format": "float" + }, + "max_Offshore_LOA": { + "title": "Single", + "type": "number", + "format": "float" + }, + "max_Offshore_BCM": { + "title": "Single", + "type": "number", + "format": "float" + }, + "max_Offshore_DWT": { + "title": "Single", + "type": "number", + "format": "float" + }, + "lnG_Bunker": { + "title": "Boolean", + "type": "boolean" + }, + "dO_Bunker": { + "title": "Boolean", + "type": "boolean" + }, + "fO_Bunker": { + "title": "Boolean", + "type": "boolean" + }, + "free_Trade_Zone": { + "title": "Boolean", + "type": "boolean" + }, + "ecO_Port": { + "title": "Boolean", + "type": "boolean" + }, + "emission_Control_Area": { + "title": "Boolean", + "type": "boolean" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.PortMarpol": { + "title": "PortMarpol", + "type": "object", + "properties": { + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "oilyBilgeWater": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "oilyBilgeWaterMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyBilgeWaterTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyBilgeWaterNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "oilyResidues": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "oilyResiduesMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyResiduesTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyResiduesNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "oilyTankWashings": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "oilyTankWashingsMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyTankWashingsTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyTankWashingsNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "dirtyBallastWater": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "dirtyBallastWaterMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "dirtyBallastWaterTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "dirtyBallastWaterNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "scaleSludgeTankCleaning": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "scaleSludgeTankCleaningMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "scaleSludgeTankCleaningTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "scaleSludgeTankCleaningNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "oilyMixture": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "oilyMixtureMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyMixtureTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "oilyMixtureNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "chemicalNLS": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "chemicalNLSMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "chemicalNLSTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "chemicalNLSNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "sewage": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "sewageMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "sewageTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "sewageNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "garbage": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "garbageMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "garbageTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "garbageNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "ozoneDepeleting": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "ozoneDepeletingMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ozoneDepeletingTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ozoneDepeletingNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "exhaustGasCleaning": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + }, + "exhaustGasCleaningMaxQty": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "exhaustGasCleaningTotal": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "exhaustGasCleaningNote": { + "title": "String", + "type": "string", + "nullable": true + }, + "port_Name": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.PortOperatorAddress": { + "title": "PortOperatorAddress", + "type": "object", + "properties": { + "officeID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "companyName": { + "title": "String", + "type": "string", + "nullable": true + }, + "fullCompanyName": { + "title": "String", + "type": "string", + "nullable": true + }, + "country": { + "title": "String", + "type": "string", + "nullable": true + }, + "telephone": { + "title": "String", + "type": "string", + "nullable": true + }, + "facsimile": { + "title": "String", + "type": "string", + "nullable": true + }, + "email": { + "title": "String", + "type": "string", + "nullable": true + }, + "aohTelephone": { + "title": "String", + "type": "string", + "nullable": true + }, + "lastUpdate": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "address": { + "title": "String", + "type": "string", + "nullable": true + }, + "addressLine1": { + "title": "String", + "type": "string", + "nullable": true + }, + "addressLine2": { + "title": "String", + "type": "string", + "nullable": true + }, + "addressLine3": { + "title": "String", + "type": "string", + "nullable": true + }, + "town": { + "title": "String", + "type": "string", + "nullable": true + }, + "county": { + "title": "String", + "type": "string", + "nullable": true + }, + "postalCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "officeURL": { + "title": "String", + "type": "string", + "nullable": true + }, + "businessArea": { + "title": "String", + "type": "string", + "nullable": true + }, + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.PortThroughput": { + "title": "PortThroughput", + "type": "object", + "properties": { + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "annual_Tonnage": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "tonnage_Date": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "annual_TEU": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "teU_Date": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "annual_No_Pax": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "no_Pax_Date": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "annual_No_Vessels": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "no_Vessel_Date": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "port_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "passengers_Combined_Port_ID": { + "title": "String", + "type": "string", + "nullable": true + }, + "passengers_Combined_Port_Names": { + "title": "String", + "type": "string", + "nullable": true + }, + "teU_Combined_Port_ID": { + "title": "String", + "type": "string", + "nullable": true + }, + "teU_Combined_Port_Names": { + "title": "String", + "type": "string", + "nullable": true + }, + "tonnage_Combined_Port_ID": { + "title": "String", + "type": "string", + "nullable": true + }, + "tonnage_Combined_Port_Names": { + "title": "String", + "type": "string", + "nullable": true + }, + "vessels_Combined_Port_ID": { + "title": "String", + "type": "string", + "nullable": true + }, + "vessels_Combined_Port_Names": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.TerminalFacility": { + "title": "TerminalFacility", + "type": "object", + "properties": { + "terminal_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "port_ID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "terminal_Name": { + "title": "String", + "type": "string", + "nullable": true + }, + "terminalOperator": { + "title": "String", + "type": "string", + "nullable": true + }, + "facility_Type": { + "title": "String", + "type": "string", + "nullable": true + }, + "dec_Latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "dec_Longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "last_Update": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "terminal_Entry_Date": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "terminal_Status": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Facilities.Models.TerminalStorage": { + "title": "TerminalStorage", + "type": "object", + "properties": { + "terminalID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "storageID": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "nameNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "storageType": { + "title": "String", + "type": "string", + "nullable": true + }, + "capacity": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "unit": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.AnchorageCall": { + "title": "AnchorageCall", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "portCallId": { + "title": "Nullable`1", + "type": "integer", + "format": "int64", + "nullable": true + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "subFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "draught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "destination": { + "title": "String", + "type": "string", + "nullable": true + }, + "iso2": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.AnchorageCallsRequest": { + "title": "AnchorageCallsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2004-07-24T09:59:23.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2004-07-25T09:59:23.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "8618994" + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 186 + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 25732 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2004-07-24T09:59:23.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2004-07-25T09:59:23.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + }, + "callId": { + "title": "String", + "type": "string", + "nullable": true, + "example": "402163" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.BerthCall": { + "title": "BerthCall", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "parentFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "draught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "parentCallId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "iso2": { + "title": "String", + "type": "string", + "nullable": true + }, + "eventStartDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.BerthCallsRequest": { + "title": "BerthCallsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-05T14:32:51.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-06T14:32:51.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9813060" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 57552 + }, + "parentFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 15843 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-01-05T14:32:51.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-01-06T14:32:51.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.BolData": { + "title": "BolData", + "type": "object", + "properties": { + "locations": { + "title": "Location[]", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Location" + }, + "nullable": true + }, + "vessels": { + "title": "Vessel[]", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Vessel" + }, + "nullable": true + }, + "containers": { + "title": "Container[]", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Container" + }, + "nullable": true + }, + "route": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Route" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.BolTrackingResult": { + "title": "BolTrackingResult", + "type": "object", + "properties": { + "status": { + "title": "String", + "type": "string", + "nullable": true + }, + "message": { + "title": "String", + "type": "string", + "nullable": true + }, + "data": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.BolData" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.Carrier": { + "title": "Carrier", + "type": "object", + "properties": { + "code": { + "title": "String", + "type": "string", + "nullable": true + }, + "shippingLine": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.Container": { + "title": "Container", + "type": "object", + "properties": { + "number": { + "title": "String", + "type": "string", + "nullable": true + }, + "iso_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "events": { + "title": "Event[]", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Event" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.ContainerData": { + "title": "ContainerData", + "type": "object", + "properties": { + "locations": { + "title": "Location[]", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Location" + }, + "nullable": true + }, + "vessels": { + "title": "Vessel[]", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Vessel" + }, + "nullable": true + }, + "container": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.Container" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.ContainerTrackingResult": { + "title": "ContainerTrackingResult", + "type": "object", + "properties": { + "status": { + "title": "String", + "type": "string", + "nullable": true + }, + "message": { + "title": "String", + "type": "string", + "nullable": true + }, + "data": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.ContainerData" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.Event": { + "title": "Event", + "type": "object", + "properties": { + "location": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "description": { + "title": "String", + "type": "string", + "nullable": true + }, + "status": { + "title": "String", + "type": "string", + "nullable": true + }, + "date": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "actual": { + "title": "Boolean", + "type": "boolean" + }, + "type": { + "title": "String", + "type": "string", + "nullable": true + }, + "vessel": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "voyage": { + "title": "String", + "type": "string", + "nullable": true + }, + "vesselCompliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "locationCompliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.Location": { + "title": "Location", + "type": "object", + "properties": { + "id": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "name": { + "title": "String", + "type": "string", + "nullable": true + }, + "state": { + "title": "String", + "type": "string", + "nullable": true + }, + "country": { + "title": "String", + "type": "string", + "nullable": true + }, + "country_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "locode": { + "title": "String", + "type": "string", + "nullable": true + }, + "lat": { + "title": "Double", + "type": "number", + "format": "double" + }, + "lng": { + "title": "Double", + "type": "number", + "format": "double" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.Route": { + "title": "Route", + "type": "object", + "properties": { + "prepol": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.RoutePoint" + }, + "pol": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.RoutePoint" + }, + "pod": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.RoutePoint" + }, + "postpod": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.ContainerScreening.RoutePoint" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.RoutePoint": { + "title": "RoutePoint", + "type": "object", + "properties": { + "location": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "date": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "actual": { + "title": "Nullable`1", + "type": "boolean", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ContainerScreening.Vessel": { + "title": "Vessel", + "type": "object", + "properties": { + "id": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "name": { + "title": "String", + "type": "string", + "nullable": true + }, + "imo": { + "title": "String", + "type": "string", + "nullable": true + }, + "call_sign": { + "title": "String", + "type": "string", + "nullable": true + }, + "mmsi": { + "title": "String", + "type": "string", + "nullable": true + }, + "flag": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.Country": { + "title": "Country (MaritimeWebServices.Features.Movements.Models.Country Web Service)", + "type": "object", + "properties": { + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "iso2": { + "title": "String", + "type": "string", + "nullable": true + }, + "iso3": { + "title": "String", + "type": "string", + "nullable": true + }, + "isoNo": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.CurrentlyAtRequest": { + "title": "CurrentlyAtRequest", + "type": "object", + "properties": { + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9371414" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 13073 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2019-01-07T07:01:27.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2022-01-13T07:01:27.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DarkActivity": { + "title": "DarkActivity", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "subFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "draught": { + "title": "Decimal", + "type": "number", + "format": "double" + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "eventStartDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DarkActivityArea": { + "title": "DarkActivityArea", + "type": "object", + "properties": { + "areaId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "description": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "sanctioned": { + "title": "Byte", + "type": "integer", + "format": "int32" + }, + "sts": { + "title": "Boolean", + "type": "boolean" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DarkActivityRequest": { + "title": "DarkActivityRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2020-01-31T00:06:25.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2020-06-12T13:39:02.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "7819876" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 3 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2020-01-31T00:06:25.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2020-06-12T13:39:02.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DarkActivityType": { + "title": "DarkActivityType", + "type": "object", + "properties": { + "code": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "description": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.Destination": { + "title": "Destination", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "iso2": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DestinationsRequest": { + "title": "DestinationsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2020-01-31T00:06:25.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2020-06-12T13:39:02.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "8540862" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 17132 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2020-01-31T00:06:25.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2020-06-12T13:39:02.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DistanceTravelled": { + "title": "DistanceTravelled", + "type": "object", + "properties": { + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "distanceNm": { + "title": "Int32", + "type": "integer", + "format": "int32" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DriftingStsDecodeType": { + "title": "DriftingStsDecodeType", + "type": "object", + "properties": { + "driftingType": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.DriftingStsOperation": { + "title": "DriftingStsOperation", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "draught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "stsType": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.ContainerCarrier": { + "title": "ContainerCarrier", + "type": "object", + "properties": { + "code": { + "title": "List`1", + "type": "array", + "items": { + "title": "String", + "type": "string" + }, + "nullable": true + }, + "codeList": { + "title": "String", + "type": "string", + "nullable": true, + "writeOnly": true + }, + "shippingLine": { + "title": "String", + "type": "string", + "nullable": true + }, + "container": { + "title": "Boolean", + "type": "boolean" + }, + "bol": { + "title": "Boolean", + "type": "boolean" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.Event": { + "title": "Event", + "type": "object", + "properties": { + "event_id": { + "title": "String", + "type": "string", + "nullable": true + }, + "event_created_datetime": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "event_type": { + "title": "String", + "type": "string", + "nullable": true + }, + "event_description": { + "title": "String", + "type": "string", + "nullable": true + }, + "event_classifier_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "event_datetime": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "transport_event_type_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "delay_reason_code": { + "title": "Object", + "nullable": true + }, + "change_remark": { + "title": "Object", + "nullable": true + }, + "transport_call": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.TransportCall" + }, + "transport_id": { + "title": "String", + "type": "string", + "nullable": true + }, + "transport_name": { + "title": "Object", + "nullable": true + }, + "source_type": { + "title": "String", + "type": "string", + "nullable": true + }, + "equipment_event_type_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "equipment_reference": { + "title": "String", + "type": "string", + "nullable": true + }, + "bill_of_lading_number": { + "title": "String", + "type": "string", + "nullable": true + }, + "carrier_booking_reference": { + "title": "Object", + "nullable": true + }, + "iso_equipment_code": { + "title": "Object", + "nullable": true + }, + "empty_indicator_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "vessel_compliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "location_compliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.Location": { + "title": "Location", + "type": "object", + "properties": { + "locode": { + "title": "String", + "type": "string", + "nullable": true + }, + "location_name": { + "title": "String", + "type": "string", + "nullable": true + }, + "country": { + "title": "String", + "type": "string", + "nullable": true + }, + "timezone": { + "title": "String", + "type": "string", + "nullable": true + }, + "latitude": { + "title": "String", + "type": "string", + "nullable": true + }, + "longitude": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.TransportCall": { + "title": "TransportCall", + "type": "object", + "properties": { + "transport_call_id": { + "title": "String", + "type": "string", + "nullable": true + }, + "carrier_service_code": { + "title": "Object", + "nullable": true + }, + "carrier_voyage_number": { + "title": "String", + "type": "string", + "nullable": true + }, + "un_location_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "mode_of_transport": { + "title": "String", + "type": "string", + "nullable": true + }, + "location": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.Location" + }, + "transport_call_type": { + "title": "String", + "type": "string", + "nullable": true + }, + "vessel": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.Vessel" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.TransportEvents": { + "title": "TransportEvents", + "type": "object", + "properties": { + "identifier": { + "title": "String", + "type": "string", + "nullable": true + }, + "identifier_type": { + "title": "String", + "type": "string", + "nullable": true + }, + "transport_status": { + "title": "String", + "type": "string", + "nullable": true + }, + "containers": { + "title": "List`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.TransportEventsInner" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.TransportEventsInner": { + "title": "TransportEventsInner", + "type": "object", + "properties": { + "equipment_reference": { + "title": "String", + "type": "string", + "nullable": true + }, + "events": { + "title": "List`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.Event" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.V2Events": { + "title": "V2Events", + "type": "object", + "properties": { + "identifier": { + "title": "String", + "type": "string", + "nullable": true + }, + "identifier_type": { + "title": "String", + "type": "string", + "nullable": true + }, + "transport_status": { + "title": "String", + "type": "string", + "nullable": true + }, + "events": { + "title": "List`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.GateHouse.Event" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.GateHouse.Vessel": { + "title": "Vessel", + "type": "object", + "properties": { + "vessel_imo_number": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "vessel_name": { + "title": "String", + "type": "string", + "nullable": true + }, + "vessel_operator_carrier_code": { + "title": "String", + "type": "string", + "nullable": true + }, + "vessel_operator_carrier_code_list_provider": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.HistoricalPosition": { + "title": "HistoricalPosition", + "type": "object", + "properties": { + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "mmsi": { + "title": "String", + "type": "string", + "nullable": true + }, + "arrivalDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "arrivalDraught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "arrivalLatitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "arrivalLongitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "arrivalPosition": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "destination": { + "title": "String", + "type": "string", + "nullable": true + }, + "eta": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "speed": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "dateCreatedUpdated": { + "title": "DateTime", + "type": "string", + "format": "date-time" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.MovementsModel": { + "title": "MovementsModel", + "type": "object", + "properties": { + "anchorageCalls": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.AnchorageCall" + }, + "nullable": true + }, + "berthCalls": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.BerthCall" + }, + "nullable": true + }, + "darkActivity": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.DarkActivity" + }, + "nullable": true + }, + "portCalls": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + }, + "nullable": true + }, + "stsOperations": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.StsOperation" + }, + "nullable": true + }, + "terminalCalls": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.TerminalCall" + }, + "nullable": true + }, + "transits": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Transit" + }, + "nullable": true + }, + "destinations": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.Destination" + }, + "nullable": true + }, + "currentlyAt": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + }, + "nullable": true + }, + "historicalPositions": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.HistoricalPosition" + }, + "nullable": true + }, + "shipyardCalls": { + "title": "IList`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.Movements.Models.PortCall" + }, + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.MovementsRequest": { + "title": "MovementsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2022-01-13T07:01:27.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2022-01-20T07:01:27.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9371414" + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2019-01-07T07:01:27.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2022-01-13T07:01:27.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.PortCall": { + "title": "PortCall", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "portCallId": { + "title": "Nullable`1", + "type": "integer", + "format": "int64", + "nullable": true + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "subFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "parentFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "draught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "destination": { + "title": "String", + "type": "string", + "nullable": true + }, + "iso2": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.PortCallsRequest": { + "title": "PortCallsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2004-07-18T21:59:53.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2004-07-19T21:59:53.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "8716863" + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 109 + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 20497 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2004-07-18T21:59:53.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2004-07-19T21:59:53.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + }, + "callId": { + "title": "String", + "type": "string", + "nullable": true, + "example": "407372" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.Resources.DistanceTablesData": { + "title": "DistanceTablesData", + "type": "object", + "properties": { + "routePoints": { + "title": "Double[][]", + "type": "array", + "items": { + "title": "Double[]", + "type": "array", + "items": { + "title": "Double", + "type": "number", + "format": "double" + } + }, + "nullable": true + }, + "distance": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "timeToDestination": { + "title": "String", + "type": "string", + "nullable": true + }, + "eta": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.Resources.DistanceTablesTransitParameter": { + "title": "DistanceTablesTransitParameter", + "type": "object", + "properties": { + "name": { + "title": "String", + "type": "string", + "nullable": true + }, + "distanceTablesTransitId": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.ShipyardCallsRequest": { + "title": "ShipyardCallsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2019-05-01T10:25:11.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2019-05-01T13:47:12.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9463059" + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 10200 + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 27999 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2019-05-01T10:25:11.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-05-01T13:47:12.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.StatCode": { + "title": "StatCode", + "type": "object", + "properties": { + "code": { + "title": "String", + "type": "string", + "nullable": true + }, + "decode": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.StsDecodeType": { + "title": "StsDecodeType", + "type": "object", + "properties": { + "stsType": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.StsOperation": { + "title": "StsOperation", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "parentFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "draught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "parentCallId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "stsLocation": { + "title": "String", + "type": "string", + "nullable": true + }, + "stsType": { + "title": "String", + "type": "string", + "nullable": true + }, + "eventStartDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.StsOperationsRequest": { + "title": "StsOperationsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-05T14:32:51.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-06T14:32:51.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9813060" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 9424522 + }, + "parentFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 57553 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-01-05T14:32:51.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-01-06T14:32:51.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.TerminalCall": { + "title": "TerminalCall", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "parentFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "subFacilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "subFacilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "countryName": { + "title": "String", + "type": "string", + "nullable": true + }, + "draught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "latitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "longitude": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "position": { + "$ref": "#/components/schemas/MaritimeWebServices.Shared.Models.Position" + }, + "parentCallId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "iso2": { + "title": "String", + "type": "string", + "nullable": true + }, + "eventStartDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.TerminalCallsRequest": { + "title": "TerminalCallsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-05T14:32:51.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-06T14:32:51.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9183984" + }, + "subFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 72798 + }, + "facilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 43770 + }, + "parentFacilityId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true, + "example": 19473 + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-01-05T14:32:51.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-01-06T14:32:51.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.Transit": { + "title": "Transit", + "type": "object", + "properties": { + "movementType": { + "title": "String", + "type": "string", + "nullable": true + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "movementDate": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "facilityName": { + "title": "String", + "type": "string", + "nullable": true + }, + "facilityType": { + "title": "String", + "type": "string", + "nullable": true + }, + "draught": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.TransitDetail": { + "title": "TransitDetail", + "type": "object", + "properties": { + "transitId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "transitDescription": { + "title": "String", + "type": "string", + "nullable": true + }, + "direction": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.TransitsRequest": { + "title": "TransitsRequest", + "type": "object", + "properties": { + "startDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-05T14:32:51.000Z" + }, + "stopDate": { + "title": "DateTime", + "type": "string", + "format": "date-time", + "example": "2021-01-06T14:32:51.000Z" + }, + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9732369" + }, + "dateCreatedUpdatedStart": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-01-05T14:32:51.000Z" + }, + "dateCreatedUpdatedStop": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2021-02-05T14:32:51.000Z" + }, + "statCode": { + "title": "String", + "type": "string", + "nullable": true, + "example": "A" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.VoyageDistance": { + "title": "VoyageDistance", + "type": "object", + "properties": { + "callId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "imolRorIHSNumber": { + "title": "String", + "type": "string", + "nullable": true + }, + "voyageStart": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "voyageEnd": { + "title": "DateTime", + "type": "string", + "format": "date-time" + }, + "origin": { + "title": "String", + "type": "string", + "nullable": true + }, + "originPortId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "masterOriginId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "masterOrigin": { + "title": "String", + "type": "string", + "nullable": true + }, + "originCountry": { + "title": "String", + "type": "string", + "nullable": true + }, + "originCountryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "destination": { + "title": "String", + "type": "string", + "nullable": true + }, + "destinationPortId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "masterDestinationId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "masterDestination": { + "title": "String", + "type": "string", + "nullable": true + }, + "destinationCountry": { + "title": "String", + "type": "string", + "nullable": true + }, + "destinationCountryCode": { + "title": "String", + "type": "string", + "nullable": true + }, + "voyageTime": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "distanceNm": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "tonneMiles": { + "title": "Nullable`1", + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.VoyageDistancesRequest": { + "title": "VoyageDistancesRequest", + "type": "object", + "properties": { + "lrno": { + "title": "String", + "type": "string", + "nullable": true, + "example": "9336244" + }, + "callId": { + "title": "String", + "type": "string", + "nullable": true, + "example": "114569350" + }, + "startDate": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2019-05-01T10:25:11.000Z" + }, + "stopDate": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true, + "example": "2019-05-01T13:47:12.000Z" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.Movements.Models.Zone": { + "title": "Zone", + "type": "object", + "properties": { + "zoneId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "zoneName": { + "title": "String", + "type": "string", + "nullable": true + }, + "zoneType": { + "title": "String", + "type": "string", + "nullable": true + }, + "portId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "portName": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance": { + "title": "CompanyCompliance", + "type": "object", + "properties": { + "owcode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "lastUpdated": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "companyOverallComplianceStatus": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnAustralianSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnBESSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnCanadianSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyInOFACSanctionedCountry": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyInFATFJurisdiction": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnEUSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnOFACSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnOFACNONSDNSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnOFACSSISanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "parentCompanyNonCompliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnSwissSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnUAESanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "companyOnUNSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails": { + "title": "ComplianceDetails", + "type": "object", + "properties": { + "lrimoShipNo": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "dateAmended": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "legalOverall": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipBESSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipDarkActivityIndicator": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipDetailsNoLongerMaintained": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipEUSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipFlagDisputed": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipFlagSanctionedCountry": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipHistoricalFlagSanctionedCountry": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOFACNonSDNSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOFACSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOFACAdvisoryList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerOFACSSIList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerAustralianSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerBESSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerCanadianSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerEUSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerFATFJurisdiction": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerHistoricalOFACSanctionedCountry": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerOFACSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerOFACSanctionedCountry": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerParentCompanyNonCompliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerParentFATFJurisdiction": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerParentOFACSanctionedCountry": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerSwissSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerUAESanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipOwnerUNSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipSanctionedCountryPortCallLast12m": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipSanctionedCountryPortCallLast3m": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipSanctionedCountryPortCallLast6m": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipSecurityLegalDisputeEvent": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipSTSPartnerNonComplianceLast12m": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipSwissSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "shipUNSanctionList": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceValueMeaning": { + "title": "ComplianceValueMeaning", + "type": "object", + "properties": { + "complianceValue": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "meaning": { + "title": "String", + "maxLength": 17, + "minLength": 0, + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.RiskAndCompliance.Models.RiskDetails": { + "title": "RiskDetails", + "type": "object", + "properties": { + "lrno": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "lastUpdated": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "riskDataMaintained": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "daysSinceLastSeenOnAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "daysUnderAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "imoCorrectOnAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "sailingUnderName": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "anomalousMessagesFromMMSI": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "mostRecentDarkActivity": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portCalls": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portRisk": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "stsOperations": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "driftingHighSeas": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "riskEvents": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagParisMOUPerformance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagTokyoMOUPeformance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagUSCGMOUPerformance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "uscgQualship21": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "timeSincePSCInspection": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscInspections": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscDefects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscDetentions": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "currentSMCCertificate": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "docChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "currentClass": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "classStatusChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pandICoverage": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "nameChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "gboChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ageOfShip": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "iuuFishingViolation": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "draughtChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "mostRecentSanctionedPortCall": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "singleShipOperation": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fleetSafety": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fleetPSC": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "specialSurveyOverdue": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ownerUnknown": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "russianPortCall": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "russianOwnerRegistration": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "russianSTS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.RiskAndCompliance.Models.RiskValueMeaning": { + "title": "RiskValueMeaning", + "type": "object", + "properties": { + "riskValue": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "meaning": { + "title": "String", + "maxLength": 17, + "minLength": 0, + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails": { + "title": "RiskWithNarrativesDetails", + "type": "object", + "properties": { + "lrno": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "lastUpdated": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "riskDataMaintained": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "daysSinceLastSeenOnAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "daysSinceLastSeenOnAISNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "daysUnderAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "daysUnderAISNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "imoCorrectOnAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "imoCorrectOnAISNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "sailingUnderName": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "sailingUnderNameNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "anomalousMessagesFromMMSI": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "anomalousMessagesFromMMSINarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "mostRecentDarkActivity": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "mostRecentDarkActivityNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "portCalls": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portCallsNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "portRisk": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portRiskNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "stsOperations": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "stsOperationsNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "driftingHighSeas": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "driftingHighSeasNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "riskEvents": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "riskEventNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "riskEventNarrativeExtended": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "flagChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagChangeNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "flagParisMOUPerformance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagParisMOUPerformanceNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "flagTokyoMOUPeformance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagTokyoMOUPeformanceNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "flagUSCGMOUPerformance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagUSCGMOUPerformanceNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "uscgQualship21": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "uscgQualship21Narrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "timeSincePSCInspection": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "timeSincePSCInspectionNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "pscInspections": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscInspectionNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "pscDefects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscDefectsNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "pscDetentions": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscDetentionsNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "currentSMCCertificate": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "currentSMCCertificateNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "docChangesNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "currentClass": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "currentClassNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "currentClassNarrativeExtended": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "classStatusChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "classStatusChangesNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "pandICoverage": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pandICoverageNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "pandICoverageNarrativeExtended": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "nameChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "nameChangesNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "gboChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "gboChangesNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "ageOfShip": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ageofShipNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "iuuFishingViolation": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "iuuFishingNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "draughtChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "draughtChangesNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "mostRecentSanctionedPortCall": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "mostRecentSanctionedPortCallNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "singleShipOperation": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "singleShipOperationNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "fleetSafety": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fleetSafetyNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "fleetPSC": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fleetPSCNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "specialSurveyOverdue": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "specialSurveyOverdueNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "ownerUnknown": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ownerUnknownNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "russianPortCall": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "russianPortCallNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "russianOwnerRegistration": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "russianOwnerRegistrationNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "russianSTS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "russianSTSNarrative": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails": { + "title": "ShipDetails", + "type": "object", + "properties": { + "lrimoShipNo": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "lastUpdated": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "bareboatCharterCompanyCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "bareboatCharterCountryofControlCode": { + "title": "String", + "maxLength": 6, + "minLength": 0, + "type": "string", + "nullable": true + }, + "bareboatCharterCountryofControl": { + "title": "String", + "maxLength": 80, + "minLength": 0, + "type": "string", + "nullable": true + }, + "bareboatCharterCountryofDomicileCode": { + "title": "String", + "maxLength": 6, + "minLength": 0, + "type": "string", + "nullable": true + }, + "bareboatCharterCountryofDomicile": { + "title": "String", + "maxLength": 80, + "minLength": 0, + "type": "string", + "nullable": true + }, + "bareboatCharterCountryofRegistrationCode": { + "title": "String", + "maxLength": 6, + "minLength": 0, + "type": "string", + "nullable": true + }, + "bareboatCharterCountryofRegistration": { + "title": "String", + "maxLength": 80, + "minLength": 0, + "type": "string", + "nullable": true + }, + "bareboatCharterCompany": { + "title": "String", + "maxLength": 60, + "minLength": 0, + "type": "string", + "nullable": true + }, + "classificationSociety": { + "title": "String", + "maxLength": 254, + "minLength": 0, + "type": "string", + "nullable": true + }, + "classificationSocietyCode": { + "title": "String", + "maxLength": 15, + "minLength": 0, + "type": "string", + "nullable": true + }, + "dateOfBuild": { + "title": "String", + "maxLength": 6, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docCountryOfControl": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docCountryOfControlCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "documentofComplianceDOCCompanyCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docCompanyCountryofDomicile": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docCompanyCountryofDomicileCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docCompany": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docCountryOfRegistration": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "docCountryOfRegistrationCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "deadweight": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "flagEffectiveDate": { + "title": "String", + "maxLength": 6, + "minLength": 0, + "type": "string", + "nullable": true + }, + "flagName": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwner": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfControl": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfControlCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCompanyCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryofDomicile": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryofDomicileCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfRegistration": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "groupBeneficialOwnerCountryOfRegistrationCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "grossTonnage": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "operator": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "operatorCountryOfControl": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "operatorCountryOfControlCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "operatorCompanyCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "operatorCountryofDomicile": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "operatorCountryofDomicileNameCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "operatorCountryOfRegistration": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "operatorCountryOfRegistrationCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwner": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfControl": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfControlCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwnerCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwnerCountryofDomicile": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwnerCountryofDomicileCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfRegistration": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "registeredOwnerCountryOfRegistrationCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManager": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManagerCountryOfControl": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManagerCountryOfControlCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManagerCompanyCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManagerCountryofDomicile": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManagerCountryofDomicileCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManagerCountryOfRegistration": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipManagerCountryOfRegistrationCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shiptypeLevel2": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shiptypeLevel5": { + "title": "String", + "maxLength": 100, + "minLength": 0, + "type": "string", + "nullable": true + }, + "statCode5": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipStatus": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipStatusCode": { + "title": "String", + "maxLength": 1, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManager": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfControl": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfControlCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManagerCode": { + "title": "String", + "maxLength": 7, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfDomicile": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfDomicileCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfRegistration": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "technicalManagerCountryOfRegistrationCode": { + "title": "String", + "maxLength": 3, + "minLength": 0, + "type": "string", + "nullable": true + }, + "shipName": { + "title": "String", + "maxLength": 50, + "minLength": 0, + "type": "string", + "nullable": true + }, + "yearOfBuild": { + "title": "String", + "maxLength": 4, + "minLength": 0, + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails": { + "title": "SustainabilityDetails", + "type": "object", + "properties": { + "imo": { + "title": "String", + "type": "string", + "nullable": true + }, + "lastUpdated": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "maintained": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ageOfShip": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "technicalEfficiency": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "timeAtSea": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fuelConsumption": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fuelConsumptionPerTransportWorkMass": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fuelConsumptionPerTransportWorkPax": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "cO2Emissions": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "cO2EmissionsPerTransportWorkMass": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "cO2EmissionsPerTransportWorkPax": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "greenAwardCertified": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ihmGreenPassport": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "imonoxRegulation13": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "scrubberFittedOrReady": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "lngOrAlternateFuelReady": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ballastWaterManagementPlan": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "onShorePowerFitted": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "assistedPower": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "doubleHull": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "iceStrengthened": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "environmentalDefects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pollutionEvents": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "socialDefects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portHours": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "anchoredHours": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portCalls": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "darkActivities": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "daysUnderAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "maximumRiskOfPortCalls": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "detentions": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "timeInPort": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "crewCount": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "humanCasualties": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagStateCountryRisk": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "defects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portCallsToSanctionedCountries": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "overallCompliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscInspection": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityValueMeaning": { + "title": "SustainabilityValueMeaning", + "type": "object", + "properties": { + "value": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "meaning": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails": { + "title": "SustainabilityWithNarrativesDetails", + "type": "object", + "properties": { + "imo": { + "title": "String", + "type": "string", + "nullable": true + }, + "lastUpdated": { + "title": "Nullable`1", + "type": "string", + "format": "date-time", + "nullable": true + }, + "maintained": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ageOfShip": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ageOfShipNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "technicalEfficiency": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "technicalEfficiencyNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "timeAtSea": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "timeAtSeaNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "fuelConsumption": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fuelConsumptionNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "fuelConsumptionPerTransportWorkMass": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fuelConsumptionPerTransportWorkMassNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "fuelConsumptionPerTransportWorkPax": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "fuelConsumptionPerTransportWorkPaxNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "cO2Emissions": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "cO2EmissionsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "cO2EmissionsPerTransportWorkMass": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "cO2EmissionsPerTransportWorkMassNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "cO2EmissionsPerTransportWorkPax": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "cO2EmissionsPerTransportWorkPaxNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "greenAwardCertified": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "greenAwardCertifiedNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "ihmGreenPassport": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ihmGreenPassportNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "imonoxRegulation13": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "imonoxRegulation13Narrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "scrubberFittedOrReady": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "scrubberFittedOrReadyNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "lngOrAlternateFuelReady": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "lngOrAlternateFuelReadyNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "ballastWaterManagementPlan": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "ballastWaterManagementPlanNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "onShorePowerFitted": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "onShorePowerFittedNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "assistedPower": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "assistedPowerNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "doubleHull": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "doubleHullNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "iceStrengthened": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "iceStrengthenedNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "environmentalDefects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "environmentalDefectsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "pollutionEvents": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pollutionEventsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "socialDefects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "socialDefectsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "portHours": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portHoursNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "anchoredHours": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "anchoredHoursNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "portCalls": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portCallsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "darkActivities": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "darkActivitiesNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "daysUnderAIS": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "daysUnderAISNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "maximumRiskOfPortCalls": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "maximumRiskOfPortCallsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "detentions": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "detentionsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "timeInPort": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "timeInPortNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "crewCount": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "crewCountNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "humanCasualties": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "humanCasualtiesNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "flagStateCountryRisk": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagStateCountryRiskNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "defects": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "defectsNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "portCallsToSanctionedCountries": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "portCallsToSanctionedCountriesNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "flagChanges": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "flagChangesNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "overallCompliance": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "overallComplianceNarrative": { + "title": "String", + "type": "string", + "nullable": true + }, + "pscInspection": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "pscInspectionNarrative": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Models.Berth": { + "title": "Berth", + "type": "object", + "properties": { + "portId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berthId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "berthName": { + "title": "String", + "type": "string", + "nullable": true + }, + "terminalId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "terminalName": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Models.Port": { + "title": "Port", + "type": "object", + "properties": { + "portId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "portName": { + "title": "String", + "type": "string", + "nullable": true + }, + "portStatus": { + "title": "String", + "type": "string", + "nullable": true + }, + "parentPortId": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "parentPortName": { + "title": "String", + "type": "string", + "nullable": true + }, + "hasDistances": { + "title": "Boolean", + "type": "boolean" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Models.Position": { + "title": "Position", + "type": "object", + "properties": { + "isNull": { + "title": "Boolean", + "type": "boolean" + }, + "stSrid": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "lat": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "long": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "z": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "m": { + "title": "Nullable`1", + "type": "number", + "format": "double", + "nullable": true + }, + "hasZ": { + "title": "Boolean", + "type": "boolean" + }, + "hasM": { + "title": "Boolean", + "type": "boolean" + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Models.Terminal": { + "title": "Terminal", + "type": "object", + "properties": { + "portId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "terminalId": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "terminalName": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": { + "title": "IPagedCollection`1", + "type": "object", + "properties": { + "pageNumber": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "pageSize": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "collection": { + "title": "IEnumerable`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.CompanyCompliance" + }, + "nullable": true, + "readOnly": true + }, + "totalItems": { + "title": "Int32", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": { + "title": "IPagedCollection`1", + "type": "object", + "properties": { + "pageNumber": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "pageSize": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "collection": { + "title": "IEnumerable`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ComplianceDetails" + }, + "nullable": true, + "readOnly": true + }, + "totalItems": { + "title": "Int32", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.RiskDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": { + "title": "IPagedCollection`1", + "type": "object", + "properties": { + "pageNumber": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "pageSize": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "collection": { + "title": "IEnumerable`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.RiskDetails" + }, + "nullable": true, + "readOnly": true + }, + "totalItems": { + "title": "Int32", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": { + "title": "IPagedCollection`1", + "type": "object", + "properties": { + "pageNumber": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "pageSize": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "collection": { + "title": "IEnumerable`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.RiskWithNarrativesDetails" + }, + "nullable": true, + "readOnly": true + }, + "totalItems": { + "title": "Int32", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": { + "title": "IPagedCollection`1", + "type": "object", + "properties": { + "pageNumber": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "pageSize": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "collection": { + "title": "IEnumerable`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.RiskAndCompliance.Models.ShipDetails" + }, + "nullable": true, + "readOnly": true + }, + "totalItems": { + "title": "Int32", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": { + "title": "IPagedCollection`1", + "type": "object", + "properties": { + "pageNumber": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "pageSize": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "collection": { + "title": "IEnumerable`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityDetails" + }, + "nullable": true, + "readOnly": true + }, + "totalItems": { + "title": "Int32", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": false + }, + "MaritimeWebServices.Shared.Pagination.IPagedCollection`1[[MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails, MaritimeWebServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": { + "title": "IPagedCollection`1", + "type": "object", + "properties": { + "pageNumber": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "pageSize": { + "title": "Int32", + "type": "integer", + "format": "int32" + }, + "collection": { + "title": "IEnumerable`1", + "type": "array", + "items": { + "$ref": "#/components/schemas/MaritimeWebServices.Features.ShipSustainability.Models.SustainabilityWithNarrativesDetails" + }, + "nullable": true, + "readOnly": true + }, + "totalItems": { + "title": "Int32", + "type": "integer", + "format": "int32", + "readOnly": true + } + }, + "additionalProperties": false + }, + "Microsoft.AspNetCore.Mvc.ProblemDetails": { + "title": "ProblemDetails", + "type": "object", + "properties": { + "type": { + "title": "String", + "type": "string", + "nullable": true + }, + "title": { + "title": "String", + "type": "string", + "nullable": true + }, + "status": { + "title": "Nullable`1", + "type": "integer", + "format": "int32", + "nullable": true + }, + "detail": { + "title": "String", + "type": "string", + "nullable": true + }, + "instance": { + "title": "String", + "type": "string", + "nullable": true + } + }, + "additionalProperties": { + "title": "Object" + } + } + }, + "securitySchemes": { + "Basic": { + "type": "http", + "description": "Basic authentication added to authorization header", + "scheme": "basic" + } + } + }, + "security": [ + { + "Basic": [ ] + } + ] +} \ No newline at end of file -- 2.45.2 From 1a419eb7a70790ec521b7eabecd7599be4775089 Mon Sep 17 00:00:00 2001 From: HYOJIN Date: Thu, 9 Apr 2026 15:42:21 +0900 Subject: [PATCH 2/2] =?UTF-8?q?docs:=20=EB=A6=B4=EB=A6=AC=EC=A6=88=20?= =?UTF-8?q?=EB=85=B8=ED=8A=B8=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/RELEASE-NOTES.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/RELEASE-NOTES.md b/docs/RELEASE-NOTES.md index 56c49b6..9246b0b 100644 --- a/docs/RELEASE-NOTES.md +++ b/docs/RELEASE-NOTES.md @@ -4,6 +4,17 @@ ## [Unreleased] +### 추가 +- swagger.json 기반 Swagger 응답 스키마 DTO 자동 생성 (#14) +- POST 요청 시 requestBody 스키마 자동 생성 +- POST BODY 파라미터 미등록 시 JsonNode body 자동 추가 + +### 변경 +- Swagger API 그룹을 WebClient 종류별 3개로 분리 (Ships/AIS/Web Services) +- Swagger/코드 생성기에서 bypass 용어 제거 +- Screening Guide API를 운영환경에서도 노출 +- API 카탈로그 Swagger 링크를 WebClient 종류별 그룹으로 연결 + ## [2026-04-08.2] ### 추가 -- 2.45.2