Portbase · Schema
Visit
State of the visit
CompanyPort Community SystemLogisticsMaritimeShippingSupply ChainCustomsNetherlands
Properties
| Name | Type | Description |
|---|---|---|
| crn | string | The call reference number of the visit |
| portOfCall | object | |
| vessel | object | |
| owner | object | |
| declarant | object | |
| cargoDeclarants | array | The organisations that are responsible for reporting the cargo on board of the vessel |
| visitDeclaration | object | |
| securityDeclaration | object | |
| dangerousGoodsDeclaration | object | |
| wasteDeclaration | object | |
| wasteCollections | array | The waste collections per waste collector. |
| shipStoresDeclaration | object | |
| paxDeclarationSummaries | array | The summary of the declaration of the crew and passengers information of the port visit |
| healthDeclaration | object | |
| declarationStatuses | object | The current status of each declaration made for this visit, keyed by declaration type. Each entry maps a declaration type (e.g. VISIT, SECURITY, WASTE, DANGEROUS_GOODS, CREW_AND_PASSENGERS, HEALTH, SH |
| etaPortAis | stringnull | The estimated time of arrival at the given pilot station for the vessel call based on AIS information |
| ignoreEtaPortAis | boolean | Indication whether the declarant chose to ignore the etaPortAis |
| cancelled | boolean | Indication whether the port visit is cancelled |
| ataAcknowledged | boolean | Indication whether customs has acknowledged the ATA of the visit |
| orderIncomingMovement | boolean | Indication whether ordering the incoming movement is enabled |
| importDeclarations | array | List of import declarations by the visit's cargo declarants |
| transhipments | array | Map of transhipments by consignment number |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/portbase/main/json-schema/portbase-com-portbase-bezoekschip-common-api-external-visit-api-visit-schema.json",
"title": "Visit",
"description": "State of the visit",
"x-generated": "2026-10-18",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/portbase-vessel-visit-openapi.yml#/components/schemas/com.portbase.bezoekschip.common.api.external.visit.ApiVisit",
"required": [
"cargoDeclarants",
"crn",
"declarant",
"declarationStatuses",
"owner",
"paxDeclarationSummaries",
"portOfCall",
"vessel",
"visitDeclaration",
"wasteCollections"
],
"type": [
"object",
"null"
],
"properties": {
"crn": {
"type": "string",
"description": "The call reference number of the visit"
},
"portOfCall": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.ApiPortOfCall"
},
"vessel": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.ApiVessel"
},
"owner": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.common.ApiBezoekschipOrganisation"
},
"declarant": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.common.ApiBezoekschipOrganisation"
},
"cargoDeclarants": {
"minItems": 1,
"type": "array",
"description": "The organisations that are responsible for reporting the cargo on board of the vessel",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.common.ApiBezoekschipOrganisation"
}
},
"visitDeclaration": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.ApiVisitDeclaration"
},
"securityDeclaration": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.ApiSecurityDeclaration"
},
"dangerousGoodsDeclaration": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.dangerousgoods.ApiDangerousGoods"
},
"wasteDeclaration": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.waste.ApiWasteDeclaration"
},
"wasteCollections": {
"type": "array",
"description": "The waste collections per waste collector.",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.waste.ApiWasteCollection"
}
},
"shipStoresDeclaration": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.ApiShipStoresDeclaration"
},
"paxDeclarationSummaries": {
"minItems": 1,
"type": "array",
"description": "The summary of the declaration of the crew and passengers information of the port visit",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.ApiPaxDeclarationSummary"
}
},
"healthDeclaration": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.health.ApiHealthDeclaration"
},
"declarationStatuses": {
"type": "object",
"additionalProperties": {
"type": [
"string",
"null"
],
"enum": [
"DECLARED",
"ACCEPTED",
"REJECTED"
]
},
"description": "The current status of each declaration made for this visit, keyed by declaration type.\n\nEach entry maps a declaration type (e.g. VISIT, SECURITY, WASTE, DANGEROUS_GOODS, CREW_AND_PASSENGERS, HEALTH, SHIP_STORES) to its latest status:\n- DECLARED: the declaration has been submitted and is awaiting a response from the receiving authority.\n- ACCEPTED: the declaration has been accepted by the receiving authority.\n- REJECTED: the declaration has been rejected by the receiving authority.\n\nA declaration type is only present in the map once it has been declared at least once; if a type is absent, no declaration of that type has been made for this visit. When a declaration is re-submitted, the map reflects the status of the most recent submission.\n\nDANGEROUS_GOODS is only included when dangerous goods are enabled for the visit, and its status is aggregated from all dangerous goods declarations: if any single dangerous goods declaration is rejected, the overall DANGEROUS_GOODS status is reported as REJECTED."
},
"etaPortAis": {
"type": [
"string",
"null"
],
"description": "The estimated time of arrival at the given pilot station for the vessel call based on AIS information",
"format": "date-time"
},
"ignoreEtaPortAis": {
"type": "boolean",
"description": "Indication whether the declarant chose to ignore the etaPortAis",
"deprecated": true
},
"cancelled": {
"type": "boolean",
"description": "Indication whether the port visit is cancelled"
},
"ataAcknowledged": {
"type": "boolean",
"description": "Indication whether customs has acknowledged the ATA of the visit"
},
"orderIncomingMovement": {
"type": "boolean",
"description": "Indication whether ordering the incoming movement is enabled",
"deprecated": true
},
"importDeclarations": {
"type": "array",
"description": "List of import declarations by the visit's cargo declarants",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.ApiVisit_ApiImportDeclaration"
}
},
"transhipments": {
"type": "array",
"description": "Map of transhipments by consignment number",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.external.visit.transhipment.ApiTranshipment"
}
}
},
"$defs": {
"com.portbase.bezoekschip.common.api.bunkering.BunkerVessel": {
"title": "BunkerVessel",
"required": [
"name"
],
"type": [
"object",
"null"
],
"properties": {
"imo": {
"type": [
"string",
"null"
]
},
"eni": {
"type": [
"string",
"null"
]
},
"name": {
"minLength": 1,
"type": "string"
},
"tonnage": {
"type": [
"integer",
"null"
],
"format": "int32"
}
},
"description": "The bunker vessel"
},
"com.portbase.bezoekschip.common.api.cargo.common.BulkDischargeResult": {
"title": "BulkDischargeResult",
"required": [
"consignmentNumber",
"grossWeight",
"itemNumber"
],
"type": [
"object",
"null"
],
"properties": {
"consignmentNumber": {
"minLength": 1,
"type": "string"
},
"itemNumber": {
"type": "integer",
"format": "int32"
},
"grossWeight": {
"minimum": 0,
"type": "number"
}
},
"description": "Discharged bulk goods reported by terminals"
},
"com.portbase.bezoekschip.common.api.cargo.common.CargoCurrency": {
"title": "CargoCurrency",
"required": [
"description",
"unCode"
],
"type": "object",
"properties": {
"unCode": {
"minLength": 1,
"type": "string"
},
"description": {
"minLength": 1,
"type": "string"
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.Consignment": {
"title": "Consignment",
"required": [
"actualDeparture",
"consignmentNumber",
"consignor",
"goodsItems",
"portOfDischarge",
"portOfLoading"
],
"type": [
"object",
"null"
],
"properties": {
"consignmentNumber": {
"maxLength": 17,
"minLength": 0,
"type": "string"
},
"portOfLoading": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Port"
},
"portOfDischarge": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Port"
},
"actualDeparture": {
"type": "string",
"format": "date-time"
},
"terminal": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Terminal"
},
"movementReferenceNumbers": {
"uniqueItems": true,
"type": "array",
"items": {
"maxLength": 21,
"minLength": 0,
"type": [
"string",
"null"
]
}
},
"partShipment": {
"type": "boolean"
},
"movementType": {
"type": [
"string",
"null"
],
"enum": [
"DOOR_TO_DOOR",
"DOOR_TO_PIER",
"PIER_TO_DOOR",
"PIER_TO_PIER"
]
},
"customsStatus": {
"type": [
"string",
"null"
],
"enum": [
"EU_COMMUNITY_GOODS",
"EU_COMMUNITY_GOODS_IN_TRANSHIPMENT",
"EU_EMPTY_RETURN_PACKAGING",
"EU_PROCEDURE_T",
"EU_PROCEDURE_T1",
"EU_PROCEDURE_T2",
"EU_PROCEDURE_T2F",
"GOODS_FROM_EVA_COUNTRIES"
]
},
"customsProcess": {
"type": [
"string",
"null"
],
"enum": [
"SEA_IN_SEA_OUT",
"MILITARY",
"EMPTY_RETURN_PACKAGING"
]
},
"warehouseLicense": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.WarehouseLicense"
},
"bulkAuthorisations": {
"type": "array",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.authentication.BezoekschipOrganisation"
}
},
"exchangeRate": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.ExchangeRate"
},
"consignor": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.Party"
},
"consignee": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.Party"
},
"partiesToNotify": {
"type": "array",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.Party"
}
},
"placeOfOrigin": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Location"
},
"placeOfDestination": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Location"
},
"placeOfDelivery": {
"type": [
"string",
"null"
]
},
"onCarriageDetails": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.OnCarriageDetails"
},
"agentVoyageNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"goodsItems": {
"type": "array",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.GoodsItem"
}
},
"bulk": {
"type": "boolean"
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.ConsignmentDifference": {
"title": "ConsignmentDifference",
"required": [
"consignmentNumber"
],
"type": [
"object",
"null"
],
"properties": {
"consignmentNumber": {
"minLength": 1,
"type": "string"
},
"portOfLoadingUnCode": {
"type": [
"string",
"null"
],
"readOnly": true
},
"timestamp": {
"type": [
"string",
"null"
],
"format": "date-time",
"readOnly": true
},
"itemDifferences": {
"type": "array",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.GoodsItemDifference"
}
}
},
"description": "Consignment differences according to customs"
},
"com.portbase.bezoekschip.common.api.cargo.common.DangerInformation": {
"title": "DangerInformation",
"required": [
"unCode"
],
"type": [
"object",
"null"
],
"properties": {
"name": {
"type": [
"string",
"null"
],
"description": "The technical name of the dangerous good"
},
"unCode": {
"maxLength": 4,
"minLength": 4,
"type": "string",
"description": "The UN code of the dangerous good"
},
"hazardClass": {
"type": [
"string",
"null"
],
"description": "The IMO hazard class of the dangerous good"
},
"packingGroup": {
"type": [
"string",
"null"
],
"description": "Indication of the level of danger",
"enum": [
"MINOR_DANGER",
"MEDIUM_DANGER",
"GREAT_DANGER"
]
},
"flashPoint": {
"type": [
"number",
"null"
],
"description": "The temperature in degrees Celsius at which a good will give off enough flammable vapour to be ignited. According IMDG Code DG Class 3 or subsidiary risk of Class 3"
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.DischargeResult": {
"title": "DischargeResult",
"required": [
"number",
"sizeType",
"type"
],
"type": [
"object",
"null"
],
"properties": {
"number": {
"maxLength": 17,
"minLength": 0,
"type": "string"
},
"portOfLoading": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Port"
},
"terminal": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Terminal"
},
"actualTimeOfHandling": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"stowageLocation": {
"maxLength": 10,
"minLength": 0,
"type": [
"string",
"null"
]
},
"grossWeight": {
"type": [
"number",
"null"
],
"description": "The weight of the container with its content."
},
"transportStatus": {
"type": [
"string",
"null"
],
"enum": [
"CONTINENTAL",
"EXPORT",
"IMPORT",
"SHIFTER",
"TRANSHIPMENT",
"SHORTLANDED",
"OVERLANDED"
]
},
"type": {
"type": "string",
"enum": [
"CONTAINER",
"TRAILER",
"SWAP_BODY",
"CHASSIS"
]
},
"sizeType": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.SizeType"
},
"containerOperator": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Carrier"
},
"cargoAgentShortName": {
"type": [
"string",
"null"
]
},
"tareWeight": {
"type": [
"number",
"null"
],
"description": "The weight of the container without its content."
},
"bookingReference": {
"maxLength": 35,
"minLength": 0,
"type": [
"string",
"null"
]
},
"shipperSealNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"carrierSealNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"customsSealNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"shippersOwned": {
"type": "boolean",
"description": "Indication whether the container number is a ISO 6346 compliant container number (apply true when it does not comply)."
},
"empty": {
"type": "boolean",
"description": "Indication whether the container is full or empty."
},
"temperature": {
"type": [
"number",
"null"
]
},
"overlength": {
"type": [
"number",
"null"
]
},
"overheight": {
"type": [
"number",
"null"
]
},
"overwidth": {
"type": [
"number",
"null"
]
},
"oversizeRemarks": {
"type": [
"string",
"null"
]
}
},
"description": "Discharged containers reported by terminals"
},
"com.portbase.bezoekschip.common.api.cargo.common.ExchangeRate": {
"title": "ExchangeRate",
"required": [
"currency",
"rate"
],
"type": [
"object",
"null"
],
"properties": {
"rate": {
"minimum": 0,
"type": "number"
},
"currency": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.CargoCurrency"
}
},
"description": "Exchange rate of 1 euro."
},
"com.portbase.bezoekschip.common.api.cargo.common.GoodPlacement": {
"title": "GoodPlacement",
"required": [
"equipmentNumber",
"grossWeight"
],
"type": [
"object",
"null"
],
"properties": {
"equipmentNumber": {
"minLength": 1,
"type": "string"
},
"numberOfPackages": {
"minimum": 0,
"type": [
"integer",
"null"
],
"format": "int32"
},
"grossWeight": {
"type": "number",
"description": "The gross weight of the cargo in kilograms, including package weight, excluding container weight."
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.GoodsClassification": {
"title": "GoodsClassification",
"required": [
"code",
"description"
],
"type": [
"object",
"null"
],
"properties": {
"code": {
"minLength": 1,
"type": "string"
},
"description": {
"minLength": 1,
"type": "string"
}
},
"description": "The classification of the goods item"
},
"com.portbase.bezoekschip.common.api.cargo.common.GoodsDocument": {
"title": "GoodsDocument",
"required": [
"id",
"type"
],
"type": [
"object",
"null"
],
"properties": {
"type": {
"type": "string",
"enum": [
"N703",
"N705",
"N740",
"Y031",
"_820",
"_821",
"_822",
"_825"
]
},
"id": {
"maxLength": 35,
"minLength": 0,
"type": "string"
},
"description": {
"maxLength": 35,
"minLength": 0,
"type": [
"string",
"null"
]
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.GoodsItem": {
"title": "GoodsItem",
"required": [
"description",
"grossWeight",
"itemNumber",
"numberOfOuterPackages",
"outerPackageType"
],
"type": [
"object",
"null"
],
"properties": {
"itemNumber": {
"type": "integer",
"format": "int32"
},
"description": {
"minLength": 1,
"type": "string"
},
"grossWeight": {
"minimum": 0,
"type": "number",
"description": "The gross weight of the cargo in kilograms, including package weight, excluding container weight."
},
"numberOfOuterPackages": {
"minimum": 0,
"type": "integer",
"format": "int32"
},
"outerPackageType": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.dangerousgoods.common.CargoPackageType"
},
"netWeight": {
"type": [
"number",
"null"
],
"description": "The total weight of the goods in kilograms, excluding package weight, excluding container weight."
},
"numberOfInnerPackages": {
"minimum": 0,
"type": [
"integer",
"null"
],
"format": "int32"
},
"innerPackageType": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.dangerousgoods.common.CargoPackageType"
},
"classification": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.GoodsClassification"
},
"dangerInformation": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.DangerInformation"
},
"marksAndNumbers": {
"type": "array",
"items": {
"type": [
"string",
"null"
]
}
},
"minimumTemperature": {
"type": [
"number",
"null"
],
"description": "The minimum temperature (degrees C) on which the cooling system must be set."
},
"maximumTemperature": {
"type": [
"number",
"null"
],
"description": "The maximum temperature (degrees C) on which the cooling system must be set."
},
"placements": {
"type": "array",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.GoodPlacement"
}
},
"producedDocuments": {
"type": "array",
"items": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.GoodsDocument"
}
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.GoodsItemDifference": {
"title": "GoodsItemDifference",
"required": [
"itemNumber"
],
"type": [
"object",
"null"
],
"properties": {
"itemNumber": {
"type": "integer",
"format": "int32"
},
"remainingWeight": {
"minimum": 0,
"type": [
"number",
"null"
]
},
"remainingPackages": {
"type": [
"integer",
"null"
],
"format": "int32"
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.ImportContainer": {
"title": "ImportContainer",
"required": [
"actualDeparture",
"containerOperator",
"number",
"portOfDischarge",
"portOfLoading",
"sizeType",
"type"
],
"type": [
"object",
"null"
],
"properties": {
"number": {
"maxLength": 17,
"minLength": 0,
"type": "string"
},
"portOfLoading": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Port"
},
"portOfDischarge": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Port"
},
"actualDeparture": {
"type": "string",
"format": "date-time"
},
"terminal": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Terminal"
},
"type": {
"type": "string",
"enum": [
"CONTAINER",
"TRAILER",
"SWAP_BODY",
"CHASSIS"
]
},
"sizeType": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.SizeType"
},
"containerOperator": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.common.visit.Carrier"
},
"tareWeight": {
"type": [
"number",
"null"
],
"description": "The weight of the container without its content."
},
"bookingReference": {
"maxLength": 35,
"minLength": 0,
"type": [
"string",
"null"
]
},
"shipperSealNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"carrierSealNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"customsSealNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"shippersOwned": {
"type": "boolean",
"description": "Indication whether the container number is a ISO 6346 compliant container number (apply true when it does not comply)."
},
"empty": {
"type": "boolean",
"description": "Indication whether the container is full or empty."
},
"temperature": {
"type": [
"number",
"null"
]
},
"overlength": {
"type": [
"number",
"null"
]
},
"overheight": {
"type": [
"number",
"null"
]
},
"overwidth": {
"type": [
"number",
"null"
]
},
"oversizeRemarks": {
"type": [
"string",
"null"
]
},
"onCarriageDetails": {
"$ref": "#/$defs/com.portbase.bezoekschip.common.api.cargo.common.OnCarriageDetails"
},
"initialDemurrage": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"redeliveryAddress": {
"type": [
"string",
"null"
]
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.OnCarriageDetails": {
"title": "OnCarriageDetails",
"type": [
"object",
"null"
],
"properties": {
"modeOfTransport": {
"type": [
"string",
"null"
],
"enum": [
"AIR_TRANSPORT",
"FIXED_TRANSPORT",
"INLAND_WATER_TRANSPORT",
"MAIL",
"MARITIME_TRANSPORT",
"MULTIMODAL_TRANSPORT",
"NOT_APPLICABLE",
"NOT_SPECIFIED",
"RAIL_TRANSPORT",
"ROAD_TRANSPORT"
]
},
"vessel": {
"type": [
"string",
"null"
]
},
"radioCallSign": {
"maxLength": 7,
"minLength": 0,
"type": [
"string",
"null"
]
},
"voyageNumber": {
"maxLength": 17,
"minLength": 0,
"type": [
"string",
"null"
]
},
"plannedDeparture": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.Party": {
"title": "Party",
"type": [
"object",
"null"
],
"properties": {
"eoriNumber": {
"maxLength": 35,
"minLength": 0,
"pattern": "[A-Z]{2}[^\\s]*|null",
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"address": {
"type": [
"string",
"null"
]
},
"zipCode": {
"maxLength": 9,
"minLength": 0,
"type": [
"string",
"null"
]
},
"city": {
"type": [
"string",
"null"
]
},
"countryCode": {
"maxLength": 2,
"minLength": 2,
"type": [
"string",
"null"
]
},
"id": {
"type": [
"string",
"null"
]
},
"ownerShortName": {
"type": [
"string",
"null"
]
}
}
},
"com.portbase.bezoekschip.common.api.cargo.common.SizeType": {
"title": "SizeType",
"required": [
"code"
],
"type": [
"object",
"null"
],
"properties": {
"code": {
"maxLength": 4,
"minLength": 0,
"type": "string",
"description": "The coded container's length, width, height, type and features."
},
"name": {
"type": [
"string",
"null"
],
"description": "The descriptive name of the size type of container as specified with the code."
}
},
"description": "The classification of the container's length, width, height, type and features.<br>Use a size type retrieved with find size types via the Reference Data API '[Find SizeTypes](#operation/_06_findSizeTypes)'."
},
"com.portbase.bezoekschip.common.api.cargo.common.WarehouseLicense": {
"title": "WarehouseLicense",
"required": [
"customsAuthorityId",
"licenseNumber"
],
"type": [
"object",
"null"
],
"properties": {
"licenseNumber": {
"maxLength": 35,
"minLength": 0,
"type": "string"
},
"customsAuthorityId": {
"maxLength": 17,
"minLength": 0,
"type": "string"
},
"holderName": {
"type": [
"string",
"null"
]
},
"storageType": {
"type": [
"string",
"null"
],
"enum": [
"C",
"D",
"E",
"I",
"U"
]
},
"address": {
"type": [
"string",
"null"
]
},
"zipCode": {
"type": [
"string",
"null"
]
},
"city": {
"type": [
"string",
"null"
]
},
"id": {
"type": [
"string",
"null"
]
},
"organisationShortName": {
"type": [
"string",
"null"
]
},
"organisationFullName": {
"type": [
"string",
"null"
]
}
}
},
"com.portbase.bezoekschip.common.api.cargo.inspection.InspectionUpdate": {
"title": "InspectionUpdate",
"required": [
"consignmentNumber"
],
"type": [
"object",
"null"
],
"properties": {
"consignmentNumber": {
"minLength": 1,
"type": "string"
},
"containerNumber": {
"type": [
"string",
"null"
],
"description": "Keep containerNumber empty for bulk inspections."
},
"physicalInspectionLocation": {
"type": [
"string",
"null"
],
"des
# --- truncated at 32 KB (213 KB total) ---
# Full source: https://artifacts.apis.io/portbase/json-schema/portbase-com-portbase-bezoekschip-common-api-external-visit-api-visit-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/portbase-com-portbase-bezoekschip-common-api-external-visit-api-visit"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.