arazzo: 1.0.1 info: title: Resolve a port and read berthed, anchored and inbound vessels version: 1.0.0 description: Native Arazzo workflow over the ShipFinder Global Maritime Data API. Generated by API Evangelist on 2026-08-09; every operationId is verified against openapi/shipfinder-ais-data-api-openapi.yml. sourceDescriptions: - name: shipfinder url: ../openapi/shipfinder-ais-data-api-openapi.yml type: openapi workflows: - workflowId: portCongestionSnapshot summary: Resolve a port and read berthed, anchored and inbound vessels inputs: type: object required: - apiKey - portCode properties: apiKey: type: string description: ShipFinder API key portCode: type: string description: UN/LOCODE of the port, e.g. SGSGP steps: - stepId: portInfo operationId: getPortInfo parameters: - name: key in: query value: $inputs.apiKey - name: port_code in: query value: $inputs.portCode successCriteria: - condition: $statusCode == 200 - context: $response.body condition: $.status == 0 type: jsonpath outputs: port: $response.body#/data - stepId: berthed operationId: getPortBerthedVessels parameters: - name: key in: query value: $inputs.apiKey - name: port_code in: query value: $inputs.portCode successCriteria: - condition: $statusCode == 200 - context: $response.body condition: $.status == 0 type: jsonpath outputs: berthed: $response.body#/data - stepId: anchored operationId: getPortAnchoredVessels parameters: - name: key in: query value: $inputs.apiKey - name: port_code in: query value: $inputs.portCode successCriteria: - condition: $statusCode == 200 - context: $response.body condition: $.status == 0 type: jsonpath outputs: anchored: $response.body#/data - stepId: expected operationId: getPortExpectedArrivals parameters: - name: key in: query value: $inputs.apiKey - name: port_code in: query value: $inputs.portCode successCriteria: - condition: $statusCode == 200 - context: $response.body condition: $.status == 0 type: jsonpath outputs: expected: $response.body#/data outputs: expected: $steps.expected.outputs.expected