{
  "openapi" : "3.0.4",
  "tags" : [ {
    "name" : "Admin: API Tokens",
    "description" : "Administer API tokens across all users."
  }, {
    "name" : "Admin: Audit Logs",
    "description" : "Review administrator audit events and security-relevant activity."
  }, {
    "name" : "Admin: Dashboard",
    "description" : "Read administrator dashboard metrics and system statistics."
  }, {
    "name" : "Admin: Invitations",
    "description" : "Manage account invitations and registration links."
  }, {
    "name" : "Admin: OIDC Providers",
    "description" : "Manage OpenID Connect provider configuration."
  }, {
    "name" : "Admin: System Settings",
    "description" : "View, update, reset, and test system-wide settings."
  }, {
    "name" : "Admin: Timeline Regeneration",
    "description" : "Preview, create, inspect, and retry timeline regeneration campaigns."
  }, {
    "name" : "Admin: Users",
    "description" : "Manage users, roles, status, passwords, and account deletion."
  }, {
    "name" : "Admin: Weather",
    "description" : "Backfill weather samples"
  }, {
    "name" : "User: AI Assistant",
    "description" : "Manage AI assistant settings and chat with the configured AI provider."
  }, {
    "name" : "User: API Tokens",
    "description" : "Manage API tokens owned by the authenticated user."
  }, {
    "name" : "User: Authentication",
    "description" : "Exchange mobile session codes for authenticated sessions."
  }, {
    "name" : "User: Coverage",
    "description" : "Read and manage coverage grid status, cells, and recalculation jobs."
  }, {
    "name" : "User: Digests",
    "description" : "Read monthly and yearly movement digests."
  }, {
    "name" : "User: Favorites",
    "description" : "Manage favorite places, areas, distinct values, and reconciliation."
  }, {
    "name" : "User: Friends",
    "description" : "Manage friends, location sharing, permissions, and friend discovery."
  }, {
    "name" : "User: GPS Data",
    "description" : "Ingest, query, update, export, and delete GPS points."
  }, {
    "name" : "User: GPS Integrations",
    "description" : "Ingest location updates from Traccar clients."
  }, {
    "name" : "User: GPS Sources",
    "description" : "Manage GPS source configuration, telemetry mappings, and status."
  }, {
    "name" : "User: Geocoding",
    "description" : "Manage reverse geocoding results, normalization, providers, and reconciliation."
  }, {
    "name" : "User: Geofences",
    "description" : "Manage geofence rules, events, templates, and notification tests."
  }, {
    "name" : "User: Home",
    "description" : "Read content used by the home page."
  }, {
    "name" : "User: Immich",
    "description" : "Manage Immich configuration and retrieve Immich photo data."
  }, {
    "name" : "User: Import and Export",
    "description" : "Upload files and manage chunked imports."
  }, {
    "name" : "User: Journey Insights",
    "description" : "Read journey insight summaries."
  }, {
    "name" : "User: Location Analytics",
    "description" : "Search and analyze visited cities, countries, places, and visits."
  }, {
    "name" : "User: Memos",
    "description" : "Manage Memos configuration for live notes integration."
  }, {
    "name" : "User: Notes",
    "description" : "Manage GeoPulse notes and live Memos integration."
  }, {
    "name" : "User: Notifications",
    "description" : "Read and update notification seen state."
  }, {
    "name" : "User: Period Tags",
    "description" : "Manage period tags and overlap checks."
  }, {
    "name" : "User: Places",
    "description" : "Read and update place details, visits, photos, and exports."
  }, {
    "name" : "User: Sharing",
    "description" : "Manage shared location links."
  }, {
    "name" : "User: Statistics",
    "description" : "Read movement statistics for range, week, and month views."
  }, {
    "name" : "User: System",
    "description" : "Read application version and version status."
  }, {
    "name" : "User: Timeline",
    "description" : "Read timelines and manage timeline generation, jobs, and overrides."
  }, {
    "name" : "User: Trips",
    "description" : "Read trip workspace timeline and path data."
  }, {
    "name" : "User: Trips and Planning",
    "description" : "Manage trip plan items and visit overrides."
  }, {
    "name" : "User: Users",
    "description" : "Register users and manage the authenticated user profile, avatar, password, and preferences."
  }, {
    "name" : "User: Weather",
    "description" : "Get Weather samples"
  } ],
  "components" : {
    "schemas" : {
      "Achievements" : {
        "type" : "object",
        "properties" : {
          "badges" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Badge"
            }
          }
        }
      },
      "AddAreaToFavoritesDto" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 100,
            "pattern" : "\\S",
            "type" : "string"
          },
          "northEastLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "northEastLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "southWestLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "southWestLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          }
        }
      },
      "AddPointToFavoritesDto" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 100,
            "pattern" : "\\S",
            "type" : "string"
          },
          "lat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "lon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          }
        }
      },
      "ApiResponseObject" : {
        "type" : "object",
        "properties" : {
          "status" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          },
          "data" : { }
        }
      },
      "ApiTokenStatus" : {
        "enum" : [ "ACTIVE", "EXPIRED", "REVOKED" ],
        "type" : "string"
      },
      "ApplyNormalizationRulesRequest" : {
        "type" : "object",
        "properties" : {
          "applyToGeocoding" : {
            "type" : "boolean"
          },
          "applyToFavorites" : {
            "type" : "boolean"
          },
          "scopeValid" : {
            "type" : "boolean"
          }
        }
      },
      "AppriseExternalRoutingMode" : {
        "enum" : [ "URLS", "KEY_TAG" ],
        "type" : "string"
      },
      "AppriseTestRequest" : {
        "type" : "object",
        "properties" : {
          "destination" : {
            "type" : "string"
          },
          "externalRoutingMode" : {
            "$ref" : "#/components/schemas/AppriseExternalRoutingMode"
          },
          "appriseConfigKey" : {
            "type" : "string"
          },
          "appriseTag" : {
            "type" : "string"
          },
          "title" : {
            "type" : "string"
          },
          "body" : {
            "type" : "string"
          }
        }
      },
      "Badge" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "title" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "icon" : {
            "type" : "string"
          },
          "earned" : {
            "type" : "boolean"
          },
          "earnedDate" : {
            "type" : "string"
          },
          "progress" : {
            "format" : "int32",
            "type" : "integer"
          },
          "current" : {
            "format" : "int32",
            "type" : "integer"
          },
          "target" : {
            "format" : "int32",
            "type" : "integer"
          }
        }
      },
      "BulkAddFavoritesDto" : {
        "required" : [ "points", "areas" ],
        "type" : "object",
        "properties" : {
          "points" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AddPointToFavoritesDto"
            }
          },
          "areas" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AddAreaToFavoritesDto"
            }
          }
        }
      },
      "BulkDeleteGpsPointsDto" : {
        "required" : [ "gpsPointIds" ],
        "type" : "object",
        "properties" : {
          "gpsPointIds" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "format" : "int64",
              "type" : "integer"
            }
          }
        }
      },
      "BulkUpdateFavoritesDto" : {
        "required" : [ "favoriteIds" ],
        "type" : "object",
        "properties" : {
          "favoriteIds" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "format" : "int64",
              "type" : "integer"
            }
          },
          "updateCity" : {
            "type" : "boolean"
          },
          "city" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "updateCountry" : {
            "type" : "boolean"
          },
          "country" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "cityValid" : {
            "type" : "boolean"
          },
          "countryValid" : {
            "type" : "boolean"
          },
          "atLeastOneFieldSelected" : {
            "type" : "boolean"
          }
        }
      },
      "BulkUpdateGeocodingDto" : {
        "required" : [ "geocodingIds" ],
        "type" : "object",
        "properties" : {
          "geocodingIds" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "format" : "int64",
              "type" : "integer"
            }
          },
          "updateCity" : {
            "type" : "boolean"
          },
          "city" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "updateCountry" : {
            "type" : "boolean"
          },
          "country" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "cityValid" : {
            "type" : "boolean"
          },
          "countryValid" : {
            "type" : "boolean"
          },
          "atLeastOneFieldSelected" : {
            "type" : "boolean"
          }
        }
      },
      "BulkUpdateRequest" : {
        "type" : "object",
        "properties" : {
          "settings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/UpdateSettingRequest"
            }
          }
        }
      },
      "ChatRequest" : {
        "type" : "object",
        "properties" : {
          "message" : {
            "type" : "string"
          }
        }
      },
      "ChunkedUploadInitRequest" : {
        "type" : "object",
        "properties" : {
          "fileName" : {
            "type" : "string"
          },
          "fileSize" : {
            "format" : "int64",
            "type" : "integer"
          },
          "importFormat" : {
            "type" : "string"
          },
          "options" : {
            "type" : "string"
          }
        }
      },
      "City" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "visits" : {
            "format" : "int32",
            "type" : "integer"
          }
        }
      },
      "ColotaLocationMessage" : {
        "type" : "object",
        "properties" : {
          "lat" : {
            "format" : "double",
            "type" : "number"
          },
          "lon" : {
            "format" : "double",
            "type" : "number"
          },
          "acc" : {
            "format" : "double",
            "type" : "number"
          },
          "tst" : {
            "format" : "int64",
            "type" : "integer"
          },
          "alt" : {
            "format" : "double",
            "type" : "number"
          },
          "vel" : {
            "format" : "double",
            "type" : "number"
          },
          "batt" : {
            "format" : "double",
            "type" : "number"
          },
          "bs" : {
            "format" : "int32",
            "type" : "integer"
          },
          "bear" : {
            "format" : "double",
            "type" : "number"
          }
        }
      },
      "ConnectionType" : {
        "enum" : [ "HTTP", "MQTT" ],
        "type" : "string"
      },
      "CoordinatesDTO" : {
        "type" : "object",
        "properties" : {
          "lat" : {
            "format" : "double",
            "type" : "number"
          },
          "lng" : {
            "format" : "double",
            "type" : "number"
          }
        }
      },
      "CoordinatesDto" : {
        "required" : [ "lat", "lng" ],
        "type" : "object",
        "properties" : {
          "lat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "lng" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          }
        }
      },
      "Country" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          }
        }
      },
      "CoverageSettingsRequest" : {
        "type" : "object",
        "properties" : {
          "enabled" : {
            "type" : "boolean"
          }
        }
      },
      "CreateApiTokenRequest" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 120,
            "type" : "string"
          },
          "expiresAt" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "CreateExportRequest" : {
        "type" : "object",
        "properties" : {
          "dataTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dateRange" : {
            "$ref" : "#/components/schemas/ExportDateRange"
          },
          "format" : {
            "type" : "string"
          },
          "options" : {
            "type" : "object",
            "additionalProperties" : { }
          }
        }
      },
      "CreateGeofenceRuleRequest" : {
        "required" : [ "name", "subjectUserIds", "northEastLat", "northEastLon", "southWestLat", "southWestLon", "monitorEnter", "monitorLeave", "cooldownSeconds" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 120,
            "pattern" : "\\S",
            "type" : "string"
          },
          "subjectUserIds" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "format" : "uuid",
              "pattern" : "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
              "type" : "string"
            }
          },
          "northEastLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "northEastLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "southWestLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "southWestLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "monitorEnter" : {
            "type" : "boolean"
          },
          "monitorLeave" : {
            "type" : "boolean"
          },
          "cooldownSeconds" : {
            "format" : "int32",
            "minimum" : 0,
            "type" : "integer"
          },
          "enterTemplateId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "leaveTemplateId" : {
            "format" : "int64",
            "type" : "integer"
          }
        }
      },
      "CreateGpsSourceConfigDto" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/GpsSourceType"
          },
          "username" : {
            "type" : "string"
          },
          "password" : {
            "type" : "string"
          },
          "token" : {
            "type" : "string"
          },
          "deviceId" : {
            "type" : "string"
          },
          "payloadEncryptionSecret" : {
            "type" : "string"
          },
          "userId" : {
            "$ref" : "#/components/schemas/UUID"
          },
          "connectionType" : {
            "$ref" : "#/components/schemas/ConnectionType"
          },
          "filterInaccurateData" : {
            "type" : "boolean"
          },
          "maxAllowedAccuracy" : {
            "format" : "int32",
            "type" : "integer"
          },
          "maxAllowedSpeed" : {
            "format" : "int32",
            "type" : "integer"
          },
          "enableDuplicateDetection" : {
            "type" : "boolean"
          },
          "duplicateDetectionThresholdMinutes" : {
            "format" : "int32",
            "type" : "integer"
          }
        }
      },
      "CreateInvitationRequest" : {
        "type" : "object",
        "properties" : {
          "expiresAt" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "CreateNormalizationRuleRequest" : {
        "required" : [ "ruleType" ],
        "type" : "object",
        "properties" : {
          "ruleType" : {
            "$ref" : "#/components/schemas/NormalizationRuleType"
          },
          "sourceCountry" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "sourceCity" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "targetCountry" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "targetCity" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "countryRuleValid" : {
            "type" : "boolean"
          },
          "cityRuleValid" : {
            "type" : "boolean"
          }
        }
      },
      "CreateNoteRequest" : {
        "required" : [ "contentMarkdown" ],
        "type" : "object",
        "properties" : {
          "destination" : {
            "$ref" : "#/components/schemas/NoteDestination"
          },
          "title" : {
            "maxLength" : 255,
            "type" : "string"
          },
          "contentMarkdown" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "eventTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "anchorType" : {
            "$ref" : "#/components/schemas/NoteAnchorType"
          },
          "anchorId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "latitude" : {
            "format" : "double",
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "type" : "number"
          },
          "visibility" : {
            "$ref" : "#/components/schemas/MemosVisibility"
          }
        }
      },
      "CreateNotificationTemplateRequest" : {
        "required" : [ "name", "defaultForEnter", "defaultForLeave", "enabled", "sendInApp" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 120,
            "pattern" : "\\S",
            "type" : "string"
          },
          "destination" : {
            "type" : "string"
          },
          "externalRoutingMode" : {
            "$ref" : "#/components/schemas/AppriseExternalRoutingMode"
          },
          "appriseConfigKey" : {
            "type" : "string"
          },
          "appriseTag" : {
            "type" : "string"
          },
          "titleTemplate" : {
            "type" : "string"
          },
          "bodyTemplate" : {
            "type" : "string"
          },
          "defaultForEnter" : {
            "type" : "boolean"
          },
          "defaultForLeave" : {
            "type" : "boolean"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "sendInApp" : {
            "type" : "boolean"
          }
        }
      },
      "CreateOidcProviderRequest" : {
        "required" : [ "name", "displayName", "clientId", "clientSecret", "discoveryUrl" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 50,
            "minLength" : 2,
            "pattern" : "^[a-z0-9-]+$",
            "type" : "string"
          },
          "displayName" : {
            "maxLength" : 100,
            "minLength" : 2,
            "pattern" : "\\S",
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "clientId" : {
            "maxLength" : 255,
            "pattern" : "\\S",
            "type" : "string"
          },
          "clientSecret" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "discoveryUrl" : {
            "maxLength" : 500,
            "pattern" : "\\S",
            "type" : "string"
          },
          "icon" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "scopes" : {
            "maxLength" : 255,
            "type" : "string"
          }
        }
      },
      "CreatePeriodTagDto" : {
        "required" : [ "tagName", "startTime" ],
        "type" : "object",
        "properties" : {
          "tagName" : {
            "maxLength" : 100,
            "pattern" : "\\S",
            "type" : "string"
          },
          "startTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "source" : {
            "type" : "string"
          },
          "isActive" : {
            "type" : "boolean"
          },
          "color" : {
            "pattern" : "^#[0-9A-Fa-f]{6}$",
            "type" : "string"
          },
          "showAsPreset" : {
            "type" : "boolean"
          }
        }
      },
      "CreateShareLinkRequest" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 255,
            "pattern" : "\\S",
            "type" : "string"
          },
          "expires_at" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "password" : {
            "maxLength" : 100,
            "minLength" : 6,
            "type" : "string"
          },
          "show_history" : {
            "type" : "boolean"
          },
          "history_hours" : {
            "format" : "int32",
            "type" : "integer"
          },
          "share_type" : {
            "type" : "string"
          },
          "start_date" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "end_date" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "show_current_location" : {
            "type" : "boolean"
          },
          "show_photos" : {
            "type" : "boolean"
          },
          "show_notes" : {
            "type" : "boolean"
          },
          "custom_map_tile_url" : {
            "maxLength" : 1000,
            "type" : "string"
          },
          "custom_map_style_url" : {
            "maxLength" : 1000,
            "type" : "string"
          },
          "map_render_mode" : {
            "$ref" : "#/components/schemas/MapRenderMode"
          }
        }
      },
      "CreateTimelineRegenerationCampaignRequest" : {
        "type" : "object",
        "properties" : {
          "campaignKey" : {
            "type" : "string"
          },
          "affectedFrom" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "reason" : {
            "type" : "string"
          }
        }
      },
      "CreateTripDto" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 150,
            "pattern" : "\\S",
            "type" : "string"
          },
          "startTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "color" : {
            "pattern" : "^#[0-9A-Fa-f]{6}$",
            "type" : "string"
          },
          "notes" : {
            "maxLength" : 4000,
            "type" : "string"
          }
        }
      },
      "CreateTripPlanItemDto" : {
        "required" : [ "title" ],
        "type" : "object",
        "properties" : {
          "title" : {
            "maxLength" : 255,
            "pattern" : "\\S",
            "type" : "string"
          },
          "notes" : {
            "maxLength" : 2000,
            "type" : "string"
          },
          "latitude" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "plannedDay" : {
            "$ref" : "#/components/schemas/LocalDate"
          },
          "priority" : {
            "$ref" : "#/components/schemas/TripPlanItemPriority"
          },
          "orderIndex" : {
            "format" : "int32",
            "minimum" : 0,
            "type" : "integer"
          }
        }
      },
      "DataGapStayOverrideRequest" : {
        "type" : "object",
        "properties" : {
          "locationStrategy" : {
            "type" : "string"
          },
          "favoriteId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "geocodingId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "latitude" : {
            "format" : "double",
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "type" : "number"
          },
          "locationName" : {
            "type" : "string"
          }
        }
      },
      "DawarichGeometry" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "coordinates" : {
            "type" : "array",
            "items" : {
              "format" : "double",
              "type" : "number"
            }
          },
          "longitude" : {
            "format" : "double",
            "type" : "number"
          },
          "latitude" : {
            "format" : "double",
            "type" : "number"
          }
        }
      },
      "DawarichLocation" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "geometry" : {
            "$ref" : "#/components/schemas/DawarichGeometry"
          },
          "properties" : {
            "$ref" : "#/components/schemas/DawarichProperties"
          }
        }
      },
      "DawarichPayload" : {
        "type" : "object",
        "properties" : {
          "locations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DawarichLocation"
            }
          }
        }
      },
      "DawarichProperties" : {
        "type" : "object",
        "properties" : {
          "track_id" : {
            "type" : "string"
          },
          "course_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "timestamp" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "altitude" : {
            "format" : "double",
            "type" : "number"
          },
          "speed" : {
            "format" : "double",
            "type" : "number"
          },
          "horizontal_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "vertical_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "device_id" : {
            "type" : "string"
          },
          "speed_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "course" : {
            "format" : "double",
            "type" : "number"
          }
        }
      },
      "DebugExportRequest" : {
        "type" : "object",
        "properties" : {
          "startDate" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endDate" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "latitudeShift" : {
            "format" : "double",
            "type" : "number"
          },
          "longitudeShift" : {
            "format" : "double",
            "type" : "number"
          },
          "includeTimeline" : {
            "type" : "boolean"
          },
          "includeConfiguration" : {
            "type" : "boolean"
          }
        }
      },
      "DemoLoginRequest" : {
        "type" : "object",
        "properties" : {
          "personaId" : {
            "type" : "string"
          }
        }
      },
      "DistanceTraveled" : {
        "type" : "object",
        "properties" : {
          "byCar" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byMotorcycle" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byWalk" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byBicycle" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byRunning" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byTrain" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byFlight" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byBoat" : {
            "format" : "int32",
            "type" : "integer"
          },
          "byUnknown" : {
            "format" : "int32",
            "type" : "integer"
          },
          "total" : {
            "format" : "int32",
            "type" : "integer"
          }
        }
      },
      "DistanceUnit" : {
        "enum" : [ "KILOMETERS", "MILES" ],
        "type" : "string"
      },
      "EditFavoriteDto" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 100,
            "pattern" : "\\S",
            "type" : "string"
          },
          "city" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "country" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "northEastLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "northEastLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "southWestLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "southWestLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          }
        }
      },
      "EditGpsPointDto" : {
        "required" : [ "coordinates" ],
        "type" : "object",
        "properties" : {
          "coordinates" : {
            "$ref" : "#/components/schemas/CoordinatesDto"
          },
          "velocity" : {
            "format" : "double",
            "minimum" : 0,
            "type" : "number"
          },
          "accuracy" : {
            "format" : "double",
            "minimum" : 0,
            "type" : "number"
          }
        }
      },
      "ExportDateRange" : {
        "type" : "object",
        "properties" : {
          "startDate" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endDate" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "FavoriteLocationType" : {
        "enum" : [ "POINT", "AREA" ],
        "type" : "string"
      },
      "FavoriteReconcileRequest" : {
        "required" : [ "providerName", "favoriteIds" ],
        "type" : "object",
        "properties" : {
          "providerName" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "favoriteIds" : {
            "type" : "array",
            "items" : {
              "format" : "int64",
              "type" : "integer"
            }
          },
          "reconcileAll" : {
            "type" : "boolean"
          },
          "filterByType" : {
            "$ref" : "#/components/schemas/FavoriteLocationType"
          },
          "filterBySearchText" : {
            "type" : "string"
          }
        }
      },
      "GeofenceRuleStatus" : {
        "enum" : [ "ACTIVE", "PAUSED" ],
        "type" : "string"
      },
      "GeographicInsights" : {
        "type" : "object",
        "properties" : {
          "countries" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Country"
            }
          },
          "cities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/City"
            }
          }
        }
      },
      "Geometry" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "coordinates" : {
            "type" : "array",
            "items" : {
              "format" : "double",
              "type" : "number"
            }
          }
        }
      },
      "GpsPointDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "format" : "int64",
            "type" : "integer"
          },
          "timestamp" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "coordinates" : {
            "$ref" : "#/components/schemas/CoordinatesDTO"
          },
          "accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "battery" : {
            "format" : "double",
            "type" : "number"
          },
          "velocity" : {
            "format" : "double",
            "type" : "number"
          },
          "altitude" : {
            "format" : "double",
            "type" : "number"
          },
          "sourceType" : {
            "type" : "string"
          },
          "telemetryGpsData" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/GpsTelemetryDisplayDTO"
            }
          },
          "telemetryCurrentPopup" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/GpsTelemetryDisplayDTO"
            }
          }
        }
      },
      "GpsPointsRetentionRequest" : {
        "type" : "object",
        "properties" : {
          "points" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/GpsPointDTO"
            }
          }
        }
      },
      "GpsSourceType" : {
        "enum" : [ "OWNTRACKS", "GPSLOGGER", "OVERLAND", "TRACCAR", "GOOGLE_TIMELINE", "GPX", "DAWARICH", "HOME_ASSISTANT", "GEOJSON", "CSV", "COLOTA", "MANUAL", "MOBILE_APP" ],
        "type" : "string"
      },
      "GpsTelemetryDisplayDTO" : {
        "type" : "object",
        "properties" : {
          "key" : {
            "type" : "string"
          },
          "label" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          },
          "unit" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "GpsTelemetryMappingEntry" : {
        "type" : "object",
        "properties" : {
          "key" : {
            "type" : "string"
          },
          "label" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "unit" : {
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "order" : {
            "format" : "int32",
            "type" : "integer"
          },
          "trueValues" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "falseValues" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "showInGpsData" : {
            "type" : "boolean"
          },
          "showInCurrentPopup" : {
            "type" : "boolean"
          }
        }
      },
      "HomeAssistantBattery" : {
        "type" : "object",
        "properties" : {
          "level" : {
            "format" : "int32",
            "type" : "integer"
          }
        }
      },
      "HomeAssistantGpsData" : {
        "type" : "object",
        "properties" : {
          "device_id" : {
            "type" : "string"
          },
          "timestamp" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "location" : {
            "$ref" : "#/components/schemas/HomeAssistantLocation"
          },
          "battery" : {
            "$ref" : "#/components/schemas/HomeAssistantBattery"
          }
        }
      },
      "HomeAssistantLocation" : {
        "type" : "object",
        "properties" : {
          "latitude" : {
            "format" : "double",
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "type" : "number"
          },
          "accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "altitude" : {
            "format" : "double",
            "type" : "number"
          },
          "speed" : {
            "format" : "double",
            "type" : "number"
          }
        }
      },
      "InitiateOidcLinkingRequest" : {
        "required" : [ "verificationProvider", "newProvider", "linkingToken" ],
        "type" : "object",
        "properties" : {
          "verificationProvider" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "newProvider" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "linkingToken" : {
            "pattern" : "\\S",
            "type" : "string"
          }
        }
      },
      "Instant" : {
        "format" : "date-time",
        "type" : "string",
        "example" : "2022-03-10T16:15:50Z"
      },
      "InvitationRegisterRequest" : {
        "required" : [ "token", "email", "password" ],
        "type" : "object",
        "properties" : {
          "token" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "email" : {
            "maxLength" : 254,
            "pattern" : "\\S",
            "type" : "string"
          },
          "password" : {
            "maxLength" : 128,
            "minLength" : 3,
            "pattern" : "\\S",
            "type" : "string"
          },
          "fullName" : {
            "maxLength" : 100,
            "minLength" : 1,
            "type" : "string"
          },
          "timezone" : {
            "maxLength" : 255,
            "type" : "string"
          }
        }
      },
      "InvitationStatus" : {
        "enum" : [ "PENDING", "USED", "EXPIRED", "REVOKED" ],
        "type" : "string"
      },
      "JourneyInsights" : {
        "type" : "object",
        "properties" : {
          "geographic" : {
            "$ref" : "#/components/schemas/GeographicInsights"
          },
          "timePatterns" : {
            "$ref" : "#/components/schemas/TimePatterns"
          },
          "achievements" : {
            "$ref" : "#/components/schemas/Achievements"
          },
          "distanceTraveled" : {
            "$ref" : "#/components/schemas/DistanceTraveled"
          },
          "weather" : {
            "$ref" : "#/components/schemas/WeatherInsights"
          }
        }
      },
      "JsonNode" : {
        "type" : "object",
        "properties" : {
          "empty" : {
            "type" : "boolean"
          },
          "valueNode" : {
            "type" : "boolean"
          },
          "containerNode" : {
            "type" : "boolean"
          },
          "missingNode" : {
            "type" : "boolean"
          },
          "array" : {
            "type" : "boolean"
          },
          "object" : {
            "type" : "boolean"
          },
          "nodeType" : {
            "$ref" : "#/components/schemas/JsonNodeType"
          },
          "pojo" : {
            "type" : "boolean"
          },
          "number" : {
            "type" : "boolean"
          },
          "integralNumber" : {
            "type" : "boolean"
          },
          "floatingPointNumber" : {
            "type" : "boolean"
          },
          "short" : {
            "type" : "boolean"
          },
          "int" : {
            "type" : "boolean"
          },
          "long" : {
            "type" : "boolean"
          },
          "float" : {
            "type" : "boolean"
          },
          "double" : {
            "type" : "boolean"
          },
          "bigDecimal" : {
            "type" : "boolean"
          },
          "bigInteger" : {
            "type" : "boolean"
          },
          "textual" : {
            "type" : "boolean"
          },
          "boolean" : {
            "type" : "boolean"
          },
          "null" : {
            "type" : "boolean"
          },
          "binary" : {
            "type" : "boolean"
          }
        }
      },
      "JsonNodeType" : {
        "enum" : [ "ARRAY", "BINARY", "BOOLEAN", "MISSING", "NULL", "NUMBER", "OBJECT", "POJO", "STRING" ],
        "type" : "string"
      },
      "LinkAccountWithPasswordRequest" : {
        "required" : [ "email", "password", "provider", "linkingToken" ],
        "type" : "object",
        "properties" : {
          "email" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "password" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "provider" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "linkingToken" : {
            "pattern" : "\\S",
            "type" : "string"
          }
        }
      },
      "LocalDate" : {
        "format" : "date",
        "type" : "string",
        "example" : "2022-03-10"
      },
      "LoginRequest" : {
        "type" : "object",
        "properties" : {
          "email" : {
            "type" : "string"
          },
          "password" : {
            "type" : "string"
          }
        }
      },
      "MapRenderMode" : {
        "enum" : [ "RASTER", "VECTOR" ],
        "type" : "string"
      },
      "MemosVisibility" : {
        "enum" : [ "PRIVATE", "PROTECTED", "PUBLIC" ],
        "type" : "string"
      },
      "MobileSessionExchangeRequest" : {
        "required" : [ "sessionCode" ],
        "type" : "object",
        "properties" : {
          "sessionCode" : {
            "pattern" : "\\S",
            "type" : "string"
          }
        }
      },
      "NormalizationRuleType" : {
        "enum" : [ "COUNTRY", "CITY" ],
        "type" : "string"
      },
      "NoteAnchorType" : {
        "enum" : [ "TIMESTAMP", "STAY", "TRIP" ],
        "type" : "string"
      },
      "NoteDestination" : {
        "enum" : [ "GEOPULSE", "MEMOS" ],
        "type" : "string"
      },
      "NotificationSource" : {
        "enum" : [ "GEOFENCE", "TIMELINE", "IMPORT", "EXPORT", "FRIEND_INVITE", "WEATHER" ],
        "type" : "string"
      },
      "NotificationType" : {
        "enum" : [ "GEOFENCE_ENTER", "GEOFENCE_LEAVE", "TIMELINE_REGENERATION_REQUIRED", "IMPORT_COMPLETED", "IMPORT_FAILED", "EXPORT_COMPLETED", "EXPORT_FAILED", "FRIEND_INVITE_RECEIVED", "FRIEND_INVITE_ACCEPTED", "WEATHER_QUOTA_REACHED", "WEATHER_QUOTA_RESTORED" ],
        "type" : "string"
      },
      "OidcCallbackRequest" : {
        "required" : [ "code", "state" ],
        "type" : "object",
        "properties" : {
          "code" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "state" : {
            "pattern" : "\\S",
            "type" : "string"
          }
        }
      },
      "OverlandLocationMessage" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "geometry" : {
            "$ref" : "#/components/schemas/Geometry"
          },
          "properties" : {
            "$ref" : "#/components/schemas/Properties"
          }
        }
      },
      "OverlandLocations" : {
        "type" : "object",
        "properties" : {
          "locations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OverlandLocationMessage"
            }
          }
        }
      },
      "Properties" : {
        "type" : "object",
        "properties" : {
          "speed" : {
            "format" : "double",
            "type" : "number"
          },
          "battery_state" : {
            "type" : "string"
          },
          "battery_level" : {
            "format" : "double",
            "type" : "number"
          },
          "motion" : {
            "type" : "array",
            "items" : { }
          },
          "timestamp" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "speed_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "horizontal_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "vertical_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "wifi" : {
            "type" : "string"
          },
          "course" : {
            "format" : "int32",
            "type" : "integer"
          },
          "altitude" : {
            "format" : "int32",
            "type" : "integer"
          },
          "course_accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "device_id" : {
            "type" : "string"
          }
        }
      },
      "ReverseGeocodingReconcileRequest" : {
        "required" : [ "providerName", "geocodingIds" ],
        "type" : "object",
        "properties" : {
          "providerName" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "geocodingIds" : {
            "type" : "array",
            "items" : {
              "format" : "int64",
              "type" : "integer"
            }
          },
          "reconcileAll" : {
            "type" : "boolean"
          },
          "filterByProvider" : {
            "type" : "string"
          }
        }
      },
      "ReverseGeocodingUpdateDTO" : {
        "required" : [ "displayName" ],
        "type" : "object",
        "properties" : {
          "displayName" : {
            "maxLength" : 1000,
            "pattern" : "\\S",
            "type" : "string"
          },
          "city" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "country" : {
            "maxLength" : 100,
            "type" : "string"
          }
        }
      },
      "Role" : {
        "enum" : [ "USER", "ADMIN" ],
        "type" : "string"
      },
      "SendFriendInvitationDTO" : {
        "required" : [ "receiverEmail" ],
        "type" : "object",
        "properties" : {
          "receiverEmail" : {
            "pattern" : "\\S",
            "type" : "string"
          }
        }
      },
      "TemperatureUnit" : {
        "enum" : [ "CELSIUS", "FAHRENHEIT" ],
        "type" : "string"
      },
      "TestConnectionRequest" : {
        "type" : "object",
        "properties" : {
          "openaiApiUrl" : {
            "type" : "string"
          },
          "openaiApiKey" : {
            "type" : "string"
          },
          "isApiKeyNeeded" : {
            "type" : "boolean"
          }
        }
      },
      "TestImmichConnectionRequest" : {
        "required" : [ "serverUrl" ],
        "type" : "object",
        "properties" : {
          "serverUrl" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "apiKey" : {
            "type" : "string"
          }
        }
      },
      "TestMemosConnectionRequest" : {
        "required" : [ "serverUrl" ],
        "type" : "object",
        "properties" : {
          "serverUrl" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "apiKey" : {
            "type" : "string"
          }
        }
      },
      "TimePatterns" : {
        "type" : "object",
        "properties" : {
          "mostActiveMonth" : {
            "type" : "string"
          },
          "monthlyComparison" : {
            "type" : "string"
          },
          "busiestDayOfWeek" : {
            "type" : "string"
          },
          "dayInsight" : {
            "type" : "string"
          },
          "mostActiveTime" : {
            "type" : "string"
          },
          "timeInsight" : {
            "type" : "string"
          }
        }
      },
      "TimelineRegenerationCampaignPreviewRequest" : {
        "type" : "object",
        "properties" : {
          "affectedFrom" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "TokenRefreshRequest" : {
        "required" : [ "refreshToken" ],
        "type" : "object",
        "properties" : {
          "refreshToken" : {
            "pattern" : "\\S",
            "type" : "string"
          }
        }
      },
      "TraccarDevice" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "format" : "int64",
            "type" : "integer"
          },
          "attributes" : {
            "type" : "object",
            "additionalProperties" : { }
          },
          "groupId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "calendarId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "name" : {
            "type" : "string"
          },
          "uniqueId" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string"
          },
          "lastUpdate" : {
            "$ref" : "#/components/schemas/JsonNode"
          },
          "positionId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "phone" : {
            "type" : "string"
          },
          "model" : {
            "type" : "string"
          },
          "contact" : {
            "type" : "string"
          },
          "category" : {
            "type" : "string"
          },
          "disabled" : {
            "type" : "boolean"
          },
          "expirationTime" : {
            "$ref" : "#/components/schemas/JsonNode"
          }
        }
      },
      "TraccarPosition" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "format" : "int64",
            "type" : "integer"
          },
          "protocol" : {
            "type" : "string"
          },
          "deviceId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "valid" : {
            "type" : "boolean"
          },
          "latitude" : {
            "format" : "double",
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "type" : "number"
          },
          "altitude" : {
            "format" : "double",
            "type" : "number"
          },
          "speed" : {
            "format" : "double",
            "type" : "number"
          },
          "course" : {
            "format" : "double",
            "type" : "number"
          },
          "address" : {
            "type" : "string"
          },
          "accuracy" : {
            "format" : "double",
            "type" : "number"
          },
          "network" : { },
          "geofenceIds" : {
            "type" : "array",
            "items" : {
              "format" : "int64",
              "type" : "integer"
            }
          },
          "serverTime" : {
            "$ref" : "#/components/schemas/JsonNode"
          },
          "deviceTime" : {
            "$ref" : "#/components/schemas/JsonNode"
          },
          "fixTime" : {
            "$ref" : "#/components/schemas/JsonNode"
          },
          "attributes" : {
            "type" : "object",
            "additionalProperties" : { }
          }
        }
      },
      "TraccarPositionData" : {
        "type" : "object",
        "properties" : {
          "position" : {
            "$ref" : "#/components/schemas/TraccarPosition"
          },
          "device" : {
            "$ref" : "#/components/schemas/TraccarDevice"
          }
        }
      },
      "TripCollaboratorAccessRole" : {
        "enum" : [ "VIEW", "EDIT" ],
        "type" : "string"
      },
      "TripMovementTypeUpdateRequest" : {
        "type" : "object",
        "properties" : {
          "movementType" : {
            "type" : "string"
          }
        }
      },
      "TripPlanItemOverrideState" : {
        "enum" : [ "CONFIRMED", "REJECTED" ],
        "type" : "string"
      },
      "TripPlanItemPriority" : {
        "enum" : [ "OPTIONAL", "MUST" ],
        "type" : "string"
      },
      "TripPlanItemVisitSource" : {
        "enum" : [ "AUTO", "MANUAL" ],
        "type" : "string"
      },
      "TripReconstructionRequestDto" : {
        "required" : [ "segments" ],
        "type" : "object",
        "properties" : {
          "tripId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "segments" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TripReconstructionSegmentDto"
            }
          }
        }
      },
      "TripReconstructionSegmentDto" : {
        "required" : [ "segmentType", "startTime", "endTime" ],
        "type" : "object",
        "properties" : {
          "segmentType" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "startTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "locationName" : {
            "maxLength" : 255,
            "type" : "string"
          },
          "latitude" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "movementType" : {
            "type" : "string"
          },
          "waypoints" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TripReconstructionWaypointDto"
            }
          }
        }
      },
      "TripReconstructionWaypointDto" : {
        "required" : [ "latitude", "longitude" ],
        "type" : "object",
        "properties" : {
          "latitude" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          }
        }
      },
      "TripStatus" : {
        "enum" : [ "UNPLANNED", "UPCOMING", "ACTIVE", "COMPLETED", "CANCELLED" ],
        "type" : "string"
      },
      "TripVisitOverrideRequestDto" : {
        "type" : "object",
        "properties" : {
          "action" : {
            "type" : "string"
          },
          "visitedAt" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "UUID" : {
        "format" : "uuid",
        "pattern" : "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
        "type" : "string"
      },
      "UpdateApiTokenRequest" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 120,
            "pattern" : "\\S",
            "type" : "string"
          },
          "expiresAt" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "UpdateGeofenceRuleRequest" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 120,
            "type" : "string"
          },
          "subjectUserIds" : {
            "type" : "array",
            "items" : {
              "format" : "uuid",
              "pattern" : "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
              "type" : "string"
            }
          },
          "northEastLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "northEastLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "southWestLat" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "southWestLon" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "monitorEnter" : {
            "type" : "boolean"
          },
          "monitorLeave" : {
            "type" : "boolean"
          },
          "cooldownSeconds" : {
            "format" : "int32",
            "minimum" : 0,
            "type" : "integer"
          },
          "enterTemplateId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "leaveTemplateId" : {
            "format" : "int64",
            "type" : "integer"
          },
          "status" : {
            "$ref" : "#/components/schemas/GeofenceRuleStatus"
          }
        }
      },
      "UpdateGpsSourceConfigDto" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "username" : {
            "type" : "string"
          },
          "password" : {
            "type" : "string"
          },
          "token" : {
            "type" : "string"
          },
          "deviceId" : {
            "type" : "string"
          },
          "payloadEncryptionSecret" : {
            "type" : "string"
          },
          "clearPayloadEncryptionSecret" : {
            "type" : "boolean"
          },
          "userId" : {
            "type" : "string"
          },
          "connectionType" : {
            "$ref" : "#/components/schemas/ConnectionType"
          },
          "filterInaccurateData" : {
            "type" : "boolean"
          },
          "maxAllowedAccuracy" : {
            "format" : "int32",
            "type" : "integer"
          },
          "maxAllowedSpeed" : {
            "format" : "int32",
            "type" : "integer"
          },
          "enableDuplicateDetection" : {
            "type" : "boolean"
          },
          "duplicateDetectionThresholdMinutes" : {
            "format" : "int32",
            "type" : "integer"
          }
        }
      },
      "UpdateGpsSourceConfigStatusDto" : {
        "type" : "object",
        "properties" : {
          "status" : {
            "type" : "boolean"
          }
        }
      },
      "UpdateImmichConfigRequest" : {
        "required" : [ "serverUrl", "apiKey", "enabled" ],
        "type" : "object",
        "properties" : {
          "serverUrl" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "apiKey" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          }
        }
      },
      "UpdateLiveLocationRequest" : {
        "type" : "object",
        "properties" : {
          "shareLiveLocation" : {
            "type" : "boolean"
          }
        }
      },
      "UpdateMemosConfigRequest" : {
        "required" : [ "enabled" ],
        "type" : "object",
        "properties" : {
          "serverUrl" : {
            "type" : "string"
          },
          "apiKey" : {
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "defaultSaveDestination" : {
            "$ref" : "#/components/schemas/NoteDestination"
          },
          "defaultVisibility" : {
            "$ref" : "#/components/schemas/MemosVisibility"
          },
          "maxNotesPerRequest" : {
            "format" : "int32",
            "type" : "integer"
          },
          "maxContentBytes" : {
            "format" : "int32",
            "type" : "integer"
          },
          "searchCacheEnabled" : {
            "type" : "boolean"
          },
          "includeTags" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "excludeTags" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "UpdateNormalizationRuleRequest" : {
        "required" : [ "ruleType" ],
        "type" : "object",
        "properties" : {
          "ruleType" : {
            "$ref" : "#/components/schemas/NormalizationRuleType"
          },
          "sourceCountry" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "sourceCity" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "targetCountry" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "targetCity" : {
            "maxLength" : 200,
            "type" : "string"
          },
          "countryRuleValid" : {
            "type" : "boolean"
          },
          "cityRuleValid" : {
            "type" : "boolean"
          }
        }
      },
      "UpdateNoteRequest" : {
        "required" : [ "contentMarkdown" ],
        "type" : "object",
        "properties" : {
          "title" : {
            "maxLength" : 255,
            "type" : "string"
          },
          "contentMarkdown" : {
            "pattern" : "\\S",
            "type" : "string"
          },
          "eventTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "latitude" : {
            "format" : "double",
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "type" : "number"
          }
        }
      },
      "UpdateNotificationTemplateRequest" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 120,
            "type" : "string"
          },
          "destination" : {
            "type" : "string"
          },
          "externalRoutingMode" : {
            "$ref" : "#/components/schemas/AppriseExternalRoutingMode"
          },
          "appriseConfigKey" : {
            "type" : "string"
          },
          "appriseTag" : {
            "type" : "string"
          },
          "titleTemplate" : {
            "type" : "string"
          },
          "bodyTemplate" : {
            "type" : "string"
          },
          "defaultForEnter" : {
            "type" : "boolean"
          },
          "defaultForLeave" : {
            "type" : "boolean"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "sendInApp" : {
            "type" : "boolean"
          }
        }
      },
      "UpdateOidcProviderRequest" : {
        "required" : [ "displayName", "clientId", "discoveryUrl" ],
        "type" : "object",
        "properties" : {
          "displayName" : {
            "maxLength" : 100,
            "minLength" : 2,
            "pattern" : "\\S",
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "clientId" : {
            "maxLength" : 255,
            "pattern" : "\\S",
            "type" : "string"
          },
          "clientSecret" : {
            "type" : "string"
          },
          "discoveryUrl" : {
            "maxLength" : 500,
            "pattern" : "\\S",
            "type" : "string"
          },
          "icon" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "scopes" : {
            "maxLength" : 255,
            "type" : "string"
          }
        }
      },
      "UpdatePeriodTagDto" : {
        "required" : [ "tagName", "startTime" ],
        "type" : "object",
        "properties" : {
          "tagName" : {
            "maxLength" : 100,
            "pattern" : "\\S",
            "type" : "string"
          },
          "startTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "source" : {
            "type" : "string"
          },
          "isActive" : {
            "type" : "boolean"
          },
          "color" : {
            "pattern" : "^#[0-9A-Fa-f]{6}$",
            "type" : "string"
          },
          "showAsPreset" : {
            "type" : "boolean"
          }
        }
      },
      "UpdatePermissionRequest" : {
        "type" : "object",
        "properties" : {
          "shareTimeline" : {
            "type" : "boolean"
          }
        }
      },
      "UpdatePlaceNameRequest" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          }
        }
      },
      "UpdateProfileRequest" : {
        "type" : "object",
        "properties" : {
          "fullName" : {
            "maxLength" : 100,
            "minLength" : 1,
            "type" : "string"
          },
          "avatar" : {
            "maxLength" : 500,
            "type" : "string"
          },
          "timezone" : {
            "maxLength" : 255,
            "type" : "string"
          },
          "distanceUnit" : {
            "$ref" : "#/components/schemas/DistanceUnit"
          },
          "temperatureUnit" : {
            "$ref" : "#/components/schemas/TemperatureUnit"
          },
          "defaultRedirectUrl" : {
            "maxLength" : 1000,
            "type" : "string"
          },
          "dateFormat" : {
            "pattern" : "^(MDY|DMY|YMD)$",
            "type" : "string"
          },
          "timeFormat" : {
            "pattern" : "^(24h|12h)$",
            "type" : "string"
          }
        }
      },
      "UpdateSettingRequest" : {
        "type" : "object",
        "properties" : {
          "key" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        }
      },
      "UpdateShareLinkDto" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 255,
            "type" : "string"
          },
          "expires_at" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "password" : {
            "maxLength" : 100,
            "minLength" : 2,
            "type" : "string"
          },
          "show_history" : {
            "type" : "boolean"
          },
          "history_hours" : {
            "format" : "int32",
            "type" : "integer"
          },
          "share_type" : {
            "type" : "string"
          },
          "start_date" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "end_date" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "show_current_location" : {
            "type" : "boolean"
          },
          "show_photos" : {
            "type" : "boolean"
          },
          "show_notes" : {
            "type" : "boolean"
          },
          "custom_map_tile_url" : {
            "maxLength" : 1000,
            "type" : "string"
          },
          "custom_map_style_url" : {
            "maxLength" : 1000,
            "type" : "string"
          },
          "map_render_mode" : {
            "$ref" : "#/components/schemas/MapRenderMode"
          },
          "passwordRemoval" : {
            "type" : "boolean"
          }
        }
      },
      "UpdateTimelineDisplayPreferencesRequest" : {
        "type" : "object",
        "properties" : {
          "customMapTileUrl" : {
            "maxLength" : 1000,
            "type" : "string"
          },
          "customMapStyleUrl" : {
            "maxLength" : 1000,
            "type" : "string"
          },
          "mapRenderMode" : {
            "$ref" : "#/components/schemas/MapRenderMode"
          },
          "pathSimplificationEnabled" : {
            "type" : "boolean"
          },
          "pathSimplificationTolerance" : {
            "format" : "double",
            "maximum" : 100.0,
            "minimum" : 1.0,
            "type" : "number"
          },
          "pathMaxPoints" : {
            "format" : "int32",
            "maximum" : 1000,
            "minimum" : 0,
            "type" : "integer"
          },
          "pathAdaptiveSimplification" : {
            "type" : "boolean"
          },
          "defaultDateRangePreset" : {
            "pattern" : "^(today|yesterday|lastWeek|lastMonth)?$",
            "type" : "string"
          },
          "showCurrentLocationTelemetry" : {
            "type" : "boolean"
          },
          "autoShowTripReplayControls" : {
            "type" : "boolean"
          }
        }
      },
      "UpdateTimelinePreferencesRequest" : {
        "type" : "object",
        "properties" : {
          "useVelocityAccuracy" : {
            "type" : "boolean"
          },
          "staypointVelocityThreshold" : {
            "format" : "double",
            "maximum" : 100.0,
            "minimum" : 0.1,
            "type" : "number"
          },
          "staypointMaxAccuracyThreshold" : {
            "format" : "double",
            "maximum" : 1000.0,
            "minimum" : 1.0,
            "type" : "number"
          },
          "staypointMinAccuracyRatio" : {
            "format" : "double",
            "maximum" : 1.0,
            "minimum" : 0.1,
            "type" : "number"
          },
          "tripDetectionAlgorithm" : {
            "pattern" : "^(single|multiple)$",
            "type" : "string"
          },
          "staypointRadiusMeters" : {
            "format" : "int32",
            "maximum" : 10000,
            "minimum" : 1,
            "type" : "integer"
          },
          "staypointMinDurationMinutes" : {
            "format" : "int32",
            "maximum" : 1440,
            "minimum" : 1,
            "type" : "integer"
          },
          "isMergeEnabled" : {
            "type" : "boolean"
          },
          "mergeMaxDistanceMeters" : {
            "format" : "int32",
            "maximum" : 5000,
            "minimum" : 1,
            "type" : "integer"
          },
          "mergeMaxTimeGapMinutes" : {
            "format" : "int32",
            "maximum" : 720,
            "minimum" : 1,
            "type" : "integer"
          },
          "dataGapThresholdSeconds" : {
            "format" : "int32",
            "minimum" : 1,
            "type" : "integer"
          },
          "dataGapMinDurationSeconds" : {
            "format" : "int32",
            "minimum" : 1,
            "type" : "integer"
          },
          "gapStayInferenceEnabled" : {
            "type" : "boolean"
          },
          "gapStayInferenceMaxGapHours" : {
            "format" : "int32",
            "maximum" : 168,
            "minimum" : 1,
            "type" : "integer"
          },
          "gapTripInferenceEnabled" : {
            "type" : "boolean"
          },
          "gapTripInferenceMinDistanceMeters" : {
            "format" : "int32",
            "maximum" : 1000000,
            "minimum" : 1000,
            "type" : "integer"
          },
          "gapTripInferenceMinGapHours" : {
            "format" : "int32",
            "maximum" : 24,
            "minimum" : 0,
            "type" : "integer"
          },
          "gapTripInferenceMaxGapHours" : {
            "format" : "int32",
            "maximum" : 336,
            "minimum" : 1,
            "type" : "integer"
          },
          "walkingMaxAvgSpeed" : {
            "format" : "double",
            "maximum" : 10.0,
            "minimum" : 3.0,
            "type" : "number"
          },
          "walkingMaxMaxSpeed" : {
            "format" : "double",
            "maximum" : 15.0,
            "minimum" : 5.0,
            "type" : "number"
          },
          "carEnabled" : {
            "type" : "boolean"
          },
          "motorcycleEnabled" : {
            "type" : "boolean"
          },
          "preferredMotorizedType" : {
            "pattern" : "CAR|MOTORCYCLE",
            "type" : "string"
          },
          "carMinAvgSpeed" : {
            "format" : "double",
            "maximum" : 25.0,
            "minimum" : 5.0,
            "type" : "number"
          },
          "carMinMaxSpeed" : {
            "format" : "double",
            "maximum" : 50.0,
            "minimum" : 10.0,
            "type" : "number"
          },
          "shortDistanceKm" : {
            "format" : "double",
            "maximum" : 3.0,
            "minimum" : 0.1,
            "type" : "number"
          },
          "tripArrivalDetectionMinDurationSeconds" : {
            "format" : "int32",
            "maximum" : 300,
            "minimum" : 10,
            "type" : "integer"
          },
          "tripSustainedStopMinDurationSeconds" : {
            "format" : "int32",
            "maximum" : 600,
            "minimum" : 10,
            "type" : "integer"
          },
          "tripArrivalMinPoints" : {
            "format" : "int32",
            "maximum" : 5,
            "minimum" : 2,
            "type" : "integer"
          },
          "bicycleEnabled" : {
            "type" : "boolean"
          },
          "bicycleMinAvgSpeed" : {
            "format" : "double",
            "maximum" : 15.0,
            "minimum" : 5.0,
            "type" : "number"
          },
          "bicycleMaxAvgSpeed" : {
            "format" : "double",
            "maximum" : 35.0,
            "minimum" : 15.0,
            "type" : "number"
          },
          "bicycleMaxMaxSpeed" : {
            "format" : "double",
            "maximum" : 80.0,
            "minimum" : 20.0,
            "type" : "number"
          },
          "runningEnabled" : {
            "type" : "boolean"
          },
          "runningMinAvgSpeed" : {
            "format" : "double",
            "maximum" : 10.0,
            "minimum" : 5.0,
            "type" : "number"
          },
          "runningMaxAvgSpeed" : {
            "format" : "double",
            "maximum" : 18.0,
            "minimum" : 10.0,
            "type" : "number"
          },
          "runningMaxMaxSpeed" : {
            "format" : "double",
            "maximum" : 25.0,
            "minimum" : 12.0,
            "type" : "number"
          },
          "trainEnabled" : {
            "type" : "boolean"
          },
          "trainMinAvgSpeed" : {
            "format" : "double",
            "maximum" : 50.0,
            "minimum" : 20.0,
            "type" : "number"
          },
          "trainMaxAvgSpeed" : {
            "format" : "double",
            "maximum" : 400.0,
            "minimum" : 80.0,
            "type" : "number"
          },
          "trainMinMaxSpeed" : {
            "format" : "double",
            "maximum" : 120.0,
            "minimum" : 60.0,
            "type" : "number"
          },
          "trainMaxMaxSpeed" : {
            "format" : "double",
            "maximum" : 500.0,
            "minimum" : 100.0,
            "type" : "number"
          },
          "trainMaxSpeedVariance" : {
            "format" : "double",
            "maximum" : 30.0,
            "minimum" : 5.0,
            "type" : "number"
          },
          "flightEnabled" : {
            "type" : "boolean"
          },
          "flightMinAvgSpeed" : {
            "format" : "double",
            "maximum" : 600.0,
            "minimum" : 250.0,
            "type" : "number"
          },
          "flightMinMaxSpeed" : {
            "format" : "double",
            "maximum" : 900.0,
            "minimum" : 400.0,
            "type" : "number"
          },
          "boatEnabled" : {
            "type" : "boolean"
          },
          "boatMinWaterRatio" : {
            "format" : "double",
            "maximum" : 1.00,
            "minimum" : 0.10,
            "type" : "number"
          },
          "boatMinWaterDistanceMeters" : {
            "format" : "double",
            "maximum" : 100000.0,
            "minimum" : 100.0,
            "type" : "number"
          },
          "boatMinContinuousWaterDistanceMeters" : {
            "format" : "double",
            "maximum" : 50000.0,
            "minimum" : 100.0,
            "type" : "number"
          },
          "boatMaxPlausibleSpeed" : {
            "format" : "double",
            "maximum" : 300.0,
            "minimum" : 20.0,
            "type" : "number"
          }
        }
      },
      "UpdateTripCollaboratorDto" : {
        "required" : [ "accessRole" ],
        "type" : "object",
        "properties" : {
          "accessRole" : {
            "$ref" : "#/components/schemas/TripCollaboratorAccessRole"
          }
        }
      },
      "UpdateTripDto" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 150,
            "pattern" : "\\S",
            "type" : "string"
          },
          "startTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "color" : {
            "pattern" : "^#[0-9A-Fa-f]{6}$",
            "type" : "string"
          },
          "notes" : {
            "maxLength" : 4000,
            "type" : "string"
          },
          "status" : {
            "$ref" : "#/components/schemas/TripStatus"
          }
        }
      },
      "UpdateTripPlanItemDto" : {
        "required" : [ "title" ],
        "type" : "object",
        "properties" : {
          "title" : {
            "maxLength" : 255,
            "pattern" : "\\S",
            "type" : "string"
          },
          "notes" : {
            "maxLength" : 2000,
            "type" : "string"
          },
          "latitude" : {
            "format" : "double",
            "maximum" : 90.0,
            "minimum" : -90.0,
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "maximum" : 180.0,
            "minimum" : -180.0,
            "type" : "number"
          },
          "plannedDay" : {
            "$ref" : "#/components/schemas/LocalDate"
          },
          "priority" : {
            "$ref" : "#/components/schemas/TripPlanItemPriority"
          },
          "orderIndex" : {
            "format" : "int32",
            "minimum" : 0,
            "type" : "integer"
          },
          "isVisited" : {
            "type" : "boolean"
          },
          "visitConfidence" : {
            "format" : "double",
            "maximum" : 1.0,
            "minimum" : 0.0,
            "type" : "number"
          },
          "visitSource" : {
            "$ref" : "#/components/schemas/TripPlanItemVisitSource"
          },
          "visitedAt" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "manualOverrideState" : {
            "$ref" : "#/components/schemas/TripPlanItemOverrideState"
          }
        }
      },
      "UpdateUserPasswordRequest" : {
        "required" : [ "newPassword" ],
        "type" : "object",
        "properties" : {
          "oldPassword" : {
            "type" : "string"
          },
          "newPassword" : {
            "pattern" : "\\S",
            "type" : "string"
          }
        }
      },
      "UpdateUserRoleRequest" : {
        "type" : "object",
        "properties" : {
          "role" : {
            "$ref" : "#/components/schemas/Role"
          }
        }
      },
      "UpdateUserStatusRequest" : {
        "type" : "object",
        "properties" : {
          "active" : {
            "type" : "boolean"
          }
        }
      },
      "UserAISettings" : {
        "type" : "object",
        "properties" : {
          "enabled" : {
            "type" : "boolean"
          },
          "openaiApiKey" : {
            "type" : "string"
          },
          "openaiApiUrl" : {
            "type" : "string"
          },
          "openaiModel" : {
            "type" : "string"
          },
          "openaiApiKeyConfigured" : {
            "type" : "boolean"
          },
          "apiKeyRequired" : {
            "type" : "boolean"
          },
          "customSystemMessage" : {
            "type" : "string"
          }
        }
      },
      "UserRegistrationRequest" : {
        "required" : [ "email", "password" ],
        "type" : "object",
        "properties" : {
          "email" : {
            "maxLength" : 254,
            "pattern" : "\\S",
            "type" : "string"
          },
          "password" : {
            "maxLength" : 128,
            "minLength" : 3,
            "pattern" : "\\S",
            "type" : "string"
          },
          "fullName" : {
            "maxLength" : 100,
            "minLength" : 1,
            "type" : "string"
          },
          "timezone" : {
            "maxLength" : 255,
            "type" : "string"
          }
        }
      },
      "VerifyPasswordRequest" : {
        "type" : "object",
        "properties" : {
          "password" : {
            "type" : "string"
          }
        }
      },
      "WeatherBackfillRequest" : {
        "type" : "object",
        "properties" : {
          "userId" : {
            "$ref" : "#/components/schemas/UUID"
          },
          "startTime" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "WeatherConditionInsight" : {
        "type" : "object",
        "properties" : {
          "weatherCode" : {
            "format" : "int32",
            "type" : "integer"
          },
          "label" : {
            "type" : "string"
          },
          "severity" : {
            "type" : "string"
          },
          "samplesCount" : {
            "format" : "int64",
            "type" : "integer"
          }
        }
      },
      "WeatherDailyPrecipitationInsight" : {
        "type" : "object",
        "properties" : {
          "date" : {
            "type" : "string"
          },
          "precipitation" : {
            "format" : "double",
            "type" : "number"
          }
        }
      },
      "WeatherInsights" : {
        "type" : "object",
        "properties" : {
          "samplesCount" : {
            "format" : "int64",
            "type" : "integer"
          },
          "coldestTemperature" : {
            "$ref" : "#/components/schemas/WeatherSampleInsight"
          },
          "hottestTemperature" : {
            "$ref" : "#/components/schemas/WeatherSampleInsight"
          },
          "averageTemperature" : {
            "format" : "double",
            "type" : "number"
          },
          "wettestDay" : {
            "$ref" : "#/components/schemas/WeatherDailyPrecipitationInsight"
          },
          "rainySamplesCount" : {
            "format" : "int64",
            "type" : "integer"
          },
          "snowySamplesCount" : {
            "format" : "int64",
            "type" : "integer"
          },
          "windiestSample" : {
            "$ref" : "#/components/schemas/WeatherSampleInsight"
          },
          "dominantCondition" : {
            "$ref" : "#/components/schemas/WeatherConditionInsight"
          },
          "weatherCoverageStart" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "weatherCoverageEnd" : {
            "$ref" : "#/components/schemas/Instant"
          }
        }
      },
      "WeatherSampleInsight" : {
        "type" : "object",
        "properties" : {
          "observedAt" : {
            "$ref" : "#/components/schemas/Instant"
          },
          "latitude" : {
            "format" : "double",
            "type" : "number"
          },
          "longitude" : {
            "format" : "double",
            "type" : "number"
          },
          "weatherCode" : {
            "format" : "int32",
            "type" : "integer"
          },
          "condition" : {
            "type" : "string"
          },
          "temperature" : {
            "format" : "double",
            "type" : "number"
          },
          "precipitation" : {
            "format" : "double",
            "type" : "number"
          },
          "snowfall" : {
            "format" : "double",
            "type" : "number"
          },
          "windSpeed" : {
            "format" : "double",
            "type" : "number"
          }
        }
      }
    },
    "securitySchemes" : {
      "jwt" : {
        "type" : "http",
        "scheme" : "bearer",
        "bearerFormat" : "JWT",
        "description" : "Authentication"
      }
    }
  },
  "paths" : {
    "/api/admin/api-tokens" : {
      "get" : {
        "operationId" : "AdminApiTokenResource_listTokens",
        "tags" : [ "Admin: API Tokens" ],
        "parameters" : [ {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "schema" : {
            "$ref" : "#/components/schemas/ApiTokenStatus"
          }
        }, {
          "name" : "userId",
          "in" : "query",
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "List Tokens",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/api-tokens/{id}" : {
      "delete" : {
        "operationId" : "AdminApiTokenResource_revokeToken",
        "tags" : [ "Admin: API Tokens" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Revoke Token",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/audit-logs" : {
      "get" : {
        "operationId" : "AdminAuditLogResource_getAuditLogs",
        "tags" : [ "Admin: Audit Logs" ],
        "parameters" : [ {
          "name" : "actionType",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "adminUserId",
          "in" : "query",
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 20,
            "type" : "integer"
          }
        }, {
          "name" : "targetType",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "to",
          "in" : "query",
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Audit Logs",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/dashboard/stats" : {
      "get" : {
        "operationId" : "AdminDashboardResource_getDashboardStats",
        "tags" : [ "Admin: Dashboard" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Dashboard Stats",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      }
    },
    "/api/admin/invitations" : {
      "get" : {
        "operationId" : "AdminInvitationResource_getInvitations",
        "tags" : [ "Admin: Invitations" ],
        "parameters" : [ {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "schema" : {
            "$ref" : "#/components/schemas/InvitationStatus"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Invitations",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      },
      "post" : {
        "operationId" : "AdminInvitationResource_createInvitation",
        "tags" : [ "Admin: Invitations" ],
        "parameters" : [ {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateInvitationRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Invitation",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/invitations/base-url" : {
      "get" : {
        "operationId" : "AdminInvitationResource_getBaseUrl",
        "tags" : [ "Admin: Invitations" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Base Url",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      }
    },
    "/api/admin/invitations/{id}" : {
      "delete" : {
        "operationId" : "AdminInvitationResource_revokeInvitation",
        "tags" : [ "Admin: Invitations" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Revoke Invitation",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/oidc/providers" : {
      "get" : {
        "operationId" : "AdminOidcProviderResource_getAllProviders",
        "tags" : [ "Admin: OIDC Providers" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get All Providers",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      },
      "post" : {
        "operationId" : "AdminOidcProviderResource_createProvider",
        "tags" : [ "Admin: OIDC Providers" ],
        "parameters" : [ {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateOidcProviderRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Provider",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/oidc/providers/{name}" : {
      "put" : {
        "operationId" : "AdminOidcProviderResource_updateProvider",
        "tags" : [ "Admin: OIDC Providers" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateOidcProviderRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Provider",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "AdminOidcProviderResource_getProvider",
        "tags" : [ "Admin: OIDC Providers" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Provider",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      },
      "delete" : {
        "operationId" : "AdminOidcProviderResource_deleteProvider",
        "tags" : [ "Admin: OIDC Providers" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Provider",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/oidc/providers/{name}/reset" : {
      "post" : {
        "operationId" : "AdminOidcProviderResource_resetProvider",
        "tags" : [ "Admin: OIDC Providers" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reset Provider",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/oidc/providers/{name}/test" : {
      "post" : {
        "operationId" : "AdminOidcProviderResource_testProvider",
        "tags" : [ "Admin: OIDC Providers" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Test Provider",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/settings" : {
      "get" : {
        "operationId" : "AdminSettingsResource_getAllSettings",
        "tags" : [ "Admin: System Settings" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get All Settings",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      }
    },
    "/api/admin/settings/bulk" : {
      "post" : {
        "operationId" : "AdminSettingsResource_bulkUpdateSettings",
        "tags" : [ "Admin: System Settings" ],
        "parameters" : [ {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkUpdateRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Bulk Update Settings",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/settings/system/notifications/apprise/test" : {
      "post" : {
        "operationId" : "AdminSettingsResource_testAppriseConnection",
        "tags" : [ "Admin: System Settings" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AppriseTestRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Test Apprise Connection",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/settings/weather/test" : {
      "post" : {
        "operationId" : "AdminSettingsResource_testWeatherConnection",
        "tags" : [ "Admin: System Settings" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Test Weather Connection",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/settings/{category}" : {
      "get" : {
        "operationId" : "AdminSettingsResource_getSettingsByCategory",
        "tags" : [ "Admin: System Settings" ],
        "parameters" : [ {
          "name" : "category",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Settings By Category",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      }
    },
    "/api/admin/settings/{key}" : {
      "put" : {
        "operationId" : "AdminSettingsResource_updateSetting",
        "tags" : [ "Admin: System Settings" ],
        "parameters" : [ {
          "name" : "key",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateSettingRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Setting",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "AdminSettingsResource_resetSetting",
        "tags" : [ "Admin: System Settings" ],
        "parameters" : [ {
          "name" : "key",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reset Setting",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/timeline-regeneration-campaigns" : {
      "get" : {
        "operationId" : "AdminTimelineRegenerationCampaignResource_listCampaigns",
        "tags" : [ "Admin: Timeline Regeneration" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "List Campaigns",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      },
      "post" : {
        "operationId" : "AdminTimelineRegenerationCampaignResource_createCampaign",
        "tags" : [ "Admin: Timeline Regeneration" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTimelineRegenerationCampaignRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Campaign",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/timeline-regeneration-campaigns/preview" : {
      "post" : {
        "operationId" : "AdminTimelineRegenerationCampaignResource_previewCampaign",
        "tags" : [ "Admin: Timeline Regeneration" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TimelineRegenerationCampaignPreviewRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Preview Campaign",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/timeline-regeneration-campaigns/{campaignId}" : {
      "get" : {
        "operationId" : "AdminTimelineRegenerationCampaignResource_getCampaign",
        "tags" : [ "Admin: Timeline Regeneration" ],
        "parameters" : [ {
          "name" : "campaignId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Campaign",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      }
    },
    "/api/admin/timeline-regeneration-campaigns/{campaignId}/retry-failed" : {
      "post" : {
        "operationId" : "AdminTimelineRegenerationCampaignResource_retryFailed",
        "tags" : [ "Admin: Timeline Regeneration" ],
        "parameters" : [ {
          "name" : "campaignId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Retry Failed",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/users" : {
      "get" : {
        "operationId" : "AdminUserResource_getUsers",
        "tags" : [ "Admin: Users" ],
        "parameters" : [ {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "search",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 10,
            "type" : "integer"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "createdAt",
            "type" : "string"
          }
        }, {
          "name" : "sortDir",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Users",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      }
    },
    "/api/admin/users/{id}" : {
      "get" : {
        "operationId" : "AdminUserResource_getUserById",
        "tags" : [ "Admin: Users" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get User By Id",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      },
      "delete" : {
        "operationId" : "AdminUserResource_deleteUser",
        "tags" : [ "Admin: Users" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete User",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/users/{id}/reset-password" : {
      "post" : {
        "operationId" : "AdminUserResource_resetPassword",
        "tags" : [ "Admin: Users" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reset Password",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/users/{id}/role" : {
      "put" : {
        "operationId" : "AdminUserResource_updateUserRole",
        "tags" : [ "Admin: Users" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateUserRoleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update User Role",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/users/{id}/status" : {
      "put" : {
        "operationId" : "AdminUserResource_updateUserStatus",
        "tags" : [ "Admin: Users" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateUserStatusRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update User Status",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/weather/backfill" : {
      "post" : {
        "operationId" : "AdminWeatherResource_backfill",
        "tags" : [ "Admin: Weather" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/WeatherBackfillRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Backfill",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/weather/process-now" : {
      "post" : {
        "operationId" : "AdminWeatherResource_processNow",
        "tags" : [ "Admin: Weather" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Process Now",
        "security" : [ {
          "jwt" : [ "ADMIN" ]
        } ]
      }
    },
    "/api/admin/weather/status" : {
      "get" : {
        "operationId" : "AdminWeatherResource_status",
        "tags" : [ "Admin: Weather" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Status",
        "security" : [ {
          "jwt" : [ "ADMIN", "DEMO_ADMIN_READ" ]
        } ]
      }
    },
    "/api/ai/builtin-system-message" : {
      "get" : {
        "operationId" : "AIResource_getBuiltinSystemMessage",
        "tags" : [ "User: AI Assistant" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Builtin System Message"
      }
    },
    "/api/ai/chat" : {
      "post" : {
        "operationId" : "AIResource_chat",
        "tags" : [ "User: AI Assistant" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ChatRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiResponseObject"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Chat"
      }
    },
    "/api/ai/default-system-message" : {
      "get" : {
        "operationId" : "AIResource_getDefaultSystemMessage",
        "tags" : [ "User: AI Assistant" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Default System Message"
      }
    },
    "/api/ai/settings" : {
      "post" : {
        "operationId" : "AIResource_saveAISettings",
        "tags" : [ "User: AI Assistant" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UserAISettings"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Save AI Settings"
      },
      "get" : {
        "operationId" : "AIResource_getAISettings",
        "tags" : [ "User: AI Assistant" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get AI Settings"
      }
    },
    "/api/ai/test-connection" : {
      "post" : {
        "operationId" : "AIResource_testConnection",
        "tags" : [ "User: AI Assistant" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Test Connection"
      }
    },
    "/api/api-tokens" : {
      "get" : {
        "operationId" : "ApiTokenResource_listTokens",
        "tags" : [ "User: API Tokens" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "List Tokens",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "ApiTokenResource_createToken",
        "tags" : [ "User: API Tokens" ],
        "parameters" : [ {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateApiTokenRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Token",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/api-tokens/{id}" : {
      "put" : {
        "operationId" : "ApiTokenResource_updateToken",
        "tags" : [ "User: API Tokens" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateApiTokenRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Token",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "ApiTokenResource_revokeToken",
        "tags" : [ "User: API Tokens" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "X-Forwarded-For",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "X-Real-IP",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Revoke Token",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/auth/api-login" : {
      "post" : {
        "operationId" : "AuthenticationResource_apiLogin",
        "tags" : [ "Public: Auth: Sessions" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LoginRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Api Login"
      }
    },
    "/api/auth/demo-login" : {
      "post" : {
        "operationId" : "AuthenticationResource_demoLogin",
        "tags" : [ "Public: Auth: Sessions" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DemoLoginRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Demo Login"
      }
    },
    "/api/auth/invitation/register" : {
      "post" : {
        "operationId" : "InvitationAuthResource_registerViaInvitation",
        "tags" : [ "Public: Auth: Invitations" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/InvitationRegisterRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Register Via Invitation"
      }
    },
    "/api/auth/invitation/{token}/validate" : {
      "get" : {
        "operationId" : "InvitationAuthResource_validateToken",
        "tags" : [ "Public: Auth: Invitations" ],
        "parameters" : [ {
          "name" : "token",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Validate Token"
      }
    },
    "/api/auth/login" : {
      "post" : {
        "operationId" : "AuthenticationResource_loginUser",
        "tags" : [ "Public: Auth: Sessions" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LoginRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Login User"
      }
    },
    "/api/auth/logout" : {
      "post" : {
        "operationId" : "AuthenticationResource_logout",
        "tags" : [ "Public: Auth: Sessions" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Logout"
      }
    },
    "/api/auth/mobile" : {
      "get" : {
        "operationId" : "MobileAuthenticationResource_generateCode",
        "tags" : [ "Public: Auth: Mobile" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Generate Code"
      }
    },
    "/api/auth/oidc/callback" : {
      "post" : {
        "operationId" : "OidcAuthenticationResource_handleCallback",
        "tags" : [ "Public: Auth: OIDC" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/OidcCallbackRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Handle Callback"
      }
    },
    "/api/auth/oidc/connections" : {
      "get" : {
        "operationId" : "OidcAuthenticationResource_getUserConnections",
        "tags" : [ "Public: Auth: OIDC" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get User Connections"
      }
    },
    "/api/auth/oidc/link-with-oidc" : {
      "post" : {
        "operationId" : "OidcAuthenticationResource_linkAccountWithOidc",
        "tags" : [ "Public: Auth: OIDC" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/InitiateOidcLinkingRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Link Account With Oidc"
      }
    },
    "/api/auth/oidc/link-with-password" : {
      "post" : {
        "operationId" : "OidcAuthenticationResource_linkAccountWithPassword",
        "tags" : [ "Public: Auth: OIDC" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LinkAccountWithPasswordRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Link Account With Password"
      }
    },
    "/api/auth/oidc/link/{provider}" : {
      "post" : {
        "operationId" : "OidcAuthenticationResource_initiateLinking",
        "tags" : [ "Public: Auth: OIDC" ],
        "parameters" : [ {
          "name" : "provider",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "redirectUri",
          "in" : "query",
          "schema" : {
            "default" : "/app/profile",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Initiate Linking"
      }
    },
    "/api/auth/oidc/login/{provider}" : {
      "post" : {
        "operationId" : "OidcAuthenticationResource_initiateLogin",
        "tags" : [ "Public: Auth: OIDC" ],
        "parameters" : [ {
          "name" : "provider",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "redirectUri",
          "in" : "query",
          "schema" : {
            "default" : "/app/timeline",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Initiate Login"
      }
    },
    "/api/auth/oidc/providers" : {
      "get" : {
        "operationId" : "OidcAuthenticationResource_getEnabledProviders",
        "tags" : [ "Public: Auth: OIDC" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Enabled Providers"
      }
    },
    "/api/auth/oidc/unlink/{provider}" : {
      "delete" : {
        "operationId" : "OidcAuthenticationResource_unlinkProvider",
        "tags" : [ "Public: Auth: OIDC" ],
        "parameters" : [ {
          "name" : "provider",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Unlink Provider"
      }
    },
    "/api/auth/refresh" : {
      "post" : {
        "operationId" : "AuthenticationResource_refreshToken",
        "tags" : [ "Public: Auth: Sessions" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TokenRefreshRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Refresh Token"
      }
    },
    "/api/auth/refresh-cookie" : {
      "post" : {
        "operationId" : "AuthenticationResource_refreshTokenCookie",
        "tags" : [ "Public: Auth: Sessions" ],
        "parameters" : [ {
          "name" : "refresh_token",
          "in" : "cookie",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Refresh Token Cookie"
      }
    },
    "/api/auth/status" : {
      "get" : {
        "operationId" : "AuthenticationResource_getAuthStatus",
        "tags" : [ "Public: Auth: Sessions" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Auth Status"
      }
    },
    "/api/boat/setup/jobs/{jobId}" : {
      "get" : {
        "operationId" : "BoatSetupResource_getJob",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Job",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/boat/setup/start" : {
      "post" : {
        "operationId" : "BoatSetupResource_startSetup",
        "tags" : [ "User: Trips and Planning" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Start Setup",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/boat/setup/status" : {
      "get" : {
        "operationId" : "BoatSetupResource_getStatus",
        "tags" : [ "User: Trips and Planning" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Status",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/colota" : {
      "post" : {
        "summary" : "Ingest Colota location",
        "description" : "Receives a Colota-compatible location update and stores it for the matching source token.",
        "operationId" : "ColotaResource_handleColota",
        "tags" : [ "Public: GPS Integrations: Colota" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ColotaLocationMessage"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        }
      }
    },
    "/api/coverage/cells" : {
      "get" : {
        "operationId" : "CoverageResource_getCoverageCells",
        "tags" : [ "User: Coverage" ],
        "parameters" : [ {
          "name" : "bbox",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "grid",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "minimum" : 1,
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Coverage Cells",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/coverage/recalculate" : {
      "post" : {
        "operationId" : "CoverageResource_recalculateCoverage",
        "tags" : [ "User: Coverage" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Recalculate Coverage",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/coverage/settings" : {
      "put" : {
        "operationId" : "CoverageResource_updateCoverageSettings",
        "tags" : [ "User: Coverage" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CoverageSettingsRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Coverage Settings",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/coverage/status" : {
      "get" : {
        "operationId" : "CoverageResource_getCoverageStatus",
        "tags" : [ "User: Coverage" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Coverage Status",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/coverage/summary" : {
      "get" : {
        "operationId" : "CoverageResource_getCoverageSummary",
        "tags" : [ "User: Coverage" ],
        "parameters" : [ {
          "name" : "grid",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Coverage Summary",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/dawarich/api/v1/health" : {
      "get" : {
        "summary" : "Check Dawarich compatibility health",
        "description" : "Returns a Dawarich-compatible health response for source connectivity checks.",
        "operationId" : "DawarichResource_handleDawarichHealth",
        "tags" : [ "Public: GPS Integrations: Dawarich" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        }
      }
    },
    "/api/dawarich/api/v1/points" : {
      "post" : {
        "summary" : "Ingest Dawarich points",
        "description" : "Receives Dawarich point payloads and stores them for the matching source token.",
        "operationId" : "DawarichResource_handleDawarichGet",
        "tags" : [ "Public: GPS Integrations: Dawarich" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DawarichPayload"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        }
      }
    },
    "/api/dawarich/api/v1/stats" : {
      "get" : {
        "summary" : "Get Dawarich compatibility stats",
        "description" : "Returns a Dawarich-compatible stats response for authenticated compatibility clients.",
        "operationId" : "DawarichResource_handleDawarichStats",
        "tags" : [ "Public: GPS Integrations: Dawarich" ],
        "parameters" : [ {
          "name" : "api_key",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        }
      }
    },
    "/api/digest/heatmap/monthly" : {
      "get" : {
        "operationId" : "DigestHeatmapResource_getMonthlyHeatmap",
        "tags" : [ "User: Digests" ],
        "parameters" : [ {
          "name" : "layer",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "month",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "year",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Monthly Heatmap",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/digest/heatmap/range" : {
      "get" : {
        "operationId" : "DigestHeatmapResource_getRangeHeatmap",
        "tags" : [ "User: Digests" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "layer",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Range Heatmap",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/digest/heatmap/yearly" : {
      "get" : {
        "operationId" : "DigestHeatmapResource_getYearlyHeatmap",
        "tags" : [ "User: Digests" ],
        "parameters" : [ {
          "name" : "layer",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "year",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Yearly Heatmap",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/digest/monthly" : {
      "get" : {
        "operationId" : "DigestResource_getMonthlyDigest",
        "tags" : [ "User: Digests" ],
        "parameters" : [ {
          "name" : "month",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "year",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Monthly Digest",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/digest/yearly" : {
      "get" : {
        "operationId" : "DigestResource_getYearlyDigest",
        "tags" : [ "User: Digests" ],
        "parameters" : [ {
          "name" : "year",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Yearly Digest",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/export/create" : {
      "post" : {
        "operationId" : "ExportResource_createExport",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateExportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Export",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/csv/create" : {
      "post" : {
        "deprecated" : true,
        "operationId" : "ExportResource_createCsvExport",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateExportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Csv Export",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/csv/template" : {
      "get" : {
        "operationId" : "ExportResource_downloadCsvTemplate",
        "tags" : [ "User: Import and Export" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "text/csv" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Download Csv Template",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/debug/create" : {
      "post" : {
        "operationId" : "ExportResource_createDebugExport",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DebugExportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Debug Export",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/download/{exportJobId}" : {
      "get" : {
        "operationId" : "ExportResource_downloadExport",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "exportJobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/zip" : { },
              "application/json" : {
                "schema" : { }
              },
              "application/gpx+xml" : { },
              "text/csv" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Download Export",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/geojson/create" : {
      "post" : {
        "deprecated" : true,
        "operationId" : "ExportResource_createGeoJsonExport",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateExportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Geo Json Export",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/gpx/create" : {
      "post" : {
        "deprecated" : true,
        "operationId" : "ExportResource_createGpxExport",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateExportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Gpx Export",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/gpx/stay/{stayId}" : {
      "get" : {
        "operationId" : "ExportResource_exportSingleStay",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "stayId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/gpx+xml" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Export Single Stay",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/gpx/trip/{tripId}" : {
      "get" : {
        "operationId" : "ExportResource_exportSingleTrip",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/gpx+xml" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Export Single Trip",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/jobs" : {
      "get" : {
        "operationId" : "ExportResource_listExportJobs",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 10,
            "type" : "integer"
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "List Export Jobs",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/jobs/{exportJobId}" : {
      "delete" : {
        "operationId" : "ExportResource_deleteExportJob",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "exportJobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Export Job",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/owntracks/create" : {
      "post" : {
        "deprecated" : true,
        "operationId" : "ExportResource_createOwnTracksExport",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateExportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Own Tracks Export",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/export/status/{exportJobId}" : {
      "get" : {
        "operationId" : "ExportResource_getExportStatus",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "exportJobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Export Status",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/favorites" : {
      "get" : {
        "operationId" : "FavoritesResource_getFavorites",
        "tags" : [ "User: Favorites" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Favorites",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/area" : {
      "post" : {
        "operationId" : "FavoritesResource_addAreaToFavorites",
        "tags" : [ "User: Favorites" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AddAreaToFavoritesDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Add Area To Favorites",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/bulk" : {
      "post" : {
        "operationId" : "FavoritesResource_bulkAddFavorites",
        "tags" : [ "User: Favorites" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAddFavoritesDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Bulk Add Favorites",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/bulk-update" : {
      "put" : {
        "operationId" : "FavoritesResource_bulkUpdateFavorites",
        "tags" : [ "User: Favorites" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkUpdateFavoritesDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Bulk Update Favorites",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/distinct-values" : {
      "get" : {
        "operationId" : "FavoritesResource_getDistinctValues",
        "tags" : [ "User: Favorites" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Distinct Values",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/point" : {
      "post" : {
        "operationId" : "FavoritesResource_addPointToFavorites",
        "tags" : [ "User: Favorites" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AddPointToFavoritesDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Add Point To Favorites",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/reconcile/bulk" : {
      "post" : {
        "operationId" : "FavoritesResource_reconcileFavoritesBulk",
        "tags" : [ "User: Favorites" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/FavoriteReconcileRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Reconcile Favorites Bulk",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/reconcile/jobs/{jobId}" : {
      "get" : {
        "operationId" : "FavoritesResource_getReconciliationJobProgress",
        "tags" : [ "User: Favorites" ],
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Reconciliation Job Progress",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/favorites/{favoriteId}" : {
      "put" : {
        "operationId" : "FavoritesResource_updateFavorite",
        "tags" : [ "User: Favorites" ],
        "parameters" : [ {
          "name" : "favoriteId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/EditFavoriteDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Favorite",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "FavoritesResource_deleteFavorite",
        "tags" : [ "User: Favorites" ],
        "parameters" : [ {
          "name" : "favoriteId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Favorite",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends" : {
      "get" : {
        "operationId" : "FriendResource_getFriends",
        "tags" : [ "User: Friends" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Friends",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/invitations" : {
      "post" : {
        "operationId" : "FriendInvitationResource_sendInvitation",
        "tags" : [ "User: Friends" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SendFriendInvitationDTO"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Send Invitation",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/invitations/received" : {
      "get" : {
        "operationId" : "FriendInvitationResource_getReceivedInvitations",
        "tags" : [ "User: Friends" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Received Invitations",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/invitations/sent" : {
      "get" : {
        "operationId" : "FriendInvitationResource_getSentInvitations",
        "tags" : [ "User: Friends" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Sent Invitations",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/invitations/{invitationId}/accept" : {
      "put" : {
        "operationId" : "FriendInvitationResource_acceptInvitation",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "invitationId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Accept Invitation",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/invitations/{invitationId}/cancel" : {
      "put" : {
        "operationId" : "FriendInvitationResource_cancelInvitation",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "invitationId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Cancel Invitation",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/invitations/{invitationId}/reject" : {
      "put" : {
        "operationId" : "FriendInvitationResource_rejectInvitation",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "invitationId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reject Invitation",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/location/trails" : {
      "get" : {
        "operationId" : "FriendResource_getFriendsLocationTrails",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "minutes",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : "60",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Friends Location Trails",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/permissions" : {
      "get" : {
        "operationId" : "FriendResource_getAllFriendPermissions",
        "tags" : [ "User: Friends" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get All Friend Permissions",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/search-users-to-invite" : {
      "get" : {
        "operationId" : "FriendResource_searchUsersToInvite",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "query",
          "in" : "query",
          "schema" : {
            "type" : "string"
          },
          "required" : true
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Search Users To Invite",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/{friendId}" : {
      "delete" : {
        "operationId" : "FriendResource_removeFriend",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "friendId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Remove Friend",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/{friendId}/location" : {
      "get" : {
        "operationId" : "FriendResource_getFriendLocation",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "friendId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Friend Location",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/{friendId}/permissions" : {
      "put" : {
        "operationId" : "FriendResource_updateFriendPermissions",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "friendId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdatePermissionRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Friend Permissions",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "FriendResource_getFriendPermissions",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "friendId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Friend Permissions",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/friends/{friendId}/permissions/live" : {
      "put" : {
        "operationId" : "FriendResource_updateLiveLocationPermission",
        "tags" : [ "User: Friends" ],
        "parameters" : [ {
          "name" : "friendId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateLiveLocationRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Live Location Permission",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding" : {
      "get" : {
        "operationId" : "ReverseGeocodingResource_getGeocodingResults",
        "tags" : [ "User: Geocoding" ],
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        }, {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 1,
            "type" : "integer"
          }
        }, {
          "name" : "providerName",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "searchText",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "schema" : {
            "default" : "lastAccessedAt",
            "type" : "string"
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Geocoding Results",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/bulk-update" : {
      "put" : {
        "operationId" : "ReverseGeocodingResource_bulkUpdateGeocoding",
        "tags" : [ "User: Geocoding" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkUpdateGeocodingDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Bulk Update Geocoding",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/distinct-values" : {
      "get" : {
        "operationId" : "ReverseGeocodingResource_getDistinctValues",
        "tags" : [ "User: Geocoding" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Distinct Values",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/normalization-rules" : {
      "get" : {
        "operationId" : "ReverseGeocodingResource_listNormalizationRules",
        "tags" : [ "User: Geocoding" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "List Normalization Rules",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "ReverseGeocodingResource_createNormalizationRule",
        "tags" : [ "User: Geocoding" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateNormalizationRuleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Normalization Rule",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/normalization-rules/apply" : {
      "post" : {
        "operationId" : "ReverseGeocodingResource_applyNormalizationRules",
        "tags" : [ "User: Geocoding" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ApplyNormalizationRulesRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Apply Normalization Rules",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/normalization-rules/{id}" : {
      "put" : {
        "operationId" : "ReverseGeocodingResource_updateNormalizationRule",
        "tags" : [ "User: Geocoding" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateNormalizationRuleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Normalization Rule",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "ReverseGeocodingResource_deleteNormalizationRule",
        "tags" : [ "User: Geocoding" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Normalization Rule",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/normalization-rules/{id}/apply" : {
      "post" : {
        "operationId" : "ReverseGeocodingResource_applyNormalizationRule",
        "tags" : [ "User: Geocoding" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ApplyNormalizationRulesRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Apply Normalization Rule",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/providers" : {
      "get" : {
        "operationId" : "ReverseGeocodingResource_getEnabledProviders",
        "tags" : [ "User: Geocoding" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Enabled Providers",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/providers/available" : {
      "get" : {
        "operationId" : "ReverseGeocodingResource_getProvidersWithData",
        "tags" : [ "User: Geocoding" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Providers With Data",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/reconcile/bulk" : {
      "post" : {
        "operationId" : "ReverseGeocodingResource_reconcileWithProviderBulk",
        "tags" : [ "User: Geocoding" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ReverseGeocodingReconcileRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Reconcile With Provider Bulk",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/reconcile/jobs/{jobId}" : {
      "get" : {
        "operationId" : "ReverseGeocodingResource_getReconciliationJobProgress",
        "tags" : [ "User: Geocoding" ],
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Reconciliation Job Progress",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/reconcile/single" : {
      "post" : {
        "operationId" : "ReverseGeocodingResource_reconcileSingle",
        "tags" : [ "User: Geocoding" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ReverseGeocodingReconcileRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Reconcile Single",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geocoding/{id}" : {
      "put" : {
        "operationId" : "ReverseGeocodingResource_updateGeocodingResult",
        "tags" : [ "User: Geocoding" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ReverseGeocodingUpdateDTO"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Geocoding Result",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "ReverseGeocodingResource_getGeocodingResult",
        "tags" : [ "User: Geocoding" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Geocoding Result",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/events" : {
      "get" : {
        "operationId" : "GeofenceResource_getEvents",
        "tags" : [ "User: Geofences" ],
        "parameters" : [ {
          "name" : "dateFrom",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dateTo",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "eventTypes",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "pageSize",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 25,
            "type" : "integer"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "occurredAt",
            "type" : "string"
          }
        }, {
          "name" : "sortDir",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        }, {
          "name" : "subjectUserIds",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "unreadOnly",
          "in" : "query",
          "schema" : {
            "default" : false,
            "type" : "boolean"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Events",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/events/seen-all" : {
      "post" : {
        "operationId" : "GeofenceResource_markAllEventsSeen",
        "tags" : [ "User: Geofences" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Mark All Events Seen",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/events/unread-count" : {
      "get" : {
        "operationId" : "GeofenceResource_getUnreadEventCount",
        "tags" : [ "User: Geofences" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Unread Event Count",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/events/{eventId}/seen" : {
      "post" : {
        "operationId" : "GeofenceResource_markEventSeen",
        "tags" : [ "User: Geofences" ],
        "parameters" : [ {
          "name" : "eventId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Mark Event Seen",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/rules" : {
      "get" : {
        "operationId" : "GeofenceResource_getRules",
        "tags" : [ "User: Geofences" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Rules",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "GeofenceResource_createRule",
        "tags" : [ "User: Geofences" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateGeofenceRuleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Rule",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/rules/{ruleId}" : {
      "patch" : {
        "operationId" : "GeofenceResource_updateRule",
        "tags" : [ "User: Geofences" ],
        "parameters" : [ {
          "name" : "ruleId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateGeofenceRuleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Update Rule",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "GeofenceResource_deleteRule",
        "tags" : [ "User: Geofences" ],
        "parameters" : [ {
          "name" : "ruleId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Rule",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/templates" : {
      "get" : {
        "operationId" : "GeofenceResource_getTemplates",
        "tags" : [ "User: Geofences" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Templates",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "GeofenceResource_createTemplate",
        "tags" : [ "User: Geofences" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateNotificationTemplateRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Template",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/templates/capabilities" : {
      "get" : {
        "operationId" : "GeofenceResource_getTemplateCapabilities",
        "tags" : [ "User: Geofences" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Template Capabilities",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/templates/test-connection" : {
      "post" : {
        "operationId" : "GeofenceResource_testTemplateConnection",
        "tags" : [ "User: Geofences" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AppriseTestRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Test Template Connection",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/geofences/templates/{templateId}" : {
      "patch" : {
        "operationId" : "GeofenceResource_updateTemplate",
        "tags" : [ "User: Geofences" ],
        "parameters" : [ {
          "name" : "templateId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateNotificationTemplateRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Update Template",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "GeofenceResource_deleteTemplate",
        "tags" : [ "User: Geofences" ],
        "parameters" : [ {
          "name" : "templateId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Template",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps" : {
      "get" : {
        "operationId" : "GpsPointResource_getGpsPoints",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "accuracyMax",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "accuracyMin",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        }, {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 1,
            "type" : "integer"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "timestamp",
            "type" : "string"
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        }, {
          "name" : "sourceTypes",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "speedMax",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "speedMin",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Gps Points",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/all" : {
      "delete" : {
        "operationId" : "GpsPointResource_deleteAllGpsData",
        "tags" : [ "User: GPS Data" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete All Gps Data",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/bulk" : {
      "post" : {
        "operationId" : "GpsPointResource_deleteGpsPoints",
        "tags" : [ "User: GPS Data" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteGpsPointsDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Delete Gps Points",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/export" : {
      "get" : {
        "operationId" : "GpsPointResource_exportGpsPoints",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "accuracyMax",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "accuracyMin",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "ids",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sourceTypes",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "speedMax",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "speedMin",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "text/csv" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Export Gps Points",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/last-known-position" : {
      "get" : {
        "operationId" : "GpsPointResource_getLastKnownPosition",
        "tags" : [ "User: GPS Data" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Last Known Position",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/map-points" : {
      "get" : {
        "operationId" : "GpsPointResource_getRawGpsMapPoints",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 10000,
            "type" : "integer"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Raw Gps Map Points",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/path" : {
      "get" : {
        "operationId" : "GpsPointResource_getGpsPointPath",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Gps Point Path",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/points" : {
      "post" : {
        "operationId" : "GpsPointResource_ingestMobileAppPoints",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "X-Device-Id",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/GpsPointsRetentionRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Ingest Mobile App Points",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/points/{pointId}/location" : {
      "get" : {
        "operationId" : "GpsPointResource_resolveRawGpsPointLocation",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "pointId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Resolve Raw Gps Point Location",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/source" : {
      "put" : {
        "operationId" : "GpsSourceConfigResource_updateGpsConfigSource",
        "tags" : [ "User: GPS Sources" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateGpsSourceConfigDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Gps Config Source",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "GpsSourceConfigResource_getGpsSourceConfigs",
        "tags" : [ "User: GPS Sources" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Gps Source Configs",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "GpsSourceConfigResource_addGpsSourceCnfig",
        "tags" : [ "User: GPS Sources" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateGpsSourceConfigDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Add Gps Source Cnfig",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/source/defaults" : {
      "get" : {
        "operationId" : "GpsSourceConfigResource_getDefaultFilteringValues",
        "tags" : [ "User: GPS Sources" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Default Filtering Values",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/source/owntracks/mqtt-config" : {
      "get" : {
        "operationId" : "GpsSourceConfigResource_getOwnTracksMqttConfig",
        "tags" : [ "User: GPS Sources" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Own Tracks Mqtt Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/source/telemetry/{sourceType}" : {
      "put" : {
        "operationId" : "GpsSourceConfigResource_upsertTelemetryMapping",
        "tags" : [ "User: GPS Sources" ],
        "parameters" : [ {
          "name" : "sourceType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/GpsTelemetryMappingEntry"
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Upsert Telemetry Mapping",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "GpsSourceConfigResource_resetTelemetryMapping",
        "tags" : [ "User: GPS Sources" ],
        "parameters" : [ {
          "name" : "sourceType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reset Telemetry Mapping",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "GpsSourceConfigResource_getTelemetryMapping",
        "tags" : [ "User: GPS Sources" ],
        "parameters" : [ {
          "name" : "sourceType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Telemetry Mapping",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/source/{id}" : {
      "delete" : {
        "operationId" : "GpsSourceConfigResource_deleteGpsSourceConfig",
        "tags" : [ "User: GPS Sources" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Gps Source Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/source/{id}/status" : {
      "put" : {
        "operationId" : "GpsSourceConfigResource_updateStatus",
        "tags" : [ "User: GPS Sources" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateGpsSourceConfigStatusDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Status",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/status" : {
      "get" : {
        "operationId" : "GpsPointResource_getGpsStatus",
        "tags" : [ "User: GPS Data" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Gps Status",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/summary" : {
      "get" : {
        "operationId" : "GpsPointResource_getGpsPointSummary",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "accuracyMax",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "accuracyMin",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sourceTypes",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "speedMax",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "speedMin",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Gps Point Summary",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gps/{pointId}" : {
      "put" : {
        "operationId" : "GpsPointResource_updateGpsPoint",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "pointId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/EditGpsPointDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Gps Point",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "GpsPointResource_deleteGpsPoint",
        "tags" : [ "User: GPS Data" ],
        "parameters" : [ {
          "name" : "pointId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Gps Point",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/gpslogger" : {
      "post" : {
        "summary" : "Ingest GPS Logger location",
        "description" : "Receives a GPS Logger location update and stores it as a GPS point for the matching source token.",
        "operationId" : "GpsLoggerResource_handleGpsLogger",
        "tags" : [ "Public: GPS Integrations: GPS Logger" ],
        "parameters" : [ {
          "name" : "X-Limit-D",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "additionalProperties" : { }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        }
      }
    },
    "/api/health" : {
      "get" : {
        "operationId" : "HealthResource_checkHealth",
        "tags" : [ "Public: System: Health" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Check Health"
      }
    },
    "/api/home/content" : {
      "get" : {
        "operationId" : "HomeContentResource_getHomeContent",
        "tags" : [ "Public: Home" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Home Content"
      }
    },
    "/api/homeassistant" : {
      "post" : {
        "summary" : "Ingest Home Assistant location",
        "description" : "Receives a Home Assistant location update and stores it for the matching source token.",
        "operationId" : "HomeAssistantResource_handleHA",
        "tags" : [ "Public: GPS Integrations: Home Assistant" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/HomeAssistantGpsData"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        }
      }
    },
    "/api/import/debug/upload" : {
      "post" : {
        "operationId" : "DebugImportResource_uploadDebugData",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "file" : {
                    "format" : "binary",
                    "type" : "string"
                  },
                  "clearExistingData" : {
                    "default" : true,
                    "type" : "boolean"
                  },
                  "updateTimelineConfig" : {
                    "default" : true,
                    "type" : "boolean"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Upload Debug Data"
      }
    },
    "/api/import/jobs" : {
      "get" : {
        "operationId" : "ImportResource_getImportJobs",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 10,
            "type" : "integer"
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Import Jobs",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/jobs/{importJobId}" : {
      "delete" : {
        "operationId" : "ImportResource_deleteImportJob",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "importJobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Import Job",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/status/{importJobId}" : {
      "get" : {
        "operationId" : "ImportResource_getImportStatus",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "importJobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Import Status",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/upload" : {
      "post" : {
        "operationId" : "UnifiedImportResource_uploadFile",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "file" : {
                    "format" : "binary",
                    "type" : "string"
                  },
                  "format" : {
                    "type" : "string"
                  },
                  "options" : {
                    "type" : "string"
                  }
                }
              },
              "encoding" : {
                "options" : {
                  "contentType" : "text/plain"
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Upload File",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/upload/init" : {
      "post" : {
        "operationId" : "UnifiedImportResource_initializeChunkedUpload",
        "tags" : [ "User: Import and Export" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ChunkedUploadInitRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Initialize Chunked Upload",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/upload/{uploadId}" : {
      "delete" : {
        "operationId" : "UnifiedImportResource_abortUpload",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "uploadId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Abort Upload",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/upload/{uploadId}/chunk" : {
      "post" : {
        "operationId" : "UnifiedImportResource_uploadChunk",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "uploadId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "chunkIndex" : {
                    "format" : "int32",
                    "type" : "integer"
                  },
                  "chunk" : {
                    "format" : "binary",
                    "type" : "string"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Upload Chunk",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/upload/{uploadId}/complete" : {
      "post" : {
        "operationId" : "UnifiedImportResource_completeChunkedUpload",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "uploadId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Complete Chunked Upload",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/import/upload/{uploadId}/status" : {
      "get" : {
        "operationId" : "UnifiedImportResource_getUploadStatus",
        "tags" : [ "User: Import and Export" ],
        "parameters" : [ {
          "name" : "uploadId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Upload Status",
        "security" : [ {
          "jwt" : [ ]
        } ]
      }
    },
    "/api/journey-insights" : {
      "get" : {
        "operationId" : "JourneyInsightResource_getJourneyInsights",
        "tags" : [ "User: Journey Insights" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/JourneyInsights"
                }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Journey Insights",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/cities" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getCities",
        "tags" : [ "User: Location Analytics" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Cities",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/city/{name}" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getCityDetails",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get City Details",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/city/{name}/visits" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getCityVisits",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "timestamp",
            "type" : "string"
          }
        }, {
          "name" : "sortDirection",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get City Visits",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/city/{name}/visits/export" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_exportCityVisits",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "timestamp",
            "type" : "string"
          }
        }, {
          "name" : "sortDirection",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "text/csv" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Export City Visits",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/countries" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getCountries",
        "tags" : [ "User: Location Analytics" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Countries",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/country/{name}" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getCountryDetails",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Country Details",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/country/{name}/cities" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getCitiesInCountry",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Cities In Country",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/country/{name}/visits" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getCountryVisits",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "timestamp",
            "type" : "string"
          }
        }, {
          "name" : "sortDirection",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Country Visits",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/country/{name}/visits/export" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_exportCountryVisits",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "timestamp",
            "type" : "string"
          }
        }, {
          "name" : "sortDirection",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "text/csv" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Export Country Visits",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/map/places" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_getMapPlaces",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "from",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : "3000",
            "type" : "integer"
          }
        }, {
          "name" : "maxLat",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "maxLon",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "minLat",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "minLon",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "minVisits",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : "1",
            "type" : "integer"
          }
        }, {
          "name" : "to",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Map Places",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/location-analytics/search" : {
      "get" : {
        "operationId" : "LocationAnalyticsResource_search",
        "tags" : [ "User: Location Analytics" ],
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Search",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/mobile/session/exchange" : {
      "post" : {
        "operationId" : "MobileSessionExchangeResource_exchangeSessionCode",
        "tags" : [ "Public: Auth: Mobile" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MobileSessionExchangeRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Exchange Session Code"
      }
    },
    "/api/notes" : {
      "post" : {
        "operationId" : "TimelineNoteResource_createNote",
        "tags" : [ "User: Notes" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateNoteRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Note",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notes/map-markers" : {
      "get" : {
        "operationId" : "TimelineNoteResource_getNoteMapMarkers",
        "tags" : [ "User: Notes" ],
        "parameters" : [ {
          "name" : "coordinatePrecision",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeExternal",
          "in" : "query",
          "schema" : {
            "default" : true,
            "type" : "boolean"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Note Map Markers",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notes/search" : {
      "get" : {
        "operationId" : "TimelineNoteResource_searchNotes",
        "tags" : [ "User: Notes" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeExternal",
          "in" : "query",
          "schema" : {
            "default" : true,
            "type" : "boolean"
          }
        }, {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Search Notes",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notes/{noteId}" : {
      "patch" : {
        "operationId" : "TimelineNoteResource_updateNote",
        "tags" : [ "User: Notes" ],
        "parameters" : [ {
          "name" : "noteId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateNoteRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Update Note",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "TimelineNoteResource_deleteNote",
        "tags" : [ "User: Notes" ],
        "parameters" : [ {
          "name" : "noteId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Note",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notifications" : {
      "get" : {
        "operationId" : "NotificationResource_getNotifications",
        "tags" : [ "User: Notifications" ],
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Notifications",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notifications/page" : {
      "get" : {
        "operationId" : "NotificationResource_getNotificationsPage",
        "tags" : [ "User: Notifications" ],
        "parameters" : [ {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "pageSize",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 25,
            "type" : "integer"
          }
        }, {
          "name" : "seen",
          "in" : "query",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "source",
          "in" : "query",
          "schema" : {
            "$ref" : "#/components/schemas/NotificationSource"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "schema" : {
            "$ref" : "#/components/schemas/NotificationType"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Notifications Page",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notifications/seen-all" : {
      "post" : {
        "operationId" : "NotificationResource_markAllSeen",
        "tags" : [ "User: Notifications" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Mark All Seen",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notifications/unread-count" : {
      "get" : {
        "operationId" : "NotificationResource_getUnreadCount",
        "tags" : [ "User: Notifications" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Unread Count",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/notifications/{notificationId}/seen" : {
      "post" : {
        "operationId" : "NotificationResource_markSeen",
        "tags" : [ "User: Notifications" ],
        "parameters" : [ {
          "name" : "notificationId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Mark Seen",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/overland" : {
      "post" : {
        "summary" : "Ingest Overland locations",
        "description" : "Receives an Overland location batch and stores the points for the matching source token.",
        "operationId" : "OverlandResource_handleOverland",
        "tags" : [ "Public: GPS Integrations: Overland" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/OverlandLocations"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        }
      }
    },
    "/api/owntracks" : {
      "post" : {
        "summary" : "Ingest OwnTracks location",
        "description" : "Receives an OwnTracks location update and stores it as a GPS point for the matching source token.",
        "operationId" : "OwnTracksResource_handleOwnTracks",
        "tags" : [ "Public: GPS Integrations: OwnTracks" ],
        "parameters" : [ {
          "name" : "X-Limit-D",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "additionalProperties" : { }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        }
      }
    },
    "/api/period-tags" : {
      "get" : {
        "operationId" : "PeriodTagResource_getPeriodTags",
        "tags" : [ "User: Period Tags" ],
        "parameters" : [ {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Period Tags",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "PeriodTagResource_createPeriodTag",
        "tags" : [ "User: Period Tags" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePeriodTagDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Period Tag",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/period-tags/active" : {
      "get" : {
        "operationId" : "PeriodTagResource_getActiveTag",
        "tags" : [ "User: Period Tags" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Active Tag",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/period-tags/check-overlaps" : {
      "get" : {
        "operationId" : "PeriodTagResource_checkOverlaps",
        "tags" : [ "User: Period Tags" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "excludeId",
          "in" : "query",
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Check Overlaps",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/period-tags/{id}" : {
      "put" : {
        "operationId" : "PeriodTagResource_updatePeriodTag",
        "tags" : [ "User: Period Tags" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdatePeriodTagDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Period Tag",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "PeriodTagResource_deletePeriodTag",
        "tags" : [ "User: Period Tags" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "mode",
          "in" : "query",
          "schema" : {
            "default" : "unlink_only",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Period Tag",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/period-tags/{id}/unlink" : {
      "post" : {
        "operationId" : "PeriodTagResource_unlinkPeriodTag",
        "tags" : [ "User: Period Tags" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Unlink Period Tag",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/place-details/{type}/{id}" : {
      "put" : {
        "operationId" : "PlaceDetailsResource_updatePlaceName",
        "tags" : [ "User: Places" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "type",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdatePlaceNameRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Place Name",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "PlaceDetailsResource_getPlaceDetails",
        "tags" : [ "User: Places" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "type",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Place Details",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/place-details/{type}/{id}/photo-search-window" : {
      "get" : {
        "operationId" : "PlaceDetailsResource_getPlacePhotoSearchWindow",
        "tags" : [ "User: Places" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "type",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "default" : 100.0,
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Place Photo Search Window",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/place-details/{type}/{id}/visits" : {
      "get" : {
        "operationId" : "PlaceDetailsResource_getPlaceVisits",
        "tags" : [ "User: Places" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "type",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "page",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 0,
            "type" : "integer"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "default" : 50,
            "type" : "integer"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "timestamp",
            "type" : "string"
          }
        }, {
          "name" : "sortDirection",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Place Visits",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/place-details/{type}/{id}/visits/export" : {
      "get" : {
        "operationId" : "PlaceDetailsResource_exportPlaceVisits",
        "tags" : [ "User: Places" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "type",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "default" : "timestamp",
            "type" : "string"
          }
        }, {
          "name" : "sortDirection",
          "in" : "query",
          "schema" : {
            "default" : "desc",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "text/csv" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Export Place Visits",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/reconstruction/commit" : {
      "post" : {
        "operationId" : "ReconstructionResource_commit",
        "tags" : [ "User: Trips and Planning" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TripReconstructionRequestDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Commit",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/reconstruction/preview" : {
      "post" : {
        "operationId" : "ReconstructionResource_preview",
        "tags" : [ "User: Trips and Planning" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TripReconstructionRequestDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Preview",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/share-links" : {
      "get" : {
        "operationId" : "SharedLinkResource_getSharedLinks",
        "tags" : [ "User: Sharing" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Shared Links",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "SharedLinkResource_createShareLink",
        "tags" : [ "User: Sharing" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateShareLinkRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Share Link",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/share-links/{id}" : {
      "put" : {
        "operationId" : "SharedLinkResource_updateShareLink",
        "tags" : [ "User: Sharing" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateShareLinkDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Share Link",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "SharedLinkResource_deleteShareLink",
        "tags" : [ "User: Sharing" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Share Link",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/shared/{linkId}/current" : {
      "get" : {
        "operationId" : "PublicSharedLinkResource_getSharedCurrentLocation",
        "tags" : [ "Public: Sharing: Shared Links" ],
        "parameters" : [ {
          "name" : "linkId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Shared Current Location"
      }
    },
    "/api/shared/{linkId}/info" : {
      "get" : {
        "operationId" : "PublicSharedLinkResource_getSharedLocationInfo",
        "tags" : [ "Public: Sharing: Shared Links" ],
        "parameters" : [ {
          "name" : "linkId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Shared Location Info"
      }
    },
    "/api/shared/{linkId}/location" : {
      "get" : {
        "operationId" : "PublicSharedLinkResource_getSharedLocation",
        "tags" : [ "Public: Sharing: Shared Links" ],
        "parameters" : [ {
          "name" : "linkId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Shared Location"
      }
    },
    "/api/shared/{linkId}/notes" : {
      "get" : {
        "operationId" : "PublicSharedLinkResource_getSharedNotes",
        "tags" : [ "Public: Sharing: Shared Links" ],
        "parameters" : [ {
          "name" : "linkId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          }
        },
        "summary" : "Get Shared Notes"
      }
    },
    "/api/shared/{linkId}/path" : {
      "get" : {
        "operationId" : "PublicSharedLinkResource_getSharedPath",
        "tags" : [ "Public: Sharing: Shared Links" ],
        "parameters" : [ {
          "name" : "linkId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Shared Path"
      }
    },
    "/api/shared/{linkId}/timeline" : {
      "get" : {
        "operationId" : "PublicSharedLinkResource_getSharedTimeline",
        "tags" : [ "Public: Sharing: Shared Links" ],
        "parameters" : [ {
          "name" : "linkId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Shared Timeline"
      }
    },
    "/api/shared/{linkId}/verify" : {
      "post" : {
        "operationId" : "PublicSharedLinkResource_verifyPassword",
        "tags" : [ "Public: Sharing: Shared Links" ],
        "parameters" : [ {
          "name" : "linkId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VerifyPasswordRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Verify Password"
      }
    },
    "/api/statistics" : {
      "get" : {
        "operationId" : "StatisticsResource_getRangeStatistics",
        "tags" : [ "User: Statistics" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Range Statistics",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/statistics/monthly" : {
      "get" : {
        "operationId" : "StatisticsResource_getMonthlyStatistics",
        "tags" : [ "User: Statistics" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Monthly Statistics",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/statistics/weekly" : {
      "get" : {
        "operationId" : "StatisticsResource_getWeeklyStatistics",
        "tags" : [ "User: Statistics" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Weekly Statistics",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getTimeline",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Timeline",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/count" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getTimelineCount",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Timeline Count",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/data-gap-overrides/{overrideId}/stay-conversion" : {
      "delete" : {
        "operationId" : "StreamingTimelineResource_resetDataGapStayOverride",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "overrideId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reset Data Gap Stay Override",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/data-gaps/{gapId}/stay-conversion" : {
      "put" : {
        "operationId" : "StreamingTimelineResource_convertDataGapToStay",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "gapId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DataGapStayOverrideRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Convert Data Gap To Stay",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/data-gaps/{gapId}/stay-conversion-preview" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getDataGapStayConversionPreview",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "gapId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Data Gap Stay Conversion Preview",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/jobs/active" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getActiveJob",
        "tags" : [ "User: Timeline" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Active Job",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/jobs/history" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getJobHistory",
        "tags" : [ "User: Timeline" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Job History",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/jobs/{jobId}" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getJobProgress",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Job Progress",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/location-lookup" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_lookupLocation",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Lookup Location",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/multi-user" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getMultiUserTimeline",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "userIds",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Multi User Timeline",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/regenerate-all" : {
      "post" : {
        "operationId" : "StreamingTimelineResource_regenerateAllTimeline",
        "tags" : [ "User: Timeline" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Regenerate All Timeline",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/trips/{tripId}/classification" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getTripClassificationDetails",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Trip Classification Details",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/trips/{tripId}/movement-type" : {
      "put" : {
        "operationId" : "StreamingTimelineResource_updateTripMovementType",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TripMovementTypeUpdateRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Trip Movement Type",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "StreamingTimelineResource_resetTripMovementType",
        "tags" : [ "User: Timeline" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reset Trip Movement Type",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/streaming-timeline/user/preferences" : {
      "get" : {
        "operationId" : "StreamingTimelineResource_getUserPreferences",
        "tags" : [ "User: Timeline" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get User Preferences",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/traccar" : {
      "post" : {
        "summary" : "Ingest Traccar position",
        "description" : "Receives a Traccar position update and routes it to matching active Traccar source configurations.",
        "operationId" : "TraccarResource_handleTraccar",
        "tags" : [ "Public: GPS Integrations: Traccar" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TraccarPositionData"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        }
      }
    },
    "/api/trips" : {
      "get" : {
        "operationId" : "TripResource_getTrips",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "status",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Trips",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "TripResource_createTrip",
        "tags" : [ "User: Trips" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTripDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Trip",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/from-period-tag/{periodTagId}" : {
      "post" : {
        "operationId" : "TripResource_createTripFromPeriodTag",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "periodTagId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Create Trip From Period Tag",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/plan-search" : {
      "get" : {
        "operationId" : "PlanSearchResource_search",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "lat",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "lon",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Search",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/plan-suggestion" : {
      "get" : {
        "operationId" : "PlanSuggestionResource_getPlanSuggestion",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "lat",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "lon",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Plan Suggestion",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{id}" : {
      "put" : {
        "operationId" : "TripResource_updateTrip",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateTripDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Trip",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "TripResource_getTrip",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Trip",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "TripResource_deleteTrip",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "mode",
          "in" : "query",
          "schema" : {
            "default" : "unlink_only",
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Trip",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{id}/collaborators" : {
      "get" : {
        "operationId" : "TripResource_getTripCollaborators",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Trip Collaborators",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{id}/collaborators/{friendId}" : {
      "put" : {
        "operationId" : "TripResource_upsertTripCollaborator",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "friendId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateTripCollaboratorDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Upsert Trip Collaborator",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "TripResource_removeTripCollaborator",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "friendId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Remove Trip Collaborator",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{id}/unlink" : {
      "post" : {
        "operationId" : "TripResource_unlinkTripFromPeriodTag",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Unlink Trip From Period Tag",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{tripId}/path" : {
      "get" : {
        "operationId" : "TripWorkspaceDataResource_getTripPath",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Trip Path",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{tripId}/plan-items" : {
      "get" : {
        "operationId" : "TripPlanItemResource_getPlanItems",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Plan Items",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "post" : {
        "operationId" : "TripPlanItemResource_createPlanItem",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTripPlanItemDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Create Plan Item",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{tripId}/plan-items/{itemId}" : {
      "put" : {
        "operationId" : "TripPlanItemResource_updatePlanItem",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "itemId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateTripPlanItemDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Plan Item",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "TripPlanItemResource_deletePlanItem",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "itemId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Delete Plan Item",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{tripId}/plan-items/{itemId}/visit-override" : {
      "post" : {
        "operationId" : "TripPlanItemResource_applyVisitOverride",
        "tags" : [ "User: Trips and Planning" ],
        "parameters" : [ {
          "name" : "itemId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TripVisitOverrideRequestDto"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Apply Visit Override",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{tripId}/summary" : {
      "get" : {
        "operationId" : "TripSummaryResource_getTripSummary",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Trip Summary",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{tripId}/timeline" : {
      "get" : {
        "operationId" : "TripWorkspaceDataResource_getTripTimeline",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Trip Timeline",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/trips/{tripId}/visit-suggestions" : {
      "get" : {
        "operationId" : "TripVisitMatchingResource_getVisitSuggestions",
        "tags" : [ "User: Trips" ],
        "parameters" : [ {
          "name" : "tripId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "format" : "int64",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Visit Suggestions",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/avatar" : {
      "post" : {
        "operationId" : "UserResource_uploadAvatar",
        "tags" : [ "User: Users" ],
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "file" : {
                    "format" : "binary",
                    "type" : "string"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Upload Avatar",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/changePassword" : {
      "post" : {
        "operationId" : "UserResource_changePassword",
        "tags" : [ "User: Users" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateUserPasswordRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Change Password",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me" : {
      "get" : {
        "operationId" : "UserResource_getCurrentUserProfile",
        "tags" : [ "User: Users" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Current User Profile",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich-config" : {
      "put" : {
        "operationId" : "ImmichResource_updateCurrentUserImmichConfig",
        "tags" : [ "User: Immich" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateImmichConfigRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Current User Immich Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "ImmichResource_getCurrentUserImmichConfig",
        "tags" : [ "User: Immich" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Current User Immich Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich-config/test" : {
      "post" : {
        "operationId" : "ImmichResource_testCurrentUserImmichConnection",
        "tags" : [ "User: Immich" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestImmichConnectionRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Test Current User Immich Connection",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich/photos/map-marker/photos" : {
      "get" : {
        "operationId" : "ImmichResource_getCurrentUserPhotosForMapMarker",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "city",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "coordinatePrecision",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "country",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "markerLatitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "markerLongitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Current User Photos For Map Marker",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich/photos/map-markers" : {
      "get" : {
        "operationId" : "ImmichResource_getCurrentUserPhotoMapMarkers",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "city",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "coordinatePrecision",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "country",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Current User Photo Map Markers",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich/photos/search" : {
      "get" : {
        "operationId" : "ImmichResource_searchCurrentUserPhotos",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "city",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "country",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Search Current User Photos",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich/photos/{photoId}/download" : {
      "get" : {
        "operationId" : "ImmichResource_downloadCurrentUserPhoto",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "photoId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/octet-stream" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Download Current User Photo",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich/photos/{photoId}/preview" : {
      "get" : {
        "operationId" : "ImmichResource_getCurrentUserPhotoPreview",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "photoId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/octet-stream" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Current User Photo Preview",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/immich/photos/{photoId}/thumbnail" : {
      "get" : {
        "operationId" : "ImmichResource_getCurrentUserPhotoThumbnail",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "photoId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/octet-stream" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Current User Photo Thumbnail",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/memos-config" : {
      "put" : {
        "operationId" : "MemosResource_updateCurrentUserMemosConfig",
        "tags" : [ "User: Memos" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateMemosConfigRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Current User Memos Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "MemosResource_getCurrentUserMemosConfig",
        "tags" : [ "User: Memos" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Current User Memos Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/me/memos-config/test" : {
      "post" : {
        "operationId" : "MemosResource_testCurrentUserMemosConnection",
        "tags" : [ "User: Memos" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestMemosConnectionRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Test Current User Memos Connection",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/preferences/timeline" : {
      "put" : {
        "operationId" : "UserResource_updateTimelinePreferences",
        "tags" : [ "User: Users" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateTimelinePreferencesRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Timeline Preferences",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "delete" : {
        "operationId" : "UserResource_resetPreferencesToDefaults",
        "tags" : [ "User: Users" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Reset Preferences To Defaults",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/preferences/timeline/display" : {
      "put" : {
        "operationId" : "UserResource_updateTimelineDisplayPreferences",
        "tags" : [ "User: Users" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateTimelineDisplayPreferencesRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Timeline Display Preferences",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "UserResource_getTimelineDisplayPreferences",
        "tags" : [ "User: Users" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Timeline Display Preferences",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/register" : {
      "post" : {
        "operationId" : "UserResource_registerUser",
        "tags" : [ "Public: Auth: Registration" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UserRegistrationRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Register User"
      }
    },
    "/api/users/update" : {
      "post" : {
        "operationId" : "UserResource_updateProfile",
        "tags" : [ "User: Users" ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateProfileRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Profile",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/avatar" : {
      "get" : {
        "operationId" : "UserResource_getUserAvatar",
        "tags" : [ "User: Users" ],
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/UUID"
          }
        }, {
          "name" : "If-None-Match",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "image/jpeg" : { },
              "image/png" : { },
              "image/webp" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get User Avatar",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich-config" : {
      "put" : {
        "operationId" : "ImmichResource_updateImmichConfig",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateImmichConfigRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Update Immich Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      },
      "get" : {
        "operationId" : "ImmichResource_getImmichConfig",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Immich Config",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich-config/test" : {
      "post" : {
        "operationId" : "ImmichResource_testImmichConnection",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestImmichConnectionRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          },
          "400" : {
            "description" : "Bad Request"
          }
        },
        "summary" : "Test Immich Connection",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich/photos/map-marker/photos" : {
      "get" : {
        "operationId" : "ImmichResource_getPhotosForMapMarker",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "city",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "coordinatePrecision",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "country",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "markerLatitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "markerLongitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Photos For Map Marker",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich/photos/map-markers" : {
      "get" : {
        "operationId" : "ImmichResource_getPhotoMapMarkers",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "city",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "coordinatePrecision",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "country",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Photo Map Markers",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich/photos/search" : {
      "get" : {
        "operationId" : "ImmichResource_searchPhotos",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "city",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "country",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "endDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "latitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "format" : "int32",
            "type" : "integer"
          }
        }, {
          "name" : "longitude",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "radiusMeters",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startDate",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Search Photos",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich/photos/{photoId}/download" : {
      "get" : {
        "operationId" : "ImmichResource_downloadPhoto",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "photoId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "image/jpeg" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Download Photo",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich/photos/{photoId}/preview" : {
      "get" : {
        "operationId" : "ImmichResource_getPhotoPreview",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "photoId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "image/jpeg" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Photo Preview",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/users/{userId}/immich/photos/{photoId}/thumbnail" : {
      "get" : {
        "operationId" : "ImmichResource_getPhotoThumbnail",
        "tags" : [ "User: Immich" ],
        "parameters" : [ {
          "name" : "photoId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "image/jpeg" : { }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Photo Thumbnail",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/version" : {
      "get" : {
        "operationId" : "VersionResource_getVersion",
        "tags" : [ "Public: System: Version" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Version"
      }
    },
    "/api/version/status" : {
      "get" : {
        "operationId" : "VersionResource_getVersionStatus",
        "tags" : [ "Public: System: Version" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          }
        },
        "summary" : "Get Version Status"
      }
    },
    "/api/weather/samples" : {
      "get" : {
        "operationId" : "WeatherResource_getSamples",
        "tags" : [ "User: Weather" ],
        "parameters" : [ {
          "name" : "endTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "maxLat",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "maxLon",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "minLat",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "minLon",
          "in" : "query",
          "schema" : {
            "format" : "double",
            "type" : "number"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Samples",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    },
    "/api/weather/status" : {
      "get" : {
        "operationId" : "WeatherResource_getStatus",
        "tags" : [ "User: Weather" ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : { }
              }
            }
          },
          "401" : {
            "description" : "Authentication is required or the provided credentials are invalid."
          },
          "403" : {
            "description" : "The authenticated user does not have permission to access this resource."
          }
        },
        "summary" : "Get Status",
        "security" : [ {
          "jwt" : [ "USER", "ADMIN" ]
        } ]
      }
    }
  },
  "info" : {
    "title" : "GeoPulse API",
    "version" : "1.37.1",
    "description" : "GeoPulse backend REST API documentation.",
    "contact" : {
      "name" : "tess1o",
      "email" : "kerriden1@gmail.com"
    }
  },
  "servers" : [ {
    "url" : "http://localhost:8080"
  } ]
}