{
  "auth": {
    "bearer": [
      {
        "key": "token",
        "value": "{{bearerToken}}"
      }
    ],
    "type": "bearer"
  },
  "event": [],
  "info": {
    "_postman_id": "c930afee-c3b7-34a7-2ddb-a890266b09d3",
    "description": {
      "content": "The OwlMar Public API (`/v1/*`) gives Enterprise customers programmatic, bearer-key\nauthenticated access to their fleet's vessels, equipment, maintenance history, inventory,\nexpenses, documents, crew certifications, charter bookings, trip logs, ISM compliance\nrecords, and fleet-level financial aggregations. Every endpoint below is also present,\nverbatim, in `src/publicApi/routeScopeMap.js` — that file is the source of truth for the\nexposed surface if this spec and the code ever drift; a CI drift-detection suite\n(`validateResponses: true` in `NODE_ENV=test`) fails the build the moment a handler's real\nresponse stops matching what's documented here.\n\nAuthenticate with `Authorization: Bearer owlmar_live_...` — keys are created from\nSettings → API Keys in the app and are scoped per-key to a set of vessels (`orgScope`)\nand a set of `\"<featureKey>:read\"` / `\"<featureKey>:full\"` module grants (`moduleScopes`).\nEvery successful response is wrapped in the canonical envelope\n`{ data: T | T[], pagination?: {...}, meta?: {...} }`; every error response is\n`{ error: string, code: string, field?: string, meta?: object }` — switch on `code`, not\non the human-readable `error` string, which may change wording without notice. List\nendpoints that support cursor pagination accept an opaque `?cursor=` query param (never a\npage number) — see the `Pagination` schema below. `?page=&limit=` remains supported on\nsome list endpoints for one deprecation cycle (12 months minimum) and is flagged with\n`Sunset`/`Deprecation` response headers when used; it is intentionally NOT documented as a\nrequest parameter here — new integrations should use `cursor` exclusively.\n\nMoney and other Decimal-typed values are serialized as strings to preserve\nprecision (Decimal columns in Postgres, which JS Number cannot represent\nlosslessly at higher precision). Consumers should parse these fields via\ntheir language's Decimal/BigDecimal type before arithmetic, not JS Number.\n\n\nContact Support:\n Email: support@owlmar.com",
      "type": "text/plain"
    },
    "name": "OwlMar Public API",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "item": [
    {
      "event": [],
      "id": "15655cde-8386-2fa4-9bbd-fc1cc3dda43b",
      "item": [
        {
          "event": [],
          "id": "2a68ab6e-c3a7-e3c3-326b-18c1d4327701",
          "name": "List vessels",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Returns every vessel the API key's creator-user owns or has team-member access to.\nDeliberately a **bare array of `Vessel` objects wrapped only by the envelope**\n(`{ data: Vessel[] }`) — there is no `pagination` block on this endpoint (see \"Known\ngaps\" in `docs/api.md`: the multi-vessel downgrade-lock annotation needs the full\nowned-vessel set to compute `isLocked`/`lockReason` correctly, so this endpoint isn't\ncursor-paginated). Owned vessels beyond the caller's plan's vessel limit are annotated\nwith `isLocked: true` rather than omitted.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List vessels",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "vessels"
              ],
              "query": [],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"2a202d12-1a99-94f6-68a6-5566236a251a\",\n      \"ownerId\": \"a5b4a604-2ffd-80bb-bea9-86d967c217bd\",\n      \"vesselName\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\",\n      \"year\": 4750,\n      \"hullNumber\": \"string\",\n      \"vesselType\": \"string\",\n      \"status\": \"string\",\n      \"engineType\": \"string\",\n      \"engineCount\": 1100,\n      \"homePort\": \"string\",\n      \"homePortLat\": 9879.908438306302,\n      \"homePortLon\": 3276.9658439792693,\n      \"homePortResolved\": \"string\",\n      \"homePortNeedsReview\": true,\n      \"length\": 2245.633106213063,\n      \"beam\": 5681.508956477046,\n      \"draft\": 6560.282469727099,\n      \"airDraft\": 3648.970592767,\n      \"loaTotal\": 7740.518394857645,\n      \"displacement\": 9215,\n      \"grossTonnage\": 119,\n      \"fuelCapacity\": 7279,\n      \"waterCapacity\": 5617,\n      \"maxAccommodation\": 6908,\n      \"maxRange\": 2546,\n      \"cruisingSpeed\": 445.2430852688849,\n      \"imoNumber\": \"string\",\n      \"mmsi\": \"string\",\n      \"callSign\": \"string\",\n      \"flagState\": \"string\",\n      \"complianceProfile\": \"string\",\n      \"multiCurrencyEnabled\": true,\n      \"defaultCurrency\": \"string\",\n      \"photo\": \"string\",\n      \"dataConsistencyWarnings\": [\n        {\n          \"key_0\": 8867.645212449133\n        },\n        {\n          \"key_0\": \"string\"\n        }\n      ],\n      \"owner\": {\n        \"id\": \"2eb7c0d6-1485-5e35-8e8c-07dde8ce29e8\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"captain\": {\n        \"id\": \"208c49e2-56f5-0bcb-9ebc-064246ab9629\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"permissions\": {\n        \"key_0\": true,\n        \"key_1\": 7565,\n        \"key_2\": 5201.454579364508,\n        \"key_3\": false\n      },\n      \"isLocked\": false,\n      \"lockReason\": \"string\",\n      \"createdAt\": \"2025-01-14T06:43:26.435Z\",\n      \"updatedAt\": \"2012-12-25T20:00:33.891Z\"\n    },\n    {\n      \"id\": \"556d9792-17b1-7e7e-1299-f3f444ce2014\",\n      \"ownerId\": \"23f2c647-cb79-be1e-d03e-558b103e232b\",\n      \"vesselName\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\",\n      \"year\": 223,\n      \"hullNumber\": \"string\",\n      \"vesselType\": \"string\",\n      \"status\": \"string\",\n      \"engineType\": \"string\",\n      \"engineCount\": 3831,\n      \"homePort\": \"string\",\n      \"homePortLat\": 5095.781383570284,\n      \"homePortLon\": 7982.964836992323,\n      \"homePortResolved\": \"string\",\n      \"homePortNeedsReview\": true,\n      \"length\": 1963.5776220820844,\n      \"beam\": 9121.28917640075,\n      \"draft\": 9455.25340968743,\n      \"airDraft\": 830.5915165692568,\n      \"loaTotal\": 6125.400175806135,\n      \"displacement\": 3899,\n      \"grossTonnage\": 8608,\n      \"fuelCapacity\": 9851,\n      \"waterCapacity\": 2456,\n      \"maxAccommodation\": 7580,\n      \"maxRange\": 7292,\n      \"cruisingSpeed\": 5455.833473242819,\n      \"imoNumber\": \"string\",\n      \"mmsi\": \"string\",\n      \"callSign\": \"string\",\n      \"flagState\": \"string\",\n      \"complianceProfile\": \"string\",\n      \"multiCurrencyEnabled\": false,\n      \"defaultCurrency\": \"string\",\n      \"photo\": \"string\",\n      \"dataConsistencyWarnings\": [\n        {\n          \"key_0\": \"string\"\n        },\n        {\n          \"key_0\": 3363,\n          \"key_1\": \"string\"\n        }\n      ],\n      \"owner\": {\n        \"id\": \"64bcfd53-2b50-cd34-6b95-a60b21bd2df3\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"captain\": {\n        \"id\": \"b49a28a2-3f7a-48ed-d243-9f9e85a07e82\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"permissions\": {\n        \"key_0\": \"string\",\n        \"key_1\": 322\n      },\n      \"isLocked\": true,\n      \"lockReason\": \"string\",\n      \"createdAt\": \"1948-11-04T23:04:30.495Z\",\n      \"updatedAt\": \"1965-04-19T23:38:03.435Z\"\n    }\n  ]\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "6b4483cc-0c21-27c4-7cea-e834f03d1480",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "vessels"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "92fecee4-073f-dd69-e0ae-50177d86b1b4",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "vessels"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "196c91e6-2ca8-4227-d5cd-575ae48e56e9",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "vessels"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "cc09f2fc-8c53-6e3b-61ee-b562c863ef4b",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "vessels"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "6c83016e-2a1e-151b-5b9d-66d390bebbac",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "vessels"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "2c264511-48a6-edf0-4b8c-e3da552a6adf",
          "item": [
            {
              "event": [],
              "id": "cad50064-e7ed-cff6-f2b5-8de850889ece",
              "name": "Get a vessel",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "description": {
                  "content": "Returns a single vessel with its captain, permissions, and (unlike the list endpoint)\nthe most recent equipment, maintenance events, documents, and trip logs nested inline\n(each capped at the most recent 10 rows — use the dedicated list endpoints for full\nhistory). 404 if the vessel doesn't exist or the caller has no access.\n",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "name": "Get a vessel",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "vessels",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"5060f293-478a-9483-e68a-b8524c4a1fde\",\n    \"ownerId\": \"95068263-17d4-c452-0a56-9f4774715626\",\n    \"vesselName\": \"string\",\n    \"make\": \"string\",\n    \"model\": \"string\",\n    \"year\": 6920,\n    \"hullNumber\": \"string\",\n    \"vesselType\": \"string\",\n    \"status\": \"string\",\n    \"engineType\": \"string\",\n    \"engineCount\": 7360,\n    \"homePort\": \"string\",\n    \"homePortLat\": 8071.167478337884,\n    \"homePortLon\": 2213.4410310536623,\n    \"homePortResolved\": \"string\",\n    \"homePortNeedsReview\": true,\n    \"length\": 2860.3040077723563,\n    \"beam\": 7734.792740084231,\n    \"draft\": 8456.311884801835,\n    \"airDraft\": 8482.890399172902,\n    \"loaTotal\": 482.5329245068133,\n    \"displacement\": 6816,\n    \"grossTonnage\": 1962,\n    \"fuelCapacity\": 1252,\n    \"waterCapacity\": 3004,\n    \"maxAccommodation\": 413,\n    \"maxRange\": 2694,\n    \"cruisingSpeed\": 649.188153911382,\n    \"imoNumber\": \"string\",\n    \"mmsi\": \"string\",\n    \"callSign\": \"string\",\n    \"flagState\": \"string\",\n    \"complianceProfile\": \"string\",\n    \"multiCurrencyEnabled\": true,\n    \"defaultCurrency\": \"string\",\n    \"photo\": \"string\",\n    \"dataConsistencyWarnings\": [\n      {\n        \"key_0\": 2658.8267367333174,\n        \"key_1\": 2099\n      },\n      {\n        \"key_0\": \"string\",\n        \"key_1\": 297.96788934618235,\n        \"key_2\": \"string\"\n      }\n    ],\n    \"owner\": {\n      \"id\": \"e0f6433f-f3f5-1bbf-e2a7-39a619f31214\",\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"string\",\n      \"phone\": \"string\",\n      \"profilePhoto\": \"string\"\n    },\n    \"captain\": {\n      \"id\": \"3a85f9fc-9681-355e-354b-233d07863ac0\",\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"string\",\n      \"phone\": \"string\",\n      \"profilePhoto\": \"string\"\n    },\n    \"permissions\": {\n      \"key_0\": \"string\",\n      \"key_1\": 8883.310295641422\n    },\n    \"isLocked\": true,\n    \"lockReason\": \"string\",\n    \"createdAt\": \"2019-01-07T01:45:07.979Z\",\n    \"updatedAt\": \"2004-06-30T23:21:42.733Z\",\n    \"consistencyWarnings\": [\n      {\n        \"key_0\": \"string\",\n        \"key_1\": \"string\",\n        \"key_2\": 4863\n      },\n      {\n        \"key_0\": 1086,\n        \"key_1\": \"string\",\n        \"key_2\": true\n      }\n    ],\n    \"equipment\": [\n      {\n        \"id\": \"f00cbd82-2cc7-6375-0aa1-6cccebdd6129\",\n        \"vesselId\": \"311c217b-7aaf-9569-ed9d-da365eea92ac\",\n        \"systemCategory\": \"string\",\n        \"vesselSystemId\": \"afc8b128-1575-f0a9-2c7d-c22f603f313a\",\n        \"vesselSystem\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"systemKey\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"name\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"equipmentType\": \"string\",\n        \"make\": \"string\",\n        \"model\": \"string\",\n        \"serialNumber\": \"string\",\n        \"installDate\": \"2012-08-12T10:29:03.666Z\",\n        \"hoursAtInstall\": 1360,\n        \"currentHours\": 2859,\n        \"currentHoursAt\": \"2015-05-26T14:06:08.271Z\",\n        \"capacity\": {\n          \"key_0\": 6222\n        },\n        \"locationOnVessel\": \"string\",\n        \"warrantyExpires\": \"1948-08-28T11:50:50.978Z\",\n        \"photos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"notes\": \"string\",\n        \"equipmentModelId\": \"59009992-c51d-a7d3-be1f-b0416c344adf\",\n        \"equipmentModel\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"modelName\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualUrl\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualContentHash\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualDiscoveryStatus\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualDiscoverySource\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"maintenanceSchedule\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manufacturer\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"maintenanceKits\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"hoursStatus\": [\n          {\n            \"key_0\": true,\n            \"key_1\": 5974\n          },\n          {\n            \"key_0\": 596.6095067560673,\n            \"key_1\": 2385,\n            \"key_2\": \"string\",\n            \"key_3\": \"string\"\n          }\n        ],\n        \"archivedAt\": \"1993-08-16T01:51:55.279Z\",\n        \"createdAt\": \"1976-06-10T05:07:52.948Z\",\n        \"updatedAt\": \"2023-09-26T07:28:48.886Z\"\n      },\n      {\n        \"id\": \"53f3c4d6-5d95-ecb0-a2b9-c99375680f25\",\n        \"vesselId\": \"6ca48fa8-af73-74dd-ed12-304a1851ac4f\",\n        \"systemCategory\": \"string\",\n        \"vesselSystemId\": \"67a82e8b-04e1-4151-9606-8018c40774e0\",\n        \"vesselSystem\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"systemKey\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"name\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"equipmentType\": \"string\",\n        \"make\": \"string\",\n        \"model\": \"string\",\n        \"serialNumber\": \"string\",\n        \"installDate\": \"1970-02-28T12:55:59.305Z\",\n        \"hoursAtInstall\": 97,\n        \"currentHours\": 2884,\n        \"currentHoursAt\": \"2019-04-18T17:49:22.367Z\",\n        \"capacity\": {\n          \"key_0\": true,\n          \"key_1\": 8679.212199058384\n        },\n        \"locationOnVessel\": \"string\",\n        \"warrantyExpires\": \"1992-08-02T11:47:20.250Z\",\n        \"photos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"notes\": \"string\",\n        \"equipmentModelId\": \"c1412e08-e4d3-15b8-82f5-85bb85bcd8e1\",\n        \"equipmentModel\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"modelName\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualUrl\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualContentHash\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualDiscoveryStatus\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manualDiscoverySource\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"maintenanceSchedule\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"manufacturer\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"maintenanceKits\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"hoursStatus\": [\n          {\n            \"key_0\": 5440.157849807292,\n            \"key_1\": \"string\",\n            \"key_2\": 5925\n          },\n          {\n            \"key_0\": 8642.501374706626,\n            \"key_1\": 8376.097085420042\n          }\n        ],\n        \"archivedAt\": \"1987-04-11T17:29:41.719Z\",\n        \"createdAt\": \"1986-05-08T13:25:04.646Z\",\n        \"updatedAt\": \"1974-01-09T23:13:53.133Z\"\n      }\n    ],\n    \"maintenanceEvents\": [\n      {\n        \"id\": \"88d1a8cc-329f-6ca7-cc87-f6a4815189c6\",\n        \"vesselId\": \"d44c1c3b-8f22-ccb4-e027-13fe59701395\",\n        \"equipmentId\": \"306b0dbf-03e2-31b2-256e-6a723f25ed0b\",\n        \"vesselSystemId\": \"c5ad2a4a-6858-15a5-fce3-73c2f97d982c\",\n        \"scope\": \"string\",\n        \"eventType\": \"string\",\n        \"status\": \"string\",\n        \"priority\": \"string\",\n        \"scheduledDate\": \"1989-08-07T09:05:37.407Z\",\n        \"completedDate\": \"1999-01-24T12:05:37.509Z\",\n        \"description\": \"string\",\n        \"performedBy\": \"string\",\n        \"serviceProviderId\": \"52a5b802-b66c-26b2-9da8-aea4275190f3\",\n        \"serviceProvider\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"businessName\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"phone\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"partsUsed\": [\n          {\n            \"inventoryItemId\": \"6d5bec41-526b-13d0-b436-0710fd052ddc\",\n            \"quantity\": 586.3206647336483\n          },\n          {\n            \"inventoryItemId\": \"dbb9d260-4141-2d27-a8eb-8e7f624daab2\",\n            \"quantity\": 6556.8088460713625\n          }\n        ],\n        \"laborHours\": 6970.599130727351,\n        \"laborCost\": \"string\",\n        \"partsCost\": \"string\",\n        \"totalCost\": \"string\",\n        \"currency\": \"string\",\n        \"hoursAtService\": 156,\n        \"beforePhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"afterPhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"invoiceAttachments\": [\n          \"string\",\n          \"string\"\n        ],\n        \"notes\": \"string\",\n        \"technicianSignature\": \"string\",\n        \"technicianName\": \"string\",\n        \"technicianSignedAt\": \"2013-05-28T04:50:30.404Z\",\n        \"requestedById\": \"93206300-1d28-3193-9ab4-7acf1166a5c2\",\n        \"responsibleUserId\": \"a750cbdd-4e7c-a059-9800-a26aece58440\",\n        \"linkedPermitId\": \"21d669e2-a6c2-b1ee-18d4-7c6e2027c43a\",\n        \"equipment\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"equipmentType\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"make\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"model\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"createdAt\": \"1981-05-13T23:32:36.182Z\",\n        \"updatedAt\": \"2024-04-01T13:44:17.125Z\"\n      },\n      {\n        \"id\": \"3ff0f0c1-29fd-4217-991f-a05a34452875\",\n        \"vesselId\": \"863a9557-11c1-43ee-5226-44b59688207d\",\n        \"equipmentId\": \"3d51b0c8-d095-a1bb-7b2c-3aabb08fbfa9\",\n        \"vesselSystemId\": \"b2abd854-acdb-4b9e-815d-e2dd0918e333\",\n        \"scope\": \"string\",\n        \"eventType\": \"string\",\n        \"status\": \"string\",\n        \"priority\": \"string\",\n        \"scheduledDate\": \"1954-11-08T21:01:04.474Z\",\n        \"completedDate\": \"1984-08-29T02:01:05.239Z\",\n        \"description\": \"string\",\n        \"performedBy\": \"string\",\n        \"serviceProviderId\": \"421e7932-8e95-756f-6dc8-8d6842cfdc44\",\n        \"serviceProvider\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"businessName\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"phone\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"partsUsed\": [\n          {\n            \"inventoryItemId\": \"85673aed-f819-cb31-1088-932c13aee28d\",\n            \"quantity\": 1390.845039859414\n          },\n          {\n            \"inventoryItemId\": \"149f43ef-a6e1-93fa-565f-051b75dcc953\",\n            \"quantity\": 7971.262459177524\n          }\n        ],\n        \"laborHours\": 8257.406172342598,\n        \"laborCost\": \"string\",\n        \"partsCost\": \"string\",\n        \"totalCost\": \"string\",\n        \"currency\": \"string\",\n        \"hoursAtService\": 3946,\n        \"beforePhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"afterPhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"invoiceAttachments\": [\n          \"string\",\n          \"string\"\n        ],\n        \"notes\": \"string\",\n        \"technicianSignature\": \"string\",\n        \"technicianName\": \"string\",\n        \"technicianSignedAt\": \"2008-09-30T10:17:05.201Z\",\n        \"requestedById\": \"8d957ab9-2c3d-1397-fe91-f22eaa0ff823\",\n        \"responsibleUserId\": \"aabac0e7-f074-5136-eec4-6ff38ab13c74\",\n        \"linkedPermitId\": \"9441b9ef-9639-890a-5855-f4ec2d54e3ea\",\n        \"equipment\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"equipmentType\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"make\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"model\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"createdAt\": \"1993-08-03T21:02:47.909Z\",\n        \"updatedAt\": \"1953-07-30T16:12:54.802Z\"\n      }\n    ],\n    \"documents\": [\n      {\n        \"id\": \"c5fbe3e5-a809-494c-f22c-0e26aef9df75\",\n        \"vesselId\": \"3d7b71c2-a63b-fb53-db20-8318afc7eb76\",\n        \"scope\": \"global\",\n        \"documentType\": \"string\",\n        \"category\": \"string\",\n        \"title\": \"string\",\n        \"fileUrl\": \"string\",\n        \"fileSize\": 5229,\n        \"mimeType\": \"string\",\n        \"equipmentId\": \"23b133de-82f1-fb1c-6b5e-e6168c49bf37\",\n        \"expirationDate\": \"1957-06-02T11:00:13.492Z\",\n        \"uploadedBy\": \"7db9d6a0-7a1f-8a1c-438a-94b27b495433\",\n        \"tags\": [\n          \"string\",\n          \"string\"\n        ],\n        \"status\": \"active\",\n        \"currentVersion\": 5754,\n        \"createdAt\": \"1953-11-08T20:47:19.998Z\",\n        \"updatedAt\": \"1953-04-06T07:35:38.144Z\"\n      },\n      {\n        \"id\": \"d467434c-dfd4-0765-3c30-93ce4580fb96\",\n        \"vesselId\": \"f9daa0de-d0ca-a675-f5fd-2678b911eabf\",\n        \"scope\": \"global\",\n        \"documentType\": \"string\",\n        \"category\": \"string\",\n        \"title\": \"string\",\n        \"fileUrl\": \"string\",\n        \"fileSize\": 3815,\n        \"mimeType\": \"string\",\n        \"equipmentId\": \"49ef92f1-6ab6-04df-5d90-5a00e0882177\",\n        \"expirationDate\": \"2015-05-22T14:57:24.836Z\",\n        \"uploadedBy\": \"7b0291c7-9679-acdb-3a7f-aaba0882f761\",\n        \"tags\": [\n          \"string\",\n          \"string\"\n        ],\n        \"status\": \"active\",\n        \"currentVersion\": 3885,\n        \"createdAt\": \"2025-08-07T03:31:20.032Z\",\n        \"updatedAt\": \"2015-06-14T15:15:12.508Z\"\n      }\n    ],\n    \"tripLogs\": [\n      {\n        \"id\": \"2f33cd83-5d9a-980e-b140-3ca1bdd0c4a5\",\n        \"vesselId\": \"8609de46-83d6-8021-f3ed-1d2b9bc9a6bb\",\n        \"tripName\": \"string\",\n        \"tripReference\": \"string\",\n        \"departureTime\": \"1970-12-17T21:59:57.536Z\",\n        \"departureLocation\": {\n          \"key_0\": 5883.291773498058\n        },\n        \"arrivalTime\": \"1989-07-27T23:20:18.019Z\",\n        \"arrivalLocation\": {\n          \"key_0\": 831.2911866232753,\n          \"key_1\": 8044\n        },\n        \"captain\": \"string\",\n        \"crew\": [\n          \"string\",\n          \"string\"\n        ],\n        \"purpose\": \"string\",\n        \"distanceNm\": 3743.595292326063,\n        \"fuelConsumed\": 5097.420460078865,\n        \"maxSpeed\": 8547.335101757199,\n        \"avgSpeed\": 9124.081556219608,\n        \"weatherSummary\": \"string\",\n        \"passengerCount\": 1926,\n        \"notes\": \"string\",\n        \"status\": \"cancelled\",\n        \"engineHoursStart\": {\n          \"key_0\": \"string\",\n          \"key_1\": true\n        },\n        \"engineHoursEnd\": {\n          \"key_0\": false,\n          \"key_1\": 1905,\n          \"key_2\": 8694,\n          \"key_3\": false\n        },\n        \"createdAt\": \"1962-04-10T16:31:55.957Z\",\n        \"updatedAt\": \"1980-03-02T11:24:32.194Z\"\n      },\n      {\n        \"id\": \"af082d64-19b6-b679-5f61-d9a5536c22a9\",\n        \"vesselId\": \"565aabff-b96a-1357-78a8-0fa34975f250\",\n        \"tripName\": \"string\",\n        \"tripReference\": \"string\",\n        \"departureTime\": \"1978-12-09T03:06:36.322Z\",\n        \"departureLocation\": {\n          \"key_0\": 9082.58963143453,\n          \"key_1\": 4577,\n          \"key_2\": 6011\n        },\n        \"arrivalTime\": \"1997-12-06T15:30:10.528Z\",\n        \"arrivalLocation\": {\n          \"key_0\": 1181.612852960825,\n          \"key_1\": 8362\n        },\n        \"captain\": \"string\",\n        \"crew\": [\n          \"string\",\n          \"string\"\n        ],\n        \"purpose\": \"string\",\n        \"distanceNm\": 6959.4658352434635,\n        \"fuelConsumed\": 6397.960679605603,\n        \"maxSpeed\": 5555.18486071378,\n        \"avgSpeed\": 4220.203259028494,\n        \"weatherSummary\": \"string\",\n        \"passengerCount\": 3652,\n        \"notes\": \"string\",\n        \"status\": \"in_progress\",\n        \"engineHoursStart\": {\n          \"key_0\": true\n        },\n        \"engineHoursEnd\": {\n          \"key_0\": 6844.917356502265\n        },\n        \"createdAt\": \"1971-03-22T16:31:48.818Z\",\n        \"updatedAt\": \"1956-04-28T16:09:31.669Z\"\n      }\n    ],\n    \"inventoryItems\": [\n      {\n        \"id\": \"280f6eba-f178-85ab-628f-651651d1ea26\",\n        \"vesselId\": \"3cce27be-faa2-0ac1-ad3e-849326081e8d\",\n        \"vesselSystemId\": \"169bdb27-1378-e0c5-523c-011274a66c93\",\n        \"vesselSystem\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"systemKey\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"name\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"itemType\": \"string\",\n        \"name\": \"string\",\n        \"category\": \"string\",\n        \"subcategory\": \"string\",\n        \"quantity\": 286,\n        \"unit\": \"string\",\n        \"location\": \"string\",\n        \"deckLevel\": \"string\",\n        \"section\": \"string\",\n        \"partNumber\": \"string\",\n        \"fitsEquipment\": [\n          \"string\",\n          \"string\"\n        ],\n        \"brand\": \"string\",\n        \"model\": \"string\",\n        \"costPerUnit\": \"string\",\n        \"currency\": \"string\",\n        \"supplier\": \"string\",\n        \"reorderThreshold\": 2579,\n        \"reorderQuantity\": 6736,\n        \"autoReorderEnabled\": false,\n        \"preferredSupplierId\": \"28202096-4f92-0b80-b64c-10863ca4b4ab\",\n        \"expirationDate\": \"2003-11-13T08:16:37.863Z\",\n        \"barcode\": \"string\",\n        \"photo\": \"string\",\n        \"notes\": \"string\",\n        \"sourceDescription\": \"string\",\n        \"catalogPartId\": \"1181b955-c6de-3178-8512-77d569c82d01\",\n        \"dataHealthFlags\": [\n          {\n            \"key_0\": true,\n            \"key_1\": 4991\n          },\n          {\n            \"key_0\": 5618\n          }\n        ],\n        \"hasOpenAutoDraft\": true,\n        \"vessel\": {\n          \"id\": \"1a93f004-442a-4a20-98a2-5261b1e797d3\",\n          \"vesselName\": \"string\"\n        },\n        \"createdAt\": \"1994-12-25T07:35:21.150Z\",\n        \"updatedAt\": \"1947-12-22T08:04:24.551Z\"\n      },\n      {\n        \"id\": \"82db8e0e-8402-c1e1-bb7a-617ff239c067\",\n        \"vesselId\": \"5cc9ab41-ce61-fd11-ef08-05d23c463c7c\",\n        \"vesselSystemId\": \"ffbe8995-9f65-5d63-2e43-a6f6f2a74d7a\",\n        \"vesselSystem\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"systemKey\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"name\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"itemType\": \"string\",\n        \"name\": \"string\",\n        \"category\": \"string\",\n        \"subcategory\": \"string\",\n        \"quantity\": 5857,\n        \"unit\": \"string\",\n        \"location\": \"string\",\n        \"deckLevel\": \"string\",\n        \"section\": \"string\",\n        \"partNumber\": \"string\",\n        \"fitsEquipment\": [\n          \"string\",\n          \"string\"\n        ],\n        \"brand\": \"string\",\n        \"model\": \"string\",\n        \"costPerUnit\": \"string\",\n        \"currency\": \"string\",\n        \"supplier\": \"string\",\n        \"reorderThreshold\": 8905,\n        \"reorderQuantity\": 2136,\n        \"autoReorderEnabled\": true,\n        \"preferredSupplierId\": \"ff5a1ef3-a9ff-bfd8-7981-bcc819a8162b\",\n        \"expirationDate\": \"1949-06-04T14:06:43.522Z\",\n        \"barcode\": \"string\",\n        \"photo\": \"string\",\n        \"notes\": \"string\",\n        \"sourceDescription\": \"string\",\n        \"catalogPartId\": \"f9506d74-8edf-9130-b424-a0aa966a715f\",\n        \"dataHealthFlags\": [\n          {\n            \"key_0\": true,\n            \"key_1\": 8823.567877989262\n          },\n          {\n            \"key_0\": false,\n            \"key_1\": 5348\n          }\n        ],\n        \"hasOpenAutoDraft\": false,\n        \"vessel\": {\n          \"id\": \"4f04122d-5d36-5917-8714-ce9d56acf88f\",\n          \"vesselName\": \"string\"\n        },\n        \"createdAt\": \"1994-04-01T23:23:34.678Z\",\n        \"updatedAt\": \"2001-09-22T19:21:35.477Z\"\n      }\n    ]\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "3f154eeb-7591-fce5-e27f-da29f157975b",
                  "name": "OK",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "5a0f2efd-bd53-54cf-cc3a-884961fa5107",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "64f35dd2-8bf8-dbca-6740-6c66823ebb60",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "7553aa92-dcac-b8f9-e694-d626ec294598",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "3dd49625-bcdc-a433-6e0a-c45854040630",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "bdd93c15-ede3-2a39-529a-d026f6ffaabe",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            },
            {
              "event": [],
              "id": "a505f7cb-3e8e-18df-0f73-ff25929f6f5d",
              "name": "List a vessel's team",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "description": {
                  "content": "Returns the vessel's crew roster (owner + team members), plus `teamTier` (plan\ncontext — member count, pending invites, seat limit, allowed roles) and\n`planContext` (downgrade-lock accounting). Team members beyond the caller's plan's\nseat limit are annotated `isLocked: true`; roles outside the plan's role allowlist are\nannotated `isRoleLocked: true`. Not cursor-paginated — crew rosters are bounded lists,\nnot growing logs (see `docs/api.md` \"Known gaps\").\n",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "name": "List a vessel's team",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "vessels",
                    ":id",
                    "team"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"members\": [\n      {\n        \"id\": \"4aea10df-aaab-387d-db69-475c94722b5a\",\n        \"email\": \"string\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"profilePhoto\": \"string\",\n        \"vesselRole\": \"string\",\n        \"permissions\": [\n          \"string\",\n          \"string\"\n        ],\n        \"addedAt\": \"2023-12-27T15:30:03.964Z\",\n        \"isOwner\": false,\n        \"isLocked\": true,\n        \"lockReason\": \"string\",\n        \"isRoleLocked\": true,\n        \"roleLockReason\": \"string\"\n      },\n      {\n        \"id\": \"1f699617-172c-daa2-0c0d-4ce93f338b20\",\n        \"email\": \"string\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"profilePhoto\": \"string\",\n        \"vesselRole\": \"string\",\n        \"permissions\": [\n          \"string\",\n          \"string\"\n        ],\n        \"addedAt\": \"1992-06-04T17:55:01.463Z\",\n        \"isOwner\": true,\n        \"isLocked\": true,\n        \"lockReason\": \"string\",\n        \"isRoleLocked\": false,\n        \"roleLockReason\": \"string\"\n      }\n    ],\n    \"teamTier\": {\n      \"tier\": \"string\",\n      \"memberCount\": 4410,\n      \"pendingInvites\": 3689,\n      \"limit\": 71,\n      \"allowedRoles\": [\n        \"string\",\n        \"string\"\n      ]\n    },\n    \"planContext\": {\n      \"planLimit\": 1888,\n      \"totalMembers\": 2563,\n      \"overlimit\": true\n    }\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "2703df00-8e85-b4a9-2a37-015afd3ba400",
                  "name": "OK",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id",
                        "team"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "d511503b-b4ad-fbfb-332b-bc96bc520d47",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id",
                        "team"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "baa3def2-d7ce-2daa-3184-dbffaf17b8d8",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id",
                        "team"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "076ae681-fa6b-55bf-f33e-a97b62c9bf64",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id",
                        "team"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "70b65c12-529b-1743-7b69-4702872e04a7",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id",
                        "team"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "6c67bda6-23af-4d54-5702-0064cef2bffb",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "vessels",
                        ":id",
                        "team"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            }
          ],
          "name": "{id}"
        }
      ],
      "name": "vessels"
    },
    {
      "event": [],
      "id": "f299d67f-2075-49ac-7e05-79dfc7c4e133",
      "item": [
        {
          "event": [],
          "id": "6ffe49da-be66-95a8-b9e4-684e8067cdf0",
          "name": "Create equipment",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"make\": \"<string>\",\n  \"model\": \"<string>\",\n  \"serialNumber\": \"<string>\",\n  \"installDate\": \"<dateTime>\",\n  \"hoursAtInstall\": \"<integer>\",\n  \"currentHours\": \"<integer>\",\n  \"capacity\": {\n    \"key_0\": 3029,\n    \"key_1\": 2033.7558747269213,\n    \"key_2\": 6559.8105429671705\n  },\n  \"locationOnVessel\": \"<string>\",\n  \"warrantyExpires\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
            },
            "description": {
              "content": "Registers a new piece of onboard equipment. Requires `equipmentType` and either\n`systemCategory` or `vesselSystemId` (the server resolves whichever one you omit from\nthe other when possible). Attempts an automatic catalog-model link on create and\nreturns any suggested manufacturer maintenance kits for the matched model.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "POST",
            "name": "Create equipment",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "equipment"
              ],
              "query": [],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"89ff729c-b697-32d5-afef-b6bdf5b4f614\",\n    \"vesselId\": \"c073cffa-34be-5d76-8d06-359b4500c58c\",\n    \"systemCategory\": \"string\",\n    \"vesselSystemId\": \"5a1b9f9c-bd75-36d3-b663-04c8d77d3cb7\",\n    \"vesselSystem\": {\n      \"id\": \"1eff74e8-1532-5d4a-61c6-4fb3b78d35f2\",\n      \"systemKey\": \"string\",\n      \"name\": \"string\"\n    },\n    \"equipmentType\": \"string\",\n    \"make\": \"string\",\n    \"model\": \"string\",\n    \"serialNumber\": \"string\",\n    \"installDate\": \"1975-09-08T11:35:41.592Z\",\n    \"hoursAtInstall\": 9612,\n    \"currentHours\": 3622,\n    \"currentHoursAt\": \"1961-09-29T05:00:14.644Z\",\n    \"capacity\": {\n      \"key_0\": false,\n      \"key_1\": 7227\n    },\n    \"locationOnVessel\": \"string\",\n    \"warrantyExpires\": \"2013-05-31T12:49:50.737Z\",\n    \"photos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"notes\": \"string\",\n    \"equipmentModelId\": \"6cb3fbbd-44e1-1e06-dac4-857867615f75\",\n    \"equipmentModel\": {\n      \"id\": \"844ac5ed-edde-12f0-7104-545744be27d3\",\n      \"modelName\": \"string\",\n      \"manualUrl\": \"string\",\n      \"manualContentHash\": \"string\",\n      \"manualDiscoveryStatus\": \"string\",\n      \"manualDiscoverySource\": \"string\",\n      \"maintenanceSchedule\": {\n        \"key_0\": 719.6050882339478,\n        \"key_1\": 4361.745205242187,\n        \"key_2\": \"string\"\n      },\n      \"manufacturer\": {\n        \"name\": \"string\"\n      },\n      \"maintenanceKits\": [\n        {\n          \"id\": \"016d4d8b-7bd7-1537-8257-6203a98791ed\",\n          \"name\": \"string\",\n          \"intervalHours\": 9084\n        },\n        {\n          \"id\": \"88f52eb9-71cc-3ba2-ba8f-998cc3d457a7\",\n          \"name\": \"string\",\n          \"intervalHours\": 7851\n        }\n      ]\n    },\n    \"hoursStatus\": [\n      {\n        \"key_0\": 3829.131976235658,\n        \"key_1\": 4340\n      },\n      {\n        \"key_0\": false\n      }\n    ],\n    \"archivedAt\": \"2001-01-06T10:21:38.787Z\",\n    \"createdAt\": \"2003-12-13T19:48:16.771Z\",\n    \"updatedAt\": \"1956-05-18T14:51:51.603Z\",\n    \"suggestedKits\": [\n      {\n        \"key_0\": \"string\"\n      },\n      {\n        \"key_0\": \"string\"\n      }\n    ]\n  }\n}",
              "code": 201,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "06906e41-48df-9595-2ed5-80f34d86fb13",
              "name": "Created",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"make\": \"<string>\",\n  \"model\": \"<string>\",\n  \"serialNumber\": \"<string>\",\n  \"installDate\": \"<dateTime>\",\n  \"hoursAtInstall\": \"<integer>\",\n  \"currentHours\": \"<integer>\",\n  \"capacity\": {\n    \"key_0\": 986,\n    \"key_1\": \"string\",\n    \"key_2\": \"string\"\n  },\n  \"locationOnVessel\": \"<string>\",\n  \"warrantyExpires\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Created"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "40eb9283-ab10-4bb9-7442-aee85c647b08",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"make\": \"<string>\",\n  \"model\": \"<string>\",\n  \"serialNumber\": \"<string>\",\n  \"installDate\": \"<dateTime>\",\n  \"hoursAtInstall\": \"<integer>\",\n  \"currentHours\": \"<integer>\",\n  \"capacity\": {\n    \"key_0\": 986,\n    \"key_1\": \"string\",\n    \"key_2\": \"string\"\n  },\n  \"locationOnVessel\": \"<string>\",\n  \"warrantyExpires\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "cbd2cb77-8284-16f1-6c54-05f0d64114f8",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"make\": \"<string>\",\n  \"model\": \"<string>\",\n  \"serialNumber\": \"<string>\",\n  \"installDate\": \"<dateTime>\",\n  \"hoursAtInstall\": \"<integer>\",\n  \"currentHours\": \"<integer>\",\n  \"capacity\": {\n    \"key_0\": 986,\n    \"key_1\": \"string\",\n    \"key_2\": \"string\"\n  },\n  \"locationOnVessel\": \"<string>\",\n  \"warrantyExpires\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "7a594916-261a-1ead-d01f-3b2ae6d05067",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"make\": \"<string>\",\n  \"model\": \"<string>\",\n  \"serialNumber\": \"<string>\",\n  \"installDate\": \"<dateTime>\",\n  \"hoursAtInstall\": \"<integer>\",\n  \"currentHours\": \"<integer>\",\n  \"capacity\": {\n    \"key_0\": 986,\n    \"key_1\": \"string\",\n    \"key_2\": \"string\"\n  },\n  \"locationOnVessel\": \"<string>\",\n  \"warrantyExpires\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 409,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "67c70c8a-48a2-35b7-6b61-574b5015d9d6",
              "name": "The supplied `Idempotency-Key` was already used with a different request body.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"make\": \"<string>\",\n  \"model\": \"<string>\",\n  \"serialNumber\": \"<string>\",\n  \"installDate\": \"<dateTime>\",\n  \"hoursAtInstall\": \"<integer>\",\n  \"currentHours\": \"<integer>\",\n  \"capacity\": {\n    \"key_0\": 986,\n    \"key_1\": \"string\",\n    \"key_2\": \"string\"\n  },\n  \"locationOnVessel\": \"<string>\",\n  \"warrantyExpires\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Conflict"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "2e8d0f01-4769-ca51-c39a-575908592703",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"make\": \"<string>\",\n  \"model\": \"<string>\",\n  \"serialNumber\": \"<string>\",\n  \"installDate\": \"<dateTime>\",\n  \"hoursAtInstall\": \"<integer>\",\n  \"currentHours\": \"<integer>\",\n  \"capacity\": {\n    \"key_0\": 986,\n    \"key_1\": \"string\",\n    \"key_2\": \"string\"\n  },\n  \"locationOnVessel\": \"<string>\",\n  \"warrantyExpires\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "6d995d0a-8b61-9888-04d3-77786340820d",
          "name": "List a vessel's equipment",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Returns non-archived equipment for a vessel, each annotated with `hoursStatus`\n(hours-based service-due computation). Supports opaque cursor pagination via\n`?cursor=` — omit `cursor` entirely for the first page, then pass back the `cursor`\nvalue from `pagination.cursor` for subsequent pages until `pagination.hasMore` is\n`false`. Default sort without `?cursor=` is by `systemCategory`; the cursor-paginated\npath always sorts `(createdAt DESC, id DESC)`.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's equipment",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "equipment",
                "vessel",
                ":vesselId"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"e4d8b6dc-1221-8413-f102-2b29edae5859\",\n      \"vesselId\": \"420f6e95-2974-9194-54a5-8b7b9a4bf2e8\",\n      \"systemCategory\": \"string\",\n      \"vesselSystemId\": \"42eb2280-367b-8c4b-a96c-2907698c7108\",\n      \"vesselSystem\": {\n        \"id\": \"1838bbfd-47ed-73d9-54a3-1b0389c120e9\",\n        \"systemKey\": \"string\",\n        \"name\": \"string\"\n      },\n      \"equipmentType\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\",\n      \"serialNumber\": \"string\",\n      \"installDate\": \"1980-03-14T19:13:13.462Z\",\n      \"hoursAtInstall\": 927,\n      \"currentHours\": 3829,\n      \"currentHoursAt\": \"1970-02-08T20:08:07.371Z\",\n      \"capacity\": {\n        \"key_0\": \"string\",\n        \"key_1\": 3157,\n        \"key_2\": 7276.956618297845,\n        \"key_3\": false,\n        \"key_4\": false\n      },\n      \"locationOnVessel\": \"string\",\n      \"warrantyExpires\": \"1964-10-27T03:51:15.782Z\",\n      \"photos\": [\n        \"string\",\n        \"string\"\n      ],\n      \"notes\": \"string\",\n      \"equipmentModelId\": \"73313081-5f55-4eda-19cc-3167fb902484\",\n      \"equipmentModel\": {\n        \"id\": \"6d4ad4aa-3131-bf3e-a369-e9984daf8285\",\n        \"modelName\": \"string\",\n        \"manualUrl\": \"string\",\n        \"manualContentHash\": \"string\",\n        \"manualDiscoveryStatus\": \"string\",\n        \"manualDiscoverySource\": \"string\",\n        \"maintenanceSchedule\": {\n          \"key_0\": 1874\n        },\n        \"manufacturer\": {\n          \"name\": \"string\"\n        },\n        \"maintenanceKits\": [\n          {\n            \"id\": \"b9c46bb4-0afd-1434-a09f-d3c105dbe17e\",\n            \"name\": \"string\",\n            \"intervalHours\": 1064\n          },\n          {\n            \"id\": \"3e9418cb-0205-d881-756d-62ae1dd19d21\",\n            \"name\": \"string\",\n            \"intervalHours\": 9107\n          }\n        ]\n      },\n      \"hoursStatus\": [\n        {\n          \"key_0\": 4072.651779279113,\n          \"key_1\": false\n        },\n        {\n          \"key_0\": true,\n          \"key_1\": 7741.092739161104\n        }\n      ],\n      \"archivedAt\": \"1953-02-27T21:51:30.827Z\",\n      \"createdAt\": \"2019-01-11T05:45:17.470Z\",\n      \"updatedAt\": \"1949-03-17T17:26:59.068Z\"\n    },\n    {\n      \"id\": \"6f50b6b6-14a1-45aa-e87f-11cbd3831dc9\",\n      \"vesselId\": \"775c0fee-aeee-c4fa-5c8b-2cda3dedfeed\",\n      \"systemCategory\": \"string\",\n      \"vesselSystemId\": \"ea2dc0e5-b49a-e7d3-70ee-91606b6e120d\",\n      \"vesselSystem\": {\n        \"id\": \"02b7c89f-2db8-8061-6b6a-250ce7146cb1\",\n        \"systemKey\": \"string\",\n        \"name\": \"string\"\n      },\n      \"equipmentType\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\",\n      \"serialNumber\": \"string\",\n      \"installDate\": \"2006-11-25T04:45:48.108Z\",\n      \"hoursAtInstall\": 4833,\n      \"currentHours\": 2025,\n      \"currentHoursAt\": \"2004-05-08T10:08:26.883Z\",\n      \"capacity\": {\n        \"key_0\": \"string\",\n        \"key_1\": \"string\"\n      },\n      \"locationOnVessel\": \"string\",\n      \"warrantyExpires\": \"1995-10-10T08:36:40.370Z\",\n      \"photos\": [\n        \"string\",\n        \"string\"\n      ],\n      \"notes\": \"string\",\n      \"equipmentModelId\": \"2305818a-386c-6bad-8d0b-3d908256c830\",\n      \"equipmentModel\": {\n        \"id\": \"797e9b54-bc03-84a0-4053-f31c1eb9d0d3\",\n        \"modelName\": \"string\",\n        \"manualUrl\": \"string\",\n        \"manualContentHash\": \"string\",\n        \"manualDiscoveryStatus\": \"string\",\n        \"manualDiscoverySource\": \"string\",\n        \"maintenanceSchedule\": {\n          \"key_0\": true,\n          \"key_1\": true\n        },\n        \"manufacturer\": {\n          \"name\": \"string\"\n        },\n        \"maintenanceKits\": [\n          {\n            \"id\": \"ad3d2a39-1281-226f-1ace-8c95409a0b66\",\n            \"name\": \"string\",\n            \"intervalHours\": 5247\n          },\n          {\n            \"id\": \"61b2a6d7-8fb3-c17c-0f37-9cf3bd171106\",\n            \"name\": \"string\",\n            \"intervalHours\": 9190\n          }\n        ]\n      },\n      \"hoursStatus\": [\n        {\n          \"key_0\": \"string\",\n          \"key_1\": 1448\n        },\n        {\n          \"key_0\": 8425.803843419999\n        }\n      ],\n      \"archivedAt\": \"1984-04-12T04:50:49.587Z\",\n      \"createdAt\": \"1992-03-30T19:45:07.322Z\",\n      \"updatedAt\": \"1950-08-22T10:00:51.522Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 4359,\n    \"hasMore\": true,\n    \"total\": 3005,\n    \"cursor\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "48b0f345-5274-ad7b-0b3e-1d0d7976de2f",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f46e6b1f-cfcb-489c-a4bc-5ac33ab94ae8",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "39d9db15-5b7a-3ac0-2cc0-34531a571008",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "2b682ba4-e64e-15e2-c4da-b13a2c50f089",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "c6d2bc07-06eb-2cf7-889c-02b04f952290",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "16ecaf47-5cf8-ea1f-4327-37b8a74fc4fa",
          "item": [
            {
              "event": [],
              "id": "a3093c95-af40-4727-ef8c-08f28736cbf3",
              "name": "Get equipment",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "description": {
                  "content": "Returns a single equipment record with its 10 most recent maintenance events, documents, and catalog model info.",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "name": "Get equipment",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"165fa60f-8f0d-4715-a134-03a33b2352db\",\n    \"vesselId\": \"21c50e51-c8c8-0d4d-0b5b-79e7a79b8229\",\n    \"systemCategory\": \"string\",\n    \"vesselSystemId\": \"662b9317-3098-1f7f-e0f5-951ed01adee6\",\n    \"vesselSystem\": {\n      \"id\": \"3ca2e1d3-0a11-ca90-aeb2-8c6e42ab5721\",\n      \"systemKey\": \"string\",\n      \"name\": \"string\"\n    },\n    \"equipmentType\": \"string\",\n    \"make\": \"string\",\n    \"model\": \"string\",\n    \"serialNumber\": \"string\",\n    \"installDate\": \"1993-12-25T06:50:00.412Z\",\n    \"hoursAtInstall\": 8592,\n    \"currentHours\": 8520,\n    \"currentHoursAt\": \"2014-05-11T06:05:56.978Z\",\n    \"capacity\": {\n      \"key_0\": false,\n      \"key_1\": \"string\",\n      \"key_2\": 27,\n      \"key_3\": false\n    },\n    \"locationOnVessel\": \"string\",\n    \"warrantyExpires\": \"1951-11-11T16:04:04.316Z\",\n    \"photos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"notes\": \"string\",\n    \"equipmentModelId\": \"32f791bd-df39-e843-e5f4-19f0792f84f1\",\n    \"equipmentModel\": {\n      \"id\": \"6152c061-1651-1861-9850-b980561610b7\",\n      \"modelName\": \"string\",\n      \"manualUrl\": \"string\",\n      \"manualContentHash\": \"string\",\n      \"manualDiscoveryStatus\": \"string\",\n      \"manualDiscoverySource\": \"string\",\n      \"maintenanceSchedule\": {\n        \"key_0\": false\n      },\n      \"manufacturer\": {\n        \"name\": \"string\"\n      },\n      \"maintenanceKits\": [\n        {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"name\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"intervalHours\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"name\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"intervalHours\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        }\n      ]\n    },\n    \"hoursStatus\": [\n      {\n        \"key_0\": 2324.610792566091,\n        \"key_1\": false,\n        \"key_2\": \"string\"\n      },\n      {\n        \"key_0\": \"string\",\n        \"key_1\": 5810,\n        \"key_2\": false\n      }\n    ],\n    \"archivedAt\": \"1992-08-06T02:23:17.914Z\",\n    \"createdAt\": \"2014-05-14T01:48:00.787Z\",\n    \"updatedAt\": \"1996-10-29T17:45:54.976Z\",\n    \"maintenanceEvents\": [\n      {\n        \"id\": \"51d85f38-e2f2-f387-19e3-0cb3a9c48818\",\n        \"vesselId\": \"e0c92629-e04a-2579-0d2e-574b1b34593a\",\n        \"equipmentId\": \"543cd37b-f909-1070-8903-87506c1b118b\",\n        \"vesselSystemId\": \"6a08b9b0-1615-9300-09ec-211a0302839f\",\n        \"scope\": \"string\",\n        \"eventType\": \"string\",\n        \"status\": \"string\",\n        \"priority\": \"string\",\n        \"scheduledDate\": \"1981-01-25T17:39:12.513Z\",\n        \"completedDate\": \"2020-09-05T20:56:47.162Z\",\n        \"description\": \"string\",\n        \"performedBy\": \"string\",\n        \"serviceProviderId\": \"0cdb0bb4-2632-5c44-6e82-3e28531da216\",\n        \"serviceProvider\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"businessName\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"phone\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"partsUsed\": [\n          {\n            \"inventoryItemId\": \"e33a1e29-2411-9399-c5d6-c2c538ab0c5b\",\n            \"quantity\": 1594.9407080188394\n          },\n          {\n            \"inventoryItemId\": \"8cdaa827-0a83-7a87-5e30-28b52924a0b7\",\n            \"quantity\": 1407.3462365195155\n          }\n        ],\n        \"laborHours\": 6056.892205961049,\n        \"laborCost\": \"string\",\n        \"partsCost\": \"string\",\n        \"totalCost\": \"string\",\n        \"currency\": \"string\",\n        \"hoursAtService\": 3420,\n        \"beforePhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"afterPhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"invoiceAttachments\": [\n          \"string\",\n          \"string\"\n        ],\n        \"notes\": \"string\",\n        \"technicianSignature\": \"string\",\n        \"technicianName\": \"string\",\n        \"technicianSignedAt\": \"2004-07-26T04:03:59.119Z\",\n        \"requestedById\": \"f7917c60-09c0-bc2d-ca13-a6b50bb15a08\",\n        \"responsibleUserId\": \"ab9e6fb3-e3f2-d5e2-68f4-b39a0e33fc4c\",\n        \"linkedPermitId\": \"9aead47b-deed-7729-cdde-1433effb2e54\",\n        \"equipment\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"equipmentType\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"make\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"model\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"createdAt\": \"2021-05-21T05:07:41.583Z\",\n        \"updatedAt\": \"1951-08-23T17:55:18.024Z\"\n      },\n      {\n        \"id\": \"15af1173-3f6c-77f9-056a-11b34601fde3\",\n        \"vesselId\": \"a203e49c-bc76-c2ef-484d-c542654de16d\",\n        \"equipmentId\": \"14ce276e-2504-72c0-0dd5-866355780b9e\",\n        \"vesselSystemId\": \"a001d530-6cb4-4c74-36d2-83061c51fcd7\",\n        \"scope\": \"string\",\n        \"eventType\": \"string\",\n        \"status\": \"string\",\n        \"priority\": \"string\",\n        \"scheduledDate\": \"2024-06-22T01:26:42.333Z\",\n        \"completedDate\": \"1954-10-29T00:54:55.225Z\",\n        \"description\": \"string\",\n        \"performedBy\": \"string\",\n        \"serviceProviderId\": \"35aec00f-895c-a8a5-6c93-04d73bceb067\",\n        \"serviceProvider\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"businessName\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"phone\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"partsUsed\": [\n          {\n            \"inventoryItemId\": \"8a7bad06-67e9-81d0-462e-9991fb08eff8\",\n            \"quantity\": 4820.308140479028\n          },\n          {\n            \"inventoryItemId\": \"ebb1c34d-c8c3-2b9b-816f-2b1e9f7953f2\",\n            \"quantity\": 891.039774287492\n          }\n        ],\n        \"laborHours\": 3936.391032766551,\n        \"laborCost\": \"string\",\n        \"partsCost\": \"string\",\n        \"totalCost\": \"string\",\n        \"currency\": \"string\",\n        \"hoursAtService\": 9006,\n        \"beforePhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"afterPhotos\": [\n          \"string\",\n          \"string\"\n        ],\n        \"invoiceAttachments\": [\n          \"string\",\n          \"string\"\n        ],\n        \"notes\": \"string\",\n        \"technicianSignature\": \"string\",\n        \"technicianName\": \"string\",\n        \"technicianSignedAt\": \"2000-08-11T02:24:07.493Z\",\n        \"requestedById\": \"8c3fa3c9-cae7-0efc-0843-356bacb8996a\",\n        \"responsibleUserId\": \"f91da51f-00be-55a1-10d6-4044880a7907\",\n        \"linkedPermitId\": \"193d834c-e257-1d2f-1f48-c75ffafb6e17\",\n        \"equipment\": {\n          \"id\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"equipmentType\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"make\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          },\n          \"model\": {\n            \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n          }\n        },\n        \"createdAt\": \"1986-06-16T23:58:41.271Z\",\n        \"updatedAt\": \"1972-06-24T13:46:45.679Z\"\n      }\n    ],\n    \"documents\": [\n      {\n        \"id\": \"5c3734c6-d331-31e8-84ac-c179e4763227\",\n        \"vesselId\": \"905d60ac-e8ba-5cea-3110-bd0edfbb2844\",\n        \"scope\": \"vessel\",\n        \"documentType\": \"string\",\n        \"category\": \"string\",\n        \"title\": \"string\",\n        \"fileUrl\": \"string\",\n        \"fileSize\": 5716,\n        \"mimeType\": \"string\",\n        \"equipmentId\": \"031d8697-ffb6-8b4d-740a-fab1a675b8af\",\n        \"expirationDate\": \"1974-05-13T05:49:18.683Z\",\n        \"uploadedBy\": \"bba78a2f-90e1-4c8d-01fb-1514c1a67926\",\n        \"tags\": [\n          \"string\",\n          \"string\"\n        ],\n        \"status\": \"active\",\n        \"currentVersion\": 3302,\n        \"createdAt\": \"1952-06-23T21:29:37.060Z\",\n        \"updatedAt\": \"1958-04-21T02:50:31.954Z\"\n      },\n      {\n        \"id\": \"d5fa371b-c4d5-9e9f-1976-59088f5eaca6\",\n        \"vesselId\": \"9c869364-02b8-1197-034a-e33038240ed0\",\n        \"scope\": \"global\",\n        \"documentType\": \"string\",\n        \"category\": \"string\",\n        \"title\": \"string\",\n        \"fileUrl\": \"string\",\n        \"fileSize\": 2739,\n        \"mimeType\": \"string\",\n        \"equipmentId\": \"35b49d93-5045-29f8-04fe-9a5d2583ac6a\",\n        \"expirationDate\": \"2014-12-16T09:59:31.674Z\",\n        \"uploadedBy\": \"24f071db-63b5-3245-44c5-f693ff732721\",\n        \"tags\": [\n          \"string\",\n          \"string\"\n        ],\n        \"status\": \"active\",\n        \"currentVersion\": 5703,\n        \"createdAt\": \"1985-05-28T10:00:52.104Z\",\n        \"updatedAt\": \"2010-09-24T13:52:12.679Z\"\n      }\n    ]\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "afe41f8b-3a95-f1df-4cbf-7a411c543eba",
                  "name": "OK",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "814c7227-97e8-0121-5bbc-caa7c92e1427",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "eb10a572-0611-0b9d-7515-667c9cff4195",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "eb1cfcc5-ea16-c737-21dd-a0ca1243a680",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "9279985c-8f05-9276-2152-e2cfc483e1a7",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "056213a0-830b-cbd1-064f-5f8418e1d9d6",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            },
            {
              "event": [],
              "id": "f1ac5dad-a138-a89c-af4a-475187a4ecaf",
              "name": "Update equipment",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 4602.496409788728,\n    \"key_1\": 7768,\n    \"key_2\": 2864\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                },
                "description": {
                  "content": "Partial update. Any writable `Equipment` field may be included; only the fields\npresent in the body are changed. Setting `currentHours` server-stamps\n`currentHoursAt` and re-evaluates any hours-based maintenance schedules, returning\n`dueSchedules` for anything that crossed into due/due-soon as a result.\n",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "PATCH",
                "name": "Update equipment",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "equipment",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"00baf15c-8777-8eb2-35fb-f2eeb0bcb363\",\n    \"vesselId\": \"a4ee6af1-d219-778b-c5b0-feede45fad19\",\n    \"systemCategory\": \"string\",\n    \"vesselSystemId\": \"add2d077-02b7-7e99-3792-3b14415f7d1f\",\n    \"vesselSystem\": {\n      \"id\": \"f9fb5c36-f425-bda0-b059-da33ff008673\",\n      \"systemKey\": \"string\",\n      \"name\": \"string\"\n    },\n    \"equipmentType\": \"string\",\n    \"make\": \"string\",\n    \"model\": \"string\",\n    \"serialNumber\": \"string\",\n    \"installDate\": \"1957-01-17T01:31:19.767Z\",\n    \"hoursAtInstall\": 6279,\n    \"currentHours\": 8426,\n    \"currentHoursAt\": \"2025-12-10T22:16:39.788Z\",\n    \"capacity\": {\n      \"key_0\": true,\n      \"key_1\": true,\n      \"key_2\": 3594.3275690078735\n    },\n    \"locationOnVessel\": \"string\",\n    \"warrantyExpires\": \"1977-07-10T06:37:16.847Z\",\n    \"photos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"notes\": \"string\",\n    \"equipmentModelId\": \"b9ab8f2b-7684-d0be-7dc8-f4a733d762a7\",\n    \"equipmentModel\": {\n      \"id\": \"3e811ae5-5f1c-2813-5489-0a894f742330\",\n      \"modelName\": \"string\",\n      \"manualUrl\": \"string\",\n      \"manualContentHash\": \"string\",\n      \"manualDiscoveryStatus\": \"string\",\n      \"manualDiscoverySource\": \"string\",\n      \"maintenanceSchedule\": {\n        \"key_0\": \"string\"\n      },\n      \"manufacturer\": {\n        \"name\": \"string\"\n      },\n      \"maintenanceKits\": [\n        {\n          \"id\": \"092b948b-15c4-3ef7-6ec5-c01b1705b29b\",\n          \"name\": \"string\",\n          \"intervalHours\": 8204\n        },\n        {\n          \"id\": \"f7436545-0b34-ed64-99f1-7e5c03780fab\",\n          \"name\": \"string\",\n          \"intervalHours\": 4225\n        }\n      ]\n    },\n    \"hoursStatus\": [\n      {\n        \"key_0\": 5124.114367645234\n      },\n      {\n        \"key_0\": 395,\n        \"key_1\": \"string\"\n      }\n    ],\n    \"archivedAt\": \"1974-09-26T21:07:07.711Z\",\n    \"createdAt\": \"1955-03-01T16:44:55.891Z\",\n    \"updatedAt\": \"1964-12-07T16:19:54.139Z\",\n    \"dueSchedules\": [\n      {\n        \"key_0\": 8333,\n        \"key_1\": 193\n      },\n      {\n        \"key_0\": \"string\",\n        \"key_1\": 999.6014321222901,\n        \"key_2\": true,\n        \"key_3\": true\n      }\n    ]\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "aa89a305-3357-75ac-2268-b19dea21e91a",
                  "name": "OK",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 5856.618178077042,\n    \"key_1\": 9506.602170877159\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "df622980-098e-2cdc-82fe-72e6b15d7cc4",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 5856.618178077042,\n    \"key_1\": 9506.602170877159\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "36f8dbbc-4ad2-7349-f12f-f4d216768a10",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 5856.618178077042,\n    \"key_1\": 9506.602170877159\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "46526712-18c8-9040-1dee-65e81dc15e97",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 5856.618178077042,\n    \"key_1\": 9506.602170877159\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "f1288d80-7dd5-9d10-3060-fc7c23831068",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 5856.618178077042,\n    \"key_1\": 9506.602170877159\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 409,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "2d7cc1c6-9a43-7a48-8727-0c39368d4d5d",
                  "name": "The supplied `Idempotency-Key` was already used with a different request body.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 5856.618178077042,\n    \"key_1\": 9506.602170877159\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Conflict"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "74a2a4cf-71c8-158f-b64a-376033b29c26",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"systemCategory\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"equipmentType\": \"<string>\",\n  \"make\": \"<string,null>\",\n  \"model\": \"<string,null>\",\n  \"serialNumber\": \"<string,null>\",\n  \"installDate\": \"<string,null-date-time>\",\n  \"hoursAtInstall\": \"<integer,null>\",\n  \"currentHours\": \"<integer,null>\",\n  \"capacity\": {\n    \"key_0\": 5856.618178077042,\n    \"key_1\": 9506.602170877159\n  },\n  \"locationOnVessel\": \"<string,null>\",\n  \"warrantyExpires\": \"<string,null-date-time>\",\n  \"notes\": \"<string,null>\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "equipment",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            }
          ],
          "name": "{id}"
        }
      ],
      "name": "equipment"
    },
    {
      "event": [],
      "id": "1bd25057-3913-41f9-2975-4de3e841f1a7",
      "item": [
        {
          "event": [],
          "id": "ae0c0d55-818c-a78b-a9c0-0fa25f9c6b56",
          "name": "Create a maintenance event",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"eventType\": \"<string>\",\n  \"scheduledDate\": \"<dateTime>\",\n  \"description\": \"<string>\",\n  \"scope\": \"equipment\",\n  \"equipmentId\": \"<uuid>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"priority\": \"<string>\",\n  \"serviceProviderId\": \"<uuid>\",\n  \"performedBy\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"responsibleUserId\": \"<uuid>\",\n  \"laborHours\": \"<number>\",\n  \"laborCost\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"workflowId\": \"<uuid>\"\n}"
            },
            "description": {
              "content": "Requires `vesselId`, `scheduledDate`, `description`, and `eventType`. `scope`\ndefaults to `equipment` and determines which FK is required: `equipment` requires\n`equipmentId`, `system` requires `vesselSystemId`, `vessel` requires neither. On\nISM-onboarded vessels, `responsibleUserId` is also required. Supports the\n`Idempotency-Key` request header (see `IdempotencyKeyHeader` parameter) — a repeat\nPOST with the same key and the same request body within 24h returns the original\nresponse unchanged with `Idempotent-Replayed: true`; the same key with a *different*\nbody returns `409 CONFLICT`.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                "disabled": false,
                "key": "Idempotency-Key",
                "value": "<string>"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "POST",
            "name": "Create a maintenance event",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "maintenance"
              ],
              "query": [],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"22464a8f-b7ff-a3e5-7d0f-7c4da4e07b64\",\n    \"vesselId\": \"a3252b38-778f-530c-ea05-978d43853ba1\",\n    \"equipmentId\": \"cbcd6377-10f8-1767-7262-14152446fb15\",\n    \"vesselSystemId\": \"db9f931e-a0f6-d197-81a8-4f2b3902fc28\",\n    \"scope\": \"string\",\n    \"eventType\": \"string\",\n    \"status\": \"string\",\n    \"priority\": \"string\",\n    \"scheduledDate\": \"2006-01-26T09:20:32.652Z\",\n    \"completedDate\": \"2018-05-23T05:56:07.025Z\",\n    \"description\": \"string\",\n    \"performedBy\": \"string\",\n    \"serviceProviderId\": \"d35acfc1-abff-8178-ced9-8e6248c0b96d\",\n    \"serviceProvider\": {\n      \"id\": \"87a549bd-03cf-e156-ffb2-41fcc0bf7a81\",\n      \"businessName\": \"string\",\n      \"phone\": \"string\"\n    },\n    \"partsUsed\": [\n      {\n        \"inventoryItemId\": \"4ba4b9a4-18e7-d80c-55d0-69c5bf4e858e\",\n        \"quantity\": 8938.50898835808\n      },\n      {\n        \"inventoryItemId\": \"fa137a86-6857-581a-88e9-424ca39cc54b\",\n        \"quantity\": 382.2220931760967\n      }\n    ],\n    \"laborHours\": 5074.693865608424,\n    \"laborCost\": \"string\",\n    \"partsCost\": \"string\",\n    \"totalCost\": \"string\",\n    \"currency\": \"string\",\n    \"hoursAtService\": 5291,\n    \"beforePhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"afterPhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"invoiceAttachments\": [\n      \"string\",\n      \"string\"\n    ],\n    \"notes\": \"string\",\n    \"technicianSignature\": \"string\",\n    \"technicianName\": \"string\",\n    \"technicianSignedAt\": \"1953-05-10T01:54:32.895Z\",\n    \"requestedById\": \"d84f8048-4ff5-a7a9-db80-0263e8948db9\",\n    \"responsibleUserId\": \"56f7e826-f59c-e908-9766-23e67549fee2\",\n    \"linkedPermitId\": \"90ca8054-24c6-8766-473a-46e004267385\",\n    \"equipment\": {\n      \"id\": \"5fa2c3d2-74eb-3969-ccc1-c976bf619b22\",\n      \"equipmentType\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\"\n    },\n    \"createdAt\": \"1989-06-13T19:10:05.906Z\",\n    \"updatedAt\": \"1955-08-29T15:58:14.809Z\"\n  }\n}",
              "code": 201,
              "cookie": [],
              "header": [
                {
                  "description": "Present and `\"true\"` only when this response was served from the 24h idempotency cache rather than freshly executed.",
                  "disabled": false,
                  "key": "Idempotent-Replayed",
                  "value": "true"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "7e26f76d-8f97-5a39-c595-b0dfe4c6a78b",
              "name": "Created",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"eventType\": \"<string>\",\n  \"scheduledDate\": \"<dateTime>\",\n  \"description\": \"<string>\",\n  \"scope\": \"equipment\",\n  \"equipmentId\": \"<uuid>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"priority\": \"<string>\",\n  \"serviceProviderId\": \"<uuid>\",\n  \"performedBy\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"responsibleUserId\": \"<uuid>\",\n  \"laborHours\": \"<number>\",\n  \"laborCost\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"workflowId\": \"<uuid>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Created"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "c3b701e4-95bc-0cea-9b7e-c6bf9e87df92",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"eventType\": \"<string>\",\n  \"scheduledDate\": \"<dateTime>\",\n  \"description\": \"<string>\",\n  \"scope\": \"equipment\",\n  \"equipmentId\": \"<uuid>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"priority\": \"<string>\",\n  \"serviceProviderId\": \"<uuid>\",\n  \"performedBy\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"responsibleUserId\": \"<uuid>\",\n  \"laborHours\": \"<number>\",\n  \"laborCost\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"workflowId\": \"<uuid>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f31e9ef6-91b7-2e4a-1095-4602acb0ad7e",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"eventType\": \"<string>\",\n  \"scheduledDate\": \"<dateTime>\",\n  \"description\": \"<string>\",\n  \"scope\": \"equipment\",\n  \"equipmentId\": \"<uuid>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"priority\": \"<string>\",\n  \"serviceProviderId\": \"<uuid>\",\n  \"performedBy\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"responsibleUserId\": \"<uuid>\",\n  \"laborHours\": \"<number>\",\n  \"laborCost\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"workflowId\": \"<uuid>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "5f6782fa-72d8-0970-9ccc-687c9f6778aa",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"eventType\": \"<string>\",\n  \"scheduledDate\": \"<dateTime>\",\n  \"description\": \"<string>\",\n  \"scope\": \"equipment\",\n  \"equipmentId\": \"<uuid>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"priority\": \"<string>\",\n  \"serviceProviderId\": \"<uuid>\",\n  \"performedBy\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"responsibleUserId\": \"<uuid>\",\n  \"laborHours\": \"<number>\",\n  \"laborCost\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"workflowId\": \"<uuid>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 409,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "ee0b1074-d072-89cb-0742-67aae01b7f07",
              "name": "The supplied `Idempotency-Key` was already used with a different request body.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"eventType\": \"<string>\",\n  \"scheduledDate\": \"<dateTime>\",\n  \"description\": \"<string>\",\n  \"scope\": \"equipment\",\n  \"equipmentId\": \"<uuid>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"priority\": \"<string>\",\n  \"serviceProviderId\": \"<uuid>\",\n  \"performedBy\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"responsibleUserId\": \"<uuid>\",\n  \"laborHours\": \"<number>\",\n  \"laborCost\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"workflowId\": \"<uuid>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Conflict"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f0fe250c-2bdb-607e-feb0-4d4f06322b7f",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"eventType\": \"<string>\",\n  \"scheduledDate\": \"<dateTime>\",\n  \"description\": \"<string>\",\n  \"scope\": \"equipment\",\n  \"equipmentId\": \"<uuid>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"priority\": \"<string>\",\n  \"serviceProviderId\": \"<uuid>\",\n  \"performedBy\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"responsibleUserId\": \"<uuid>\",\n  \"laborHours\": \"<number>\",\n  \"laborCost\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"workflowId\": \"<uuid>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "5a07b1b5-d3f4-6f54-d999-240e44dffae7",
          "name": "List a vessel's maintenance events",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Returns maintenance events for a vessel with derived `status`, linked equipment,\nservice provider, permit, schedule, and workflow-state info. Supports `?cursor=`\npagination on the default (status-priority) sort path only — the `status=hours_due`\nfilter branch (JS-side post-filter, no materialized sort column) does not support\ncursor and silently falls back to `?page=` semantics if combined with `?cursor=`.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's maintenance events",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "maintenance",
                "vessel",
                ":vesselId"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"77baaee3-a413-6adf-2d9e-78fea80be374\",\n      \"vesselId\": \"8cffbd4d-08e9-88ac-b3c0-537e905a5028\",\n      \"equipmentId\": \"81bc6ddd-69aa-7b4f-4ca5-4011f64122c0\",\n      \"vesselSystemId\": \"38fadab7-e6ab-4bc5-111a-e582825a97b8\",\n      \"scope\": \"string\",\n      \"eventType\": \"string\",\n      \"status\": \"string\",\n      \"priority\": \"string\",\n      \"scheduledDate\": \"2003-05-13T14:55:53.343Z\",\n      \"completedDate\": \"1989-11-11T09:30:33.077Z\",\n      \"description\": \"string\",\n      \"performedBy\": \"string\",\n      \"serviceProviderId\": \"2ead1df6-806e-06a0-8dcc-6ea57ba16ce5\",\n      \"serviceProvider\": {\n        \"id\": \"e1e65e70-4ec7-2d66-8f8c-50f651d9f129\",\n        \"businessName\": \"string\",\n        \"phone\": \"string\"\n      },\n      \"partsUsed\": [\n        {\n          \"inventoryItemId\": \"a3de1d32-9337-d20f-b40e-71d155dcd698\",\n          \"quantity\": 1470.9745184518397\n        },\n        {\n          \"inventoryItemId\": \"ab77eeb0-143e-6892-16a4-f4645ee2bd6c\",\n          \"quantity\": 7362.737692892551\n        }\n      ],\n      \"laborHours\": 7615.765552036464,\n      \"laborCost\": \"string\",\n      \"partsCost\": \"string\",\n      \"totalCost\": \"string\",\n      \"currency\": \"string\",\n      \"hoursAtService\": 3724,\n      \"beforePhotos\": [\n        \"string\",\n        \"string\"\n      ],\n      \"afterPhotos\": [\n        \"string\",\n        \"string\"\n      ],\n      \"invoiceAttachments\": [\n        \"string\",\n        \"string\"\n      ],\n      \"notes\": \"string\",\n      \"technicianSignature\": \"string\",\n      \"technicianName\": \"string\",\n      \"technicianSignedAt\": \"1961-09-18T23:10:29.054Z\",\n      \"requestedById\": \"bf718b79-676a-0844-a403-1ef0b824f7ee\",\n      \"responsibleUserId\": \"99197953-3112-9842-029a-86b142a1aa24\",\n      \"linkedPermitId\": \"563f151b-012b-1a2f-60da-e95884cba98b\",\n      \"equipment\": {\n        \"id\": \"5d579f38-bff2-a442-7673-44d6d94bf4aa\",\n        \"equipmentType\": \"string\",\n        \"make\": \"string\",\n        \"model\": \"string\"\n      },\n      \"createdAt\": \"1974-11-26T03:00:41.227Z\",\n      \"updatedAt\": \"1959-04-30T15:54:20.810Z\"\n    },\n    {\n      \"id\": \"136df31c-6aca-c070-9cac-bd31f7dcb042\",\n      \"vesselId\": \"2ac9ec16-f5b6-cb27-4eb7-e23264146178\",\n      \"equipmentId\": \"64fc7962-1cd0-083a-c674-a0c4254b5807\",\n      \"vesselSystemId\": \"2ed78a72-552a-a47b-e1c6-9c5aa8f0acd5\",\n      \"scope\": \"string\",\n      \"eventType\": \"string\",\n      \"status\": \"string\",\n      \"priority\": \"string\",\n      \"scheduledDate\": \"2009-01-31T17:42:00.935Z\",\n      \"completedDate\": \"2006-05-29T23:04:24.726Z\",\n      \"description\": \"string\",\n      \"performedBy\": \"string\",\n      \"serviceProviderId\": \"655dcc39-48ee-0521-4001-a0ebf3e5aa71\",\n      \"serviceProvider\": {\n        \"id\": \"46460f32-1453-7744-2783-8f64ae0e305d\",\n        \"businessName\": \"string\",\n        \"phone\": \"string\"\n      },\n      \"partsUsed\": [\n        {\n          \"inventoryItemId\": \"df8a6159-bd49-1875-c1c5-ee83370bd83c\",\n          \"quantity\": 5739.625645801425\n        },\n        {\n          \"inventoryItemId\": \"b8a872a8-007a-eb10-3ebd-0b9a654c962a\",\n          \"quantity\": 4450.177270919085\n        }\n      ],\n      \"laborHours\": 4954.8040819354355,\n      \"laborCost\": \"string\",\n      \"partsCost\": \"string\",\n      \"totalCost\": \"string\",\n      \"currency\": \"string\",\n      \"hoursAtService\": 5733,\n      \"beforePhotos\": [\n        \"string\",\n        \"string\"\n      ],\n      \"afterPhotos\": [\n        \"string\",\n        \"string\"\n      ],\n      \"invoiceAttachments\": [\n        \"string\",\n        \"string\"\n      ],\n      \"notes\": \"string\",\n      \"technicianSignature\": \"string\",\n      \"technicianName\": \"string\",\n      \"technicianSignedAt\": \"1965-09-13T01:23:59.531Z\",\n      \"requestedById\": \"78ead6e4-cf77-952d-366e-281edfcf42f3\",\n      \"responsibleUserId\": \"02f45bbb-49ff-9192-8cbc-d19757d1c9dc\",\n      \"linkedPermitId\": \"f8c783bd-e5a0-6762-aff7-0625aced1db9\",\n      \"equipment\": {\n        \"id\": \"cbda459f-671b-0fed-38cc-6327c14a4f1a\",\n        \"equipmentType\": \"string\",\n        \"make\": \"string\",\n        \"model\": \"string\"\n      },\n      \"createdAt\": \"2009-06-06T03:21:11.088Z\",\n      \"updatedAt\": \"2001-11-18T16:27:26.073Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 7835,\n    \"hasMore\": false,\n    \"total\": 4775,\n    \"cursor\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "fc10161e-fa59-14b3-5efd-3a0151115adb",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "9288b8bf-3fe6-0d75-0ca4-6c5c767c575a",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "bbfe1616-c016-a95d-335c-a9a41e6a6bf8",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "8fa61a04-4486-a154-7006-0c04897f6914",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "0e063ab1-5ba9-375d-30bb-cb2182074688",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "cbbe6b73-f045-5397-9553-82747d95645e",
          "item": [
            {
              "event": [],
              "id": "482a238b-76c7-ab93-7338-44bebae64fa6",
              "name": "Get a maintenance event",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "description": {
                  "content": "Returns the full maintenance event with vessel, linked permit summary, recurring-schedule state, and current workflow state/transitions.",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "name": "Get a maintenance event",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"4cee59a8-46da-b03f-8d97-3f43ddb6c313\",\n    \"vesselId\": \"b047d4ab-c403-1d93-1336-f910754fc758\",\n    \"equipmentId\": \"aa14f534-9196-a604-6861-7f9fd595139d\",\n    \"vesselSystemId\": \"f2ec850c-4390-2d8d-2ff7-f2c149f2b057\",\n    \"scope\": \"string\",\n    \"eventType\": \"string\",\n    \"status\": \"string\",\n    \"priority\": \"string\",\n    \"scheduledDate\": \"2019-01-16T10:29:37.823Z\",\n    \"completedDate\": \"2021-07-26T09:22:44.433Z\",\n    \"description\": \"string\",\n    \"performedBy\": \"string\",\n    \"serviceProviderId\": \"43830dff-5883-c44c-87eb-720b6bff8d65\",\n    \"serviceProvider\": {\n      \"id\": \"ab278fb0-1035-f76a-b582-d464f27fb234\",\n      \"businessName\": \"string\",\n      \"phone\": \"string\"\n    },\n    \"partsUsed\": [\n      {\n        \"inventoryItemId\": \"578408a8-6dc1-8804-2561-ddf198e72dc7\",\n        \"quantity\": 8002.27036466822\n      },\n      {\n        \"inventoryItemId\": \"5676e9f4-2f28-6f38-e7dc-427bb9796891\",\n        \"quantity\": 9033.354627899826\n      }\n    ],\n    \"laborHours\": 2375.3320961259305,\n    \"laborCost\": \"string\",\n    \"partsCost\": \"string\",\n    \"totalCost\": \"string\",\n    \"currency\": \"string\",\n    \"hoursAtService\": 4967,\n    \"beforePhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"afterPhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"invoiceAttachments\": [\n      \"string\",\n      \"string\"\n    ],\n    \"notes\": \"string\",\n    \"technicianSignature\": \"string\",\n    \"technicianName\": \"string\",\n    \"technicianSignedAt\": \"2017-09-11T03:29:35.320Z\",\n    \"requestedById\": \"8352e85d-edb7-961a-1d05-09474afa121a\",\n    \"responsibleUserId\": \"b955f859-911e-c922-6a47-865ef5b09bfa\",\n    \"linkedPermitId\": \"00a74652-07af-2d97-e277-6eef5903a37f\",\n    \"equipment\": {\n      \"id\": \"e13d0d91-a9f2-1558-3be5-149923c6d3d2\",\n      \"equipmentType\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\"\n    },\n    \"createdAt\": \"2014-04-09T19:14:15.875Z\",\n    \"updatedAt\": \"1999-01-09T15:50:48.040Z\",\n    \"vessel\": {\n      \"id\": \"ad2cd3e1-8edc-819f-2dbc-19b71a3d7f61\",\n      \"ownerId\": \"525fc71d-af18-20d5-3067-6dea42555a38\",\n      \"vesselName\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\",\n      \"year\": 6713,\n      \"hullNumber\": \"string\",\n      \"vesselType\": \"string\",\n      \"status\": \"string\",\n      \"engineType\": \"string\",\n      \"engineCount\": 1919,\n      \"homePort\": \"string\",\n      \"homePortLat\": 4730.758480727673,\n      \"homePortLon\": 5491.48180289194,\n      \"homePortResolved\": \"string\",\n      \"homePortNeedsReview\": true,\n      \"length\": 2745.9618588909507,\n      \"beam\": 7416.674008127302,\n      \"draft\": 2889.417896512896,\n      \"airDraft\": 214.23977334052324,\n      \"loaTotal\": 5012.852030340582,\n      \"displacement\": 1490,\n      \"grossTonnage\": 4676,\n      \"fuelCapacity\": 8210,\n      \"waterCapacity\": 9258,\n      \"maxAccommodation\": 2817,\n      \"maxRange\": 6305,\n      \"cruisingSpeed\": 6153.271980583668,\n      \"imoNumber\": \"string\",\n      \"mmsi\": \"string\",\n      \"callSign\": \"string\",\n      \"flagState\": \"string\",\n      \"complianceProfile\": \"string\",\n      \"multiCurrencyEnabled\": false,\n      \"defaultCurrency\": \"string\",\n      \"photo\": \"string\",\n      \"dataConsistencyWarnings\": [\n        {\n          \"key_0\": \"string\",\n          \"key_1\": false\n        },\n        {\n          \"key_0\": true\n        }\n      ],\n      \"owner\": {\n        \"id\": \"0078466e-e230-d428-ec14-8f6a5e6ede9e\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"captain\": {\n        \"id\": \"c9a23f2d-48d7-c595-137a-48dd4a99fcfb\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"permissions\": {\n        \"key_0\": 281\n      },\n      \"isLocked\": false,\n      \"lockReason\": \"string\",\n      \"createdAt\": \"1989-11-01T23:03:23.025Z\",\n      \"updatedAt\": \"2002-03-02T10:15:11.520Z\"\n    },\n    \"linkedPermit\": {\n      \"id\": \"d0d7b98a-2403-837b-3c29-8d4070c809a7\",\n      \"title\": \"string\",\n      \"permitType\": \"string\",\n      \"status\": \"string\"\n    },\n    \"schedule\": {\n      \"key_0\": 252\n    },\n    \"workflowExecution\": {\n      \"key_0\": true,\n      \"key_1\": 3594,\n      \"key_2\": 7721,\n      \"key_3\": true\n    }\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "e0d95b53-e50a-c42f-41a0-a39d36ebf1c6",
                  "name": "OK",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "cd1f04f0-c08f-828c-75a0-43b3d55e385e",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "467d6235-246c-435a-9a44-404554fe5c63",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "906da736-8b45-0c25-6fe3-eb96cb95356f",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "0a5e490c-d4f3-f027-029f-bc3723cf66f2",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "e7624ea7-1e4a-d17f-9b2c-9184470305ec",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            },
            {
              "event": [],
              "id": "70a7b534-40c1-3823-1152-61d8443c3a90",
              "name": "Update a maintenance event",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                },
                "description": {
                  "content": "Partial update. Supports the `Idempotency-Key` header on the same terms as create.",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "PATCH",
                "name": "Update a maintenance event",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"22464a8f-b7ff-a3e5-7d0f-7c4da4e07b64\",\n    \"vesselId\": \"a3252b38-778f-530c-ea05-978d43853ba1\",\n    \"equipmentId\": \"cbcd6377-10f8-1767-7262-14152446fb15\",\n    \"vesselSystemId\": \"db9f931e-a0f6-d197-81a8-4f2b3902fc28\",\n    \"scope\": \"string\",\n    \"eventType\": \"string\",\n    \"status\": \"string\",\n    \"priority\": \"string\",\n    \"scheduledDate\": \"2006-01-26T09:20:32.652Z\",\n    \"completedDate\": \"2018-05-23T05:56:07.025Z\",\n    \"description\": \"string\",\n    \"performedBy\": \"string\",\n    \"serviceProviderId\": \"d35acfc1-abff-8178-ced9-8e6248c0b96d\",\n    \"serviceProvider\": {\n      \"id\": \"87a549bd-03cf-e156-ffb2-41fcc0bf7a81\",\n      \"businessName\": \"string\",\n      \"phone\": \"string\"\n    },\n    \"partsUsed\": [\n      {\n        \"inventoryItemId\": \"4ba4b9a4-18e7-d80c-55d0-69c5bf4e858e\",\n        \"quantity\": 8938.50898835808\n      },\n      {\n        \"inventoryItemId\": \"fa137a86-6857-581a-88e9-424ca39cc54b\",\n        \"quantity\": 382.2220931760967\n      }\n    ],\n    \"laborHours\": 5074.693865608424,\n    \"laborCost\": \"string\",\n    \"partsCost\": \"string\",\n    \"totalCost\": \"string\",\n    \"currency\": \"string\",\n    \"hoursAtService\": 5291,\n    \"beforePhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"afterPhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"invoiceAttachments\": [\n      \"string\",\n      \"string\"\n    ],\n    \"notes\": \"string\",\n    \"technicianSignature\": \"string\",\n    \"technicianName\": \"string\",\n    \"technicianSignedAt\": \"1953-05-10T01:54:32.895Z\",\n    \"requestedById\": \"d84f8048-4ff5-a7a9-db80-0263e8948db9\",\n    \"responsibleUserId\": \"56f7e826-f59c-e908-9766-23e67549fee2\",\n    \"linkedPermitId\": \"90ca8054-24c6-8766-473a-46e004267385\",\n    \"equipment\": {\n      \"id\": \"5fa2c3d2-74eb-3969-ccc1-c976bf619b22\",\n      \"equipmentType\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\"\n    },\n    \"createdAt\": \"1989-06-13T19:10:05.906Z\",\n    \"updatedAt\": \"1955-08-29T15:58:14.809Z\"\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "ae843f3a-20cc-6aac-d643-7bb8d92726e8",
                  "name": "OK",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "f0b5c198-88ff-fd08-8738-135ba037b1a2",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "d63436cd-122a-ad5a-1291-ad9f712ed2df",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "9f902086-5320-5eb8-b101-012436c9d45b",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "d91c3fd9-9ea3-3639-8bfd-001156c78e24",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 409,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "6b51f859-ce67-acc3-99ae-23ba53bca3ac",
                  "name": "The supplied `Idempotency-Key` was already used with a different request body.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Conflict"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "c9239649-ae10-773a-4fd8-3a21a963bc32",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"eventType\": \"<string>\",\n  \"priority\": \"<string>\",\n  \"scheduledDate\": \"<string,null-date-time>\",\n  \"completedDate\": \"<string,null-date-time>\",\n  \"description\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ]\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            },
            {
              "event": [],
              "id": "04326f4e-1c04-eb42-db29-281c178fde38",
              "name": "Mark a maintenance event complete",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\"\n}"
                },
                "description": {
                  "content": "Stamps `completedDate: now()`, optionally deducts `partsUsed` from inventory (if not\nalready deducted), and accepts the same body fields as a PATCH for any final details\ncaptured at completion time (labor hours, cost, notes, technician signature, etc.).\n",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "value": "<string>"
                  },
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "name": "Mark a maintenance event complete",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "maintenance",
                    ":id",
                    "complete"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"22464a8f-b7ff-a3e5-7d0f-7c4da4e07b64\",\n    \"vesselId\": \"a3252b38-778f-530c-ea05-978d43853ba1\",\n    \"equipmentId\": \"cbcd6377-10f8-1767-7262-14152446fb15\",\n    \"vesselSystemId\": \"db9f931e-a0f6-d197-81a8-4f2b3902fc28\",\n    \"scope\": \"string\",\n    \"eventType\": \"string\",\n    \"status\": \"string\",\n    \"priority\": \"string\",\n    \"scheduledDate\": \"2006-01-26T09:20:32.652Z\",\n    \"completedDate\": \"2018-05-23T05:56:07.025Z\",\n    \"description\": \"string\",\n    \"performedBy\": \"string\",\n    \"serviceProviderId\": \"d35acfc1-abff-8178-ced9-8e6248c0b96d\",\n    \"serviceProvider\": {\n      \"id\": \"87a549bd-03cf-e156-ffb2-41fcc0bf7a81\",\n      \"businessName\": \"string\",\n      \"phone\": \"string\"\n    },\n    \"partsUsed\": [\n      {\n        \"inventoryItemId\": \"4ba4b9a4-18e7-d80c-55d0-69c5bf4e858e\",\n        \"quantity\": 8938.50898835808\n      },\n      {\n        \"inventoryItemId\": \"fa137a86-6857-581a-88e9-424ca39cc54b\",\n        \"quantity\": 382.2220931760967\n      }\n    ],\n    \"laborHours\": 5074.693865608424,\n    \"laborCost\": \"string\",\n    \"partsCost\": \"string\",\n    \"totalCost\": \"string\",\n    \"currency\": \"string\",\n    \"hoursAtService\": 5291,\n    \"beforePhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"afterPhotos\": [\n      \"string\",\n      \"string\"\n    ],\n    \"invoiceAttachments\": [\n      \"string\",\n      \"string\"\n    ],\n    \"notes\": \"string\",\n    \"technicianSignature\": \"string\",\n    \"technicianName\": \"string\",\n    \"technicianSignedAt\": \"1953-05-10T01:54:32.895Z\",\n    \"requestedById\": \"d84f8048-4ff5-a7a9-db80-0263e8948db9\",\n    \"responsibleUserId\": \"56f7e826-f59c-e908-9766-23e67549fee2\",\n    \"linkedPermitId\": \"90ca8054-24c6-8766-473a-46e004267385\",\n    \"equipment\": {\n      \"id\": \"5fa2c3d2-74eb-3969-ccc1-c976bf619b22\",\n      \"equipmentType\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\"\n    },\n    \"createdAt\": \"1989-06-13T19:10:05.906Z\",\n    \"updatedAt\": \"1955-08-29T15:58:14.809Z\"\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "1c9f4a36-1015-a652-f056-52097147f67d",
                  "name": "OK",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "POST",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id",
                        "complete"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "fb6b0ea1-5141-07a3-4611-14365dd0c958",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "POST",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id",
                        "complete"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "77447047-0a03-bd5f-ee46-4a24b7c1b0ca",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "POST",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id",
                        "complete"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "60b45d7d-91bb-4c97-bcfa-d2de7c260d2c",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "POST",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id",
                        "complete"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "0d354e9f-66c3-1df4-6228-79efa4feee46",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "POST",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id",
                        "complete"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 409,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "b7c35a84-47f0-218b-2161-f3024ffefdb7",
                  "name": "The supplied `Idempotency-Key` was already used with a different request body.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "POST",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id",
                        "complete"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Conflict"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "56118bd1-98db-789e-9fbe-173acdaf22de",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"partsUsed\": [\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    },\n    {\n      \"inventoryItemId\": \"<uuid>\",\n      \"quantity\": \"<number>\"\n    }\n  ],\n  \"laborHours\": \"<number,null>\",\n  \"laborCost\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"technicianSignature\": \"<string,null>\",\n  \"technicianName\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "description": "Client-generated unique token (e.g. a UUID) scoping this write to be safely retried.\nReplaying the same key with the same request body within 24h returns the original\ncached response unchanged (with `Idempotent-Replayed: true`); replaying with a\ndifferent body returns `409 CONFLICT`. Opt-in — omit for normal (non-idempotent)\nbehavior.\n",
                        "disabled": false,
                        "key": "Idempotency-Key",
                        "value": "<string>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "POST",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "maintenance",
                        ":id",
                        "complete"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            }
          ],
          "name": "{id}"
        }
      ],
      "name": "maintenance"
    },
    {
      "event": [],
      "id": "46a1b717-7720-4a2a-1136-9ad144a5463b",
      "item": [
        {
          "event": [],
          "id": "238894ed-3c45-9b62-68aa-2d44bd3b4ab9",
          "name": "Create an inventory item",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"itemType\": \"<string>\",\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"category\": \"<string>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string>\",\n  \"location\": \"<string>\",\n  \"partNumber\": \"<string>\",\n  \"costPerUnit\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"supplier\": \"<string>\",\n  \"reorderThreshold\": \"<integer>\",\n  \"expirationDate\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
            },
            "description": {
              "content": "Requires `vesselId` and `itemType`. Accepts either `vesselSystemId` or `category` (the server derives whichever is omitted); neither is required for provisions/consumables not tied to a system.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "POST",
            "name": "Create an inventory item",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "inventory"
              ],
              "query": [],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"a86e97b7-ce25-fef6-dee6-1a27fc33b651\",\n    \"vesselId\": \"da2302c7-054a-23dc-03a0-55f68897b779\",\n    \"vesselSystemId\": \"a30f7921-a5c5-3d8a-82c0-70c0b1179577\",\n    \"vesselSystem\": {\n      \"id\": \"2f432a23-b8ac-9a1f-1361-f3919bbbc07f\",\n      \"systemKey\": \"string\",\n      \"name\": \"string\"\n    },\n    \"itemType\": \"string\",\n    \"name\": \"string\",\n    \"category\": \"string\",\n    \"subcategory\": \"string\",\n    \"quantity\": 6779,\n    \"unit\": \"string\",\n    \"location\": \"string\",\n    \"deckLevel\": \"string\",\n    \"section\": \"string\",\n    \"partNumber\": \"string\",\n    \"fitsEquipment\": [\n      \"string\",\n      \"string\"\n    ],\n    \"brand\": \"string\",\n    \"model\": \"string\",\n    \"costPerUnit\": \"string\",\n    \"currency\": \"string\",\n    \"supplier\": \"string\",\n    \"reorderThreshold\": 6513,\n    \"reorderQuantity\": 8870,\n    \"autoReorderEnabled\": false,\n    \"preferredSupplierId\": \"e01481c5-463f-31d8-63ce-56cb1990fb30\",\n    \"expirationDate\": \"1997-05-10T19:53:00.435Z\",\n    \"barcode\": \"string\",\n    \"photo\": \"string\",\n    \"notes\": \"string\",\n    \"sourceDescription\": \"string\",\n    \"catalogPartId\": \"4a3f55a3-937c-2834-f98f-36035bb3abf6\",\n    \"dataHealthFlags\": [\n      {\n        \"key_0\": \"string\",\n        \"key_1\": true\n      },\n      {\n        \"key_0\": 3848.498447332531,\n        \"key_1\": 9767.488110810518\n      }\n    ],\n    \"hasOpenAutoDraft\": true,\n    \"vessel\": {\n      \"id\": \"ecb2049a-5965-d1b3-e4c9-729ee28207ac\",\n      \"vesselName\": \"string\"\n    },\n    \"createdAt\": \"1977-04-21T12:49:09.725Z\",\n    \"updatedAt\": \"2016-12-28T12:51:23.017Z\"\n  }\n}",
              "code": 201,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "08cd7cd2-dd15-1410-2ac7-3d66dfe9f641",
              "name": "Created",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"itemType\": \"<string>\",\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"category\": \"<string>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string>\",\n  \"location\": \"<string>\",\n  \"partNumber\": \"<string>\",\n  \"costPerUnit\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"supplier\": \"<string>\",\n  \"reorderThreshold\": \"<integer>\",\n  \"expirationDate\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Created"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f554767f-c75e-9fdf-bdc8-4f8ce8d219b0",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"itemType\": \"<string>\",\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"category\": \"<string>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string>\",\n  \"location\": \"<string>\",\n  \"partNumber\": \"<string>\",\n  \"costPerUnit\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"supplier\": \"<string>\",\n  \"reorderThreshold\": \"<integer>\",\n  \"expirationDate\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "b97c7a6d-3ff4-38cb-4254-dea14449467b",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"itemType\": \"<string>\",\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"category\": \"<string>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string>\",\n  \"location\": \"<string>\",\n  \"partNumber\": \"<string>\",\n  \"costPerUnit\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"supplier\": \"<string>\",\n  \"reorderThreshold\": \"<integer>\",\n  \"expirationDate\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "a38f6c18-73b9-9d67-5dd5-3f7509afd4e6",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"itemType\": \"<string>\",\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"category\": \"<string>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string>\",\n  \"location\": \"<string>\",\n  \"partNumber\": \"<string>\",\n  \"costPerUnit\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"supplier\": \"<string>\",\n  \"reorderThreshold\": \"<integer>\",\n  \"expirationDate\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 409,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "3b5c4bbf-57ff-d163-0e80-695a781a44a0",
              "name": "The supplied `Idempotency-Key` was already used with a different request body.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"itemType\": \"<string>\",\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"category\": \"<string>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string>\",\n  \"location\": \"<string>\",\n  \"partNumber\": \"<string>\",\n  \"costPerUnit\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"supplier\": \"<string>\",\n  \"reorderThreshold\": \"<integer>\",\n  \"expirationDate\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Conflict"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "580afbfb-8990-06b0-acba-7387aae274b7",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"itemType\": \"<string>\",\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<uuid>\",\n  \"category\": \"<string>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string>\",\n  \"location\": \"<string>\",\n  \"partNumber\": \"<string>\",\n  \"costPerUnit\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"supplier\": \"<string>\",\n  \"reorderThreshold\": \"<integer>\",\n  \"expirationDate\": \"<dateTime>\",\n  \"notes\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "3cb05a17-cefd-d03e-7391-ed5e43b989f9",
          "name": "List a vessel's inventory",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Supports `?cursor=` pagination on the standard path only — the `status=lowstock`\nfilter (raw SQL comparing `quantity` to `reorderThreshold`) is a bounded result set\nand does not support cursor.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's inventory",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "inventory",
                "vessel",
                ":vesselId"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"bc969e80-80fb-cf0c-ef73-56268ac87843\",\n      \"vesselId\": \"a18d9668-5a06-2945-7526-43ef41f8d009\",\n      \"vesselSystemId\": \"560f06b5-68a0-a6ae-9e2b-cc997d44479f\",\n      \"vesselSystem\": {\n        \"id\": \"f2c07288-2d4d-6387-c632-b6fe68c78a40\",\n        \"systemKey\": \"string\",\n        \"name\": \"string\"\n      },\n      \"itemType\": \"string\",\n      \"name\": \"string\",\n      \"category\": \"string\",\n      \"subcategory\": \"string\",\n      \"quantity\": 9910,\n      \"unit\": \"string\",\n      \"location\": \"string\",\n      \"deckLevel\": \"string\",\n      \"section\": \"string\",\n      \"partNumber\": \"string\",\n      \"fitsEquipment\": [\n        \"string\",\n        \"string\"\n      ],\n      \"brand\": \"string\",\n      \"model\": \"string\",\n      \"costPerUnit\": \"string\",\n      \"currency\": \"string\",\n      \"supplier\": \"string\",\n      \"reorderThreshold\": 2710,\n      \"reorderQuantity\": 7678,\n      \"autoReorderEnabled\": true,\n      \"preferredSupplierId\": \"8e5dacaa-e4bc-23d0-d4d4-f4169a010e1d\",\n      \"expirationDate\": \"1969-02-23T19:45:28.184Z\",\n      \"barcode\": \"string\",\n      \"photo\": \"string\",\n      \"notes\": \"string\",\n      \"sourceDescription\": \"string\",\n      \"catalogPartId\": \"48f06d64-64de-7e09-a268-f8db150b9432\",\n      \"dataHealthFlags\": [\n        {\n          \"key_0\": 5170,\n          \"key_1\": \"string\"\n        },\n        {\n          \"key_0\": true,\n          \"key_1\": 3397,\n          \"key_2\": 6939\n        }\n      ],\n      \"hasOpenAutoDraft\": true,\n      \"vessel\": {\n        \"id\": \"65e426d0-db15-2422-f1de-68e567996dcd\",\n        \"vesselName\": \"string\"\n      },\n      \"createdAt\": \"1966-03-21T21:22:47.439Z\",\n      \"updatedAt\": \"1995-01-29T22:17:18.060Z\"\n    },\n    {\n      \"id\": \"1f54e686-4be0-c1a3-ef65-1c952edacbeb\",\n      \"vesselId\": \"51037506-0ac0-dada-bcdf-bae0bd3334ea\",\n      \"vesselSystemId\": \"6c9d472e-0e27-7d2e-0c07-397454f8962d\",\n      \"vesselSystem\": {\n        \"id\": \"b67b8102-3204-028d-9b10-576fe6c07e9c\",\n        \"systemKey\": \"string\",\n        \"name\": \"string\"\n      },\n      \"itemType\": \"string\",\n      \"name\": \"string\",\n      \"category\": \"string\",\n      \"subcategory\": \"string\",\n      \"quantity\": 7536,\n      \"unit\": \"string\",\n      \"location\": \"string\",\n      \"deckLevel\": \"string\",\n      \"section\": \"string\",\n      \"partNumber\": \"string\",\n      \"fitsEquipment\": [\n        \"string\",\n        \"string\"\n      ],\n      \"brand\": \"string\",\n      \"model\": \"string\",\n      \"costPerUnit\": \"string\",\n      \"currency\": \"string\",\n      \"supplier\": \"string\",\n      \"reorderThreshold\": 7087,\n      \"reorderQuantity\": 2545,\n      \"autoReorderEnabled\": true,\n      \"preferredSupplierId\": \"03c5b585-28ec-f99a-d0ae-acd43c1a524f\",\n      \"expirationDate\": \"2020-02-04T09:46:35.579Z\",\n      \"barcode\": \"string\",\n      \"photo\": \"string\",\n      \"notes\": \"string\",\n      \"sourceDescription\": \"string\",\n      \"catalogPartId\": \"c8042567-9421-fa69-9002-f09ed5741ed3\",\n      \"dataHealthFlags\": [\n        {\n          \"key_0\": \"string\"\n        },\n        {\n          \"key_0\": 3139\n        }\n      ],\n      \"hasOpenAutoDraft\": false,\n      \"vessel\": {\n        \"id\": \"78c32692-84b0-1aee-5040-8884306689ac\",\n        \"vesselName\": \"string\"\n      },\n      \"createdAt\": \"2011-06-21T11:15:25.954Z\",\n      \"updatedAt\": \"1958-12-12T22:41:39.456Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 320,\n    \"hasMore\": true,\n    \"total\": 7029,\n    \"cursor\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "6a423e0e-1748-88d1-c7e8-54eea9963fad",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "53b0716d-3638-0a8a-91fc-41af663051a3",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "5fcde2d4-9c21-c379-84dd-3ca3e415816a",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "e97a5f5d-4848-eb08-d531-9c023e31c96e",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "3c403c59-ce1a-431c-f4be-ab557334f5b0",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "f69473c9-de49-73d7-2ac1-fe3ad32933f9",
          "item": [
            {
              "event": [],
              "id": "067fecbe-9540-bf10-13b5-0c8bb3b0c6b9",
              "name": "Get an inventory item",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "description": {
                  "content": "Returns a single inventory item with vessel and vessel-system summaries.",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "name": "Get an inventory item",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"a86e97b7-ce25-fef6-dee6-1a27fc33b651\",\n    \"vesselId\": \"da2302c7-054a-23dc-03a0-55f68897b779\",\n    \"vesselSystemId\": \"a30f7921-a5c5-3d8a-82c0-70c0b1179577\",\n    \"vesselSystem\": {\n      \"id\": \"2f432a23-b8ac-9a1f-1361-f3919bbbc07f\",\n      \"systemKey\": \"string\",\n      \"name\": \"string\"\n    },\n    \"itemType\": \"string\",\n    \"name\": \"string\",\n    \"category\": \"string\",\n    \"subcategory\": \"string\",\n    \"quantity\": 6779,\n    \"unit\": \"string\",\n    \"location\": \"string\",\n    \"deckLevel\": \"string\",\n    \"section\": \"string\",\n    \"partNumber\": \"string\",\n    \"fitsEquipment\": [\n      \"string\",\n      \"string\"\n    ],\n    \"brand\": \"string\",\n    \"model\": \"string\",\n    \"costPerUnit\": \"string\",\n    \"currency\": \"string\",\n    \"supplier\": \"string\",\n    \"reorderThreshold\": 6513,\n    \"reorderQuantity\": 8870,\n    \"autoReorderEnabled\": false,\n    \"preferredSupplierId\": \"e01481c5-463f-31d8-63ce-56cb1990fb30\",\n    \"expirationDate\": \"1997-05-10T19:53:00.435Z\",\n    \"barcode\": \"string\",\n    \"photo\": \"string\",\n    \"notes\": \"string\",\n    \"sourceDescription\": \"string\",\n    \"catalogPartId\": \"4a3f55a3-937c-2834-f98f-36035bb3abf6\",\n    \"dataHealthFlags\": [\n      {\n        \"key_0\": \"string\",\n        \"key_1\": true\n      },\n      {\n        \"key_0\": 3848.498447332531,\n        \"key_1\": 9767.488110810518\n      }\n    ],\n    \"hasOpenAutoDraft\": true,\n    \"vessel\": {\n      \"id\": \"ecb2049a-5965-d1b3-e4c9-729ee28207ac\",\n      \"vesselName\": \"string\"\n    },\n    \"createdAt\": \"1977-04-21T12:49:09.725Z\",\n    \"updatedAt\": \"2016-12-28T12:51:23.017Z\"\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "cbfb821c-3c43-b041-6e92-13c8393ec4c7",
                  "name": "OK",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "a74c980f-2c82-065d-5482-c4c72692d2b6",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "ca72df14-57ba-7624-6c3c-e375d263aa77",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "5b6e0c1d-3811-586f-78c1-50e445f747b4",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "19ef70af-03e0-06e1-9ca2-d554caae52a3",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "e0e127f2-cde9-638a-fc38-de7950ac01ba",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            },
            {
              "event": [],
              "id": "773293cc-f18b-ec76-6a51-1c5e84cb8794",
              "name": "Update an inventory item",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"category\": \"<string,null>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string,null>\",\n  \"location\": \"<string,null>\",\n  \"costPerUnit\": \"<string,null>\",\n  \"currency\": \"<string>\",\n  \"reorderThreshold\": \"<integer,null>\",\n  \"notes\": \"<string,null>\"\n}"
                },
                "description": {
                  "content": "Partial update — any writable `InventoryItem` field. `category` and `vesselSystemId` are dual-accept (supplying one derives the other when possible).",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "PATCH",
                "name": "Update an inventory item",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "inventory",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"a86e97b7-ce25-fef6-dee6-1a27fc33b651\",\n    \"vesselId\": \"da2302c7-054a-23dc-03a0-55f68897b779\",\n    \"vesselSystemId\": \"a30f7921-a5c5-3d8a-82c0-70c0b1179577\",\n    \"vesselSystem\": {\n      \"id\": \"2f432a23-b8ac-9a1f-1361-f3919bbbc07f\",\n      \"systemKey\": \"string\",\n      \"name\": \"string\"\n    },\n    \"itemType\": \"string\",\n    \"name\": \"string\",\n    \"category\": \"string\",\n    \"subcategory\": \"string\",\n    \"quantity\": 6779,\n    \"unit\": \"string\",\n    \"location\": \"string\",\n    \"deckLevel\": \"string\",\n    \"section\": \"string\",\n    \"partNumber\": \"string\",\n    \"fitsEquipment\": [\n      \"string\",\n      \"string\"\n    ],\n    \"brand\": \"string\",\n    \"model\": \"string\",\n    \"costPerUnit\": \"string\",\n    \"currency\": \"string\",\n    \"supplier\": \"string\",\n    \"reorderThreshold\": 6513,\n    \"reorderQuantity\": 8870,\n    \"autoReorderEnabled\": false,\n    \"preferredSupplierId\": \"e01481c5-463f-31d8-63ce-56cb1990fb30\",\n    \"expirationDate\": \"1997-05-10T19:53:00.435Z\",\n    \"barcode\": \"string\",\n    \"photo\": \"string\",\n    \"notes\": \"string\",\n    \"sourceDescription\": \"string\",\n    \"catalogPartId\": \"4a3f55a3-937c-2834-f98f-36035bb3abf6\",\n    \"dataHealthFlags\": [\n      {\n        \"key_0\": \"string\",\n        \"key_1\": true\n      },\n      {\n        \"key_0\": 3848.498447332531,\n        \"key_1\": 9767.488110810518\n      }\n    ],\n    \"hasOpenAutoDraft\": true,\n    \"vessel\": {\n      \"id\": \"ecb2049a-5965-d1b3-e4c9-729ee28207ac\",\n      \"vesselName\": \"string\"\n    },\n    \"createdAt\": \"1977-04-21T12:49:09.725Z\",\n    \"updatedAt\": \"2016-12-28T12:51:23.017Z\"\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "cd520f20-bf7e-912e-7421-7e35a519e1f1",
                  "name": "OK",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"category\": \"<string,null>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string,null>\",\n  \"location\": \"<string,null>\",\n  \"costPerUnit\": \"<string,null>\",\n  \"currency\": \"<string>\",\n  \"reorderThreshold\": \"<integer,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "7aa6699f-c0c8-68eb-796f-b93058d1769a",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"category\": \"<string,null>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string,null>\",\n  \"location\": \"<string,null>\",\n  \"costPerUnit\": \"<string,null>\",\n  \"currency\": \"<string>\",\n  \"reorderThreshold\": \"<integer,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "34f9b745-03fa-f476-f3eb-5693d867014e",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"category\": \"<string,null>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string,null>\",\n  \"location\": \"<string,null>\",\n  \"costPerUnit\": \"<string,null>\",\n  \"currency\": \"<string>\",\n  \"reorderThreshold\": \"<integer,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "8e7325d3-11e8-49f7-4429-02401cd5e143",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"category\": \"<string,null>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string,null>\",\n  \"location\": \"<string,null>\",\n  \"costPerUnit\": \"<string,null>\",\n  \"currency\": \"<string>\",\n  \"reorderThreshold\": \"<integer,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "994ff47f-cf44-e7cf-d091-ad2b0200b51e",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"category\": \"<string,null>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string,null>\",\n  \"location\": \"<string,null>\",\n  \"costPerUnit\": \"<string,null>\",\n  \"currency\": \"<string>\",\n  \"reorderThreshold\": \"<integer,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "36d5132f-3522-881c-6f64-4ec51ec213ec",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"name\": \"<string>\",\n  \"vesselSystemId\": \"<string,null-uuid>\",\n  \"category\": \"<string,null>\",\n  \"quantity\": \"<integer>\",\n  \"unit\": \"<string,null>\",\n  \"location\": \"<string,null>\",\n  \"costPerUnit\": \"<string,null>\",\n  \"currency\": \"<string>\",\n  \"reorderThreshold\": \"<integer,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "inventory",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            }
          ],
          "name": "{id}"
        }
      ],
      "name": "inventory"
    },
    {
      "event": [],
      "id": "497be701-0e3c-91bc-5624-bd77b20b4bdf",
      "item": [
        {
          "event": [],
          "id": "7fba76e7-8d0c-2dbc-ea58-30748d94e531",
          "name": "Create an expense",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"date\": \"<date>\",\n  \"amount\": \"<string>\",\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"vendor\": \"<string>\",\n  \"charterBookingId\": \"<uuid>\",\n  \"fundingSource\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"tags\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
            },
            "description": {
              "content": "Requires `vesselId`, `date` (not in the future), and `amount`. `fundingSource: apa` requires `charterBookingId`.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "POST",
            "name": "Create an expense",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "expenses"
              ],
              "query": [],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"0bc9e84f-f26a-3160-2834-35984777c815\",\n    \"vesselId\": \"060834f4-baa9-945f-0277-77562d7f1c8f\",\n    \"category\": \"string\",\n    \"subcategory\": \"string\",\n    \"description\": \"string\",\n    \"amount\": \"string\",\n    \"currency\": \"string\",\n    \"date\": \"1963-03-04\",\n    \"vendor\": \"string\",\n    \"receiptUrl\": \"string\",\n    \"maintenanceId\": \"0f46f17c-cff8-ea1e-e23b-13dd09c9d6b1\",\n    \"equipmentId\": \"3e7b1b37-9adb-961a-1003-c13f58993f00\",\n    \"notes\": \"string\",\n    \"tags\": [\n      \"string\",\n      \"string\"\n    ],\n    \"recurring\": true,\n    \"recurringPeriod\": \"string\",\n    \"charterBookingId\": \"502e05b3-b7ff-b01e-bb9f-358f6370f4d2\",\n    \"charterBooking\": {\n      \"id\": \"1d07cf4d-3cae-50bd-4e8f-1eae54c59e8a\",\n      \"bookingReference\": \"string\"\n    },\n    \"fundingSource\": \"charter\",\n    \"costCenter\": \"string\",\n    \"quantity\": \"string\",\n    \"unit\": \"string\",\n    \"quantityUsed\": \"string\",\n    \"estimatedCost\": \"string\",\n    \"provisionStatus\": \"string\",\n    \"tip\": \"string\",\n    \"hasLineItems\": false,\n    \"lineItemCount\": 1037,\n    \"reimbursementStatus\": \"string\",\n    \"isArchived\": false,\n    \"createdAt\": \"2014-04-13T22:41:47.384Z\",\n    \"updatedAt\": \"1981-01-01T13:39:55.276Z\"\n  }\n}",
              "code": 201,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f1cb9c41-61cf-a346-4b4e-a4627082eff3",
              "name": "Created",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"date\": \"<date>\",\n  \"amount\": \"<string>\",\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"vendor\": \"<string>\",\n  \"charterBookingId\": \"<uuid>\",\n  \"fundingSource\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"tags\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Created"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "de413283-8136-8f3b-1342-0dcc8438b4c1",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"date\": \"<date>\",\n  \"amount\": \"<string>\",\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"vendor\": \"<string>\",\n  \"charterBookingId\": \"<uuid>\",\n  \"fundingSource\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"tags\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "90c13ae0-de13-ed44-e175-2c9653d864e1",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"date\": \"<date>\",\n  \"amount\": \"<string>\",\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"vendor\": \"<string>\",\n  \"charterBookingId\": \"<uuid>\",\n  \"fundingSource\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"tags\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "2ca49765-74a6-74f5-9f70-248d41794901",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"date\": \"<date>\",\n  \"amount\": \"<string>\",\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"vendor\": \"<string>\",\n  \"charterBookingId\": \"<uuid>\",\n  \"fundingSource\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"tags\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 409,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "4ee1ae73-1d72-8b35-f30e-5bffa774692f",
              "name": "The supplied `Idempotency-Key` was already used with a different request body.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"date\": \"<date>\",\n  \"amount\": \"<string>\",\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"vendor\": \"<string>\",\n  \"charterBookingId\": \"<uuid>\",\n  \"fundingSource\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"tags\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Conflict"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "c5745704-a737-5c5b-467b-c8bf8674e265",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"date\": \"<date>\",\n  \"amount\": \"<string>\",\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"vendor\": \"<string>\",\n  \"charterBookingId\": \"<uuid>\",\n  \"fundingSource\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"tags\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "2d7dffef-824d-928f-d738-78c232ecfd63",
          "name": "List a vessel's expenses",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Supports `?cursor=` pagination on the non-search path only — `?search=` runs a\nbounded hybrid vector+ILIKE query and does not support cursor. The aggregate\n`totalAmount` (USD-normalized) is returned via `meta.totalAmount`, not as a top-level\nfield.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's expenses",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "expenses",
                "vessel",
                ":vesselId"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"61c7e753-b8f9-eeec-584d-ee49660c5759\",\n      \"vesselId\": \"e3d613eb-7f88-2c84-0e2c-4601edab269e\",\n      \"category\": \"string\",\n      \"subcategory\": \"string\",\n      \"description\": \"string\",\n      \"amount\": \"string\",\n      \"currency\": \"string\",\n      \"date\": \"1966-07-01\",\n      \"vendor\": \"string\",\n      \"receiptUrl\": \"string\",\n      \"maintenanceId\": \"5341e17c-537f-a88c-981e-ec0ceed5c036\",\n      \"equipmentId\": \"4c97535c-3168-7f08-c669-12da04458d89\",\n      \"notes\": \"string\",\n      \"tags\": [\n        \"string\",\n        \"string\"\n      ],\n      \"recurring\": false,\n      \"recurringPeriod\": \"string\",\n      \"charterBookingId\": \"ef0ad157-5a56-3ba1-9bfd-8f682f73aad8\",\n      \"charterBooking\": {\n        \"id\": \"8f3d1bc3-2b71-d5fa-e5e4-cd2bd54892f9\",\n        \"bookingReference\": \"string\"\n      },\n      \"fundingSource\": \"charter\",\n      \"costCenter\": \"string\",\n      \"quantity\": \"string\",\n      \"unit\": \"string\",\n      \"quantityUsed\": \"string\",\n      \"estimatedCost\": \"string\",\n      \"provisionStatus\": \"string\",\n      \"tip\": \"string\",\n      \"hasLineItems\": false,\n      \"lineItemCount\": 7874,\n      \"reimbursementStatus\": \"string\",\n      \"isArchived\": true,\n      \"createdAt\": \"2009-02-28T04:45:27.393Z\",\n      \"updatedAt\": \"2013-12-30T01:46:52.633Z\"\n    },\n    {\n      \"id\": \"f0fcb7e0-5724-4f64-867f-6d4c009d15fa\",\n      \"vesselId\": \"fb168a80-3f86-0d16-c9fb-d9ac0e011d59\",\n      \"category\": \"string\",\n      \"subcategory\": \"string\",\n      \"description\": \"string\",\n      \"amount\": \"string\",\n      \"currency\": \"string\",\n      \"date\": \"2018-09-20\",\n      \"vendor\": \"string\",\n      \"receiptUrl\": \"string\",\n      \"maintenanceId\": \"d2269989-2d7f-5119-a25d-aab7015e8a30\",\n      \"equipmentId\": \"52eeb161-076c-5062-2e2e-8789bf13975c\",\n      \"notes\": \"string\",\n      \"tags\": [\n        \"string\",\n        \"string\"\n      ],\n      \"recurring\": false,\n      \"recurringPeriod\": \"string\",\n      \"charterBookingId\": \"1d6fb3f0-e09a-052d-e3fe-6d32fdf09d90\",\n      \"charterBooking\": {\n        \"id\": \"7d5c42a7-164c-5e8b-aaf1-a9ac188d5924\",\n        \"bookingReference\": \"string\"\n      },\n      \"fundingSource\": \"owner\",\n      \"costCenter\": \"string\",\n      \"quantity\": \"string\",\n      \"unit\": \"string\",\n      \"quantityUsed\": \"string\",\n      \"estimatedCost\": \"string\",\n      \"provisionStatus\": \"string\",\n      \"tip\": \"string\",\n      \"hasLineItems\": true,\n      \"lineItemCount\": 547,\n      \"reimbursementStatus\": \"string\",\n      \"isArchived\": true,\n      \"createdAt\": \"1957-01-31T15:34:22.582Z\",\n      \"updatedAt\": \"1979-01-12T19:37:55.055Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 5650,\n    \"hasMore\": true,\n    \"total\": 4980,\n    \"cursor\": \"string\"\n  },\n  \"meta\": {\n    \"key_0\": 8565.866956487298,\n    \"key_1\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "608d9879-8484-d177-b722-35e7bf725ad6",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "7a76aa18-b508-54ca-0360-d9960819bd90",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "12eb0391-043b-096d-19a6-a1df3c6161f7",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "0c702108-e9ba-85d4-da9e-2bfdca6c5486",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "2ccc2076-3307-96da-76d9-fb65ef82ffca",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "0dd4050a-a2ba-b873-4b9d-1a5304207cea",
          "item": [
            {
              "event": [],
              "id": "9602bd7b-1862-161b-38a0-d236bcef43b3",
              "name": "Get an expense",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "description": {
                  "content": "Returns a single expense. Pass `?include=lineItems,taxes` to inline OCR-extracted line items and taxes.",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "name": "Get an expense",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses",
                    ":id"
                  ],
                  "query": [
                    {
                      "description": "Comma-separated related collections to inline — supports `lineItems`, `taxes`.",
                      "disabled": false,
                      "key": "include",
                      "value": "<string>"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"19e4249d-8bb4-d147-563c-29ad4947c306\",\n    \"vesselId\": \"9e5f5ef6-a65a-34e5-16ea-34529d6f07a9\",\n    \"category\": \"string\",\n    \"subcategory\": \"string\",\n    \"description\": \"string\",\n    \"amount\": \"string\",\n    \"currency\": \"string\",\n    \"date\": \"1974-06-17\",\n    \"vendor\": \"string\",\n    \"receiptUrl\": \"string\",\n    \"maintenanceId\": \"f68db5be-f93a-96e3-7268-7b00b7287f5f\",\n    \"equipmentId\": \"af014648-0b41-af87-c456-4b69848d1efc\",\n    \"notes\": \"string\",\n    \"tags\": [\n      \"string\",\n      \"string\"\n    ],\n    \"recurring\": false,\n    \"recurringPeriod\": \"string\",\n    \"charterBookingId\": \"2bb0b6a2-8d2d-c836-9956-cb89903d8397\",\n    \"charterBooking\": {\n      \"id\": \"992ed6fc-51dd-76b5-e692-977e4d0e2a56\",\n      \"bookingReference\": \"string\"\n    },\n    \"fundingSource\": \"charter\",\n    \"costCenter\": \"string\",\n    \"quantity\": \"string\",\n    \"unit\": \"string\",\n    \"quantityUsed\": \"string\",\n    \"estimatedCost\": \"string\",\n    \"provisionStatus\": \"string\",\n    \"tip\": \"string\",\n    \"hasLineItems\": true,\n    \"lineItemCount\": 6778,\n    \"reimbursementStatus\": \"string\",\n    \"isArchived\": true,\n    \"createdAt\": \"1970-12-16T11:12:49.560Z\",\n    \"updatedAt\": \"2012-04-03T20:54:31.603Z\",\n    \"vessel\": {\n      \"id\": \"8ab47c8a-b9e4-7a4e-0327-0efb282b22d3\",\n      \"vesselName\": \"string\",\n      \"ownerId\": \"a6d25275-783f-41a8-1f87-c48c2f79ae65\"\n    },\n    \"lineItems\": [\n      {\n        \"id\": \"a19c3406-c330-fe15-9bb4-756cfbf6b381\",\n        \"description\": \"string\",\n        \"quantity\": \"string\",\n        \"unitPrice\": \"string\",\n        \"totalPrice\": \"string\"\n      },\n      {\n        \"id\": \"aaa67fa7-7837-de7d-6f14-911c2207637b\",\n        \"description\": \"string\",\n        \"quantity\": \"string\",\n        \"unitPrice\": \"string\",\n        \"totalPrice\": \"string\"\n      }\n    ],\n    \"taxes\": [\n      {\n        \"id\": \"bd1a3c80-54c7-8c14-5a1f-a66a62457dbd\",\n        \"name\": \"string\",\n        \"rate\": \"string\",\n        \"amount\": \"string\"\n      },\n      {\n        \"id\": \"78844f44-1dc0-55d7-4098-ed1eba48210e\",\n        \"name\": \"string\",\n        \"rate\": \"string\",\n        \"amount\": \"string\"\n      }\n    ]\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "835b28d7-b0f9-679e-6791-3a7292f1bdea",
                  "name": "OK",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [
                        {
                          "key": "include",
                          "value": "<string>"
                        }
                      ],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "8198c7d9-f52d-d680-651b-48844c616c9e",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [
                        {
                          "key": "include",
                          "value": "<string>"
                        }
                      ],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "b9689678-cdf8-532f-53e7-3ea58df579d1",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [
                        {
                          "key": "include",
                          "value": "<string>"
                        }
                      ],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "ff1efcdf-2cec-b425-6ab6-9448caa41ae9",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [
                        {
                          "key": "include",
                          "value": "<string>"
                        }
                      ],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "5abd5fa0-74d5-ef65-4777-9b2e9b0cb88d",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [
                        {
                          "key": "include",
                          "value": "<string>"
                        }
                      ],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "985996bf-6fbe-76c1-b84e-2c9faf704401",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {},
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [
                        {
                          "key": "include",
                          "value": "<string>"
                        }
                      ],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            },
            {
              "event": [],
              "id": "6d79066e-b26a-d991-6488-7b6bf397dfd3",
              "name": "Update an expense",
              "protocolProfileBehavior": {
                "disableBodyPruning": true
              },
              "request": {
                "auth": null,
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"amount\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"date\": \"<date>\",\n  \"vendor\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\",\n  \"key_1\": 7947,\n  \"key_2\": \"string\"\n}"
                },
                "description": {
                  "content": "Partial update — any writable `Expense` field.",
                  "type": "text/plain"
                },
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "PATCH",
                "name": "Update an expense",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "expenses",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "response": [
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"data\": {\n    \"id\": \"0bc9e84f-f26a-3160-2834-35984777c815\",\n    \"vesselId\": \"060834f4-baa9-945f-0277-77562d7f1c8f\",\n    \"category\": \"string\",\n    \"subcategory\": \"string\",\n    \"description\": \"string\",\n    \"amount\": \"string\",\n    \"currency\": \"string\",\n    \"date\": \"1963-03-04\",\n    \"vendor\": \"string\",\n    \"receiptUrl\": \"string\",\n    \"maintenanceId\": \"0f46f17c-cff8-ea1e-e23b-13dd09c9d6b1\",\n    \"equipmentId\": \"3e7b1b37-9adb-961a-1003-c13f58993f00\",\n    \"notes\": \"string\",\n    \"tags\": [\n      \"string\",\n      \"string\"\n    ],\n    \"recurring\": true,\n    \"recurringPeriod\": \"string\",\n    \"charterBookingId\": \"502e05b3-b7ff-b01e-bb9f-358f6370f4d2\",\n    \"charterBooking\": {\n      \"id\": \"1d07cf4d-3cae-50bd-4e8f-1eae54c59e8a\",\n      \"bookingReference\": \"string\"\n    },\n    \"fundingSource\": \"charter\",\n    \"costCenter\": \"string\",\n    \"quantity\": \"string\",\n    \"unit\": \"string\",\n    \"quantityUsed\": \"string\",\n    \"estimatedCost\": \"string\",\n    \"provisionStatus\": \"string\",\n    \"tip\": \"string\",\n    \"hasLineItems\": false,\n    \"lineItemCount\": 1037,\n    \"reimbursementStatus\": \"string\",\n    \"isArchived\": false,\n    \"createdAt\": \"2014-04-13T22:41:47.384Z\",\n    \"updatedAt\": \"1981-01-01T13:39:55.276Z\"\n  }\n}",
                  "code": 200,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "bd082d91-16c3-b701-9a3a-5f1af6b12704",
                  "name": "OK",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"amount\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"date\": \"<date>\",\n  \"vendor\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\",\n  \"key_1\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "OK"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 400,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "78663382-4921-f3c5-a7cc-df42588768a5",
                  "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"amount\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"date\": \"<date>\",\n  \"vendor\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\",\n  \"key_1\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Bad Request"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 401,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "3b63948c-25b4-042f-e853-fcb54f2113b4",
                  "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"amount\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"date\": \"<date>\",\n  \"vendor\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\",\n  \"key_1\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Unauthorized"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 403,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "247846dd-c6bd-9620-18dd-534cf65b12f4",
                  "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"amount\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"date\": \"<date>\",\n  \"vendor\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\",\n  \"key_1\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Forbidden"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 404,
                  "cookie": [],
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "b19eec39-45ca-f5e1-c8a0-166974b93d5e",
                  "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"amount\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"date\": \"<date>\",\n  \"vendor\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\",\n  \"key_1\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Not Found"
                },
                {
                  "_postman_previewlanguage": "json",
                  "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
                  "code": 429,
                  "cookie": [],
                  "header": [
                    {
                      "description": "Seconds until the current rate-limit window resets.",
                      "disabled": false,
                      "key": "Retry-After",
                      "value": "8297"
                    },
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "id": "2e0c81e5-a478-d48a-908a-ad3df5246037",
                  "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
                  "originalRequest": {
                    "body": {
                      "mode": "raw",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      },
                      "raw": "{\n  \"category\": \"<string>\",\n  \"description\": \"<string>\",\n  \"amount\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"date\": \"<date>\",\n  \"vendor\": \"<string,null>\",\n  \"notes\": \"<string,null>\",\n  \"key_0\": \"string\",\n  \"key_1\": \"string\"\n}"
                    },
                    "header": [
                      {
                        "description": {
                          "content": "Added as a part of security scheme: bearer",
                          "type": "text/plain"
                        },
                        "key": "Authorization",
                        "value": "Bearer <token>"
                      },
                      {
                        "key": "Accept",
                        "value": "application/json"
                      }
                    ],
                    "method": "PATCH",
                    "url": {
                      "host": [
                        "{{baseUrl}}"
                      ],
                      "path": [
                        "expenses",
                        ":id"
                      ],
                      "query": [],
                      "variable": [
                        {
                          "description": "(Required) ",
                          "disabled": false,
                          "key": "id",
                          "type": "any",
                          "value": "<uuid>"
                        }
                      ]
                    }
                  },
                  "status": "Too Many Requests"
                }
              ]
            }
          ],
          "name": "{id}"
        }
      ],
      "name": "expenses"
    },
    {
      "event": [],
      "id": "88c58f55-b936-0cf2-f479-ad0da077dcd1",
      "item": [
        {
          "event": [],
          "id": "00fbf6cc-6643-8f32-e3f7-8c24cc1109b4",
          "name": "List a vessel's documents",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Excludes archived documents by default. Supports `?cursor=` pagination on the\nnon-search path only — `?search=` runs a bounded hybrid vector+ILIKE query (matching\ntitle/category/OCR text) and does not support cursor. Document *creation* is not on\nthe public surface — the only create route requires a multipart file upload, not a\nmetadata-only body (see `docs/api.md` \"Known gaps\").\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's documents",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "documents",
                "vessel",
                ":vesselId"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"9506bf36-4dc8-a6e1-8724-74fea2d765e6\",\n      \"vesselId\": \"c768dae1-ae87-00c6-9231-316a2d67962c\",\n      \"scope\": \"global\",\n      \"documentType\": \"string\",\n      \"category\": \"string\",\n      \"title\": \"string\",\n      \"fileUrl\": \"string\",\n      \"fileSize\": 8359,\n      \"mimeType\": \"string\",\n      \"equipmentId\": \"f5bb5101-2f72-349f-f512-8f765eb25221\",\n      \"expirationDate\": \"1954-03-11T03:53:15.532Z\",\n      \"uploadedBy\": \"e5b83783-b3b7-8fdc-2116-1ee6e951fdcd\",\n      \"tags\": [\n        \"string\",\n        \"string\"\n      ],\n      \"status\": \"active\",\n      \"currentVersion\": 943,\n      \"createdAt\": \"1971-11-19T11:34:22.288Z\",\n      \"updatedAt\": \"1978-10-18T08:46:45.968Z\"\n    },\n    {\n      \"id\": \"4216ff05-fcc1-7c2d-3221-b683816cb00a\",\n      \"vesselId\": \"352fd516-27fc-a1cd-2cd0-bc596e2b64ce\",\n      \"scope\": \"global\",\n      \"documentType\": \"string\",\n      \"category\": \"string\",\n      \"title\": \"string\",\n      \"fileUrl\": \"string\",\n      \"fileSize\": 897,\n      \"mimeType\": \"string\",\n      \"equipmentId\": \"3f9d9277-982d-4ad4-fbcf-f66b45628ab5\",\n      \"expirationDate\": \"2020-01-04T01:48:32.164Z\",\n      \"uploadedBy\": \"8760942e-80a7-9331-d538-edf2ca297d7f\",\n      \"tags\": [\n        \"string\",\n        \"string\"\n      ],\n      \"status\": \"active\",\n      \"currentVersion\": 1856,\n      \"createdAt\": \"1964-04-29T14:31:36.739Z\",\n      \"updatedAt\": \"1992-06-21T04:56:43.112Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 3153,\n    \"hasMore\": false,\n    \"total\": 7547,\n    \"cursor\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "32f6ad64-4ba1-c9a5-1598-ccfc0fd1067d",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f9ca08a1-e1da-d3aa-e69e-910d0578182f",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "489aaef4-819c-283f-41af-ed02ca73a646",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "74b8b311-a294-317a-d396-277c60cb5b56",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "dbd0b818-8006-6918-14a5-2b3eacac2dd6",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "11911a10-2039-5a1b-d41b-c7fc4c4a255c",
          "name": "Get a document",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Returns a single document with vessel, linked equipment (if any), and uploader.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "Get a document",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "documents",
                ":id"
              ],
              "query": [],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "id",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"68cc39e3-6b49-845a-90d6-81688fdf7143\",\n    \"vesselId\": \"41804bd9-5285-54f1-de52-5954301b2309\",\n    \"scope\": \"global\",\n    \"documentType\": \"string\",\n    \"category\": \"string\",\n    \"title\": \"string\",\n    \"fileUrl\": \"string\",\n    \"fileSize\": 5828,\n    \"mimeType\": \"string\",\n    \"equipmentId\": \"3157cce9-d02f-af6a-0e1a-7cf4cc1b2d37\",\n    \"expirationDate\": \"1981-04-06T00:52:36.973Z\",\n    \"uploadedBy\": \"df3ecbc4-3e10-64e0-3e18-bc0d6cab56c0\",\n    \"tags\": [\n      \"string\",\n      \"string\"\n    ],\n    \"status\": \"active\",\n    \"currentVersion\": 3686,\n    \"createdAt\": \"1950-01-23T05:56:12.629Z\",\n    \"updatedAt\": \"1991-11-20T18:25:08.517Z\",\n    \"vessel\": {\n      \"id\": \"f133523e-3d1c-62b2-19b5-95f8954243cd\",\n      \"ownerId\": \"df9bb74c-7bbf-5947-a163-97ffd7c52e5f\",\n      \"vesselName\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\",\n      \"year\": 110,\n      \"hullNumber\": \"string\",\n      \"vesselType\": \"string\",\n      \"status\": \"string\",\n      \"engineType\": \"string\",\n      \"engineCount\": 3373,\n      \"homePort\": \"string\",\n      \"homePortLat\": 9020.973183214664,\n      \"homePortLon\": 6080.67920897156,\n      \"homePortResolved\": \"string\",\n      \"homePortNeedsReview\": false,\n      \"length\": 7844.924768432975,\n      \"beam\": 8483.869929332286,\n      \"draft\": 1044.5163934491575,\n      \"airDraft\": 7550.7064908742905,\n      \"loaTotal\": 841.7256805114448,\n      \"displacement\": 9431,\n      \"grossTonnage\": 7892,\n      \"fuelCapacity\": 5576,\n      \"waterCapacity\": 6049,\n      \"maxAccommodation\": 1130,\n      \"maxRange\": 1938,\n      \"cruisingSpeed\": 8060.841448605061,\n      \"imoNumber\": \"string\",\n      \"mmsi\": \"string\",\n      \"callSign\": \"string\",\n      \"flagState\": \"string\",\n      \"complianceProfile\": \"string\",\n      \"multiCurrencyEnabled\": false,\n      \"defaultCurrency\": \"string\",\n      \"photo\": \"string\",\n      \"dataConsistencyWarnings\": [\n        {\n          \"key_0\": \"string\",\n          \"key_1\": 1543,\n          \"key_2\": 3678,\n          \"key_3\": true\n        },\n        {\n          \"key_0\": true,\n          \"key_1\": 1746\n        }\n      ],\n      \"owner\": {\n        \"id\": \"b954d869-398b-36f3-f98a-bf834086b736\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"captain\": {\n        \"id\": \"1a5c5017-ef21-0867-9bb0-0594c77002c6\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"permissions\": {\n        \"key_0\": 3431.2891587615013,\n        \"key_1\": 6514\n      },\n      \"isLocked\": true,\n      \"lockReason\": \"string\",\n      \"createdAt\": \"1954-03-24T11:53:32.031Z\",\n      \"updatedAt\": \"1999-02-04T15:31:57.474Z\"\n    },\n    \"equipment\": {\n      \"id\": \"12f1fcd1-c5df-f289-9155-f669f5e2f67d\",\n      \"vesselId\": \"79581ee3-8a97-1225-a103-ae3844b81f99\",\n      \"systemCategory\": \"string\",\n      \"vesselSystemId\": \"8edea92b-2ecf-1aa4-6b9b-72a2117c5ae6\",\n      \"vesselSystem\": {\n        \"id\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"systemKey\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"name\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      },\n      \"equipmentType\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\",\n      \"serialNumber\": \"string\",\n      \"installDate\": \"2005-10-13T00:14:25.817Z\",\n      \"hoursAtInstall\": 7661,\n      \"currentHours\": 9136,\n      \"currentHoursAt\": \"2021-04-26T02:18:00.264Z\",\n      \"capacity\": {\n        \"key_0\": true,\n        \"key_1\": false,\n        \"key_2\": false\n      },\n      \"locationOnVessel\": \"string\",\n      \"warrantyExpires\": \"1972-08-13T19:13:48.268Z\",\n      \"photos\": [\n        \"string\",\n        \"string\"\n      ],\n      \"notes\": \"string\",\n      \"equipmentModelId\": \"f4a57ef5-3fe6-0a12-6b66-5e6a55524718\",\n      \"equipmentModel\": {\n        \"id\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"modelName\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"manualUrl\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"manualContentHash\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"manualDiscoveryStatus\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"manualDiscoverySource\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"maintenanceSchedule\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"manufacturer\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        \"maintenanceKits\": {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      },\n      \"hoursStatus\": [\n        {\n          \"key_0\": false,\n          \"key_1\": 843.2915690355003\n        },\n        {\n          \"key_0\": 5230,\n          \"key_1\": \"string\",\n          \"key_2\": \"string\",\n          \"key_3\": true\n        }\n      ],\n      \"archivedAt\": \"1992-12-21T10:11:07.099Z\",\n      \"createdAt\": \"1998-10-27T21:56:53.248Z\",\n      \"updatedAt\": \"1996-03-27T05:24:48.553Z\"\n    },\n    \"uploader\": {\n      \"id\": \"267f0a38-e998-fae7-cdaa-ee7d8c360a18\",\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"email\": \"string\",\n      \"phone\": \"string\",\n      \"profilePhoto\": \"string\"\n    }\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "a872b449-1b4f-8fa4-4e99-0eba58011109",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "54623bab-e768-4c66-de91-b1700da7c058",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "ae26ce8a-fe86-9174-7e1e-8ef0267ab47b",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "109c9347-e766-80d5-32ee-86af00bc9db4",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 404,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "1e78d9d4-1a90-04ca-ad1c-68d36c0e8583",
              "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Not Found"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "711e215e-eb58-ac37-a2f8-4b652ae3e67d",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "documents",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        }
      ],
      "name": "documents"
    },
    {
      "event": [],
      "id": "3830208f-fe5e-7f49-8c81-fd3c7779d928",
      "name": "List a vessel's STCW certifications",
      "protocolProfileBehavior": {
        "disableBodyPruning": true
      },
      "request": {
        "auth": null,
        "description": {
          "content": "Supports `?cursor=` pagination. \"Get one certification by ID\" is not on the public surface — no such route exists internally (see `docs/api.md` \"Known gaps\").",
          "type": "text/plain"
        },
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "method": "GET",
        "name": "List a vessel's STCW certifications",
        "url": {
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "stcw",
            ":vesselId",
            "certifications"
          ],
          "query": [
            {
              "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
              "disabled": false,
              "key": "cursor",
              "value": "<string>"
            },
            {
              "disabled": false,
              "key": "limit",
              "value": "25"
            }
          ],
          "variable": [
            {
              "description": "(Required) ",
              "disabled": false,
              "key": "vesselId",
              "type": "any",
              "value": "<uuid>"
            }
          ]
        }
      },
      "response": [
        {
          "_postman_previewlanguage": "json",
          "body": "{\n  \"data\": [\n    {\n      \"id\": \"d9b284a5-ac04-ede1-ca8e-5868e0b387a3\",\n      \"vesselId\": \"d0215ea4-1b7c-1be5-7c64-40fe974fcb60\",\n      \"userId\": \"ee82cdd1-01ce-9c96-b00d-51202e98642a\",\n      \"certType\": \"string\",\n      \"certName\": \"string\",\n      \"issuingAuthority\": \"string\",\n      \"certNumber\": \"string\",\n      \"issuedDate\": \"1990-01-19T12:40:34.814Z\",\n      \"expiryDate\": \"1991-04-26T23:10:35.968Z\",\n      \"status\": \"active\",\n      \"notes\": \"string\",\n      \"user\": {\n        \"id\": \"a91871eb-ef7a-dfdd-a29f-a722b8628b97\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"document\": {\n        \"id\": \"20b10635-0efa-bdc6-453e-e14b282e0fba\",\n        \"title\": \"string\",\n        \"fileUrl\": \"string\",\n        \"fileSize\": 5776,\n        \"mimeType\": \"string\"\n      },\n      \"stcwDetail\": {\n        \"id\": \"8d581759-9e7c-f0c4-6c6a-ce1292336fe3\",\n        \"stcwCode\": \"string\",\n        \"stcwRegulation\": \"string\",\n        \"flagState\": \"string\",\n        \"endorsementNumber\": \"string\",\n        \"endorsementExpiry\": \"1970-07-29T08:00:15.806Z\",\n        \"revalidationDate\": \"1988-12-17T01:44:17.946Z\",\n        \"limitations\": \"string\"\n      },\n      \"createdAt\": \"2004-06-04T14:04:52.049Z\",\n      \"updatedAt\": \"1946-08-22T23:11:29.659Z\"\n    },\n    {\n      \"id\": \"63b81fa4-b862-5dba-021e-31d836489800\",\n      \"vesselId\": \"db4333d2-a4f8-6fc5-e692-0bece9b30767\",\n      \"userId\": \"6ed91159-1027-8fc9-261c-928959fe594d\",\n      \"certType\": \"string\",\n      \"certName\": \"string\",\n      \"issuingAuthority\": \"string\",\n      \"certNumber\": \"string\",\n      \"issuedDate\": \"2006-08-27T06:54:44.245Z\",\n      \"expiryDate\": \"2024-05-11T07:01:10.200Z\",\n      \"status\": \"active\",\n      \"notes\": \"string\",\n      \"user\": {\n        \"id\": \"1e6b712b-455f-6ba8-c966-1c36593bd725\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"document\": {\n        \"id\": \"eb6a7fa5-0faa-46fd-f8a9-e5913399cb0e\",\n        \"title\": \"string\",\n        \"fileUrl\": \"string\",\n        \"fileSize\": 9390,\n        \"mimeType\": \"string\"\n      },\n      \"stcwDetail\": {\n        \"id\": \"97a3f22d-9ff2-9cc1-0e9d-eb944cb7ff59\",\n        \"stcwCode\": \"string\",\n        \"stcwRegulation\": \"string\",\n        \"flagState\": \"string\",\n        \"endorsementNumber\": \"string\",\n        \"endorsementExpiry\": \"1958-02-28T04:10:10.073Z\",\n        \"revalidationDate\": \"1984-04-26T15:13:30.291Z\",\n        \"limitations\": \"string\"\n      },\n      \"createdAt\": \"1986-02-09T04:08:52.863Z\",\n      \"updatedAt\": \"1987-01-05T13:52:48.577Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 305,\n    \"hasMore\": false,\n    \"total\": 917,\n    \"cursor\": \"string\"\n  }\n}",
          "code": 200,
          "cookie": [],
          "header": [
            {
              "key": "Content-Type",
              "value": "application/json"
            }
          ],
          "id": "846abbfa-4183-9434-7c07-f759e5f89e4f",
          "name": "OK",
          "originalRequest": {
            "body": {},
            "header": [
              {
                "description": {
                  "content": "Added as a part of security scheme: bearer",
                  "type": "text/plain"
                },
                "key": "Authorization",
                "value": "Bearer <token>"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "stcw",
                ":vesselId",
                "certifications"
              ],
              "query": [
                {
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "status": "OK"
        },
        {
          "_postman_previewlanguage": "json",
          "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
          "code": 400,
          "cookie": [],
          "header": [
            {
              "key": "Content-Type",
              "value": "application/json"
            }
          ],
          "id": "7179c21a-7d97-af13-bc52-dc2cd0fd97fa",
          "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
          "originalRequest": {
            "body": {},
            "header": [
              {
                "description": {
                  "content": "Added as a part of security scheme: bearer",
                  "type": "text/plain"
                },
                "key": "Authorization",
                "value": "Bearer <token>"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "stcw",
                ":vesselId",
                "certifications"
              ],
              "query": [
                {
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "status": "Bad Request"
        },
        {
          "_postman_previewlanguage": "json",
          "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
          "code": 401,
          "cookie": [],
          "header": [
            {
              "key": "Content-Type",
              "value": "application/json"
            }
          ],
          "id": "2eff57a9-c997-639b-60a9-5e71e17aa944",
          "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
          "originalRequest": {
            "body": {},
            "header": [
              {
                "description": {
                  "content": "Added as a part of security scheme: bearer",
                  "type": "text/plain"
                },
                "key": "Authorization",
                "value": "Bearer <token>"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "stcw",
                ":vesselId",
                "certifications"
              ],
              "query": [
                {
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "status": "Unauthorized"
        },
        {
          "_postman_previewlanguage": "json",
          "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
          "code": 403,
          "cookie": [],
          "header": [
            {
              "key": "Content-Type",
              "value": "application/json"
            }
          ],
          "id": "e3cc62e8-1d10-539f-705c-cc23a6e92329",
          "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
          "originalRequest": {
            "body": {},
            "header": [
              {
                "description": {
                  "content": "Added as a part of security scheme: bearer",
                  "type": "text/plain"
                },
                "key": "Authorization",
                "value": "Bearer <token>"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "stcw",
                ":vesselId",
                "certifications"
              ],
              "query": [
                {
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "status": "Forbidden"
        },
        {
          "_postman_previewlanguage": "json",
          "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
          "code": 429,
          "cookie": [],
          "header": [
            {
              "description": "Seconds until the current rate-limit window resets.",
              "disabled": false,
              "key": "Retry-After",
              "value": "8297"
            },
            {
              "key": "Content-Type",
              "value": "application/json"
            }
          ],
          "id": "a7413099-a5f4-4fd9-1707-b01408bee9ab",
          "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
          "originalRequest": {
            "body": {},
            "header": [
              {
                "description": {
                  "content": "Added as a part of security scheme: bearer",
                  "type": "text/plain"
                },
                "key": "Authorization",
                "value": "Bearer <token>"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "stcw",
                ":vesselId",
                "certifications"
              ],
              "query": [
                {
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "status": "Too Many Requests"
        }
      ]
    },
    {
      "event": [],
      "id": "52a87539-f1a7-b81a-7623-79f128b3d72a",
      "item": [
        {
          "event": [],
          "id": "d3b8be3f-5b16-6327-8286-bea3a7b323a0",
          "name": "List a vessel's charter bookings",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Supports `?cursor=` pagination. Bookings are annotated `isLocked: true` when the owning vessel's plan has downgraded below the `bookings_guests` feature tier.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's charter bookings",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "charter",
                ":vesselId",
                "bookings"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"c9eec772-48bd-ba1f-1605-1d489d49b24e\",\n      \"vesselId\": \"fc63fef5-9552-13fe-b8f2-945d5e391500\",\n      \"bookingReference\": \"string\",\n      \"charterCompany\": \"string\",\n      \"startDate\": \"1984-10-31T21:22:48.213Z\",\n      \"endDate\": \"2005-12-20T19:55:32.515Z\",\n      \"embarkPort\": \"string\",\n      \"disembarkPort\": \"string\",\n      \"itinerary\": {\n        \"key_0\": \"string\",\n        \"key_1\": 9504,\n        \"key_2\": 879\n      },\n      \"totalPrice\": \"string\",\n      \"currency\": \"string\",\n      \"depositPaid\": \"string\",\n      \"status\": \"in_progress\",\n      \"specialRequests\": \"string\",\n      \"provisioningNotes\": \"string\",\n      \"notes\": \"string\",\n      \"apaAmount\": \"string\",\n      \"apaPercentage\": \"string\",\n      \"deliveryFee\": \"string\",\n      \"redeliveryFee\": \"string\",\n      \"taxRate\": \"string\",\n      \"taxAmount\": \"string\",\n      \"brokerName\": \"string\",\n      \"brokerCommission\": \"string\",\n      \"agentCommission\": \"string\",\n      \"isArchived\": false,\n      \"isLocked\": true,\n      \"lockReason\": \"string\",\n      \"guests\": [\n        {\n          \"id\": \"8a54e1c5-9b08-9659-d8a0-22df56f1ab2a\",\n          \"profile\": {\n            \"id\": \"d8d9aab4-fcf3-ed4a-95cc-9137d8f01b6e\",\n            \"firstName\": \"string\",\n            \"lastName\": \"string\",\n            \"email\": \"string\",\n            \"isVip\": true,\n            \"profilePhoto\": \"string\"\n          }\n        },\n        {\n          \"id\": \"a6dfb41f-2f5a-1797-c7a5-17a77c1e4c81\",\n          \"profile\": {\n            \"id\": \"b4bde273-7e3b-e0b8-efe4-74bad60a32b0\",\n            \"firstName\": \"string\",\n            \"lastName\": \"string\",\n            \"email\": \"string\",\n            \"isVip\": false,\n            \"profilePhoto\": \"string\"\n          }\n        }\n      ],\n      \"createdAt\": \"1984-12-06T21:23:17.124Z\",\n      \"updatedAt\": \"2002-03-30T20:15:10.026Z\"\n    },\n    {\n      \"id\": \"82249b9b-7987-cf31-ab2c-9856236ac4f2\",\n      \"vesselId\": \"83e84a0b-8314-cbaf-2fe4-a5122ac25807\",\n      \"bookingReference\": \"string\",\n      \"charterCompany\": \"string\",\n      \"startDate\": \"2023-07-02T04:47:58.906Z\",\n      \"endDate\": \"1950-04-12T17:18:01.970Z\",\n      \"embarkPort\": \"string\",\n      \"disembarkPort\": \"string\",\n      \"itinerary\": {\n        \"key_0\": false,\n        \"key_1\": \"string\"\n      },\n      \"totalPrice\": \"string\",\n      \"currency\": \"string\",\n      \"depositPaid\": \"string\",\n      \"status\": \"inquiry\",\n      \"specialRequests\": \"string\",\n      \"provisioningNotes\": \"string\",\n      \"notes\": \"string\",\n      \"apaAmount\": \"string\",\n      \"apaPercentage\": \"string\",\n      \"deliveryFee\": \"string\",\n      \"redeliveryFee\": \"string\",\n      \"taxRate\": \"string\",\n      \"taxAmount\": \"string\",\n      \"brokerName\": \"string\",\n      \"brokerCommission\": \"string\",\n      \"agentCommission\": \"string\",\n      \"isArchived\": true,\n      \"isLocked\": true,\n      \"lockReason\": \"string\",\n      \"guests\": [\n        {\n          \"id\": \"2f35f29b-7268-4396-b376-2129f8e619ce\",\n          \"profile\": {\n            \"id\": \"99aadfb0-3615-5e47-641e-082347b77d23\",\n            \"firstName\": \"string\",\n            \"lastName\": \"string\",\n            \"email\": \"string\",\n            \"isVip\": false,\n            \"profilePhoto\": \"string\"\n          }\n        },\n        {\n          \"id\": \"eb94db82-a0b5-b4a0-6180-47651f30126c\",\n          \"profile\": {\n            \"id\": \"d988e9be-842c-7837-752f-786ad6460ba9\",\n            \"firstName\": \"string\",\n            \"lastName\": \"string\",\n            \"email\": \"string\",\n            \"isVip\": false,\n            \"profilePhoto\": \"string\"\n          }\n        }\n      ],\n      \"createdAt\": \"1949-01-08T00:30:36.917Z\",\n      \"updatedAt\": \"1973-09-12T14:16:05.009Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 7470,\n    \"hasMore\": false,\n    \"total\": 5872,\n    \"cursor\": \"string\"\n  },\n  \"meta\": {\n    \"key_0\": true\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "d47a2f9b-29ef-4d2c-b90b-1ffe06326e37",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "b0416e68-a46e-54b8-ef93-b3375eac0379",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "06560f27-97c3-3ffa-a629-18f510223890",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "b1ea37e9-ac56-f47e-f7d7-3d9464abc33d",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "e4a155d9-dc29-595c-9ef8-f235ad8a1eeb",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "be36cc0b-5126-d262-0d3a-343efd6dab7e",
          "name": "Create a charter booking",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"bookingReference\": \"<string>\",\n  \"startDate\": \"<dateTime>\",\n  \"endDate\": \"<dateTime>\",\n  \"charterCompany\": \"<string>\",\n  \"embarkPort\": \"<string>\",\n  \"disembarkPort\": \"<string>\",\n  \"itinerary\": {\n    \"key_0\": 8744.52043324709,\n    \"key_1\": 6666.682423092425\n  },\n  \"totalPrice\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"depositPaid\": \"<string>\",\n  \"status\": \"confirmed\",\n  \"specialRequests\": \"<string>\",\n  \"provisioningNotes\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"apaAmount\": \"<string>\",\n  \"apaPercentage\": \"<string>\",\n  \"deliveryFee\": \"<string>\",\n  \"redeliveryFee\": \"<string>\",\n  \"taxRate\": \"<string>\",\n  \"taxAmount\": \"<string>\",\n  \"brokerName\": \"<string>\",\n  \"brokerCommission\": \"<string>\",\n  \"agentCommission\": \"<string>\"\n}"
            },
            "description": {
              "content": "Requires `bookingReference`, `startDate`, `endDate`. Financial fields (`totalPrice`, `apaAmount`, broker/agent commissions, etc.) are silently stripped unless the vessel's plan is Pro tier or higher for `bookings_guests`.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "POST",
            "name": "Create a charter booking",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "charter",
                ":vesselId",
                "bookings"
              ],
              "query": [],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"596abe5d-64d7-6e75-faae-bd92569ead6b\",\n    \"vesselId\": \"eabff0ae-b8a8-2c0b-1a3f-3996bd7bc1ed\",\n    \"bookingReference\": \"string\",\n    \"charterCompany\": \"string\",\n    \"startDate\": \"1958-05-10T04:37:49.811Z\",\n    \"endDate\": \"2023-12-16T10:31:18.636Z\",\n    \"embarkPort\": \"string\",\n    \"disembarkPort\": \"string\",\n    \"itinerary\": {\n      \"key_0\": 7786.720206495374,\n      \"key_1\": \"string\"\n    },\n    \"totalPrice\": \"string\",\n    \"currency\": \"string\",\n    \"depositPaid\": \"string\",\n    \"status\": \"in_progress\",\n    \"specialRequests\": \"string\",\n    \"provisioningNotes\": \"string\",\n    \"notes\": \"string\",\n    \"apaAmount\": \"string\",\n    \"apaPercentage\": \"string\",\n    \"deliveryFee\": \"string\",\n    \"redeliveryFee\": \"string\",\n    \"taxRate\": \"string\",\n    \"taxAmount\": \"string\",\n    \"brokerName\": \"string\",\n    \"brokerCommission\": \"string\",\n    \"agentCommission\": \"string\",\n    \"isArchived\": false,\n    \"isLocked\": false,\n    \"lockReason\": \"string\",\n    \"guests\": [\n      {\n        \"id\": \"e03d1872-3b7d-80e2-7d65-b884849b356b\",\n        \"profile\": {\n          \"id\": \"2dc02c35-5cc8-fc28-fee5-ecea292d6dcd\",\n          \"firstName\": \"string\",\n          \"lastName\": \"string\",\n          \"email\": \"string\",\n          \"isVip\": true,\n          \"profilePhoto\": \"string\"\n        }\n      },\n      {\n        \"id\": \"2579a5ec-7ecf-297e-23f0-c49c2f091691\",\n        \"profile\": {\n          \"id\": \"addb0a55-9acd-ba78-4eb8-4c086ee8af1e\",\n          \"firstName\": \"string\",\n          \"lastName\": \"string\",\n          \"email\": \"string\",\n          \"isVip\": false,\n          \"profilePhoto\": \"string\"\n        }\n      }\n    ],\n    \"createdAt\": \"2019-02-12T21:52:01.686Z\",\n    \"updatedAt\": \"2002-11-03T21:35:36.869Z\"\n  }\n}",
              "code": 201,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "b8f419aa-5511-7c5b-f412-6dbd28fab6d5",
              "name": "Created",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"bookingReference\": \"<string>\",\n  \"startDate\": \"<dateTime>\",\n  \"endDate\": \"<dateTime>\",\n  \"charterCompany\": \"<string>\",\n  \"embarkPort\": \"<string>\",\n  \"disembarkPort\": \"<string>\",\n  \"itinerary\": {\n    \"key_0\": true\n  },\n  \"totalPrice\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"depositPaid\": \"<string>\",\n  \"status\": \"confirmed\",\n  \"specialRequests\": \"<string>\",\n  \"provisioningNotes\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"apaAmount\": \"<string>\",\n  \"apaPercentage\": \"<string>\",\n  \"deliveryFee\": \"<string>\",\n  \"redeliveryFee\": \"<string>\",\n  \"taxRate\": \"<string>\",\n  \"taxAmount\": \"<string>\",\n  \"brokerName\": \"<string>\",\n  \"brokerCommission\": \"<string>\",\n  \"agentCommission\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Created"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "a03370d3-4e3a-dee5-76f7-a2583ba9864f",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"bookingReference\": \"<string>\",\n  \"startDate\": \"<dateTime>\",\n  \"endDate\": \"<dateTime>\",\n  \"charterCompany\": \"<string>\",\n  \"embarkPort\": \"<string>\",\n  \"disembarkPort\": \"<string>\",\n  \"itinerary\": {\n    \"key_0\": true\n  },\n  \"totalPrice\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"depositPaid\": \"<string>\",\n  \"status\": \"confirmed\",\n  \"specialRequests\": \"<string>\",\n  \"provisioningNotes\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"apaAmount\": \"<string>\",\n  \"apaPercentage\": \"<string>\",\n  \"deliveryFee\": \"<string>\",\n  \"redeliveryFee\": \"<string>\",\n  \"taxRate\": \"<string>\",\n  \"taxAmount\": \"<string>\",\n  \"brokerName\": \"<string>\",\n  \"brokerCommission\": \"<string>\",\n  \"agentCommission\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "7b8bbb9e-f0f7-1513-f4c2-48e26b648390",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"bookingReference\": \"<string>\",\n  \"startDate\": \"<dateTime>\",\n  \"endDate\": \"<dateTime>\",\n  \"charterCompany\": \"<string>\",\n  \"embarkPort\": \"<string>\",\n  \"disembarkPort\": \"<string>\",\n  \"itinerary\": {\n    \"key_0\": true\n  },\n  \"totalPrice\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"depositPaid\": \"<string>\",\n  \"status\": \"confirmed\",\n  \"specialRequests\": \"<string>\",\n  \"provisioningNotes\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"apaAmount\": \"<string>\",\n  \"apaPercentage\": \"<string>\",\n  \"deliveryFee\": \"<string>\",\n  \"redeliveryFee\": \"<string>\",\n  \"taxRate\": \"<string>\",\n  \"taxAmount\": \"<string>\",\n  \"brokerName\": \"<string>\",\n  \"brokerCommission\": \"<string>\",\n  \"agentCommission\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "e3f7b093-3035-c328-7702-d5b70afa1b98",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"bookingReference\": \"<string>\",\n  \"startDate\": \"<dateTime>\",\n  \"endDate\": \"<dateTime>\",\n  \"charterCompany\": \"<string>\",\n  \"embarkPort\": \"<string>\",\n  \"disembarkPort\": \"<string>\",\n  \"itinerary\": {\n    \"key_0\": true\n  },\n  \"totalPrice\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"depositPaid\": \"<string>\",\n  \"status\": \"confirmed\",\n  \"specialRequests\": \"<string>\",\n  \"provisioningNotes\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"apaAmount\": \"<string>\",\n  \"apaPercentage\": \"<string>\",\n  \"deliveryFee\": \"<string>\",\n  \"redeliveryFee\": \"<string>\",\n  \"taxRate\": \"<string>\",\n  \"taxAmount\": \"<string>\",\n  \"brokerName\": \"<string>\",\n  \"brokerCommission\": \"<string>\",\n  \"agentCommission\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 409,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "fa6e47e3-19bb-335c-b9f4-ee9c619799a5",
              "name": "The supplied `Idempotency-Key` was already used with a different request body.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"bookingReference\": \"<string>\",\n  \"startDate\": \"<dateTime>\",\n  \"endDate\": \"<dateTime>\",\n  \"charterCompany\": \"<string>\",\n  \"embarkPort\": \"<string>\",\n  \"disembarkPort\": \"<string>\",\n  \"itinerary\": {\n    \"key_0\": true\n  },\n  \"totalPrice\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"depositPaid\": \"<string>\",\n  \"status\": \"confirmed\",\n  \"specialRequests\": \"<string>\",\n  \"provisioningNotes\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"apaAmount\": \"<string>\",\n  \"apaPercentage\": \"<string>\",\n  \"deliveryFee\": \"<string>\",\n  \"redeliveryFee\": \"<string>\",\n  \"taxRate\": \"<string>\",\n  \"taxAmount\": \"<string>\",\n  \"brokerName\": \"<string>\",\n  \"brokerCommission\": \"<string>\",\n  \"agentCommission\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Conflict"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "74a62d29-2e3a-a655-66ee-0c42f26c7070",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"bookingReference\": \"<string>\",\n  \"startDate\": \"<dateTime>\",\n  \"endDate\": \"<dateTime>\",\n  \"charterCompany\": \"<string>\",\n  \"embarkPort\": \"<string>\",\n  \"disembarkPort\": \"<string>\",\n  \"itinerary\": {\n    \"key_0\": true\n  },\n  \"totalPrice\": \"<string>\",\n  \"currency\": \"<string>\",\n  \"depositPaid\": \"<string>\",\n  \"status\": \"confirmed\",\n  \"specialRequests\": \"<string>\",\n  \"provisioningNotes\": \"<string>\",\n  \"notes\": \"<string>\",\n  \"apaAmount\": \"<string>\",\n  \"apaPercentage\": \"<string>\",\n  \"deliveryFee\": \"<string>\",\n  \"redeliveryFee\": \"<string>\",\n  \"taxRate\": \"<string>\",\n  \"taxAmount\": \"<string>\",\n  \"brokerName\": \"<string>\",\n  \"brokerCommission\": \"<string>\",\n  \"agentCommission\": \"<string>\"\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "78515123-1e4e-e4f4-3d9d-8fc477a5076c",
          "name": "Get a charter booking",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Returns `{ data: { booking: BookingDetail, planContext: {...} } }` — the booking is\nnested under a `booking` key (not returned bare), matching what the underlying\nhandler emits before envelope normalization wraps the whole thing in `data`.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "Get a charter booking",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "charter",
                ":vesselId",
                "bookings",
                ":bookingId"
              ],
              "query": [],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                },
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "bookingId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"booking\": {\n      \"id\": \"31f06fc9-cb94-2c77-7ed2-dcabd1836095\",\n      \"vesselId\": \"90b60157-8394-e535-cfb9-786bcd88908b\",\n      \"bookingReference\": \"string\",\n      \"charterCompany\": \"string\",\n      \"startDate\": \"1955-08-22T11:58:19.857Z\",\n      \"endDate\": \"1979-04-30T08:23:34.337Z\",\n      \"embarkPort\": \"string\",\n      \"disembarkPort\": \"string\",\n      \"itinerary\": {\n        \"key_0\": 9153\n      },\n      \"totalPrice\": \"string\",\n      \"currency\": \"string\",\n      \"depositPaid\": \"string\",\n      \"status\": \"in_progress\",\n      \"specialRequests\": \"string\",\n      \"provisioningNotes\": \"string\",\n      \"notes\": \"string\",\n      \"apaAmount\": \"string\",\n      \"apaPercentage\": \"string\",\n      \"deliveryFee\": \"string\",\n      \"redeliveryFee\": \"string\",\n      \"taxRate\": \"string\",\n      \"taxAmount\": \"string\",\n      \"brokerName\": \"string\",\n      \"brokerCommission\": \"string\",\n      \"agentCommission\": \"string\",\n      \"isArchived\": true,\n      \"isLocked\": false,\n      \"lockReason\": \"string\",\n      \"guests\": [\n        {\n          \"id\": \"15c06e34-57fc-b131-c4be-8f9d410ab9a3\",\n          \"profile\": {\n            \"id\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"firstName\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"lastName\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"email\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"isVip\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"profilePhoto\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            }\n          }\n        },\n        {\n          \"id\": \"861e2022-deb4-af35-0607-1529285df51c\",\n          \"profile\": {\n            \"id\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"firstName\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"lastName\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"email\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"isVip\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            },\n            \"profilePhoto\": {\n              \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n            }\n          }\n        }\n      ],\n      \"createdAt\": \"2024-09-18T15:29:56.835Z\",\n      \"updatedAt\": \"1953-03-30T02:34:11.769Z\",\n      \"provisioningList\": [\n        {\n          \"key_0\": true,\n          \"key_1\": true\n        },\n        {\n          \"key_0\": 918.8703377731144\n        }\n      ],\n      \"payments\": [\n        {\n          \"key_0\": 654.3459254316986\n        },\n        {\n          \"key_0\": true,\n          \"key_1\": 3983.6792298592627\n        }\n      ],\n      \"guestPortals\": [\n        {\n          \"id\": \"12ceec99-4574-5865-dfa6-b0b7b806c376\",\n          \"accessToken\": \"string\",\n          \"isActive\": true,\n          \"expiresAt\": \"2018-09-16T23:35:00.987Z\"\n        },\n        {\n          \"id\": \"a419109e-accc-ce5b-0423-5a954adc397f\",\n          \"accessToken\": \"string\",\n          \"isActive\": false,\n          \"expiresAt\": \"1973-07-14T01:15:11.978Z\"\n        }\n      ]\n    },\n    \"planContext\": {\n      \"isEnabled\": true,\n      \"currentTier\": \"string\"\n    }\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "b06a84d6-1cd9-8dab-7c68-d3b5482d5af2",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings",
                    ":bookingId"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    },
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "bookingId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "ab61cbfc-bc22-2e0c-62b7-0b2ea9f90903",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings",
                    ":bookingId"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    },
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "bookingId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "8c3af858-763a-6406-0c5a-884e447e8e48",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings",
                    ":bookingId"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    },
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "bookingId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "8e7d70b0-4788-4030-ed02-feb8db5c208a",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings",
                    ":bookingId"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    },
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "bookingId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 404,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "aa1013ea-f676-1ef4-3bdd-7214b9552cb7",
              "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings",
                    ":bookingId"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    },
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "bookingId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Not Found"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "ae67eef2-3bac-bac6-1b64-9377e559d028",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "charter",
                    ":vesselId",
                    "bookings",
                    ":bookingId"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    },
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "bookingId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        }
      ],
      "name": "charter/{vesselId}/bookings"
    },
    {
      "event": [],
      "id": "10f007e2-b661-c4a9-65ad-a4d376f50ccc",
      "item": [
        {
          "event": [],
          "id": "f255fb56-9584-289f-ce88-80c344991d8a",
          "name": "Create a trip log",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"departureTime\": \"<dateTime>\",\n  \"departureLocation\": {\n    \"key_0\": false\n  },\n  \"arrivalTime\": \"<dateTime>\",\n  \"arrivalLocation\": {\n    \"key_0\": false,\n    \"key_1\": 9614,\n    \"key_2\": false\n  },\n  \"captain\": \"<string>\",\n  \"crew\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"purpose\": \"<string>\",\n  \"distanceNm\": \"<number>\",\n  \"fuelConsumed\": \"<number>\",\n  \"maxSpeed\": \"<number>\",\n  \"avgSpeed\": \"<number>\",\n  \"weatherSummary\": \"<string>\",\n  \"passengerCount\": \"<integer>\",\n  \"notes\": \"<string>\",\n  \"status\": \"<string>\",\n  \"engineInputs\": [\n    {\n      \"key_0\": 9771.837368607521,\n      \"key_1\": 1514.986481051892\n    },\n    {\n      \"key_0\": true\n    }\n  ],\n  \"fuelInputs\": [\n    {\n      \"key_0\": false,\n      \"key_1\": 9646,\n      \"key_2\": 4469.762544613332\n    },\n    {\n      \"key_0\": true,\n      \"key_1\": 7529.895862098783,\n      \"key_2\": \"string\",\n      \"key_3\": 8167\n    }\n  ]\n}"
            },
            "description": {
              "content": "Requires `vesselId` and `departureTime`. `status: in_progress` with `engineInputs`/`fuelInputs` triggers vessel-vital write-back at trip start.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "POST",
            "name": "Create a trip log",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "trips"
              ],
              "query": [],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"0def1dbc-a0de-2a7e-92fb-8b48c34ba4a9\",\n    \"vesselId\": \"db3748f9-375e-26e0-0256-234142ff1bdb\",\n    \"tripName\": \"string\",\n    \"tripReference\": \"string\",\n    \"departureTime\": \"1976-10-26T03:57:34.976Z\",\n    \"departureLocation\": {\n      \"key_0\": 1878,\n      \"key_1\": 9796\n    },\n    \"arrivalTime\": \"1978-05-11T01:05:45.091Z\",\n    \"arrivalLocation\": {\n      \"key_0\": 4631.784241646528,\n      \"key_1\": true,\n      \"key_2\": 9317\n    },\n    \"captain\": \"string\",\n    \"crew\": [\n      \"string\",\n      \"string\"\n    ],\n    \"purpose\": \"string\",\n    \"distanceNm\": 3430.625186301768,\n    \"fuelConsumed\": 556.4827937632799,\n    \"maxSpeed\": 6208.390470128506,\n    \"avgSpeed\": 4905.134150758386,\n    \"weatherSummary\": \"string\",\n    \"passengerCount\": 1030,\n    \"notes\": \"string\",\n    \"status\": \"in_progress\",\n    \"engineHoursStart\": {\n      \"key_0\": 9096.198624465615,\n      \"key_1\": 5326.968510635197\n    },\n    \"engineHoursEnd\": {\n      \"key_0\": 749,\n      \"key_1\": true,\n      \"key_2\": false\n    },\n    \"createdAt\": \"2007-02-24T16:50:26.197Z\",\n    \"updatedAt\": \"1967-06-16T02:23:05.798Z\"\n  }\n}",
              "code": 201,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "bf67ed82-de53-3b27-62b0-e86dabdf896e",
              "name": "Created",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"departureTime\": \"<dateTime>\",\n  \"departureLocation\": {\n    \"key_0\": false\n  },\n  \"arrivalTime\": \"<dateTime>\",\n  \"arrivalLocation\": {\n    \"key_0\": 3186.4996487274766,\n    \"key_1\": 6424\n  },\n  \"captain\": \"<string>\",\n  \"crew\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"purpose\": \"<string>\",\n  \"distanceNm\": \"<number>\",\n  \"fuelConsumed\": \"<number>\",\n  \"maxSpeed\": \"<number>\",\n  \"avgSpeed\": \"<number>\",\n  \"weatherSummary\": \"<string>\",\n  \"passengerCount\": \"<integer>\",\n  \"notes\": \"<string>\",\n  \"status\": \"<string>\",\n  \"engineInputs\": [\n    {\n      \"key_0\": false,\n      \"key_1\": 9832\n    },\n    {\n      \"key_0\": true\n    }\n  ],\n  \"fuelInputs\": [\n    {\n      \"key_0\": 1031\n    },\n    {\n      \"key_0\": 2288.8893098570406\n    }\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Created"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f3bc0d0c-f02c-fd52-5ad0-b7d130e6cf36",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"departureTime\": \"<dateTime>\",\n  \"departureLocation\": {\n    \"key_0\": false\n  },\n  \"arrivalTime\": \"<dateTime>\",\n  \"arrivalLocation\": {\n    \"key_0\": 3186.4996487274766,\n    \"key_1\": 6424\n  },\n  \"captain\": \"<string>\",\n  \"crew\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"purpose\": \"<string>\",\n  \"distanceNm\": \"<number>\",\n  \"fuelConsumed\": \"<number>\",\n  \"maxSpeed\": \"<number>\",\n  \"avgSpeed\": \"<number>\",\n  \"weatherSummary\": \"<string>\",\n  \"passengerCount\": \"<integer>\",\n  \"notes\": \"<string>\",\n  \"status\": \"<string>\",\n  \"engineInputs\": [\n    {\n      \"key_0\": false,\n      \"key_1\": 9832\n    },\n    {\n      \"key_0\": true\n    }\n  ],\n  \"fuelInputs\": [\n    {\n      \"key_0\": 1031\n    },\n    {\n      \"key_0\": 2288.8893098570406\n    }\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "10cce54a-57e9-e887-d576-a95ccb1abb42",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"departureTime\": \"<dateTime>\",\n  \"departureLocation\": {\n    \"key_0\": false\n  },\n  \"arrivalTime\": \"<dateTime>\",\n  \"arrivalLocation\": {\n    \"key_0\": 3186.4996487274766,\n    \"key_1\": 6424\n  },\n  \"captain\": \"<string>\",\n  \"crew\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"purpose\": \"<string>\",\n  \"distanceNm\": \"<number>\",\n  \"fuelConsumed\": \"<number>\",\n  \"maxSpeed\": \"<number>\",\n  \"avgSpeed\": \"<number>\",\n  \"weatherSummary\": \"<string>\",\n  \"passengerCount\": \"<integer>\",\n  \"notes\": \"<string>\",\n  \"status\": \"<string>\",\n  \"engineInputs\": [\n    {\n      \"key_0\": false,\n      \"key_1\": 9832\n    },\n    {\n      \"key_0\": true\n    }\n  ],\n  \"fuelInputs\": [\n    {\n      \"key_0\": 1031\n    },\n    {\n      \"key_0\": 2288.8893098570406\n    }\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "a711b2a6-7d46-70a3-5bf1-51b2a8cd7f5b",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"departureTime\": \"<dateTime>\",\n  \"departureLocation\": {\n    \"key_0\": false\n  },\n  \"arrivalTime\": \"<dateTime>\",\n  \"arrivalLocation\": {\n    \"key_0\": 3186.4996487274766,\n    \"key_1\": 6424\n  },\n  \"captain\": \"<string>\",\n  \"crew\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"purpose\": \"<string>\",\n  \"distanceNm\": \"<number>\",\n  \"fuelConsumed\": \"<number>\",\n  \"maxSpeed\": \"<number>\",\n  \"avgSpeed\": \"<number>\",\n  \"weatherSummary\": \"<string>\",\n  \"passengerCount\": \"<integer>\",\n  \"notes\": \"<string>\",\n  \"status\": \"<string>\",\n  \"engineInputs\": [\n    {\n      \"key_0\": false,\n      \"key_1\": 9832\n    },\n    {\n      \"key_0\": true\n    }\n  ],\n  \"fuelInputs\": [\n    {\n      \"key_0\": 1031\n    },\n    {\n      \"key_0\": 2288.8893098570406\n    }\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 409,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "10d1ad27-13f0-d3f2-6f50-778c83f4bef6",
              "name": "The supplied `Idempotency-Key` was already used with a different request body.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"departureTime\": \"<dateTime>\",\n  \"departureLocation\": {\n    \"key_0\": false\n  },\n  \"arrivalTime\": \"<dateTime>\",\n  \"arrivalLocation\": {\n    \"key_0\": 3186.4996487274766,\n    \"key_1\": 6424\n  },\n  \"captain\": \"<string>\",\n  \"crew\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"purpose\": \"<string>\",\n  \"distanceNm\": \"<number>\",\n  \"fuelConsumed\": \"<number>\",\n  \"maxSpeed\": \"<number>\",\n  \"avgSpeed\": \"<number>\",\n  \"weatherSummary\": \"<string>\",\n  \"passengerCount\": \"<integer>\",\n  \"notes\": \"<string>\",\n  \"status\": \"<string>\",\n  \"engineInputs\": [\n    {\n      \"key_0\": false,\n      \"key_1\": 9832\n    },\n    {\n      \"key_0\": true\n    }\n  ],\n  \"fuelInputs\": [\n    {\n      \"key_0\": 1031\n    },\n    {\n      \"key_0\": 2288.8893098570406\n    }\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Conflict"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "d1eb698c-9f7d-a3a9-781a-b7e9720981e2",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"vesselId\": \"<uuid>\",\n  \"departureTime\": \"<dateTime>\",\n  \"departureLocation\": {\n    \"key_0\": false\n  },\n  \"arrivalTime\": \"<dateTime>\",\n  \"arrivalLocation\": {\n    \"key_0\": 3186.4996487274766,\n    \"key_1\": 6424\n  },\n  \"captain\": \"<string>\",\n  \"crew\": [\n    \"<string>\",\n    \"<string>\"\n  ],\n  \"purpose\": \"<string>\",\n  \"distanceNm\": \"<number>\",\n  \"fuelConsumed\": \"<number>\",\n  \"maxSpeed\": \"<number>\",\n  \"avgSpeed\": \"<number>\",\n  \"weatherSummary\": \"<string>\",\n  \"passengerCount\": \"<integer>\",\n  \"notes\": \"<string>\",\n  \"status\": \"<string>\",\n  \"engineInputs\": [\n    {\n      \"key_0\": false,\n      \"key_1\": 9832\n    },\n    {\n      \"key_0\": true\n    }\n  ],\n  \"fuelInputs\": [\n    {\n      \"key_0\": 1031\n    },\n    {\n      \"key_0\": 2288.8893098570406\n    }\n  ]\n}"
                },
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips"
                  ],
                  "query": [],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "b231bf5f-f204-1b8a-ecbf-437da322cbd8",
          "name": "List a vessel's trip logs",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Supports `?cursor=` pagination on every sort except `sortBy=duration` (a raw-SQL computed-column sort with no defined cursor ordering — falls back to `?page=` semantics).",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's trip logs",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "trips",
                "vessel",
                ":vesselId"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"54642bca-810f-a415-710f-eb033b071ce2\",\n      \"vesselId\": \"44b8a235-49e1-52c7-b8e2-36376aa1141e\",\n      \"tripName\": \"string\",\n      \"tripReference\": \"string\",\n      \"departureTime\": \"1961-07-12T19:26:09.264Z\",\n      \"departureLocation\": {\n        \"key_0\": 6392,\n        \"key_1\": false\n      },\n      \"arrivalTime\": \"1985-02-11T00:14:21.888Z\",\n      \"arrivalLocation\": {\n        \"key_0\": \"string\",\n        \"key_1\": 1818.166533485055\n      },\n      \"captain\": \"string\",\n      \"crew\": [\n        \"string\",\n        \"string\"\n      ],\n      \"purpose\": \"string\",\n      \"distanceNm\": 2781.623755581677,\n      \"fuelConsumed\": 9738.531259354204,\n      \"maxSpeed\": 3494.412924628705,\n      \"avgSpeed\": 3734.285153914243,\n      \"weatherSummary\": \"string\",\n      \"passengerCount\": 3396,\n      \"notes\": \"string\",\n      \"status\": \"cancelled\",\n      \"engineHoursStart\": {\n        \"key_0\": 9843\n      },\n      \"engineHoursEnd\": {\n        \"key_0\": 7228,\n        \"key_1\": 2119,\n        \"key_2\": false,\n        \"key_3\": 5982\n      },\n      \"createdAt\": \"2019-09-06T03:36:47.645Z\",\n      \"updatedAt\": \"1946-08-01T15:28:02.986Z\"\n    },\n    {\n      \"id\": \"9b962656-db30-398a-6289-9dea5235d82c\",\n      \"vesselId\": \"fa42bffe-a3ee-1596-bbf9-3989aac94211\",\n      \"tripName\": \"string\",\n      \"tripReference\": \"string\",\n      \"departureTime\": \"1985-08-07T12:57:33.549Z\",\n      \"departureLocation\": {\n        \"key_0\": 19.90089425817132\n      },\n      \"arrivalTime\": \"2024-05-18T21:08:16.787Z\",\n      \"arrivalLocation\": {\n        \"key_0\": 166.2469608709216\n      },\n      \"captain\": \"string\",\n      \"crew\": [\n        \"string\",\n        \"string\"\n      ],\n      \"purpose\": \"string\",\n      \"distanceNm\": 5849.47956725955,\n      \"fuelConsumed\": 5431.14026542753,\n      \"maxSpeed\": 140.5268465168774,\n      \"avgSpeed\": 96.95990243926644,\n      \"weatherSummary\": \"string\",\n      \"passengerCount\": 6963,\n      \"notes\": \"string\",\n      \"status\": \"cancelled\",\n      \"engineHoursStart\": {\n        \"key_0\": true\n      },\n      \"engineHoursEnd\": {\n        \"key_0\": \"string\"\n      },\n      \"createdAt\": \"1950-08-20T19:34:08.460Z\",\n      \"updatedAt\": \"1973-03-20T02:44:46.526Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 6009,\n    \"hasMore\": false,\n    \"total\": 2166,\n    \"cursor\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "901e2efb-732f-d225-a94a-bd022a4946fd",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "d49a8313-fa42-48bc-5fe1-7014a29d763b",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "3c2d4b1c-5827-a390-a43b-c01b830f89e8",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "6b3f9bd1-4d5f-1420-801c-f632e690c261",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "23ead71b-b3c9-d356-fac9-2ee463a8a082",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    "vessel",
                    ":vesselId"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "ec172a62-bff5-72a7-1787-45e05ea636fd",
          "name": "Get a trip log",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Lazily backfills geocoded lat/lon on departure/arrival locations that only have a place name, returning the enriched coordinates immediately.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "Get a trip log",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "trips",
                ":id"
              ],
              "query": [],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "id",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"id\": \"a39ba8e6-ab3f-74e7-5adc-42737183dc3b\",\n    \"vesselId\": \"79222bc1-3a5a-f29d-0d3f-719c287c817b\",\n    \"tripName\": \"string\",\n    \"tripReference\": \"string\",\n    \"departureTime\": \"1966-04-14T12:16:42.024Z\",\n    \"departureLocation\": {\n      \"key_0\": false\n    },\n    \"arrivalTime\": \"1984-12-11T10:02:57.973Z\",\n    \"arrivalLocation\": {\n      \"key_0\": true\n    },\n    \"captain\": \"string\",\n    \"crew\": [\n      \"string\",\n      \"string\"\n    ],\n    \"purpose\": \"string\",\n    \"distanceNm\": 5940.440371632576,\n    \"fuelConsumed\": 3548.1393826194108,\n    \"maxSpeed\": 793.9637033268809,\n    \"avgSpeed\": 9586.022016592324,\n    \"weatherSummary\": \"string\",\n    \"passengerCount\": 8800,\n    \"notes\": \"string\",\n    \"status\": \"in_progress\",\n    \"engineHoursStart\": {\n      \"key_0\": 5662,\n      \"key_1\": 4397,\n      \"key_2\": 4108.1258351914585,\n      \"key_3\": \"string\",\n      \"key_4\": false\n    },\n    \"engineHoursEnd\": {\n      \"key_0\": false,\n      \"key_1\": 1241.9259222224355,\n      \"key_2\": \"string\"\n    },\n    \"createdAt\": \"1949-08-02T01:16:17.012Z\",\n    \"updatedAt\": \"1957-11-08T01:20:37.748Z\",\n    \"vessel\": {\n      \"id\": \"c151d261-a424-ebc0-ab2b-e920fb7d6c3b\",\n      \"vesselName\": \"string\",\n      \"make\": \"string\",\n      \"model\": \"string\"\n    }\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "d0206a41-c0f1-e41e-e7de-b96dcab032c5",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "5fc555d8-e9af-0a80-12aa-73a9629a115e",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "5ae8285e-5d97-f464-df2b-a2a70ff1866f",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "25cc47f8-be17-7265-fea4-1e5ef8057174",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 404,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "3150c771-9136-4aa9-e201-731d4b11b809",
              "name": "Resource doesn't exist, or the caller has no access to it (404 is used instead of 403 to avoid confirming existence).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Not Found"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f2d6fc85-0641-1121-d0e4-d85de4b21a3a",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "trips",
                    ":id"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "id",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        }
      ],
      "name": "trips"
    },
    {
      "event": [],
      "id": "7dae1755-435d-565e-bd3e-02efa8d5d0d8",
      "item": [
        {
          "event": [],
          "id": "200807e0-f931-ac51-e263-178ece07b07b",
          "name": "List a vessel's ISM drill cadences",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Returns EVERY active `DrillCadence` row for the vessel (typically fewer than 15 — one\nper ISM-required drill type), plus pre-computed `overdue` and `dueSoon` sub-lists. Not\na flat list at the top level and not cursor-paginated — this is a bounded ISM registry,\nnot a growing log (see `docs/api.md` \"Known gaps\").\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's ISM drill cadences",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "compliance",
                "vessel",
                ":vesselId",
                "drills",
                "cadences"
              ],
              "query": [],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"cadences\": [\n      {\n        \"id\": \"abb483b7-8ef9-d67d-af48-14722b18b4dd\",\n        \"drillType\": \"string\",\n        \"frequency\": \"string\",\n        \"isActive\": false,\n        \"lastCompletedAt\": \"1996-11-18T13:24:31.782Z\",\n        \"nextDueAt\": \"1957-12-07T08:56:11.849Z\",\n        \"alertDaysBeforeDue\": 5282,\n        \"checklistTemplateId\": \"0fc3247b-fd7a-39b3-2488-d76367fbcc8b\",\n        \"cadenceOverrideNote\": \"string\",\n        \"createdAt\": \"2025-06-03T10:07:59.663Z\",\n        \"updatedAt\": \"1958-04-19T09:41:40.701Z\"\n      },\n      {\n        \"id\": \"8c106b11-6fd0-45ff-7415-b9c08f53f851\",\n        \"drillType\": \"string\",\n        \"frequency\": \"string\",\n        \"isActive\": false,\n        \"lastCompletedAt\": \"1954-02-23T12:18:05.132Z\",\n        \"nextDueAt\": \"1989-10-07T19:07:04.038Z\",\n        \"alertDaysBeforeDue\": 1029,\n        \"checklistTemplateId\": \"ca7be2c6-2c85-16a2-3b41-b1d7bda9444f\",\n        \"cadenceOverrideNote\": \"string\",\n        \"createdAt\": \"1978-06-11T10:44:21.160Z\",\n        \"updatedAt\": \"1970-09-21T04:45:23.625Z\"\n      }\n    ],\n    \"overdue\": [\n      {\n        \"id\": \"898ba1fb-f280-7a7d-f958-083f4abd332e\",\n        \"drillType\": \"string\",\n        \"frequency\": \"string\",\n        \"isActive\": true,\n        \"lastCompletedAt\": \"1981-11-02T23:24:59.834Z\",\n        \"nextDueAt\": \"2010-02-09T03:07:18.919Z\",\n        \"alertDaysBeforeDue\": 7460,\n        \"checklistTemplateId\": \"a084934b-8abb-a5b4-daec-16a0b19c00fa\",\n        \"cadenceOverrideNote\": \"string\",\n        \"createdAt\": \"1985-11-01T17:24:39.462Z\",\n        \"updatedAt\": \"1964-04-28T15:47:41.197Z\",\n        \"daysOverdue\": 3066\n      },\n      {\n        \"id\": \"b9002f33-212e-aa50-26bc-9584e2c65d1c\",\n        \"drillType\": \"string\",\n        \"frequency\": \"string\",\n        \"isActive\": true,\n        \"lastCompletedAt\": \"1989-07-07T12:09:00.897Z\",\n        \"nextDueAt\": \"1960-12-14T02:57:51.041Z\",\n        \"alertDaysBeforeDue\": 6573,\n        \"checklistTemplateId\": \"336fbb4b-edd7-45f9-87c6-1d23c2cda362\",\n        \"cadenceOverrideNote\": \"string\",\n        \"createdAt\": \"1975-04-22T05:48:16.831Z\",\n        \"updatedAt\": \"2025-11-21T14:25:27.873Z\",\n        \"daysOverdue\": 2\n      }\n    ],\n    \"dueSoon\": [\n      {\n        \"id\": \"19c5b6b8-8aea-ada1-9b6c-a40867c24b3a\",\n        \"drillType\": \"string\",\n        \"frequency\": \"string\",\n        \"isActive\": true,\n        \"lastCompletedAt\": \"2017-12-12T07:02:33.916Z\",\n        \"nextDueAt\": \"1987-06-29T00:54:29.235Z\",\n        \"alertDaysBeforeDue\": 6449,\n        \"checklistTemplateId\": \"f49f9bb5-685e-13a2-c4a0-c959e3d571f2\",\n        \"cadenceOverrideNote\": \"string\",\n        \"createdAt\": \"1966-05-14T16:27:04.382Z\",\n        \"updatedAt\": \"1987-08-10T20:34:02.687Z\"\n      },\n      {\n        \"id\": \"ccec1045-4919-408a-42e3-06efa3b01212\",\n        \"drillType\": \"string\",\n        \"frequency\": \"string\",\n        \"isActive\": true,\n        \"lastCompletedAt\": \"1992-09-29T21:04:15.146Z\",\n        \"nextDueAt\": \"1991-08-20T11:04:37.536Z\",\n        \"alertDaysBeforeDue\": 7866,\n        \"checklistTemplateId\": \"e316f6a6-f6ac-ff10-1027-42a5e93f6b7e\",\n        \"cadenceOverrideNote\": \"string\",\n        \"createdAt\": \"1985-12-31T01:32:23.715Z\",\n        \"updatedAt\": \"1948-11-20T23:22:47.390Z\"\n      }\n    ]\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "1bddd8f1-b677-ba7b-4393-4572f2b2efff",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "drills",
                    "cadences"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "d38e8f83-e429-7b5f-cdf9-b9b5ac4062bf",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "drills",
                    "cadences"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "9ec1f0a1-5ec1-ac36-60e0-61145fb541b3",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "drills",
                    "cadences"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "879a0c98-8ff3-a649-9e66-17b2c14bf872",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "drills",
                    "cadences"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "401aaef3-ab92-6b30-e03a-c688b33e0458",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "drills",
                    "cadences"
                  ],
                  "query": [],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "bdff8355-4e2c-49b8-8bbf-60f0282fa4ff",
          "name": "List a vessel's permits to work",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Supports `?cursor=` pagination. Returns a trimmed summary projection (not every `PermitToWork` column) — see `Permit` schema.",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's permits to work",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "compliance",
                "vessel",
                ":vesselId",
                "ptw"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"f25061f4-2a10-5aca-3674-ee9446e47c6e\",\n      \"permitType\": \"string\",\n      \"title\": \"string\",\n      \"status\": \"string\",\n      \"issuedAt\": \"1957-01-22T23:08:41.034Z\",\n      \"validFrom\": \"1988-03-28T17:40:05.273Z\",\n      \"validUntil\": \"2019-05-08T01:14:18.374Z\",\n      \"checklistInstanceId\": \"523265f7-13e1-5385-cdf8-9e88fef042fe\",\n      \"holderName\": \"string\",\n      \"issuerName\": \"string\",\n      \"isExpired\": false\n    },\n    {\n      \"id\": \"83e065f6-efdc-bd88-26e7-abcb7d14f541\",\n      \"permitType\": \"string\",\n      \"title\": \"string\",\n      \"status\": \"string\",\n      \"issuedAt\": \"1951-07-16T21:21:23.880Z\",\n      \"validFrom\": \"2016-05-09T23:39:49.344Z\",\n      \"validUntil\": \"2012-06-01T23:01:58.698Z\",\n      \"checklistInstanceId\": \"a547f313-1196-782d-2705-bcaece381448\",\n      \"holderName\": \"string\",\n      \"issuerName\": \"string\",\n      \"isExpired\": true\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 743,\n    \"hasMore\": true,\n    \"total\": 3463,\n    \"cursor\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "a844f345-c5ff-f5b7-857b-43bcd998c48a",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "ptw"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "824ac233-5454-b841-94e5-bf0aaf863e0d",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "ptw"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "74ee784b-8188-0eba-bd56-f3ac57cd7c6d",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "ptw"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "68da104b-514e-1628-b463-58f9fcfdab47",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "ptw"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "aecc80f0-60a8-c44e-40ab-f9e7315f4d0d",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "ptw"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "77a446df-e62b-a9a6-0775-f99b65ffb631",
          "name": "List a vessel's MARPOL regulatory record entries",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "ORB Annex I (oily-water), GRB Annex V (garbage), and BWM (ballast water) log\nentries. Supports `?cursor=` pagination — cursor mode always sorts\n`(createdAt DESC, id DESC)`, NOT `operationDate` (the default page-mode sort field),\nbecause `operationDate` isn't guaranteed unique/monotonic.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "List a vessel's MARPOL regulatory record entries",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "compliance",
                "vessel",
                ":vesselId",
                "regulatory-records"
              ],
              "query": [
                {
                  "description": "Opaque pagination cursor from a previous response's `pagination.cursor`. Omit this\nparam entirely for the first page of cursor mode; pass `cursor=` (empty) is also\naccepted as \"start from the beginning in cursor mode.\" Omitting `cursor` altogether\n(not even as an empty string) falls back to legacy `?page=` semantics on endpoints\nthat still support it.\n",
                  "disabled": false,
                  "key": "cursor",
                  "value": "<string>"
                },
                {
                  "disabled": false,
                  "key": "limit",
                  "value": "25"
                }
              ],
              "variable": [
                {
                  "description": "(Required) ",
                  "disabled": false,
                  "key": "vesselId",
                  "type": "any",
                  "value": "<uuid>"
                }
              ]
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": [\n    {\n      \"id\": \"5a80b431-bc90-7f9e-745d-92a3dd348eef\",\n      \"vesselId\": \"60ef5066-4bf5-f3f0-e5e8-7d566372e59c\",\n      \"entryType\": \"orb_annex_i\",\n      \"operationDate\": \"1946-07-20T06:17:29.422Z\",\n      \"operationTime\": \"string\",\n      \"positionLat\": \"string\",\n      \"positionLon\": \"string\",\n      \"positionText\": \"string\",\n      \"officerUserId\": \"865531c8-7a42-f3e3-86b2-fce130280e32\",\n      \"officer\": {\n        \"id\": \"4fcf3bf8-924b-9cf7-4520-3903724d1045\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"signatureUrl\": \"string\",\n      \"operationCode\": \"string\",\n      \"operationDescription\": \"string\",\n      \"quantityLitres\": \"string\",\n      \"disposalMethod\": \"string\",\n      \"retentionTankId\": \"string\",\n      \"grbCategory\": \"string\",\n      \"grbDisposalLocation\": \"string\",\n      \"grbMassKg\": \"string\",\n      \"bwmOperationType\": \"string\",\n      \"bwmSourceWater\": \"string\",\n      \"bwmTreatmentSystem\": \"string\",\n      \"bwmVolumeM3\": \"string\",\n      \"receiptUrl\": \"string\",\n      \"createdAt\": \"2008-01-30T04:19:33.065Z\",\n      \"updatedAt\": \"1975-09-25T02:10:26.847Z\"\n    },\n    {\n      \"id\": \"d3e0abbb-f8b0-648a-d00e-d0f27bfb99b1\",\n      \"vesselId\": \"8737bef4-e1b3-d8db-3211-9b5e7cd15ed3\",\n      \"entryType\": \"grb_annex_v\",\n      \"operationDate\": \"1966-04-13T03:41:52.957Z\",\n      \"operationTime\": \"string\",\n      \"positionLat\": \"string\",\n      \"positionLon\": \"string\",\n      \"positionText\": \"string\",\n      \"officerUserId\": \"75838eec-145d-0d2e-e6dc-6255c5d562b3\",\n      \"officer\": {\n        \"id\": \"6f7b6de7-283d-077a-3eb8-143735b7693f\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"email\": \"string\",\n        \"phone\": \"string\",\n        \"profilePhoto\": \"string\"\n      },\n      \"signatureUrl\": \"string\",\n      \"operationCode\": \"string\",\n      \"operationDescription\": \"string\",\n      \"quantityLitres\": \"string\",\n      \"disposalMethod\": \"string\",\n      \"retentionTankId\": \"string\",\n      \"grbCategory\": \"string\",\n      \"grbDisposalLocation\": \"string\",\n      \"grbMassKg\": \"string\",\n      \"bwmOperationType\": \"string\",\n      \"bwmSourceWater\": \"string\",\n      \"bwmTreatmentSystem\": \"string\",\n      \"bwmVolumeM3\": \"string\",\n      \"receiptUrl\": \"string\",\n      \"createdAt\": \"1998-04-05T18:05:17.625Z\",\n      \"updatedAt\": \"1951-11-12T11:55:05.668Z\"\n    }\n  ],\n  \"pagination\": {\n    \"limit\": 1732,\n    \"hasMore\": false,\n    \"total\": 5200,\n    \"cursor\": \"string\"\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "89583421-9ccb-4fef-a78d-7b08e5bdfa1c",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "regulatory-records"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "8d23efe8-9f72-504b-13bc-585bffbd326d",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "regulatory-records"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "0fa4be1f-0b08-c5e2-50ba-c87e3ee62cc6",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "regulatory-records"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "a020bcc6-2f5a-f735-91c6-b5182b093207",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "regulatory-records"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "7c6a5270-f81a-1766-0261-6a24094622df",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "compliance",
                    "vessel",
                    ":vesselId",
                    "regulatory-records"
                  ],
                  "query": [
                    {
                      "key": "cursor",
                      "value": "<string>"
                    },
                    {
                      "key": "limit",
                      "value": "25"
                    }
                  ],
                  "variable": [
                    {
                      "description": "(Required) ",
                      "disabled": false,
                      "key": "vesselId",
                      "type": "any",
                      "value": "<uuid>"
                    }
                  ]
                }
              },
              "status": "Too Many Requests"
            }
          ]
        }
      ],
      "name": "compliance/vessel/{vesselId}"
    },
    {
      "event": [],
      "id": "de777c3e-1a2f-d97b-1b80-3db575e47759",
      "item": [
        {
          "event": [],
          "id": "fcb4ab3e-2dff-4a2c-a0cf-9f711f1e72ef",
          "name": "Fleet revenue/expense/fee summary for a calendar year",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Aggregates charter revenue, expenses, and management fees (USD-normalized) across\nevery vessel the caller's API key can access — no `vesselId` path/query param;\nscope is the key's full accessible fleet. `orgScope` narrowing is a structural no-op\non this endpoint since there's no single vesselId to check against.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "Fleet revenue/expense/fee summary for a calendar year",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "fleet",
                "revenue-summary"
              ],
              "query": [
                {
                  "description": "Calendar year (UTC). Defaults to the current year.",
                  "disabled": false,
                  "key": "year",
                  "value": "<integer>"
                }
              ],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"year\": 4311,\n    \"vessels\": [\n      {\n        \"vesselId\": \"152a33c1-ce36-17b3-9c6b-a4202bd6e5e2\",\n        \"vesselName\": \"string\",\n        \"revenue\": 9154.736553318799,\n        \"expenses\": 3596.041607670486,\n        \"fees\": 8909.648633562028,\n        \"net\": 2763.117935974151\n      },\n      {\n        \"vesselId\": \"34f64308-1d21-2724-2bc0-6f3ec667b1d5\",\n        \"vesselName\": \"string\",\n        \"revenue\": 3208.788714837283,\n        \"expenses\": 555.8812338858843,\n        \"fees\": 9534.502634778619,\n        \"net\": 5436.021252535284\n      }\n    ],\n    \"totals\": {\n      \"revenue\": 4536.9800250045955,\n      \"expenses\": 4273.130153305829,\n      \"fees\": 5749.4722586125135,\n      \"net\": 2374.493759125471\n    }\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "64e7c1eb-fd10-48df-5a8f-1120e2e2b052",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "revenue-summary"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "6f4d1ecd-457e-39bc-ff41-209b0355a8b0",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "revenue-summary"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "23a5dbd5-943c-4cb3-2d94-00b0eb2379b7",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "revenue-summary"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "7f9bc226-7fb3-80db-fb0a-c33ecb9947bc",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "revenue-summary"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "c3b448d4-de4c-53ea-7b98-6a03ed227cad",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "revenue-summary"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        },
        {
          "event": [],
          "id": "66814159-a625-ca2d-c410-7c394731ec59",
          "name": "Per-vessel revenue/expense/budget comparison for a calendar year",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "auth": null,
            "description": {
              "content": "Like `revenue-summary` but adds budget-vs-actual and can be narrowed to a single\nvessel via `?vesselId=` (still no path param — filtered server-side against the\ncaller's accessible fleet). `hasApproximations: true` means at least one row lacked a\ncaptured exchange rate and fell back to a current-rate approximation.\n",
              "type": "text/plain"
            },
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "method": "GET",
            "name": "Per-vessel revenue/expense/budget comparison for a calendar year",
            "url": {
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "fleet",
                "vessel-comparison"
              ],
              "query": [
                {
                  "disabled": false,
                  "key": "year",
                  "value": "<integer>"
                },
                {
                  "description": "Restrict to a single vessel (must be within the caller's accessible fleet).",
                  "disabled": false,
                  "key": "vesselId",
                  "value": "<uuid>"
                }
              ],
              "variable": []
            }
          },
          "response": [
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"data\": {\n    \"year\": 6551,\n    \"vessels\": [\n      {\n        \"vesselId\": \"d15f56eb-e079-d54b-6c4a-3600ffc81364\",\n        \"vesselName\": \"string\",\n        \"revenue\": 9917.12526185438,\n        \"expenses\": 4092.438234947622,\n        \"net\": 3829.172276891768,\n        \"budgeted\": 9537.825975567102,\n        \"budgetVariance\": 3415.761466603726\n      },\n      {\n        \"vesselId\": \"a3ba4059-f648-e7c4-d26e-5a27c9d88e25\",\n        \"vesselName\": \"string\",\n        \"revenue\": 2436.580848880112,\n        \"expenses\": 8550.487430766225,\n        \"net\": 1259.9576963111758,\n        \"budgeted\": 64.13579219952226,\n        \"budgetVariance\": 8335.94704279676\n      }\n    ],\n    \"hasApproximations\": false\n  }\n}",
              "code": 200,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "4e443fb5-13e3-367d-a540-e6a55a46911f",
              "name": "OK",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "vessel-comparison"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    },
                    {
                      "key": "vesselId",
                      "value": "<uuid>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "OK"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 400,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f535e14d-99d1-ce4e-4278-e0d88302da80",
              "name": "Request does not match the documented schema, or failed a handler-level business-rule check.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "vessel-comparison"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    },
                    {
                      "key": "vesselId",
                      "value": "<uuid>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Bad Request"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 401,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "f4a6abff-d82e-bcf5-5e62-8a9e3ca95c0e",
              "name": "Missing, malformed, revoked, or expired API key. No distinction is made in the response between these cases (non-enumeration).",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "vessel-comparison"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    },
                    {
                      "key": "vesselId",
                      "value": "<uuid>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Unauthorized"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 403,
              "cookie": [],
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "854790de-3206-f3f2-b2ca-3e8870d81a2d",
              "name": "The API key's `moduleScopes` or `orgScope` doesn't cover this request, or the impersonated user's real role/ownership doesn't permit it.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "vessel-comparison"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    },
                    {
                      "key": "vesselId",
                      "value": "<uuid>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Forbidden"
            },
            {
              "_postman_previewlanguage": "json",
              "body": "{\n  \"error\": \"string\",\n  \"code\": \"string\",\n  \"field\": \"string\",\n  \"meta\": {\n    \"key_0\": \"string\"\n  }\n}",
              "code": 429,
              "cookie": [],
              "header": [
                {
                  "description": "Seconds until the current rate-limit window resets.",
                  "disabled": false,
                  "key": "Retry-After",
                  "value": "8297"
                },
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "id": "754e4af1-0841-2ba7-b922-88525be0799b",
              "name": "Per-key hourly rate limit exceeded. `Retry-After` header and `meta.retryAfterMs` both indicate the wait.",
              "originalRequest": {
                "body": {},
                "header": [
                  {
                    "description": {
                      "content": "Added as a part of security scheme: bearer",
                      "type": "text/plain"
                    },
                    "key": "Authorization",
                    "value": "Bearer <token>"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "method": "GET",
                "url": {
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "fleet",
                    "vessel-comparison"
                  ],
                  "query": [
                    {
                      "key": "year",
                      "value": "<integer>"
                    },
                    {
                      "key": "vesselId",
                      "value": "<uuid>"
                    }
                  ],
                  "variable": []
                }
              },
              "status": "Too Many Requests"
            }
          ]
        }
      ],
      "name": "fleet"
    }
  ],
  "variable": [
    {
      "key": "baseUrl",
      "type": "string",
      "value": "https://api.owlmar.com/v1"
    }
  ]
}
