{
  "info": {
    "_postman_id": "b83f132b-b795-42f6-aa4a-503768115247",
    "name": "Client Facing API",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "_exporter_id": "39160811"
  },
  "item": [
    {
      "name": "Vessels",
      "item": [
        {
          "name": "Create Vessel",
          "request": {
            "method": "POST",
            "header": [],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"MV Atlantic Star\",\n  \"image\": \"https://example.com/vessel.jpg\",\n  \"dateConstructed\": \"2015-06-01\",\n  \"captain\": \"John Smith\",\n  \"dwt\": 75000,\n  \"loa\": 229.0,\n  \"lbp\": 220.0,\n  \"breadth\": 32.2,\n  \"depth\": 20.1,\n  \"draftDesign\": 14.5,\n  \"serviceSpeed\": 14.5,\n  \"draftScant\": 15.0,\n  \"pitch\": 5.2,\n  \"imo\": \"9876543\",\n  \"orgId\": \"org-uuid-here\",\n  \"type\": 1,\n  \"registrarId\": \"reg-uuid-here\",\n  \"owner\": \"Acme Shipping Ltd\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{baseUrl}}/vessel",
              "host": ["{{baseUrl}}"],
              "path": ["vessel"]
            }
          },
          "response": []
        },
        {
          "name": "Get Vessel",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/vessel/0dc70acf-21cc-4c89-a034-5595d315b698",
              "host": ["{{baseUrl}}"],
              "path": ["vessel", "0dc70acf-21cc-4c89-a034-5595d315b698"]
            }
          },
          "response": []
        },
        {
          "name": "Update Vessel",
          "request": {
            "method": "PATCH",
            "header": [],
            "body": {
              "mode": "raw",
              "raw": "{\n    \"name\": \"MV Atlantic Star II\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{baseUrl}}/vessel/0dc70acf-21cc-4c89-a034-5595d315b698",
              "host": ["{{baseUrl}}"],
              "path": ["vessel", "0dc70acf-21cc-4c89-a034-5595d315b698"]
            }
          },
          "response": []
        },
        {
          "name": "Delete Vessel",
          "request": {
            "method": "DELETE",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/vessel/e761ca27-94bc-486a-ad41-68f8cad43b00",
              "host": ["{{baseUrl}}"],
              "path": ["vessel", "e761ca27-94bc-486a-ad41-68f8cad43b00"]
            }
          },
          "response": []
        },
        {
          "name": "Get Vessels",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/vessel?page=1&pageSize=20",
              "host": ["{{baseUrl}}"],
              "path": ["vessel"],
              "query": [
                { "key": "page", "value": "1" },
                { "key": "pageSize", "value": "20" }
              ]
            }
          },
          "response": []
        }
      ]
    },
    {
      "name": "Chartings",
      "item": [
        {
          "name": "Create Charting",
          "request": {
            "method": "POST",
            "header": [],
            "body": {
              "mode": "raw",
              "raw": "{\n    \"orgId\": \"7a510548-aec2-49b3-9cf7-e1f001f22e8d\",\n    \"vesselId\": \"66b72ad4-202c-40f5-9678-06ee89bbc790\",\n    \"latFrom\": 55.033843994140625,\n    \"lngFrom\": 9.464634895324707,\n    \"nidFrom\": 13308331,\n    \"latTo\": 62.05811309814453,\n    \"lngTo\": 5.513819217681885,\n    \"nidTo\": 12758611,\n    \"portFromName\": \"AABENRAA\",\n    \"portToName\": \"AAHEIM\",\n    \"startDate\": 1776775500353,\n    \"speedRangeMin\": 11,\n    \"speedRangeMax\": 13,\n    \"optimizationType\": 1,\n    \"routeType\": 1,\n    \"draft\": 14,\n    \"trim\": 2,\n    \"rpm\": 55,\n    \"maxWaveHeight\": 6,\n    \"maxNorthLat\": 90,\n    \"avoidWarZones\": true,\n    \"avoidEca\": false,\n    \"dwt\": 68439,\n    \"lbp\": 220,\n    \"pitch\": 5.435,\n    \"owner\": \"a4c31c62-40c0-48f3-840d-a35ff7c66e0a\",\n    \"triggeredBy\": \"a4c31c62-40c0-48f3-840d-a35ff7c66e0a\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{baseUrl}}/charting",
              "host": ["{{baseUrl}}"],
              "path": ["charting"]
            }
          },
          "response": []
        },
        {
          "name": "Get Chartings",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/charting?page=1&pageSize=5",
              "host": ["{{baseUrl}}"],
              "path": ["charting"],
              "query": [
                { "key": "page", "value": "1" },
                { "key": "pageSize", "value": "5" }
              ]
            }
          },
          "response": []
        },
        {
          "name": "Get Charting",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/charting/cafb8188-674b-424f-88dc-dc56674e4fb5",
              "host": ["{{baseUrl}}"],
              "path": ["charting", "cafb8188-674b-424f-88dc-dc56674e4fb5"]
            }
          },
          "response": []
        },
        {
          "name": "Get Active Chartings",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/charting/active",
              "host": ["{{baseUrl}}"],
              "path": ["charting", "active"]
            }
          },
          "response": []
        },
        {
          "name": "Get Charting Critical Points",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/charting/cafb8188-674b-424f-88dc-dc56674e4fb5/critical-points",
              "host": ["{{baseUrl}}"],
              "path": ["charting", "cafb8188-674b-424f-88dc-dc56674e4fb5", "critical-points"]
            }
          },
          "response": []
        },
        {
          "name": "Get Charting FOC",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/charting/cafb8188-674b-424f-88dc-dc56674e4fb5/foc",
              "host": ["{{baseUrl}}"],
              "path": ["charting", "cafb8188-674b-424f-88dc-dc56674e4fb5", "foc"]
            }
          },
          "response": []
        },
        {
          "name": "Get Charting CSV",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/charting/cafb8188-674b-424f-88dc-dc56674e4fb5/csv",
              "host": ["{{baseUrl}}"],
              "path": ["charting", "cafb8188-674b-424f-88dc-dc56674e4fb5", "csv"]
            }
          },
          "response": []
        },
        {
          "name": "Get Charting RTZ",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/charting/cafb8188-674b-424f-88dc-dc56674e4fb5/rtz",
              "host": ["{{baseUrl}}"],
              "path": ["charting", "cafb8188-674b-424f-88dc-dc56674e4fb5", "rtz"]
            }
          },
          "response": []
        }
      ]
    },
    {
      "name": "Constraints",
      "item": [
        {
          "name": "Get Constraints",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/constraints?page=1&pageSize=20",
              "host": ["{{baseUrl}}"],
              "path": ["constraints"],
              "query": [
                { "key": "page", "value": "1" },
                { "key": "pageSize", "value": "20" }
              ]
            }
          },
          "response": []
        },
        {
          "name": "Create Constraint",
          "request": {
            "method": "POST",
            "header": [],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"Black Sea War Zone\",\n  \"description\": \"Active conflict area - avoid routing through\",\n  \"type\": \"HIGH_RISK\",\n  \"level\": \"ORGANIZATION\",\n  \"orgIds\": [\"org-uuid-here\"],\n  \"geometry\": {\n    \"type\": \"Polygon\",\n    \"coordinates\": [[\n      [31.5, 46.5],\n      [34.0, 46.5],\n      [34.0, 44.0],\n      [31.5, 44.0],\n      [31.5, 46.5]\n    ]]\n  },\n  \"start_date\": \"2026-04-21T00:00:00.000Z\",\n  \"end_date\": \"2026-12-31T00:00:00.000Z\",\n  \"is_active\": true\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{baseUrl}}/constraints",
              "host": ["{{baseUrl}}"],
              "path": ["constraints"]
            }
          },
          "response": []
        },
        {
          "name": "Delete Constraint",
          "request": {
            "method": "DELETE",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/constraints/400",
              "host": ["{{baseUrl}}"],
              "path": ["constraints", "400"]
            }
          },
          "response": []
        }
      ]
    },
    {
      "name": "Get Organization",
      "request": {
        "method": "GET",
        "header": [],
        "url": {
          "raw": "{{baseUrl}}/organization",
          "host": ["{{baseUrl}}"],
          "path": ["organization"]
        }
      },
      "response": []
    }
  ],
  "auth": {
    "type": "apikey",
    "apikey": [
      {
        "key": "value",
        "value": "{{apiKey}}",
        "type": "string"
      },
      {
        "key": "key",
        "value": "x-api-key",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.vesselfront.com/v1"
    },
    {
      "key": "apiKey",
      "value": ""
    }
  ]
}
