A scenario with its items, moves, indicators and accessibility; stale is computed on read (storage.read)
curl --request GET \ --url https://example.com/api/admin/v1/marinas/example/storage/scenarios/example \ --cookie porto_session=<porto_session>Authorizations
Sezione intitolata “Authorizations”Parameters
Sezione intitolata “Parameters”Path Parameters
Sezione intitolata “Path Parameters”Responses
Sezione intitolata “Responses”OK
object
object
Calendar date YYYY-MM-DD in the marina timezone
Calendar date YYYY-MM-DD in the marina timezone
object
object
Calendar date YYYY-MM-DD in the marina timezone
Some allocation changed since it was loaded (computed on read
object
object
Mooring statuses (draft..suspended) and transit statuses (held..awaiting_approval)
ORM-2026-0001, TRN-2026-0001
The vessel embedded in occupancy and contract views (no registration, no owner)
object
Length in integer centimetres
Length in integer centimetres
Length in integer centimetres
How the boat stands ashore (fit code support_not_allowed when the area does not accept it)
Length in integer centimetres
Length in integer centimetres
Rotation on a surface area in tenths of a degree (multiples of 90°; 0/1800 and 900/2700 are the same rectangle)
Calendar date YYYY-MM-DD in the marina timezone
Calendar date YYYY-MM-DD in the marina timezone
Calendar date YYYY-MM-DD in the marina timezone
Calendar date YYYY-MM-DD in the marina timezone
Absent when the allocation is gone
object
object
Length in integer centimetres
Length in integer centimetres
Rotation on a surface area in tenths of a degree (multiples of 90°; 0/1800 and 900/2700 are the same rectangle)
object
Length in integer centimetres
Length in integer centimetres
Rotation on a surface area in tenths of a degree (multiples of 90°; 0/1800 and 900/2700 are the same rectangle)
Calendar date YYYY-MM-DD in the marina timezone
object
Accessibility of one exit or arrival event (m9-plan §5); blocking = allocation ids (heuristic minimal set)
object
Calendar date YYYY-MM-DD in the marina timezone
Extraction order among the exits of that day (1 = first)
Statistics of the last optimize call of this response
object
Example
{ "scenario": { "status": "draft" }, "items": [ { "kind": "hold", "origin": "area", "contract": { "kind": "mooring", "term": "annual", "status": "draft" }, "vessel": { "hull_type": "monohull_motor" }, "support": "cradle", "rotation_dd": 0 } ], "moves": [ { "kind": "move", "from": { "resource_type": "berth", "rotation_dd": 0 }, "to": { "resource_type": "berth", "rotation_dd": 0 } } ], "issues": [ { "reason": "overlap", "fit_codes": [ "loa_exceeds" ] } ], "access": [ { "event": "exit" } ], "run": { "stopped_by": "iterations" }}Headers
Sezione intitolata “Headers”Version of the resource, quoted (“3”)
Not authenticated, or invalid credentials
object
object
Map validation issues (map_invalid)
object
ValidateMap rule (m1-plan §2.3), e.g. berth_overlap
Numbers only (cm, counts)
object
Price list validation issues (price_list_invalid)
object
Pricing.Validate issue code (m2-plan §4.8), e.g. period_overlap
object
Id of the row, or the client key of an unsaved one
Codes and integers as strings; never personal data
object
Machine-readable details: no_price {item_id, contract_type, night, unit, category, band, reason}; price_list_overlap {conflicts: [{id, code, valid_from, valid_to}]}; in_use {references}; resource_taken ConflictDetail; fit_blocked FitResult; placement_invalid {reason, allocation_id?}; invalid_transition {from, action}; closure_active {closure_id, from_date, to_date}; release_invalid {reason}; allocation_changed {current_resource_id, current_resource_code} (null when the allocation is gone); remote_pin_mismatch {expected_fingerprint, presented_fingerprint}; scenario_conflicts {conflicts: [StorageScenarioConflict]}; maintenance_conflicts {conflicts: [MaintenanceConflict]}; storage_no_space {area_id, from, to}. Ids, codes, dates and integers only.
object
Example
{ "type": "bad_request", "issues": [ { "severity": "error" } ], "price_list_issues": [ { "severity": "error", "ref": { "kind": "list" } } ]}Authenticated but not allowed
object
object
Map validation issues (map_invalid)
object
ValidateMap rule (m1-plan §2.3), e.g. berth_overlap
Numbers only (cm, counts)
object
Price list validation issues (price_list_invalid)
object
Pricing.Validate issue code (m2-plan §4.8), e.g. period_overlap
object
Id of the row, or the client key of an unsaved one
Codes and integers as strings; never personal data
object
Machine-readable details: no_price {item_id, contract_type, night, unit, category, band, reason}; price_list_overlap {conflicts: [{id, code, valid_from, valid_to}]}; in_use {references}; resource_taken ConflictDetail; fit_blocked FitResult; placement_invalid {reason, allocation_id?}; invalid_transition {from, action}; closure_active {closure_id, from_date, to_date}; release_invalid {reason}; allocation_changed {current_resource_id, current_resource_code} (null when the allocation is gone); remote_pin_mismatch {expected_fingerprint, presented_fingerprint}; scenario_conflicts {conflicts: [StorageScenarioConflict]}; maintenance_conflicts {conflicts: [MaintenanceConflict]}; storage_no_space {area_id, from, to}. Ids, codes, dates and integers only.
object
Example
{ "type": "bad_request", "issues": [ { "severity": "error" } ], "price_list_issues": [ { "severity": "error", "ref": { "kind": "list" } } ]}Not found (or not visible to the principal)
object
object
Map validation issues (map_invalid)
object
ValidateMap rule (m1-plan §2.3), e.g. berth_overlap
Numbers only (cm, counts)
object
Price list validation issues (price_list_invalid)
object
Pricing.Validate issue code (m2-plan §4.8), e.g. period_overlap
object
Id of the row, or the client key of an unsaved one
Codes and integers as strings; never personal data
object
Machine-readable details: no_price {item_id, contract_type, night, unit, category, band, reason}; price_list_overlap {conflicts: [{id, code, valid_from, valid_to}]}; in_use {references}; resource_taken ConflictDetail; fit_blocked FitResult; placement_invalid {reason, allocation_id?}; invalid_transition {from, action}; closure_active {closure_id, from_date, to_date}; release_invalid {reason}; allocation_changed {current_resource_id, current_resource_code} (null when the allocation is gone); remote_pin_mismatch {expected_fingerprint, presented_fingerprint}; scenario_conflicts {conflicts: [StorageScenarioConflict]}; maintenance_conflicts {conflicts: [MaintenanceConflict]}; storage_no_space {area_id, from, to}. Ids, codes, dates and integers only.
object
Example
{ "type": "bad_request", "issues": [ { "severity": "error" } ], "price_list_issues": [ { "severity": "error", "ref": { "kind": "list" } } ]}Porto è sviluppato da Coste360 SRL. Codice sorgente disponibile con licenza BSL 1.1; il marchio Porto è escluso dalla licenza.