Documentation
¶
Overview ¶
Package generated contains auto-generated code from the OpenAPI specification.
DO NOT EDIT THESE FILES MANUALLY ¶
This package is automatically generated from the OpenAPI spec. To regenerate after spec changes, run:
go generate ./...
Or manually:
./scripts/generate-server-types.sh
Source: api-spec/openapi.yaml Generator: oapi-codegen v2
Package generated provides primitives to interact with the openapi HTTP API.
Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.8.0 DO NOT EDIT.
Package generated provides primitives to interact with the openapi HTTP API.
Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.8.0 DO NOT EDIT.
Package generated provides primitives to interact with the openapi HTTP API.
Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.8.0 DO NOT EDIT.
Index ¶
- func GetSpec() (swagger *openapi3.T, err error)
- func GetSpecJSON() ([]byte, error)
- func GetSwagger() (*openapi3.T, error)deprecated
- func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error)
- func RegisterHandlers(router gin.IRouter, si ServerInterface)
- func RegisterHandlersWithOptions(router gin.IRouter, si ServerInterface, options GinServerOptions)
- type AdminAuditLogEntry
- type AdminConfig
- type AdminConfigAuthMode
- type AdminConfigUnverifiedCleanupDisabledReason
- type AdminStats
- type AdminUser
- type Aircraft
- type AircraftCreate
- type AircraftId
- type AircraftStats
- type AircraftTypeStats
- type AircraftUpdate
- type Airport
- type AirportPackStatus
- type AirportStats
- type AnalyticsAircraftRow
- type AnalyticsAirportRow
- type AnalyticsApproachTypeRow
- type AnalyticsBucketRow
- type AnalyticsCountryRow
- type AnalyticsFlightRef
- type AnalyticsGroupRow
- type AnalyticsMonthPoint
- type AnalyticsPersonRow
- type AnalyticsRange
- type AnalyticsRecords
- type AnalyticsRouteRow
- type AnalyticsTotals
- type AnalyticsYearPoint
- type Announcement
- type AnnouncementSeverity
- type ApproachEntry
- type ApproachEntryInput
- type ApproachType
- type AuthProviders
- type AuthProvidersMode
- type AuthResponse
- type AuthorizeOidcParams
- type BackupDestination
- type BackupDestinationCreate
- type BackupDestinationId
- type BackupDestinationUpdate
- type BackupField
- type BackupFieldSchema
- type BackupFieldType
- type BackupProvider
- type BackupRun
- type BackupRunStatus
- type BackupRunTrigger
- type BackupSchedule
- type BackupStatus
- type BackupTestResult
- type BadRequest
- type ChangePasswordJSONBody
- type ChangePasswordJSONRequestBody
- type ClassRating
- type ClassRatingCreate
- type ClassRatingCurrency
- type ClassRatingCurrencyStatus
- type ClassRatingUpdate
- type ClassType
- type CompletePublicSignatureJSONRequestBody
- type CompleteSignatureRequest
- type ConfirmImportJSONRequestBody
- type Conflict
- type Contact
- type ContactCreate
- type CreateAircraftJSONRequestBody
- type CreateAnnouncementJSONBody
- type CreateAnnouncementJSONBodySeverity
- type CreateAnnouncementJSONRequestBody
- type CreateBackupDestinationJSONRequestBody
- type CreateClassRatingJSONRequestBody
- type CreateContactJSONRequestBody
- type CreateCredentialJSONRequestBody
- type CreateCustomCurrencyRuleJSONRequestBody
- type CreateFlightJSONRequestBody
- type CreateLicenseJSONRequestBody
- type CreateLiveSignatureRequest
- type CreateSignatureRequestJSONRequestBody
- type CreateSignatureRequestRequest
- type Credential
- type CredentialCreate
- type CredentialId
- type CredentialType
- type CredentialUpdate
- type CrewRole
- type Currency
- type CurrencyRequirement
- type CurrencyStatusResponse
- type CustomCurrencyEnabledRequest
- type CustomCurrencyEvaluation
- type CustomCurrencyEvaluationStatus
- type CustomCurrencyFilter
- type CustomCurrencyFilterField
- type CustomCurrencyFilterOp
- type CustomCurrencyNotifyRequest
- type CustomCurrencyPreviewRequest
- type CustomCurrencyRule
- type CustomCurrencyRuleBody
- type CustomCurrencyRuleId
- type CustomCurrencyRuleInput
- type CustomCurrencyRuleWithStatus
- type CustomCurrencyShareToken
- type CustomCurrencyThreshold
- type CustomCurrencyThresholdMetric
- type CustomCurrencyThresholdUnit
- type CustomCurrencyWindow
- type CustomCurrencyWindowUnit
- type DeleteCurrentUserJSONBody
- type DeleteCurrentUserJSONRequestBody
- type Deletion
- type DeletionEntity
- type DeletionFeed
- type Disable2FAJSONBody
- type Disable2FAJSONRequestBody
- type DocumentFile
- type DocumentFileContentType
- type DocumentFileId
- type DocumentFileLimitReached
- type DocumentFileUpload
- type DocumentFilesDisabled
- type EmailDeliveryEvent
- type EmailDeliveryEventStatus
- type EmailSuppression
- type Error
- type ExchangeOidcCodeJSONBody
- type ExchangeOidcCodeJSONRequestBody
- type ExportFlightsCSVParams
- type ExportFlightsCSVParamsFormat
- type ExportFlightsPDFParams
- type ExportFlightsPDFParamsFormat
- type ExportFlightsPDFParamsLayout
- type ExportFlightsPDFParamsPageSize
- type Features
- type Flight
- type FlightAnalytics
- type FlightBaseline
- type FlightBaselineInput
- type FlightCreate
- type FlightCreateLaunchMethod
- type FlightCrewMember
- type FlightCrewMemberInput
- type FlightId
- type FlightLaunchMethod
- type FlightListColumn
- type FlightReviewStatus
- type FlightReviewStatusStatus
- type FlightRoute
- type FlightRoutesResponse
- type FlightSession
- type FlightSessionEvent
- type FlightSessionEventType
- type FlightSessionStatus
- type FlightSignature
- type FlightSignatureMethod
- type FlightSignatureStatus
- type FlightUpdate
- type Forbidden
- type GetFlightAnalyticsParams
- type GetFlightTrendsParams
- type GetLicenseStatisticsParams
- type GetMyStatisticsParams
- type GetNotificationHistoryParams
- type GetStatsByClassParams
- type GetUpdateStatusParams
- type GinServerOptions
- type ImportColumnMapping
- type ImportConfirmRequest
- type ImportDataJSONJSONBody
- type ImportDataJSONJSONRequestBody
- type ImportField
- type ImportFormat
- type ImportId
- type ImportJSONResult
- type ImportPreviewFlight
- type ImportPreviewFlightStatus
- type ImportPreviewRequest
- type ImportPreviewResponse
- type ImportResult
- type ImportStatus
- type ImportTemplate
- type ImportTemplateConfidence
- type ImportTemplateList
- type ImportTemplateRegions
- type ImportUploadResponse
- type LaunchMethodCurrency
- type License
- type LicenseCreate
- type LicenseId
- type ListAdminAuditLogParams
- type ListAdminUsersParams
- type ListAircraftParams
- type ListBackupRunsParams
- type ListContactsParams
- type ListCredentialsParams
- type ListDeletionsParams
- type ListDeletionsParamsEntity
- type ListEmailDeliveriesParams
- type ListEmailSuppressionsParams
- type ListFlightsParams
- type ListFlightsParamsSortBy
- type ListFlightsParamsSortOrder
- type ListImportsParams
- type ListLicensesParams
- type LocalAuthDisabled
- type Login2FAJSONBody
- type Login2FAJSONRequestBody
- type LoginUser200JSONResponseBody
- func (t LoginUser200JSONResponseBody) AsAuthResponse() (AuthResponse, error)
- func (t LoginUser200JSONResponseBody) AsTwoFactorLoginRequired() (TwoFactorLoginRequired, error)
- func (t *LoginUser200JSONResponseBody) FromAuthResponse(v AuthResponse) error
- func (t *LoginUser200JSONResponseBody) FromTwoFactorLoginRequired(v TwoFactorLoginRequired) error
- func (t LoginUser200JSONResponseBody) MarshalJSON() ([]byte, error)
- func (t *LoginUser200JSONResponseBody) MergeAuthResponse(v AuthResponse) error
- func (t *LoginUser200JSONResponseBody) MergeTwoFactorLoginRequired(v TwoFactorLoginRequired) error
- func (t *LoginUser200JSONResponseBody) UnmarshalJSON(b []byte) error
- type LoginUserJSONBody
- type LoginUserJSONRequestBody
- type LogoutUserJSONBody
- type LogoutUserJSONRequestBody
- type MessageParams
- type MiddlewareFunc
- type NotFound
- type NotificationCategory
- type NotificationHistoryEntry
- type NotificationHistoryResponse
- type NotificationPreferences
- type NotificationPreferencesUpdate
- type OidcCallbackParams
- type PaginatedAdminAuditLog
- type PaginatedAdminUsers
- type PaginatedAircraft
- type PaginatedBackupRuns
- type PaginatedFlights
- type PaginatedImports
- type PassengerCurrency
- type PassengerCurrencyDayStatus
- type PassengerCurrencyNightStatus
- type PayloadTooLarge
- type PreviewCustomCurrencyRuleJSONRequestBody
- type PreviewImportJSONRequestBody
- type PublicSignatureInfo
- type PublicSignatureInfoStatus
- type PutMyBaselineJSONRequestBody
- type RecordFlightSessionEventJSONRequestBody
- type RefreshTokenJSONBody
- type RefreshTokenJSONRequestBody
- type RegisterUserJSONBody
- type RegisterUserJSONBodyPreferredLocale
- type RegisterUserJSONRequestBody
- type RegistrationResponse
- type RequestPasswordResetJSONBody
- type RequestPasswordResetJSONRequestBody
- type ResendSignatureRequestJSONRequestBody
- type ResendSignatureRequestRequest
- type ResendVerificationEmailJSONBody
- type ResendVerificationEmailJSONRequestBody
- type ResetPasswordJSONBody
- type ResetPasswordJSONRequestBody
- type SearchAirportsParams
- type SearchContactsParams
- type ServerInterface
- type ServerInterfaceWrapper
- func (siw *ServerInterfaceWrapper) AuthorizeOidc(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ChangePassword(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CleanupTokens(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CleanupUnverifiedAccounts(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CompletePublicSignature(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ConfirmImport(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateAircraft(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateAnnouncement(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateBackupDestination(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateClassRating(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateContact(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateCredential(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateCustomCurrencyRule(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateFlight(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateLicense(c *gin.Context)
- func (siw *ServerInterfaceWrapper) CreateSignatureRequest(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteAircraft(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteAllFlights(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteAllUserData(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteAnnouncement(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteBackupDestination(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteClassRating(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteContact(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteCredential(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteCredentialFile(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteCurrentUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteCustomCurrencyRule(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteEmailSuppression(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteFlight(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteLicense(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteLicenseFile(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteMyBaseline(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DeleteWebauthnCredential(c *gin.Context)
- func (siw *ServerInterfaceWrapper) Disable2FA(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DisableCustomCurrencyRuleShare(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DisableUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) DiscardCurrentFlightSession(c *gin.Context)
- func (siw *ServerInterfaceWrapper) EnableCustomCurrencyRuleShare(c *gin.Context)
- func (siw *ServerInterfaceWrapper) EnableUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ExchangeOidcCode(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ExportContactsVCard(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ExportDataJSON(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ExportFlightsCSV(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ExportFlightsPDF(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAdminConfig(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAdminStats(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAircraft(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAircraftStats(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAirport(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAirportPack(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAirportPackStatus(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAirportStats(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAllCurrencyStatus(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAnnouncements(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetAuthProviders(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetBackupDestination(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetBackupRun(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetContact(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetCredential(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetCredentialFile(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetCurrentFlightSession(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetCurrentUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetCustomCurrencyRule(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetFeatures(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetFlight(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetFlightAnalytics(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetFlightRoutes(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetFlightSignature(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetFlightSignatureImage(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetFlightTrends(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetImport(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetLicense(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetLicenseCurrency(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetLicenseFile(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetLicenseStatistics(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetMyBaseline(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetMyStatistics(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetNotificationHistory(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetNotificationPreferences(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetPublicSignatureInfo(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetSharedCustomCurrencyRule(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetStatsByClass(c *gin.Context)
- func (siw *ServerInterfaceWrapper) GetUpdateStatus(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ImportDataJSON(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ImportSharedCustomCurrencyRule(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListAdminAuditLog(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListAdminUsers(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListAircraft(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListBackupDestinations(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListBackupProviders(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListBackupRuns(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListClassRatings(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListContacts(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListCredentialFiles(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListCredentials(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListCustomCurrencyRules(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListDeletions(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListEmailDeliveries(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListEmailSuppressions(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListFlightSignatures(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListFlights(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListImportTemplates(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListImports(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListLicenseFiles(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListLicenses(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListSessions(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ListWebauthnCredentials(c *gin.Context)
- func (siw *ServerInterfaceWrapper) Login2FA(c *gin.Context)
- func (siw *ServerInterfaceWrapper) LoginUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) LogoutUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) OidcCallback(c *gin.Context)
- func (siw *ServerInterfaceWrapper) PreviewCustomCurrencyRule(c *gin.Context)
- func (siw *ServerInterfaceWrapper) PreviewImport(c *gin.Context)
- func (siw *ServerInterfaceWrapper) PutMyBaseline(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RecalculateFlights(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RecordFlightSessionEvent(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RefreshToken(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RegisterUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RequestPasswordReset(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ResendSignatureRequest(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ResendVerificationEmail(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ResetPassword(c *gin.Context)
- func (siw *ServerInterfaceWrapper) ResetUser2fa(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RevokeOtherSessions(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RevokeSession(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RevokeSignatureRequest(c *gin.Context)
- func (siw *ServerInterfaceWrapper) RunBackupNow(c *gin.Context)
- func (siw *ServerInterfaceWrapper) SearchAirports(c *gin.Context)
- func (siw *ServerInterfaceWrapper) SearchContacts(c *gin.Context)
- func (siw *ServerInterfaceWrapper) SetCustomCurrencyRuleEnabled(c *gin.Context)
- func (siw *ServerInterfaceWrapper) SetCustomCurrencyRuleNotify(c *gin.Context)
- func (siw *ServerInterfaceWrapper) Setup2FA(c *gin.Context)
- func (siw *ServerInterfaceWrapper) SignFlightLive(c *gin.Context)
- func (siw *ServerInterfaceWrapper) SmtpTest(c *gin.Context)
- func (siw *ServerInterfaceWrapper) TestBackupDestination(c *gin.Context)
- func (siw *ServerInterfaceWrapper) TriggerNotifications(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UnlockUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateAircraft(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateBackupDestination(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateClassRating(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateContact(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateCredential(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateCurrentUser(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateCustomCurrencyRule(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateFlight(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateLicense(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UpdateNotificationPreferences(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UploadCredentialFile(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UploadImportFile(c *gin.Context)
- func (siw *ServerInterfaceWrapper) UploadLicenseFile(c *gin.Context)
- func (siw *ServerInterfaceWrapper) Verify2FA(c *gin.Context)
- func (siw *ServerInterfaceWrapper) VerifyEmail(c *gin.Context)
- func (siw *ServerInterfaceWrapper) VoidFlightSignature(c *gin.Context)
- func (siw *ServerInterfaceWrapper) WebauthnLoginOptions(c *gin.Context)
- func (siw *ServerInterfaceWrapper) WebauthnLoginVerify(c *gin.Context)
- func (siw *ServerInterfaceWrapper) WebauthnRegisterOptions(c *gin.Context)
- func (siw *ServerInterfaceWrapper) WebauthnRegisterVerify(c *gin.Context)
- type Session
- type SetCustomCurrencyRuleEnabledJSONRequestBody
- type SetCustomCurrencyRuleNotifyJSONRequestBody
- type SharedCustomCurrencyRule
- type SignFlightLiveJSONRequestBody
- type SignatureId
- type SignatureRequestCreated
- type SignatureRequestCreatedMethod
- type SignatureRequestCreatedStatus
- type SignatureToken
- type Statistics
- type StatisticsBaselineContribution
- type TwoFactorEnabled
- type TwoFactorLoginRequired
- type TwoFactorSetup
- type Unauthorized
- type UpdateAircraftJSONRequestBody
- type UpdateBackupDestinationJSONRequestBody
- type UpdateClassRatingJSONRequestBody
- type UpdateComponent
- type UpdateComponentChannel
- type UpdateComponentName
- type UpdateComponentState
- type UpdateContactJSONRequestBody
- type UpdateCredentialJSONRequestBody
- type UpdateCurrentUserJSONBody
- type UpdateCurrentUserJSONBodyDateFormat
- type UpdateCurrentUserJSONBodyDecimalSeparator
- type UpdateCurrentUserJSONBodyFlightListColumnMode
- type UpdateCurrentUserJSONBodyPreferredLocale
- type UpdateCurrentUserJSONBodyTimeDisplayFormat
- type UpdateCurrentUserJSONRequestBody
- type UpdateCustomCurrencyRuleJSONRequestBody
- type UpdateFlightJSONRequestBody
- type UpdateLicenseJSONBody
- type UpdateLicenseJSONRequestBody
- type UpdateNotificationPreferencesJSONRequestBody
- type UpdateStatus
- type UpdateStatusLastError
- type UpdatedSince
- type UploadCredentialFileMultipartRequestBody
- type UploadImportFileMultipartBody
- type UploadImportFileMultipartRequestBody
- type UploadLicenseFileMultipartRequestBody
- type User
- type UserDateFormat
- type UserDecimalSeparator
- type UserFlightListColumnMode
- type UserPreferredLocale
- type UserTimeDisplayFormat
- type Verify2FAJSONBody
- type Verify2FAJSONRequestBody
- type VerifyEmailJSONBody
- type VerifyEmailJSONRequestBody
- type VoidFlightSignatureJSONRequestBody
- type VoidSignatureRequest
- type WebAuthnCredential
- type WebAuthnLoginOptions
- type WebAuthnRegistrationOptions
- type WebauthnLoginOptionsJSONBody
- type WebauthnLoginOptionsJSONRequestBody
- type WebauthnLoginVerifyJSONBody
- type WebauthnLoginVerifyJSONRequestBody
- type WebauthnRegisterVerifyJSONBody
- type WebauthnRegisterVerifyJSONRequestBody
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetSpec ¶ added in v1.2.0
GetSpec returns the OpenAPI specification corresponding to the generated code in this file. External references in the spec are resolved through PathToRawSpec; externally-referenced files must be embedded in their corresponding Go packages (via the import-mapping feature). URL-based external refs are not supported.
func GetSpecJSON ¶ added in v1.2.0
GetSpecJSON returns the raw JSON bytes of the embedded OpenAPI specification: decompressed but not unmarshaled. External references are not resolved here; the bytes are the spec exactly as embedded by codegen. The result is cached at package init time, so repeated calls are cheap.
func GetSwagger
deprecated
func PathToRawSpec ¶
Constructs a synthetic filesystem for resolving external references when loading openapi specifications.
func RegisterHandlers ¶
func RegisterHandlers(router gin.IRouter, si ServerInterface)
RegisterHandlers creates http.Handler with routing matching OpenAPI spec.
func RegisterHandlersWithOptions ¶
func RegisterHandlersWithOptions(router gin.IRouter, si ServerInterface, options GinServerOptions)
RegisterHandlersWithOptions creates http.Handler with additional options
Types ¶
type AdminAuditLogEntry ¶
type AdminAuditLogEntry struct {
// Action The admin action performed
//
// Example: disable_user
Action string `json:"action"`
// AdminEmail Email of the admin who performed the action (if the account still exists)
AdminEmail *openapi_types.Email `json:"adminEmail,omitempty"`
// AdminName Display name of the admin who performed the action (if the account still exists)
AdminName *string `json:"adminName,omitempty"`
AdminUserId openapi_types.UUID `json:"adminUserId"`
CreatedAt time.Time `json:"createdAt"`
// Details Additional details about the action (JSON)
Details *map[string]interface{} `json:"details,omitempty"`
Id openapi_types.UUID `json:"id"`
// TargetUserEmail Email of the target user (if any, and if the account still exists)
TargetUserEmail *openapi_types.Email `json:"targetUserEmail,omitempty"`
// TargetUserId The user affected by the action (if any)
TargetUserId *openapi_types.UUID `json:"targetUserId,omitempty"`
// TargetUserName Display name of the target user (if any, and if the account still exists)
TargetUserName *string `json:"targetUserName,omitempty"`
}
AdminAuditLogEntry defines model for AdminAuditLogEntry.
type AdminConfig ¶
type AdminConfig struct {
// AdminEmailConfigured Whether ADMIN_EMAIL is set
AdminEmailConfigured bool `json:"adminEmailConfigured"`
// AirportDatabaseSize Number of airports loaded
//
// Example: 29331
AirportDatabaseSize int `json:"airportDatabaseSize"`
// AirportDatabaseUpdatedAt When the airport database was last loaded from the upstream sources; null when it never loaded
AirportDatabaseUpdatedAt *time.Time `json:"airportDatabaseUpdatedAt,omitempty"`
// AppVersion Version this API binary was stamped with at build time, falling back to APP_VERSION. `dev` for an unstamped build.
//
// Example: v1.3.4
AppVersion *string `json:"appVersion,omitempty"`
// AuthMode Active authentication mode (oidc when OIDC_ISSUER is set)
AuthMode *AdminConfigAuthMode `json:"authMode,omitempty"`
// CloudBackupProviders Names of registered cloud backup providers (e.g. s3, sftp, webdav). Empty when cloud backups are disabled.
//
// Example: ["s3","sftp","webdav"]
CloudBackupProviders []string `json:"cloudBackupProviders"`
// CloudBackupsConfigured Whether cloud backups are enabled (BACKUP_CREDENTIALS_KEY is set)
CloudBackupsConfigured bool `json:"cloudBackupsConfigured"`
// CorsOrigins Configured CORS allowed origins
CorsOrigins []string `json:"corsOrigins"`
// DocumentFilesEnabled Whether licence/credential reference files are enabled (DOCUMENT_FILES_ENABLED is not "false")
DocumentFilesEnabled *bool `json:"documentFilesEnabled,omitempty"`
// EmailSuppressedCount Addresses currently suppressed after a permanent delivery failure.
EmailSuppressedCount *int `json:"emailSuppressedCount,omitempty"`
// GoVersion Example: go1.23.0
GoVersion string `json:"goVersion"`
// MaxSessionsPerUser Concurrent sessions kept per user (MAX_SESSIONS_PER_USER) before the least recently used is evicted
//
// Example: 5
MaxSessionsPerUser *int `json:"maxSessionsPerUser,omitempty"`
// MigrationVersion Current database migration version
//
// Example: 28
MigrationVersion int `json:"migrationVersion"`
// OidcIssuer Configured OIDC issuer URL. Present only in oidc mode; the client ID and secret are never exposed.
OidcIssuer *string `json:"oidcIssuer,omitempty"`
// OidcNativeRedirect Where a native-client login finishes, from OIDC_NATIVE_POST_LOGIN_REDIRECT. Present only in oidc mode.
//
// Example: ninerlog://auth/callback
OidcNativeRedirect *string `json:"oidcNativeRedirect,omitempty"`
// RateLimitAdmin Admin endpoint rate limit
//
// Example: 30 req/min
RateLimitAdmin string `json:"rateLimitAdmin"`
// RateLimitAuth Auth endpoint rate limit
//
// Example: 10 req/min
RateLimitAuth string `json:"rateLimitAuth"`
// RefreshReuseGrace How long a rotated refresh token stays usable (REFRESH_REUSE_GRACE)
//
// Example: 30s
RefreshReuseGrace *string `json:"refreshReuseGrace,omitempty"`
// RegistrationPrefixCount Number of ICAO aircraft nationality marks in the vendored registration table
//
// Example: 210
RegistrationPrefixCount int `json:"registrationPrefixCount"`
// RegistrationPrefixesReviewed When the vendored nationality mark table was last checked against ICAO's published nationality marks. The table is vendored rather than fetched, so this is the only signal that it may be stale.
//
// Example: 2026-08-17
RegistrationPrefixesReviewed openapi_types.Date `json:"registrationPrefixesReviewed"`
// ServerUptime Human-readable uptime
//
// Example: 2d 5h 30m
ServerUptime string `json:"serverUptime"`
// SmtpConfigured Whether SMTP is configured
SmtpConfigured bool `json:"smtpConfigured"`
// UnverifiedCleanupDisabledReason Why the cleanup is not running, absent when it is. `oidc_mode` is not
// configurable: with an identity provider in charge, an unverified
// account is one the provider did not assert `email_verified` for — not
// an abandoned signup — so reaping is refused outright.
UnverifiedCleanupDisabledReason *AdminConfigUnverifiedCleanupDisabledReason `json:"unverifiedCleanupDisabledReason,omitempty"`
// UnverifiedCleanupEnabled Whether unverified accounts are reminded and then deleted. Requires
// SMTP to be configured; without it, registration marks accounts
// verified immediately and nothing is reaped. Always false in OIDC
// mode.
UnverifiedCleanupEnabled *bool `json:"unverifiedCleanupEnabled,omitempty"`
// UnverifiedReminderAfter How long after signup the verification reminder is sent.
//
// Example: 24h0m0s
UnverifiedReminderAfter *string `json:"unverifiedReminderAfter,omitempty"`
// UnverifiedRetention How long an account survives, unverified, after that reminder before
// it is deleted.
//
//
// Example: 720h0m0s
UnverifiedRetention *string `json:"unverifiedRetention,omitempty"`
// UpdateCheckEnabled Whether the deployment checks GitHub for newer releases (UPDATE_CHECK_ENABLED)
UpdateCheckEnabled *bool `json:"updateCheckEnabled,omitempty"`
// UpdateCheckInterval How often the release check runs. Absent when the check is disabled.
//
// Example: 24h0m0s
UpdateCheckInterval *string `json:"updateCheckInterval,omitempty"`
}
AdminConfig defines model for AdminConfig.
type AdminConfigAuthMode ¶ added in v1.3.2
type AdminConfigAuthMode string
AdminConfigAuthMode Active authentication mode (oidc when OIDC_ISSUER is set)
const ( AdminConfigAuthModeLocal AdminConfigAuthMode = "local" AdminConfigAuthModeOidc AdminConfigAuthMode = "oidc" )
Defines values for AdminConfigAuthMode.
func (AdminConfigAuthMode) Valid ¶ added in v1.3.2
func (e AdminConfigAuthMode) Valid() bool
Valid indicates whether the value is a known member of the AdminConfigAuthMode enum.
type AdminConfigUnverifiedCleanupDisabledReason ¶ added in v1.3.2
type AdminConfigUnverifiedCleanupDisabledReason string
AdminConfigUnverifiedCleanupDisabledReason Why the cleanup is not running, absent when it is. `oidc_mode` is not configurable: with an identity provider in charge, an unverified account is one the provider did not assert `email_verified` for — not an abandoned signup — so reaping is refused outright.
const ( DisabledByConfiguration AdminConfigUnverifiedCleanupDisabledReason = "disabled_by_configuration" OidcMode AdminConfigUnverifiedCleanupDisabledReason = "oidc_mode" SmtpNotConfigured AdminConfigUnverifiedCleanupDisabledReason = "smtp_not_configured" )
Defines values for AdminConfigUnverifiedCleanupDisabledReason.
func (AdminConfigUnverifiedCleanupDisabledReason) Valid ¶ added in v1.3.2
func (e AdminConfigUnverifiedCleanupDisabledReason) Valid() bool
Valid indicates whether the value is a known member of the AdminConfigUnverifiedCleanupDisabledReason enum.
type AdminStats ¶
type AdminStats struct {
// ActiveSessions Live sessions across all users. A session is live while it holds an unrevoked, unexpired refresh token, so this counts signed-in devices rather than users.
ActiveSessions int `json:"activeSessions"`
// CloudBackupDestinations Counts of user-configured cloud backup destinations.
CloudBackupDestinations struct {
// ByProvider Number of destinations grouped by provider name (e.g. {"s3": 3, "sftp": 1}). Providers with zero destinations are omitted.
//
// Example: {"s3":3,"sftp":1}
ByProvider map[string]int `json:"byProvider"`
// Total Total number of cloud backup destinations configured across all users.
Total int `json:"total"`
} `json:"cloudBackupDestinations"`
DisabledAccounts int `json:"disabledAccounts"`
FlightsThisMonth int `json:"flightsThisMonth"`
// ImportsByFormat Completed imports grouped by the detected source format, i.e. which logbook pilots are migrating from. Keys are ImportFormat values; formats nobody has imported are omitted.
//
// Example: {"CSV":2,"FOREFLIGHT_CSV":12,"MYFLIGHTBOOK_CSV":4}
ImportsByFormat map[string]int `json:"importsByFormat"`
LockedAccounts int `json:"lockedAccounts"`
NewUsersThisWeek int `json:"newUsersThisWeek"`
TotalAircraft int `json:"totalAircraft"`
// TotalContacts Contacts across all users. Grows on its own as flights are logged, since crew names are turned into contacts automatically.
TotalContacts int `json:"totalContacts"`
TotalCredentials int `json:"totalCredentials"`
// TotalFlights Flights across all users. Excludes FSTD sessions and passenger flights, which are counted separately.
TotalFlights int `json:"totalFlights"`
TotalImports int `json:"totalImports"`
// TotalPassengerFlights Flights across all users whose owner was carried as a passenger rather than crewing. Recorded separately and never summed into flight time.
TotalPassengerFlights int `json:"totalPassengerFlights"`
// TotalSimulatorSessions FSTD (simulator) sessions across all users. Recorded separately from flights and never summed into flight time (EASA AMC1 FCL.050).
TotalSimulatorSessions int `json:"totalSimulatorSessions"`
TotalUsers int `json:"totalUsers"`
}
AdminStats defines model for AdminStats.
type AdminUser ¶
type AdminUser struct {
// AircraftCount Number of aircraft in database
AircraftCount int `json:"aircraftCount"`
CreatedAt time.Time `json:"createdAt"`
// Disabled Whether the account is disabled by admin
Disabled bool `json:"disabled"`
Email openapi_types.Email `json:"email"`
// EmailSuppressed Whether this address is on the suppression list after a permanent
// delivery failure. A suppressed address receives no further mail, so
// an unverified account with this flag set will never verify.
EmailSuppressed *bool `json:"emailSuppressed,omitempty"`
// EmailVerified Whether the user has verified their email address and completed sign-up
EmailVerified bool `json:"emailVerified"`
// FlightCount Total number of flights logged
FlightCount int `json:"flightCount"`
Id openapi_types.UUID `json:"id"`
// LastLoginAt Last successful sign-in. Recorded for every path that issues a session: password login, the second factor, a passkey, OIDC, and the sign-up verification link (following it signs the new account in). Not updated by a token refresh.
LastLoginAt *time.Time `json:"lastLoginAt,omitempty"`
// Locked Whether the account is locked due to brute-force protection
Locked *bool `json:"locked,omitempty"`
// LockedUntil When the brute-force lock expires
LockedUntil *time.Time `json:"lockedUntil,omitempty"`
Name string `json:"name"`
// ScheduledDeletionAt When this unverified account will be deleted if the address is still
// not confirmed. Absent for verified accounts and for accounts that
// have not been reminded yet.
ScheduledDeletionAt *time.Time `json:"scheduledDeletionAt,omitempty"`
TwoFactorEnabled bool `json:"twoFactorEnabled"`
// VerificationReminderSentAt When the follow-up email-verification reminder was sent. Absent when
// the account is verified, or when the reminder is not due yet. This
// timestamp starts the retention clock: an account still unverified
// once the retention window has elapsed from here is deleted.
VerificationReminderSentAt *time.Time `json:"verificationReminderSentAt,omitempty"`
}
AdminUser defines model for AdminUser.
type Aircraft ¶
type Aircraft struct {
// AircraftClass Aircraft class (e.g., SEP_LAND, MEP_LAND, TMG, or any custom value)
//
// Example: SEP_LAND
AircraftClass *string `json:"aircraftClass,omitempty"`
// CreatedAt Example: 2026-01-15T10:00:00Z
CreatedAt time.Time `json:"createdAt"`
// DefaultArrivalIcao Default arrival location (ICAO code or free-text place name) prefilled when logging a flight with this aircraft
//
// Example: LSZH
DefaultArrivalIcao *string `json:"defaultArrivalIcao,omitempty"`
// DefaultDepartureIcao Default departure location (ICAO code or free-text place name) prefilled when logging a flight with this aircraft
//
// Example: LSZH
DefaultDepartureIcao *string `json:"defaultDepartureIcao,omitempty"`
// Id Example: 770e8400-e29b-41d4-a716-446655440002
Id openapi_types.UUID `json:"id"`
// IsActive Whether aircraft is still active in the user's fleet
//
// Example: true
IsActive *bool `json:"isActive,omitempty"`
// IsComplex Whether aircraft has retractable gear, flaps, and constant speed propeller
//
// Example: false
IsComplex *bool `json:"isComplex,omitempty"`
// IsHighPerformance Whether aircraft has more than 200 HP
//
// Example: false
IsHighPerformance *bool `json:"isHighPerformance,omitempty"`
// IsMultiPilot Whether the type is certificated for a minimum crew of two pilots. Co-pilot time is loggable only on such an aircraft.
//
// Example: false
IsMultiPilot *bool `json:"isMultiPilot,omitempty"`
// IsTailwheel Whether aircraft has tailwheel (conventional gear)
//
// Example: false
IsTailwheel *bool `json:"isTailwheel,omitempty"`
// Make Aircraft manufacturer
//
// Example: Cessna
Make string `json:"make"`
// Model Aircraft model name
//
// Example: 172 Skyhawk
Model string `json:"model"`
// Notes Additional notes about the aircraft
//
// Example: Club aircraft, requires checkout
Notes *string `json:"notes,omitempty"`
// Registration Aircraft registration/tail number. Normalised on write into the canonical notation of its state of registry: the nationality mark is matched against the ICAO table and the hyphen inserted, moved or removed to suit (`deabc` and `DE-ABC` both become `D-EABC`; `N-12345` becomes `N12345`). A registration whose nationality mark is not recognised is stored uppercased and trimmed, but otherwise unchanged.
//
// Example: D-EFGH
Registration string `json:"registration"`
// Type Aircraft type designation (e.g., C172, PA28, ASK21)
//
// Example: C172
Type string `json:"type"`
// UpdatedAt Example: 2026-02-01T14:30:00Z
UpdatedAt time.Time `json:"updatedAt"`
// UserId Example: 550e8400-e29b-41d4-a716-446655440000
UserId openapi_types.UUID `json:"userId"`
}
Aircraft defines model for Aircraft.
type AircraftCreate ¶
type AircraftCreate struct {
// AircraftClass Aircraft class (e.g., SEP_LAND, MEP_LAND, TMG, or any custom value)
//
// Example: SEP_LAND
AircraftClass *string `json:"aircraftClass,omitempty"`
// DefaultArrivalIcao Default arrival location (ICAO code or free-text place name) prefilled when logging a flight with this aircraft
//
// Example: LSZH
DefaultArrivalIcao *string `json:"defaultArrivalIcao,omitempty"`
// DefaultDepartureIcao Default departure location (ICAO code or free-text place name) prefilled when logging a flight with this aircraft
//
// Example: LSZH
DefaultDepartureIcao *string `json:"defaultDepartureIcao,omitempty"`
// IsComplex Example: false
IsComplex *bool `json:"isComplex,omitempty"`
// IsHighPerformance Example: false
IsHighPerformance *bool `json:"isHighPerformance,omitempty"`
// IsMultiPilot Whether the type is certificated for a minimum crew of two pilots. Co-pilot time is loggable only on such an aircraft.
//
// Example: false
IsMultiPilot *bool `json:"isMultiPilot,omitempty"`
// IsTailwheel Example: false
IsTailwheel *bool `json:"isTailwheel,omitempty"`
// Make Aircraft manufacturer
//
// Example: Cessna
Make string `json:"make"`
// Model Aircraft model name
//
// Example: 172 Skyhawk
Model string `json:"model"`
// Notes Example: Club aircraft, requires checkout
Notes *string `json:"notes,omitempty"`
// Registration Aircraft registration/tail number. Normalised on write into the canonical notation of its state of registry: the nationality mark is matched against the ICAO table and the hyphen inserted, moved or removed to suit (`deabc` and `DE-ABC` both become `D-EABC`; `N-12345` becomes `N12345`). A registration whose nationality mark is not recognised is stored uppercased and trimmed, but otherwise unchanged.
//
// Example: D-EFGH
Registration string `json:"registration"`
// Type Aircraft type designation
//
// Example: C172
Type string `json:"type"`
}
AircraftCreate defines model for AircraftCreate.
type AircraftId ¶
type AircraftId = openapi_types.UUID
AircraftId Example: 770e8400-e29b-41d4-a716-446655440002
type AircraftStats ¶ added in v1.3.1
type AircraftStats struct {
// FirstFlightDate Date (YYYY-MM-DD) of the first logged flight with this registration
//
// Example: 2024-03-02
FirstFlightDate *string `json:"firstFlightDate,omitempty"`
// LandingsDay Total day landings with this registration
//
// Example: 55
LandingsDay int `json:"landingsDay"`
// LandingsLast90Days Total landings with this registration in the preceding 90 days
//
// Example: 5
LandingsLast90Days int `json:"landingsLast90Days"`
// LandingsNight Total night landings with this registration
//
// Example: 4
LandingsNight int `json:"landingsNight"`
// LastFlightDate Date (YYYY-MM-DD) of the most recent logged flight with this registration
//
// Example: 2026-06-14
LastFlightDate *string `json:"lastFlightDate,omitempty"`
// RecencyLapsesOn Informational 90-day recency (styled after EASA FCL.060(b) day recency, 3 landings in 90 days): last date on which the 90-day landing count is still 3 or more. Only set while the count is currently 3 or more.
//
// Example: 2026-09-03
RecencyLapsesOn *string `json:"recencyLapsesOn,omitempty"`
// Registration Aircraft registration the statistics are aggregated for
//
// Example: D-EFGH
Registration string `json:"registration"`
// TotalFlights Number of logged flights with this registration
//
// Example: 42
TotalFlights int `json:"totalFlights"`
// TotalMinutes Total flight time in minutes with this registration
//
// Example: 2530
TotalMinutes int `json:"totalMinutes"`
}
AircraftStats defines model for AircraftStats.
type AircraftTypeStats ¶ added in v1.3.1
type AircraftTypeStats struct {
// AircraftType Aircraft type/model designation the statistics are aggregated for
//
// Example: C172
AircraftType string `json:"aircraftType"`
// FirstFlightDate Date (YYYY-MM-DD) of the first logged flight on this type
//
// Example: 2024-03-02
FirstFlightDate *string `json:"firstFlightDate,omitempty"`
// LandingsDay Total day landings on this type
//
// Example: 55
LandingsDay int `json:"landingsDay"`
// LandingsLast90Days Total landings on this type in the preceding 90 days
//
// Example: 5
LandingsLast90Days int `json:"landingsLast90Days"`
// LandingsNight Total night landings on this type
//
// Example: 4
LandingsNight int `json:"landingsNight"`
// LastFlightDate Date (YYYY-MM-DD) of the most recent logged flight on this type
//
// Example: 2026-06-14
LastFlightDate *string `json:"lastFlightDate,omitempty"`
// RecencyLapsesOn Informational 90-day recency (styled after EASA FCL.060(b) day recency, 3 landings in 90 days): last date on which the 90-day landing count is still 3 or more. Only set while the count is currently 3 or more.
//
// Example: 2026-09-03
RecencyLapsesOn *string `json:"recencyLapsesOn,omitempty"`
// TotalFlights Number of logged flights on this type
//
// Example: 42
TotalFlights int `json:"totalFlights"`
// TotalMinutes Total flight time in minutes on this type
//
// Example: 2530
TotalMinutes int `json:"totalMinutes"`
}
AircraftTypeStats defines model for AircraftTypeStats.
type AircraftUpdate ¶
type AircraftUpdate struct {
// AircraftClass Aircraft class (e.g., SEP_LAND, MEP_LAND, TMG, or any custom value)
//
// Example: SEP_LAND
AircraftClass nullable.Nullable[string] `json:"aircraftClass,omitempty"`
// DefaultArrivalIcao Default arrival location (ICAO code or free-text place name) prefilled when logging a flight with this aircraft
//
// Example: LSZH
DefaultArrivalIcao nullable.Nullable[string] `json:"defaultArrivalIcao,omitempty"`
// DefaultDepartureIcao Default departure location (ICAO code or free-text place name) prefilled when logging a flight with this aircraft
//
// Example: LSZH
DefaultDepartureIcao nullable.Nullable[string] `json:"defaultDepartureIcao,omitempty"`
// IsActive Example: true
IsActive *bool `json:"isActive,omitempty"`
// IsComplex Example: false
IsComplex *bool `json:"isComplex,omitempty"`
// IsHighPerformance Example: false
IsHighPerformance *bool `json:"isHighPerformance,omitempty"`
// IsMultiPilot Whether the type is certificated for a minimum crew of two pilots. Co-pilot time is loggable only on such an aircraft.
//
// Example: false
IsMultiPilot *bool `json:"isMultiPilot,omitempty"`
// IsTailwheel Example: false
IsTailwheel *bool `json:"isTailwheel,omitempty"`
// Make Example: Cessna
Make *string `json:"make,omitempty"`
// Model Example: 172 Skyhawk
Model *string `json:"model,omitempty"`
// Notes Example: Club aircraft, requires checkout
Notes nullable.Nullable[string] `json:"notes,omitempty"`
// Registration Example: D-EFGH
Registration *string `json:"registration,omitempty"`
// RenameFlights When true and the registration is being changed, logged flights that reference the old registration are updated to the new one.
//
// Example: false
RenameFlights *bool `json:"renameFlights,omitempty"`
// Type Example: C172
Type *string `json:"type,omitempty"`
}
AircraftUpdate defines model for AircraftUpdate.
type Airport ¶
type Airport struct {
// Country Country code (ISO 3166-1 alpha-2)
//
// Example: DE
Country *string `json:"country,omitempty"`
// Elevation Airport elevation in feet
//
// Example: 364
Elevation *int `json:"elevation,omitempty"`
// Icao ICAO airport code
//
// Example: EDDF
Icao string `json:"icao"`
// Latitude Latitude in decimal degrees
//
// Example: 50.033333
Latitude float64 `json:"latitude"`
// Longitude Longitude in decimal degrees
//
// Example: 8.570556
Longitude float64 `json:"longitude"`
// Name Airport name
//
// Example: Frankfurt am Main
Name string `json:"name"`
}
Airport defines model for Airport.
type AirportPackStatus ¶ added in v1.3.5
type AirportPackStatus struct {
// Count Number of airports in the pack
//
// Example: 29331
Count int `json:"count"`
// Etag Content identifier of the current pack (hex SHA-256 over the
// airport data). Changes only when the merged dataset changes.
//
//
// Example: 3f6b1c9a2d4e5f60
Etag string `json:"etag"`
// GeneratedAt When the live airport snapshot was loaded from the upstream sources
GeneratedAt time.Time `json:"generatedAt"`
// SizeBytes Size of the gzip-compressed pack in bytes
//
// Example: 745211
SizeBytes int `json:"sizeBytes"`
}
AirportPackStatus defines model for AirportPackStatus.
type AirportStats ¶
type AirportStats struct {
// Arrivals Number of arrivals to this airport
Arrivals int `json:"arrivals"`
// Departures Number of departures from this airport
Departures int `json:"departures"`
// Icao Example: EDDF
Icao string `json:"icao"`
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
// Name Example: Frankfurt am Main
Name string `json:"name"`
// TotalFlights Total flights (departures + arrivals)
TotalFlights int `json:"totalFlights"`
}
AirportStats defines model for AirportStats.
type AnalyticsAircraftRow ¶ added in v1.3.1
type AnalyticsAircraftRow struct {
DistanceNm float64 `json:"distanceNm"`
DualMinutes int `json:"dualMinutes"`
FirstFlightDate *string `json:"firstFlightDate,omitempty"`
Flights int `json:"flights"`
IfrMinutes int `json:"ifrMinutes"`
// Label Aircraft type designation, or registration for byRegistration rows.
//
// Example: C172
Label string `json:"label"`
Landings int `json:"landings"`
LastFlightDate *string `json:"lastFlightDate,omitempty"`
NightMinutes int `json:"nightMinutes"`
PicMinutes int `json:"picMinutes"`
// SubLabel Aircraft type for byRegistration rows, or make/model where known.
//
// Example: Cessna 172S
SubLabel *string `json:"subLabel,omitempty"`
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsAircraftRow defines model for AnalyticsAircraftRow.
type AnalyticsAirportRow ¶ added in v1.3.1
type AnalyticsAirportRow struct {
Arrivals int `json:"arrivals"`
// Country Example: DE
Country *string `json:"country,omitempty"`
Departures int `json:"departures"`
// Flights Flights touching this airport. A local flight departing and arriving here counts once.
Flights int `json:"flights"`
// Icao Example: EDNY
Icao string `json:"icao"`
Latitude *float64 `json:"latitude,omitempty"`
Longitude *float64 `json:"longitude,omitempty"`
// Name Null when the code does not resolve against the airport database.
//
// Example: Friedrichshafen Airport
Name *string `json:"name,omitempty"`
}
AnalyticsAirportRow defines model for AnalyticsAirportRow.
type AnalyticsApproachTypeRow ¶ added in v1.3.1
type AnalyticsApproachTypeRow struct {
Count int `json:"count"`
// Type Example: ILS
Type string `json:"type"`
}
AnalyticsApproachTypeRow defines model for AnalyticsApproachTypeRow.
type AnalyticsBucketRow ¶ added in v1.3.1
type AnalyticsBucketRow struct {
Flights int `json:"flights"`
// Key Bucket index. Day of week 1–7 (Monday first), hour of day 0–23 UTC, month of year 1–12, duration bucket 0–5.
//
// Example: 1
Key int `json:"key"`
// Label Stable machine label for the bucket. Clients localize by key.
//
// Example: <30m
Label string `json:"label"`
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsBucketRow defines model for AnalyticsBucketRow.
type AnalyticsCountryRow ¶ added in v1.3.1
type AnalyticsCountryRow struct {
// Airports Distinct airports visited in this country.
Airports int `json:"airports"`
// Country ISO 3166-1 alpha-2 country code from the airport database.
//
// Example: DE
Country string `json:"country"`
Flights int `json:"flights"`
}
AnalyticsCountryRow defines model for AnalyticsCountryRow.
type AnalyticsFlightRef ¶ added in v1.3.1
type AnalyticsFlightRef struct {
AircraftReg *string `json:"aircraftReg,omitempty"`
AircraftType *string `json:"aircraftType,omitempty"`
ArrivalIcao *string `json:"arrivalIcao,omitempty"`
// Date Example: 2026-05-17
Date string `json:"date"`
DepartureIcao *string `json:"departureIcao,omitempty"`
DistanceNm float64 `json:"distanceNm"`
Id openapi_types.UUID `json:"id"`
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsFlightRef defines model for AnalyticsFlightRef.
type AnalyticsGroupRow ¶ added in v1.3.1
type AnalyticsGroupRow struct {
DualMinutes int `json:"dualMinutes"`
Flights int `json:"flights"`
// Label Example: SEP_LAND
Label string `json:"label"`
Landings int `json:"landings"`
PicMinutes int `json:"picMinutes"`
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsGroupRow defines model for AnalyticsGroupRow.
type AnalyticsMonthPoint ¶ added in v1.3.1
type AnalyticsMonthPoint struct {
// CumulativeMinutes Running total of block time from the very first logged flight up to and including this month, so the curve reflects true career hours even when the timeframe starts later.
CumulativeMinutes int `json:"cumulativeMinutes"`
DistanceNm float64 `json:"distanceNm"`
DualGivenMinutes int `json:"dualGivenMinutes"`
DualMinutes int `json:"dualMinutes"`
Flights int `json:"flights"`
IfrMinutes int `json:"ifrMinutes"`
LandingsDay int `json:"landingsDay"`
LandingsNight int `json:"landingsNight"`
// Month Calendar month, YYYY-MM.
//
// Example: 2026-07
Month string `json:"month"`
NightMinutes int `json:"nightMinutes"`
PicMinutes int `json:"picMinutes"`
SicMinutes int `json:"sicMinutes"`
SoloMinutes int `json:"soloMinutes"`
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsMonthPoint defines model for AnalyticsMonthPoint.
type AnalyticsPersonRow ¶ added in v1.3.1
type AnalyticsPersonRow struct {
// ContactId The contact the person's crew entries are linked to, when they are
// linked to one. byCrew rows only.
ContactId *openapi_types.UUID `json:"contactId,omitempty"`
Flights int `json:"flights"`
LastFlightDate *string `json:"lastFlightDate,omitempty"`
// Name Example: J. Smith
Name string `json:"name"`
// Role The role this person most flies with you as (by time), for byCrew
// rows only.
//
//
// Example: PIC
Role *string `json:"role,omitempty"`
// Roles Every role this person has held across the logbook, most time
// first. byCrew rows only.
Roles *[]string `json:"roles,omitempty"`
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsPersonRow defines model for AnalyticsPersonRow.
type AnalyticsRange ¶ added in v1.3.1
type AnalyticsRange struct {
// AllTime True when the payload covers the entire logbook.
AllTime bool `json:"allTime"`
// From First date included in the timeframe. Null when allTime is true.
//
// Example: 2025-08-01
From *string `json:"from,omitempty"`
// Months Requested timeframe in months. 0 means all time.
//
// Example: 12
Months int `json:"months"`
// To Last date included in the timeframe (the current date).
//
// Example: 2026-07-27
To *string `json:"to,omitempty"`
}
AnalyticsRange defines model for AnalyticsRange.
type AnalyticsRecords ¶ added in v1.3.1
type AnalyticsRecords struct {
// ActiveMonths Number of calendar months in the timeframe with at least one flight.
ActiveMonths int `json:"activeMonths"`
// BusiestDay Date with the most flights logged.
//
// Example: 2026-05-17
BusiestDay *string `json:"busiestDay,omitempty"`
BusiestDayFlights int `json:"busiestDayFlights"`
// BusiestMonth Calendar month with the most block time.
//
// Example: 2026-05
BusiestMonth *string `json:"busiestMonth,omitempty"`
BusiestMonthMinutes *int `json:"busiestMonthMinutes,omitempty"`
// BusiestYear Example: 2026
BusiestYear *int `json:"busiestYear,omitempty"`
BusiestYearMinutes *int `json:"busiestYearMinutes,omitempty"`
// CurrentStreakMonths Consecutive months with at least one flight ending at the current month.
CurrentStreakMonths int `json:"currentStreakMonths"`
// DaysSinceLastFlight Null when the logbook is empty.
DaysSinceLastFlight *int `json:"daysSinceLastFlight,omitempty"`
FarthestAirport *AnalyticsAirportRow `json:"farthestAirport,omitempty"`
// FarthestAirportNm Great-circle distance from the home base to the farthest visited airport.
FarthestAirportNm *float64 `json:"farthestAirportNm,omitempty"`
// HomeBase Most-visited airport, used as the reference point for farthestAirport.
//
// Example: EDNY
HomeBase *string `json:"homeBase,omitempty"`
LongestDistanceFlight *AnalyticsFlightRef `json:"longestDistanceFlight,omitempty"`
LongestFlight *AnalyticsFlightRef `json:"longestFlight,omitempty"`
// LongestStreakMonths Longest run of consecutive calendar months with at least one flight, within the timeframe.
LongestStreakMonths int `json:"longestStreakMonths"`
}
AnalyticsRecords defines model for AnalyticsRecords.
type AnalyticsRouteRow ¶ added in v1.3.1
type AnalyticsRouteRow struct {
// ArrivalIcao Example: LSZH
ArrivalIcao string `json:"arrivalIcao"`
// DepartureIcao Example: EDNY
DepartureIcao string `json:"departureIcao"`
// DistanceNm Great-circle distance of a single leg on this route.
DistanceNm float64 `json:"distanceNm"`
Flights int `json:"flights"`
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsRouteRow defines model for AnalyticsRouteRow.
type AnalyticsTotals ¶ added in v1.3.1
type AnalyticsTotals struct {
ActualInstrumentMinutes int `json:"actualInstrumentMinutes"`
Approaches int `json:"approaches"`
CrossCountryMinutes int `json:"crossCountryMinutes"`
// DistanceNm Great-circle distance summed over all flights with known departure and arrival airports.
//
// Example: 18422.5
DistanceNm float64 `json:"distanceNm"`
// DistinctAirports Unique airports visited as either departure or arrival.
DistinctAirports int `json:"distinctAirports"`
// DistinctCountries Unique countries of the visited airports that resolve against the airport database.
DistinctCountries int `json:"distinctCountries"`
DistinctRegistrations int `json:"distinctRegistrations"`
DistinctTypes int `json:"distinctTypes"`
// DualGivenMinutes Instruction given as an instructor.
DualGivenMinutes int `json:"dualGivenMinutes"`
// DualMinutes Dual instruction received.
DualMinutes int `json:"dualMinutes"`
// ExaminerMinutes Time conducting checks as examiner.
ExaminerMinutes int `json:"examinerMinutes"`
// FirstFlightDate Example: 2024-03-02
FirstFlightDate *string `json:"firstFlightDate,omitempty"`
// GroundTrainingMinutes Ground instruction. Not included in totalMinutes.
GroundTrainingMinutes int `json:"groundTrainingMinutes"`
Holds int `json:"holds"`
IfrMinutes int `json:"ifrMinutes"`
LandingsDay int `json:"landingsDay"`
LandingsNight int `json:"landingsNight"`
// LastFlightDate Example: 2026-07-14
LastFlightDate *string `json:"lastFlightDate,omitempty"`
// MultiPilotMinutes EASA AMC1 FCL.050 column 10.
MultiPilotMinutes int `json:"multiPilotMinutes"`
NightMinutes int `json:"nightMinutes"`
PicMinutes int `json:"picMinutes"`
// PicusMinutes PIC under supervision (PICUS) time.
PicusMinutes int `json:"picusMinutes"`
// ReliefMinutes Cruise relief co-pilot time.
ReliefMinutes int `json:"reliefMinutes"`
SicMinutes int `json:"sicMinutes"`
// SimulatedFlightMinutes FSTD/simulator time. Not included in totalMinutes.
SimulatedFlightMinutes int `json:"simulatedFlightMinutes"`
// SimulatedInstrumentMinutes Hood/simulated instrument time in an aircraft.
SimulatedInstrumentMinutes int `json:"simulatedInstrumentMinutes"`
SoloMinutes int `json:"soloMinutes"`
// SpicMinutes Student pilot-in-command (SPIC) time.
SpicMinutes int `json:"spicMinutes"`
TakeoffsDay int `json:"takeoffsDay"`
TakeoffsNight int `json:"takeoffsNight"`
// TotalFlights Example: 214
TotalFlights int `json:"totalFlights"`
// TotalMinutes Total block time.
//
// Example: 23480
TotalMinutes int `json:"totalMinutes"`
}
AnalyticsTotals Aggregated totals for the timeframe. When the user has an initial-hours snapshot that the timeframe reaches back to, its carried-forward totals are included here and reported separately in `FlightAnalytics.baseline`.
type AnalyticsYearPoint ¶ added in v1.3.1
type AnalyticsYearPoint struct {
DistanceNm float64 `json:"distanceNm"`
DualMinutes int `json:"dualMinutes"`
Flights int `json:"flights"`
IfrMinutes int `json:"ifrMinutes"`
Landings int `json:"landings"`
NightMinutes int `json:"nightMinutes"`
PicMinutes int `json:"picMinutes"`
TotalMinutes int `json:"totalMinutes"`
// Year Example: 2026
Year int `json:"year"`
}
AnalyticsYearPoint defines model for AnalyticsYearPoint.
type Announcement ¶
type Announcement struct {
CreatedAt *time.Time `json:"createdAt,omitempty"`
// ExpiresAt When this announcement auto-expires (null = permanent until deleted)
ExpiresAt *time.Time `json:"expiresAt,omitempty"`
// Id Unique identifier: a UUID for operator-authored announcements, a stable string key for hints. A hint's id doubles as its client-side localisation key — `message` is the English source text, to be used as a fallback. Operator announcements carry author-written text in `message` and are never translated.
Id string `json:"id"`
// Message Example: Scheduled maintenance on Tuesday 8pm-10pm UTC
Message string `json:"message"`
// Severity Display severity:
// - info: blue — neutral information
// - success: green — positive suggestions (e.g. enable 2FA)
// - warning: orange — important notices (e.g. maintenance)
// - critical: red — urgent alerts
Severity AnnouncementSeverity `json:"severity"`
}
Announcement defines model for Announcement.
type AnnouncementSeverity ¶
type AnnouncementSeverity string
AnnouncementSeverity Display severity: - info: blue — neutral information - success: green — positive suggestions (e.g. enable 2FA) - warning: orange — important notices (e.g. maintenance) - critical: red — urgent alerts
const ( AnnouncementSeverityCritical AnnouncementSeverity = "critical" AnnouncementSeverityInfo AnnouncementSeverity = "info" AnnouncementSeveritySuccess AnnouncementSeverity = "success" AnnouncementSeverityWarning AnnouncementSeverity = "warning" )
Defines values for AnnouncementSeverity.
func (AnnouncementSeverity) Valid ¶ added in v1.1.0
func (e AnnouncementSeverity) Valid() bool
Valid indicates whether the value is a known member of the AnnouncementSeverity enum.
type ApproachEntry ¶
type ApproachEntry struct {
// Airport ICAO code of the airport where the approach was performed
//
// Example: EDDF
Airport *string `json:"airport,omitempty"`
// Runway Runway designation for the approach
//
// Example: 09L
Runway *string `json:"runway,omitempty"`
// Type Type of instrument approach procedure
Type ApproachType `json:"type"`
}
ApproachEntry defines model for ApproachEntry.
type ApproachEntryInput ¶
type ApproachEntryInput struct {
// Airport ICAO code of the airport
Airport *string `json:"airport,omitempty"`
// Runway Runway designation
Runway *string `json:"runway,omitempty"`
// Type Type of instrument approach procedure
Type ApproachType `json:"type"`
}
ApproachEntryInput defines model for ApproachEntryInput.
type ApproachType ¶
type ApproachType string
ApproachType Type of instrument approach procedure
const ( ApproachTypeASR ApproachType = "ASR" ApproachTypeCircling ApproachType = "Circling" ApproachTypeILS ApproachType = "ILS" ApproachTypeLDA ApproachType = "LDA" ApproachTypeLOC ApproachType = "LOC" ApproachTypeNDB ApproachType = "NDB" ApproachTypeOther ApproachType = "Other" ApproachTypePAR ApproachType = "PAR" ApproachTypeRNAVGPS ApproachType = "RNAV/GPS" ApproachTypeSDF ApproachType = "SDF" ApproachTypeUnknown ApproachType = "Unknown" ApproachTypeVOR ApproachType = "VOR" ApproachTypeVisual ApproachType = "Visual" )
Defines values for ApproachType.
func (ApproachType) Valid ¶ added in v1.1.0
func (e ApproachType) Valid() bool
Valid indicates whether the value is a known member of the ApproachType enum.
type AuthProviders ¶ added in v1.3.2
type AuthProviders struct {
// Mode The active authentication mode
Mode AuthProvidersMode `json:"mode"`
Oidc struct {
// AuthorizeUrl Where to send the browser to start the login. A redirect endpoint, not a JSON API — navigate to it, do not fetch it.
//
// Example: /api/v1/auth/oidc/authorize
AuthorizeUrl *string `json:"authorizeUrl,omitempty"`
// Enabled Whether OIDC single sign-on is configured
Enabled bool `json:"enabled"`
// Name Display name for the sign-in button, from OIDC_PROVIDER_NAME
//
// Example: Authentik
Name *string `json:"name,omitempty"`
// NativeAuthorizeUrl Where a native app sends its in-app browser to start the login. The same redirect endpoint, flagged so the callback finishes at `nativeRedirectUri` instead of the web frontend.
//
// Example: /api/v1/auth/oidc/authorize?native=1
NativeAuthorizeUrl *string `json:"nativeAuthorizeUrl,omitempty"`
// NativeRedirectUri Where the callback sends the browser after a login started at `nativeAuthorizeUrl`, carrying the same `oidc_code` or `oidc_error` parameter. A custom scheme, which a native app can intercept without an associated domain. From OIDC_NATIVE_POST_LOGIN_REDIRECT.
//
// Example: ninerlog://auth/callback
NativeRedirectUri *string `json:"nativeRedirectUri,omitempty"`
} `json:"oidc"`
// PasswordLoginEnabled Whether email/password sign-in is accepted
PasswordLoginEnabled bool `json:"passwordLoginEnabled"`
// RegistrationEnabled Whether self-service registration is accepted
RegistrationEnabled bool `json:"registrationEnabled"`
// TwoFactorEnabled Whether users can set up TOTP two-factor authentication
TwoFactorEnabled bool `json:"twoFactorEnabled"`
// WebauthnEnabled Whether passkey registration and login are available
WebauthnEnabled bool `json:"webauthnEnabled"`
}
AuthProviders The sign-in methods this server offers. Exactly one authentication mode is active; the flags below are all derived from it and from what the operator has configured.
type AuthProvidersMode ¶ added in v1.3.2
type AuthProvidersMode string
AuthProvidersMode The active authentication mode
const ( AuthProvidersModeLocal AuthProvidersMode = "local" AuthProvidersModeOidc AuthProvidersMode = "oidc" )
Defines values for AuthProvidersMode.
func (AuthProvidersMode) Valid ¶ added in v1.3.2
func (e AuthProvidersMode) Valid() bool
Valid indicates whether the value is a known member of the AuthProvidersMode enum.
type AuthResponse ¶
type AuthResponse struct {
// AccessToken JWT access token (15 minutes validity)
//
// Example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
AccessToken string `json:"accessToken"`
// ExpiresIn Access token expiry in seconds
//
// Example: 900
ExpiresIn int `json:"expiresIn"`
// RefreshToken JWT refresh token (7 days validity)
//
// Example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
RefreshToken string `json:"refreshToken"`
User User `json:"user"`
}
AuthResponse defines model for AuthResponse.
type AuthorizeOidcParams ¶ added in v1.3.7
type AuthorizeOidcParams struct {
// Native Finish the login at the app's native redirect URI. Any affirmative value (`1`, `true`, `yes`) selects native mode.
Native *string `form:"native,omitempty" json:"native,omitempty"`
}
AuthorizeOidcParams defines parameters for AuthorizeOidc.
type BackupDestination ¶ added in v1.2.4
type BackupDestination struct {
// Config Provider-specific non-secret configuration (e.g. bucket, region, prefix).
Config map[string]interface{} `json:"config"`
ConsecutiveFailures *int `json:"consecutiveFailures,omitempty"`
CreatedAt time.Time `json:"createdAt"`
// CredentialHint Non-sensitive hint about the stored credential (e.g. last 4 of access key).
CredentialHint *string `json:"credentialHint,omitempty"`
DisplayName string `json:"displayName"`
Enabled bool `json:"enabled"`
Id openapi_types.UUID `json:"id"`
LastError *string `json:"lastError,omitempty"`
LastRunAt *time.Time `json:"lastRunAt,omitempty"`
LastSuccessAt *time.Time `json:"lastSuccessAt,omitempty"`
// Provider Example: s3
Provider string `json:"provider"`
// RetentionCount Number of historical backups to retain. 0 means keep all.
RetentionCount int `json:"retentionCount"`
// Schedule Cadence at which scheduled runs fire (UTC). 'manual' disables scheduling.
Schedule BackupSchedule `json:"schedule"`
// ScheduleDayOfMonth Day of month for monthly schedule. Capped at 28 to avoid month-end edge cases.
ScheduleDayOfMonth *int `json:"scheduleDayOfMonth,omitempty"`
// ScheduleDayOfWeek 0=Sunday, 6=Saturday. Required when schedule=weekly.
ScheduleDayOfWeek *int `json:"scheduleDayOfWeek,omitempty"`
ScheduleHourUtc *int `json:"scheduleHourUtc,omitempty"`
// Status Operational status of a destination. 'error' is set automatically after 3 consecutive run failures.
Status BackupStatus `json:"status"`
UpdatedAt time.Time `json:"updatedAt"`
UserId openapi_types.UUID `json:"userId"`
}
BackupDestination defines model for BackupDestination.
type BackupDestinationCreate ¶ added in v1.2.4
type BackupDestinationCreate struct {
Config map[string]interface{} `json:"config"`
// Credentials Secret fields. Stored encrypted at rest (AES-256-GCM) and never returned in any response.
Credentials map[string]interface{} `json:"credentials"`
DisplayName string `json:"displayName"`
Enabled *bool `json:"enabled,omitempty"`
// Provider Example: s3
Provider string `json:"provider"`
RetentionCount *int `json:"retentionCount,omitempty"`
// Schedule Cadence at which scheduled runs fire (UTC). 'manual' disables scheduling.
Schedule BackupSchedule `json:"schedule"`
ScheduleDayOfMonth *int `json:"scheduleDayOfMonth,omitempty"`
ScheduleDayOfWeek *int `json:"scheduleDayOfWeek,omitempty"`
ScheduleHourUtc *int `json:"scheduleHourUtc,omitempty"`
}
BackupDestinationCreate defines model for BackupDestinationCreate.
type BackupDestinationId ¶ added in v1.2.4
type BackupDestinationId = openapi_types.UUID
BackupDestinationId defines model for BackupDestinationId.
type BackupDestinationUpdate ¶ added in v1.2.4
type BackupDestinationUpdate struct {
DisplayName *string `json:"displayName,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
RetentionCount *int `json:"retentionCount,omitempty"`
// Schedule Cadence at which scheduled runs fire (UTC). 'manual' disables scheduling.
Schedule *BackupSchedule `json:"schedule,omitempty"`
ScheduleDayOfMonth *int `json:"scheduleDayOfMonth,omitempty"`
ScheduleDayOfWeek *int `json:"scheduleDayOfWeek,omitempty"`
ScheduleHourUtc *int `json:"scheduleHourUtc,omitempty"`
}
BackupDestinationUpdate Partial update — only supplied fields are modified.
type BackupField ¶ added in v1.2.4
type BackupField struct {
Description *string `json:"description,omitempty"`
// Label Human-readable label.
Label string `json:"label"`
// Name Stable field key sent back as part of the config or credentials map.
Name string `json:"name"`
Placeholder *string `json:"placeholder,omitempty"`
Required bool `json:"required"`
// Type Hint for rendering provider config/credential form fields.
Type BackupFieldType `json:"type"`
}
BackupField defines model for BackupField.
type BackupFieldSchema ¶ added in v1.2.4
type BackupFieldSchema struct {
Fields []BackupField `json:"fields"`
}
BackupFieldSchema defines model for BackupFieldSchema.
type BackupFieldType ¶ added in v1.2.4
type BackupFieldType string
BackupFieldType Hint for rendering provider config/credential form fields.
const ( Bool BackupFieldType = "bool" Password BackupFieldType = "password" Region BackupFieldType = "region" String BackupFieldType = "string" Url BackupFieldType = "url" )
Defines values for BackupFieldType.
func (BackupFieldType) Valid ¶ added in v1.2.4
func (e BackupFieldType) Valid() bool
Valid indicates whether the value is a known member of the BackupFieldType enum.
type BackupProvider ¶ added in v1.2.4
type BackupProvider struct {
ConfigSchema BackupFieldSchema `json:"configSchema"`
CredentialSchema BackupFieldSchema `json:"credentialSchema"`
Description *string `json:"description,omitempty"`
// DisplayName Example: Amazon S3 (and compatible)
DisplayName string `json:"displayName"`
// Name Example: s3
Name string `json:"name"`
}
BackupProvider defines model for BackupProvider.
type BackupRun ¶ added in v1.2.4
type BackupRun struct {
AircraftCount *int `json:"aircraftCount,omitempty"`
CompletedAt *time.Time `json:"completedAt,omitempty"`
CreatedAt time.Time `json:"createdAt"`
CredentialCount *int `json:"credentialCount,omitempty"`
DestinationId openapi_types.UUID `json:"destinationId"`
DurationMs *int `json:"durationMs,omitempty"`
ErrorMessage *string `json:"errorMessage,omitempty"`
FlightCount *int `json:"flightCount,omitempty"`
Id openapi_types.UUID `json:"id"`
LicenseCount *int `json:"licenseCount,omitempty"`
RemotePath *string `json:"remotePath,omitempty"`
Sha256 *string `json:"sha256,omitempty"`
SizeBytes *int64 `json:"sizeBytes,omitempty"`
StartedAt time.Time `json:"startedAt"`
Status BackupRunStatus `json:"status"`
Trigger *BackupRunTrigger `json:"trigger,omitempty"`
UserId openapi_types.UUID `json:"userId"`
}
BackupRun defines model for BackupRun.
type BackupRunStatus ¶ added in v1.2.4
type BackupRunStatus string
BackupRunStatus defines model for BackupRunStatus.
const ( BackupRunStatusFailed BackupRunStatus = "failed" BackupRunStatusSkipped BackupRunStatus = "skipped" BackupRunStatusSuccess BackupRunStatus = "success" )
Defines values for BackupRunStatus.
func (BackupRunStatus) Valid ¶ added in v1.2.4
func (e BackupRunStatus) Valid() bool
Valid indicates whether the value is a known member of the BackupRunStatus enum.
type BackupRunTrigger ¶ added in v1.2.4
type BackupRunTrigger string
BackupRunTrigger defines model for BackupRunTrigger.
const ( BackupRunTriggerManual BackupRunTrigger = "manual" BackupRunTriggerScheduled BackupRunTrigger = "scheduled" )
Defines values for BackupRunTrigger.
func (BackupRunTrigger) Valid ¶ added in v1.2.4
func (e BackupRunTrigger) Valid() bool
Valid indicates whether the value is a known member of the BackupRunTrigger enum.
type BackupSchedule ¶ added in v1.2.4
type BackupSchedule string
BackupSchedule Cadence at which scheduled runs fire (UTC). 'manual' disables scheduling.
const ( BackupScheduleDaily BackupSchedule = "daily" BackupScheduleManual BackupSchedule = "manual" BackupScheduleMonthly BackupSchedule = "monthly" BackupScheduleWeekly BackupSchedule = "weekly" )
Defines values for BackupSchedule.
func (BackupSchedule) Valid ¶ added in v1.2.4
func (e BackupSchedule) Valid() bool
Valid indicates whether the value is a known member of the BackupSchedule enum.
type BackupStatus ¶ added in v1.2.4
type BackupStatus string
BackupStatus Operational status of a destination. 'error' is set automatically after 3 consecutive run failures.
const ( BackupStatusActive BackupStatus = "active" BackupStatusError BackupStatus = "error" BackupStatusPaused BackupStatus = "paused" )
Defines values for BackupStatus.
func (BackupStatus) Valid ¶ added in v1.2.4
func (e BackupStatus) Valid() bool
Valid indicates whether the value is a known member of the BackupStatus enum.
type BackupTestResult ¶ added in v1.2.4
type BackupTestResult struct {
Message *string `json:"message,omitempty"`
Success bool `json:"success"`
}
BackupTestResult defines model for BackupTestResult.
type ChangePasswordJSONBody ¶
type ChangePasswordJSONBody struct {
// CurrentPassword The user's current password
CurrentPassword string `json:"currentPassword"`
// NewPassword The new password. 12–72 characters, containing at least one lowercase letter, one uppercase letter, one digit and one special character.
NewPassword string `json:"newPassword"`
}
ChangePasswordJSONBody defines parameters for ChangePassword.
type ChangePasswordJSONRequestBody ¶
type ChangePasswordJSONRequestBody ChangePasswordJSONBody
ChangePasswordJSONRequestBody defines body for ChangePassword for application/json ContentType.
type ClassRating ¶
type ClassRating struct {
// ClassType Aircraft class rating type:
// - SEP_LAND/SEP_SEA: Single Engine Piston (Land/Sea)
// - MEP_LAND/MEP_SEA: Multi Engine Piston (Land/Sea)
// - SET_LAND/SET_SEA: Single Engine Turboprop (Land/Sea)
// - TMG: Touring Motor Glider
// - IR: Instrument Rating
// - OTHER: Other rating type
ClassType ClassType `json:"classType"`
CreatedAt time.Time `json:"createdAt"`
// ExpiryDate Null if rating doesn't expire (e.g., FAA ratings)
//
// Example: 2026-03-15
ExpiryDate *openapi_types.Date `json:"expiryDate,omitempty"`
Id openapi_types.UUID `json:"id"`
// IssueDate Example: 2024-03-15
IssueDate openapi_types.Date `json:"issueDate"`
LicenseId openapi_types.UUID `json:"licenseId"`
// Notes Optional notes about this rating
Notes *string `json:"notes,omitempty"`
UpdatedAt time.Time `json:"updatedAt"`
}
ClassRating defines model for ClassRating.
type ClassRatingCreate ¶
type ClassRatingCreate struct {
// ClassType Aircraft class rating type:
// - SEP_LAND/SEP_SEA: Single Engine Piston (Land/Sea)
// - MEP_LAND/MEP_SEA: Multi Engine Piston (Land/Sea)
// - SET_LAND/SET_SEA: Single Engine Turboprop (Land/Sea)
// - TMG: Touring Motor Glider
// - IR: Instrument Rating
// - OTHER: Other rating type
ClassType ClassType `json:"classType"`
ExpiryDate *openapi_types.Date `json:"expiryDate,omitempty"`
IssueDate openapi_types.Date `json:"issueDate"`
Notes *string `json:"notes,omitempty"`
}
ClassRatingCreate defines model for ClassRatingCreate.
type ClassRatingCurrency ¶
type ClassRatingCurrency struct {
ClassRatingId openapi_types.UUID `json:"classRatingId"`
// ClassType Aircraft class rating type:
// - SEP_LAND/SEP_SEA: Single Engine Piston (Land/Sea)
// - MEP_LAND/MEP_SEA: Multi Engine Piston (Land/Sea)
// - SET_LAND/SET_SEA: Single Engine Turboprop (Land/Sea)
// - TMG: Touring Motor Glider
// - IR: Instrument Rating
// - OTHER: Other rating type
ClassType ClassType `json:"classType"`
// ExpiryDate Class rating expiry date
ExpiryDate *openapi_types.Date `json:"expiryDate,omitempty"`
// LaunchMethodCurrency SPL launch method currency per FCL.140.S(b)(1) — 5 launches per method in 24 months
LaunchMethodCurrency *[]LaunchMethodCurrency `json:"launchMethodCurrency,omitempty"`
LicenseId openapi_types.UUID `json:"licenseId"`
// LicenseType Type from the parent license
LicenseType *string `json:"licenseType,omitempty"`
// MessageKey Stable key identifying which statement is true, for client-side localisation. Catalogued in docs/CURRENCY_MESSAGES.md.
//
// Example: rating.revalidation_current
MessageKey *string `json:"messageKey,omitempty"`
// MessageParams Variable parts of a localised message that are not already fields on the enclosing object. Which fields are present is determined by messageKey; see docs/CURRENCY_MESSAGES.md for the per-key contract.
MessageParams *MessageParams `json:"messageParams,omitempty"`
// Progress Progress metrics toward currency requirements (authority-specific)
Progress *struct {
// Approaches Number of instrument approaches in the evaluation period
Approaches *int `json:"approaches,omitempty"`
DayLandings *int `json:"dayLandings,omitempty"`
// Flights Number of flights in class in the evaluation period
Flights *int `json:"flights,omitempty"`
// Holds Number of holding procedures in the evaluation period
Holds *int `json:"holds,omitempty"`
// IfrMinutes IFR time in minutes in the evaluation period
IfrMinutes *int `json:"ifrMinutes,omitempty"`
// InstructorMinutes Time with instructor (dual received) in minutes in the evaluation period
InstructorMinutes *int `json:"instructorMinutes,omitempty"`
// Landings Total landings in class in the evaluation period
Landings *int `json:"landings,omitempty"`
NightLandings *int `json:"nightLandings,omitempty"`
// NightMinutes Night time in minutes in the evaluation period
NightMinutes *int `json:"nightMinutes,omitempty"`
// PicMinutes PIC time in class in minutes in the evaluation period
PicMinutes *int `json:"picMinutes,omitempty"`
// RequiredLandings Required landings for currency
RequiredLandings *int `json:"requiredLandings,omitempty"`
// RequiredMinutes Required time in minutes for currency (authority-specific)
RequiredMinutes *int `json:"requiredMinutes,omitempty"`
// TotalMinutes Total time in class in minutes in the evaluation period
TotalMinutes *int `json:"totalMinutes,omitempty"`
} `json:"progress,omitempty"`
// RegulatoryAuthority Authority from the parent license (determines which currency rules apply)
RegulatoryAuthority string `json:"regulatoryAuthority"`
// Requirements Per-requirement breakdown showing progress toward each currency requirement
Requirements *[]CurrencyRequirement `json:"requirements,omitempty"`
// RuleDescription Regulatory reference for the rule that was applied
RuleDescription *string `json:"ruleDescription,omitempty"`
// RuleDescriptionKey Stable key for the applied rule, for client-side localisation of ruleDescription
//
// Example: easa_sep_tmg
RuleDescriptionKey *string `json:"ruleDescriptionKey,omitempty"`
// Status Currency status:
// - current: All requirements met
// - expiring: Rating expiry approaching (within 90 days)
// - expired: Rating has expired or currency requirements not met
// - unknown: Authority not supported for auto-calculation
Status ClassRatingCurrencyStatus `json:"status"`
// WindowOpen Only meaningful when `windowOpensAt` is set. True if the
// revalidation experience window is currently open
// (now >= windowOpensAt). When false, flight experience accrued
// today does not yet count toward this rating's revalidation, so
// `requirements` is omitted and `status` stays `current` until the
// window opens.
WindowOpen *bool `json:"windowOpen,omitempty"`
// WindowOpensAt For ratings whose experience window is anchored to expiry (EASA
// FCL.740.A SEP/TMG/MEP/SET and FCL.625.A IR), the date on which
// the 12-month experience-counting window opens (expiry − 12
// months). Omitted for rolling-window rules (LAPL FCL.140.A,
// SPL FCL.140.S) and for expiry-only ratings.
WindowOpensAt *openapi_types.Date `json:"windowOpensAt,omitempty"`
}
ClassRatingCurrency defines model for ClassRatingCurrency.
type ClassRatingCurrencyStatus ¶
type ClassRatingCurrencyStatus string
ClassRatingCurrencyStatus Currency status: - current: All requirements met - expiring: Rating expiry approaching (within 90 days) - expired: Rating has expired or currency requirements not met - unknown: Authority not supported for auto-calculation
const ( ClassRatingCurrencyStatusCurrent ClassRatingCurrencyStatus = "current" ClassRatingCurrencyStatusExpired ClassRatingCurrencyStatus = "expired" ClassRatingCurrencyStatusExpiring ClassRatingCurrencyStatus = "expiring" ClassRatingCurrencyStatusUnknown ClassRatingCurrencyStatus = "unknown" )
Defines values for ClassRatingCurrencyStatus.
func (ClassRatingCurrencyStatus) Valid ¶ added in v1.1.0
func (e ClassRatingCurrencyStatus) Valid() bool
Valid indicates whether the value is a known member of the ClassRatingCurrencyStatus enum.
type ClassRatingUpdate ¶
type ClassRatingUpdate struct {
ExpiryDate nullable.Nullable[openapi_types.Date] `json:"expiryDate,omitempty"`
IssueDate *openapi_types.Date `json:"issueDate,omitempty"`
Notes nullable.Nullable[string] `json:"notes,omitempty"`
}
ClassRatingUpdate defines model for ClassRatingUpdate.
type ClassType ¶
type ClassType string
ClassType Aircraft class rating type: - SEP_LAND/SEP_SEA: Single Engine Piston (Land/Sea) - MEP_LAND/MEP_SEA: Multi Engine Piston (Land/Sea) - SET_LAND/SET_SEA: Single Engine Turboprop (Land/Sea) - TMG: Touring Motor Glider - IR: Instrument Rating - OTHER: Other rating type
const ( ClassTypeIR ClassType = "IR" ClassTypeMEPLAND ClassType = "MEP_LAND" ClassTypeMEPSEA ClassType = "MEP_SEA" ClassTypeOTHER ClassType = "OTHER" ClassTypeSEPLAND ClassType = "SEP_LAND" ClassTypeSEPSEA ClassType = "SEP_SEA" ClassTypeSETLAND ClassType = "SET_LAND" ClassTypeSETSEA ClassType = "SET_SEA" ClassTypeTMG ClassType = "TMG" )
Defines values for ClassType.
type CompletePublicSignatureJSONRequestBody ¶ added in v1.2.9
type CompletePublicSignatureJSONRequestBody = CompleteSignatureRequest
CompletePublicSignatureJSONRequestBody defines body for CompletePublicSignature for application/json ContentType.
type CompleteSignatureRequest ¶ added in v1.2.9
type CompleteSignatureRequest struct {
CredentialNumber *string `json:"credentialNumber,omitempty"`
// SignatureImage PNG-encoded signature image, base64. Max 500KB decoded.
SignatureImage []byte `json:"signatureImage"`
SignerName string `json:"signerName"`
}
CompleteSignatureRequest defines model for CompleteSignatureRequest.
type ConfirmImportJSONRequestBody ¶
type ConfirmImportJSONRequestBody = ImportConfirmRequest
ConfirmImportJSONRequestBody defines body for ConfirmImport for application/json ContentType.
type Contact ¶
type Contact struct {
CreatedAt time.Time `json:"createdAt"`
Email *openapi_types.Email `json:"email,omitempty"`
Id openapi_types.UUID `json:"id"`
// Name Example: John Smith
Name string `json:"name"`
Notes *string `json:"notes,omitempty"`
Phone *string `json:"phone,omitempty"`
UpdatedAt time.Time `json:"updatedAt"`
UserId openapi_types.UUID `json:"userId"`
}
Contact defines model for Contact.
type ContactCreate ¶
type ContactCreate struct {
Email *openapi_types.Email `json:"email,omitempty"`
// Name Example: John Smith
Name string `json:"name"`
Notes *string `json:"notes,omitempty"`
Phone *string `json:"phone,omitempty"`
}
ContactCreate defines model for ContactCreate.
type CreateAircraftJSONRequestBody ¶
type CreateAircraftJSONRequestBody = AircraftCreate
CreateAircraftJSONRequestBody defines body for CreateAircraft for application/json ContentType.
type CreateAnnouncementJSONBody ¶
type CreateAnnouncementJSONBody struct {
// ExpiresAt Auto-expire the announcement at this time (optional)
ExpiresAt *time.Time `json:"expiresAt,omitempty"`
// Message Example: Scheduled maintenance on Tuesday 8pm-10pm UTC
Message string `json:"message"`
// Severity Example: warning
Severity CreateAnnouncementJSONBodySeverity `json:"severity"`
}
CreateAnnouncementJSONBody defines parameters for CreateAnnouncement.
type CreateAnnouncementJSONBodySeverity ¶
type CreateAnnouncementJSONBodySeverity string
CreateAnnouncementJSONBodySeverity defines parameters for CreateAnnouncement.
const ( CreateAnnouncementJSONBodySeverityCritical CreateAnnouncementJSONBodySeverity = "critical" CreateAnnouncementJSONBodySeverityInfo CreateAnnouncementJSONBodySeverity = "info" CreateAnnouncementJSONBodySeveritySuccess CreateAnnouncementJSONBodySeverity = "success" CreateAnnouncementJSONBodySeverityWarning CreateAnnouncementJSONBodySeverity = "warning" )
Defines values for CreateAnnouncementJSONBodySeverity.
func (CreateAnnouncementJSONBodySeverity) Valid ¶ added in v1.1.0
func (e CreateAnnouncementJSONBodySeverity) Valid() bool
Valid indicates whether the value is a known member of the CreateAnnouncementJSONBodySeverity enum.
type CreateAnnouncementJSONRequestBody ¶
type CreateAnnouncementJSONRequestBody CreateAnnouncementJSONBody
CreateAnnouncementJSONRequestBody defines body for CreateAnnouncement for application/json ContentType.
type CreateBackupDestinationJSONRequestBody ¶ added in v1.2.4
type CreateBackupDestinationJSONRequestBody = BackupDestinationCreate
CreateBackupDestinationJSONRequestBody defines body for CreateBackupDestination for application/json ContentType.
type CreateClassRatingJSONRequestBody ¶
type CreateClassRatingJSONRequestBody = ClassRatingCreate
CreateClassRatingJSONRequestBody defines body for CreateClassRating for application/json ContentType.
type CreateContactJSONRequestBody ¶
type CreateContactJSONRequestBody = ContactCreate
CreateContactJSONRequestBody defines body for CreateContact for application/json ContentType.
type CreateCredentialJSONRequestBody ¶
type CreateCredentialJSONRequestBody = CredentialCreate
CreateCredentialJSONRequestBody defines body for CreateCredential for application/json ContentType.
type CreateCustomCurrencyRuleJSONRequestBody ¶ added in v1.3.7
type CreateCustomCurrencyRuleJSONRequestBody = CustomCurrencyRuleInput
CreateCustomCurrencyRuleJSONRequestBody defines body for CreateCustomCurrencyRule for application/json ContentType.
type CreateFlightJSONRequestBody ¶
type CreateFlightJSONRequestBody = FlightCreate
CreateFlightJSONRequestBody defines body for CreateFlight for application/json ContentType.
type CreateLicenseJSONRequestBody ¶
type CreateLicenseJSONRequestBody = LicenseCreate
CreateLicenseJSONRequestBody defines body for CreateLicense for application/json ContentType.
type CreateLiveSignatureRequest ¶ added in v1.2.9
type CreateLiveSignatureRequest struct {
// CredentialNumber e.g. CFI certificate number
CredentialNumber *string `json:"credentialNumber,omitempty"`
// SignatureImage PNG-encoded signature image, base64. Max 500KB decoded.
SignatureImage []byte `json:"signatureImage"`
// SignerName Example: Jane Instructor
SignerName string `json:"signerName"`
}
CreateLiveSignatureRequest defines model for CreateLiveSignatureRequest.
type CreateSignatureRequestJSONRequestBody ¶ added in v1.2.9
type CreateSignatureRequestJSONRequestBody = CreateSignatureRequestRequest
CreateSignatureRequestJSONRequestBody defines body for CreateSignatureRequest for application/json ContentType.
type CreateSignatureRequestRequest ¶ added in v1.2.9
type CreateSignatureRequestRequest struct {
// ExpiresInHours Clamped server-side to [1, 720] hours (30 days max). Defaults to 168 (7 days).
ExpiresInHours *int `json:"expiresInHours,omitempty"`
// InstructorEmail If supplied, the request email is sent immediately. Omit to create a pending-and-unsent request.
InstructorEmail *openapi_types.Email `json:"instructorEmail,omitempty"`
}
CreateSignatureRequestRequest defines model for CreateSignatureRequestRequest.
type Credential ¶
type Credential struct {
CreatedAt time.Time `json:"createdAt"`
// CredentialNumber Official credential number/reference
//
// Example: MED-2026-001
CredentialNumber *string `json:"credentialNumber,omitempty"`
// CredentialType Credential type:
// - EASA_CLASS1_MEDICAL: EASA Class 1 Medical Certificate
// - EASA_CLASS2_MEDICAL: EASA Class 2 Medical Certificate
// - EASA_LAPL_MEDICAL: EASA LAPL Medical Certificate
// - FAA_CLASS1_MEDICAL: FAA First-Class Medical Certificate
// - FAA_CLASS2_MEDICAL: FAA Second-Class Medical Certificate
// - FAA_CLASS3_MEDICAL: FAA Third-Class Medical Certificate
// - LANG_ICAO_LEVEL4: Language Proficiency ICAO Level 4
// - LANG_ICAO_LEVEL5: Language Proficiency ICAO Level 5
// - LANG_ICAO_LEVEL6: Language Proficiency ICAO Level 6 (Expert)
// - SEC_CLEARANCE_ZUP: Security Clearance ZÜP (Germany)
// - SEC_CLEARANCE_ZUBB: Security Clearance ZüBB (Germany)
// - RADIO_BZF2: Beschränktes Sprechfunkzeugnis II (Germany, VFR, German only)
// - RADIO_BZF1: Beschränktes Sprechfunkzeugnis I (Germany, VFR, German and English)
// - RADIO_AZF: Allgemeines Sprechfunkzeugnis (Germany, VFR and IFR)
// - OTHER: Other credential
CredentialType CredentialType `json:"credentialType"`
// ExpiryDate Null if credential doesn't expire
//
// Example: 2027-01-15
ExpiryDate *openapi_types.Date `json:"expiryDate,omitempty"`
Id openapi_types.UUID `json:"id"`
// IssueDate Example: 2026-01-15
IssueDate openapi_types.Date `json:"issueDate"`
// IssuingAuthority Authority or examiner that issued the credential
//
// Example: EASA AME
IssuingAuthority string `json:"issuingAuthority"`
// Notes Example: Annual renewal required
Notes *string `json:"notes,omitempty"`
UpdatedAt time.Time `json:"updatedAt"`
UserId openapi_types.UUID `json:"userId"`
}
Credential defines model for Credential.
type CredentialCreate ¶
type CredentialCreate struct {
CredentialNumber *string `json:"credentialNumber,omitempty"`
// CredentialType Credential type:
// - EASA_CLASS1_MEDICAL: EASA Class 1 Medical Certificate
// - EASA_CLASS2_MEDICAL: EASA Class 2 Medical Certificate
// - EASA_LAPL_MEDICAL: EASA LAPL Medical Certificate
// - FAA_CLASS1_MEDICAL: FAA First-Class Medical Certificate
// - FAA_CLASS2_MEDICAL: FAA Second-Class Medical Certificate
// - FAA_CLASS3_MEDICAL: FAA Third-Class Medical Certificate
// - LANG_ICAO_LEVEL4: Language Proficiency ICAO Level 4
// - LANG_ICAO_LEVEL5: Language Proficiency ICAO Level 5
// - LANG_ICAO_LEVEL6: Language Proficiency ICAO Level 6 (Expert)
// - SEC_CLEARANCE_ZUP: Security Clearance ZÜP (Germany)
// - SEC_CLEARANCE_ZUBB: Security Clearance ZüBB (Germany)
// - RADIO_BZF2: Beschränktes Sprechfunkzeugnis II (Germany, VFR, German only)
// - RADIO_BZF1: Beschränktes Sprechfunkzeugnis I (Germany, VFR, German and English)
// - RADIO_AZF: Allgemeines Sprechfunkzeugnis (Germany, VFR and IFR)
// - OTHER: Other credential
CredentialType CredentialType `json:"credentialType"`
// ExpiryDate Must be after issueDate when provided
ExpiryDate *openapi_types.Date `json:"expiryDate,omitempty"`
IssueDate openapi_types.Date `json:"issueDate"`
IssuingAuthority string `json:"issuingAuthority"`
Notes *string `json:"notes,omitempty"`
}
CredentialCreate defines model for CredentialCreate.
type CredentialId ¶
type CredentialId = openapi_types.UUID
CredentialId Example: 880e8400-e29b-41d4-a716-446655440003
type CredentialType ¶
type CredentialType string
CredentialType Credential type: - EASA_CLASS1_MEDICAL: EASA Class 1 Medical Certificate - EASA_CLASS2_MEDICAL: EASA Class 2 Medical Certificate - EASA_LAPL_MEDICAL: EASA LAPL Medical Certificate - FAA_CLASS1_MEDICAL: FAA First-Class Medical Certificate - FAA_CLASS2_MEDICAL: FAA Second-Class Medical Certificate - FAA_CLASS3_MEDICAL: FAA Third-Class Medical Certificate - LANG_ICAO_LEVEL4: Language Proficiency ICAO Level 4 - LANG_ICAO_LEVEL5: Language Proficiency ICAO Level 5 - LANG_ICAO_LEVEL6: Language Proficiency ICAO Level 6 (Expert) - SEC_CLEARANCE_ZUP: Security Clearance ZÜP (Germany) - SEC_CLEARANCE_ZUBB: Security Clearance ZüBB (Germany) - RADIO_BZF2: Beschränktes Sprechfunkzeugnis II (Germany, VFR, German only) - RADIO_BZF1: Beschränktes Sprechfunkzeugnis I (Germany, VFR, German and English) - RADIO_AZF: Allgemeines Sprechfunkzeugnis (Germany, VFR and IFR) - OTHER: Other credential
const ( CredentialTypeEASACLASS1MEDICAL CredentialType = "EASA_CLASS1_MEDICAL" CredentialTypeEASACLASS2MEDICAL CredentialType = "EASA_CLASS2_MEDICAL" CredentialTypeEASALAPLMEDICAL CredentialType = "EASA_LAPL_MEDICAL" CredentialTypeFAACLASS1MEDICAL CredentialType = "FAA_CLASS1_MEDICAL" CredentialTypeFAACLASS2MEDICAL CredentialType = "FAA_CLASS2_MEDICAL" CredentialTypeFAACLASS3MEDICAL CredentialType = "FAA_CLASS3_MEDICAL" CredentialTypeLANGICAOLEVEL4 CredentialType = "LANG_ICAO_LEVEL4" CredentialTypeLANGICAOLEVEL5 CredentialType = "LANG_ICAO_LEVEL5" CredentialTypeLANGICAOLEVEL6 CredentialType = "LANG_ICAO_LEVEL6" CredentialTypeOTHER CredentialType = "OTHER" CredentialTypeRADIOAZF CredentialType = "RADIO_AZF" CredentialTypeRADIOBZF1 CredentialType = "RADIO_BZF1" CredentialTypeRADIOBZF2 CredentialType = "RADIO_BZF2" CredentialTypeSECCLEARANCEZUBB CredentialType = "SEC_CLEARANCE_ZUBB" CredentialTypeSECCLEARANCEZUP CredentialType = "SEC_CLEARANCE_ZUP" )
Defines values for CredentialType.
func (CredentialType) Valid ¶ added in v1.1.0
func (e CredentialType) Valid() bool
Valid indicates whether the value is a known member of the CredentialType enum.
type CredentialUpdate ¶
type CredentialUpdate struct {
CredentialNumber nullable.Nullable[string] `json:"credentialNumber,omitempty"`
// CredentialType Credential type:
// - EASA_CLASS1_MEDICAL: EASA Class 1 Medical Certificate
// - EASA_CLASS2_MEDICAL: EASA Class 2 Medical Certificate
// - EASA_LAPL_MEDICAL: EASA LAPL Medical Certificate
// - FAA_CLASS1_MEDICAL: FAA First-Class Medical Certificate
// - FAA_CLASS2_MEDICAL: FAA Second-Class Medical Certificate
// - FAA_CLASS3_MEDICAL: FAA Third-Class Medical Certificate
// - LANG_ICAO_LEVEL4: Language Proficiency ICAO Level 4
// - LANG_ICAO_LEVEL5: Language Proficiency ICAO Level 5
// - LANG_ICAO_LEVEL6: Language Proficiency ICAO Level 6 (Expert)
// - SEC_CLEARANCE_ZUP: Security Clearance ZÜP (Germany)
// - SEC_CLEARANCE_ZUBB: Security Clearance ZüBB (Germany)
// - RADIO_BZF2: Beschränktes Sprechfunkzeugnis II (Germany, VFR, German only)
// - RADIO_BZF1: Beschränktes Sprechfunkzeugnis I (Germany, VFR, German and English)
// - RADIO_AZF: Allgemeines Sprechfunkzeugnis (Germany, VFR and IFR)
// - OTHER: Other credential
CredentialType *CredentialType `json:"credentialType,omitempty"`
// ExpiryDate Must be after issueDate when provided
ExpiryDate nullable.Nullable[openapi_types.Date] `json:"expiryDate,omitempty"`
IssueDate *openapi_types.Date `json:"issueDate,omitempty"`
IssuingAuthority *string `json:"issuingAuthority,omitempty"`
Notes nullable.Nullable[string] `json:"notes,omitempty"`
}
CredentialUpdate defines model for CredentialUpdate.
type CrewRole ¶
type CrewRole string
CrewRole Role of a person on board a flight
type Currency ¶
type Currency struct {
// DaysCurrent Day currency status
//
// Example: true
DaysCurrent bool `json:"daysCurrent"`
// ExpiryDate License expiry date if applicable
//
// Example: 2025-01-15
ExpiryDate *openapi_types.Date `json:"expiryDate,omitempty"`
// IsCurrent Overall currency status
//
// Example: true
IsCurrent bool `json:"isCurrent"`
Last90Days struct {
// DayLandings Day landings in last 90 days
//
// Example: 12
DayLandings int `json:"dayLandings"`
// Flights Number of flights in last 90 days
//
// Example: 8
Flights int `json:"flights"`
// NightLandings Night landings in last 90 days
//
// Example: 3
NightLandings int `json:"nightLandings"`
// TotalLandings Total landings in last 90 days
//
// Example: 15
TotalLandings int `json:"totalLandings"`
} `json:"last90Days"`
// LicenseId Example: 660e8400-e29b-41d4-a716-446655440001
LicenseId openapi_types.UUID `json:"licenseId"`
// NightsCurrent Night currency status (FAA requires separate tracking)
//
// Example: false
NightsCurrent bool `json:"nightsCurrent"`
RequiredLandings *struct {
// Day Required day landings for currency
//
// Example: 3
Day int `json:"day"`
// Night Required night landings for night currency
//
// Example: 3
Night int `json:"night"`
} `json:"requiredLandings,omitempty"`
}
Currency defines model for Currency.
type CurrencyRequirement ¶
type CurrencyRequirement struct {
// Current Current progress value
Current float32 `json:"current"`
// MessageKey Stable key for the progress text. `requirement.progress` (the common case) is rendered by the client from current/required/unit.
//
// Example: requirement.progress
MessageKey string `json:"messageKey"`
// MessageParams Variable parts of a localised message that are not already fields on the enclosing object. Which fields are present is determined by messageKey; see docs/CURRENCY_MESSAGES.md for the per-key contract.
MessageParams *MessageParams `json:"messageParams,omitempty"`
// Met Whether this requirement is currently satisfied
Met bool `json:"met"`
// Name Author-supplied requirement name. Present only for custom currency rules, where the name is user data; regulatory requirements carry nameKey instead.
Name *string `json:"name,omitempty"`
// NameKey Stable key for the requirement name, for client-side localisation. Absent on custom currency rules, where `name` is user data and must be rendered as-is.
//
// Example: requirement.refresher_training
NameKey *string `json:"nameKey,omitempty"`
// Required Required value to meet this requirement
Required float32 `json:"required"`
// Unit Unit of measurement (e.g., "landings", "hours", "flights")
Unit string `json:"unit"`
}
CurrencyRequirement defines model for CurrencyRequirement.
type CurrencyStatusResponse ¶
type CurrencyStatusResponse struct {
FlightReview *FlightReviewStatus `json:"flightReview,omitempty"`
// PassengerCurrency Tier 2: Passenger currency — determines whether the pilot can carry passengers (rolling from now, separate from rating validity)
PassengerCurrency []PassengerCurrency `json:"passengerCurrency"`
// Ratings Tier 1: Rating/license currency — determines whether the pilot can fly at all in each class
Ratings []ClassRatingCurrency `json:"ratings"`
}
CurrencyStatusResponse defines model for CurrencyStatusResponse.
type CustomCurrencyEnabledRequest ¶ added in v1.3.7
type CustomCurrencyEnabledRequest struct {
Enabled bool `json:"enabled"`
}
CustomCurrencyEnabledRequest defines model for CustomCurrencyEnabledRequest.
type CustomCurrencyEvaluation ¶ added in v1.3.7
type CustomCurrencyEvaluation struct {
EvaluatedAt time.Time `json:"evaluatedAt"`
// ExpiresOn The last date the rule stays current assuming no further flights. Set only when the rule is currently met and a lapse date is computable.
ExpiresOn *openapi_types.Date `json:"expiresOn,omitempty"`
Requirements []CurrencyRequirement `json:"requirements"`
Status CustomCurrencyEvaluationStatus `json:"status"`
// WindowLabel Example: last 90 days
WindowLabel string `json:"windowLabel"`
}
CustomCurrencyEvaluation The result of evaluating a rule definition against the caller's flights.
type CustomCurrencyEvaluationStatus ¶ added in v1.3.7
type CustomCurrencyEvaluationStatus string
CustomCurrencyEvaluationStatus defines model for CustomCurrencyEvaluation.Status.
const ( CustomCurrencyEvaluationStatusCurrent CustomCurrencyEvaluationStatus = "current" CustomCurrencyEvaluationStatusExpired CustomCurrencyEvaluationStatus = "expired" CustomCurrencyEvaluationStatusExpiring CustomCurrencyEvaluationStatus = "expiring" CustomCurrencyEvaluationStatusUnknown CustomCurrencyEvaluationStatus = "unknown" )
Defines values for CustomCurrencyEvaluationStatus.
func (CustomCurrencyEvaluationStatus) Valid ¶ added in v1.3.7
func (e CustomCurrencyEvaluationStatus) Valid() bool
Valid indicates whether the value is a known member of the CustomCurrencyEvaluationStatus enum.
type CustomCurrencyFilter ¶ added in v1.3.7
type CustomCurrencyFilter struct {
// Field Example: aircraft_class
Field CustomCurrencyFilterField `json:"field"`
// Op Example: eq
Op CustomCurrencyFilterOp `json:"op"`
// Value The value to match when `op` is `eq`
//
// Example: SEP_LAND
Value *string `json:"value,omitempty"`
// Values The values to match when `op` is `in`
Values *[]string `json:"values,omitempty"`
}
CustomCurrencyFilter Narrows the set of flights a rule counts. `op` determines how `value`/`values` are read: `eq` matches one value, `in` matches any of `values`, and `is_true` tests a boolean or derived field and ignores both. Filters combine with logical AND.
type CustomCurrencyFilterField ¶ added in v1.3.7
type CustomCurrencyFilterField string
CustomCurrencyFilterField Example: aircraft_class
const ( CustomCurrencyFilterFieldAircraftClass CustomCurrencyFilterField = "aircraft_class" CustomCurrencyFilterFieldAircraftComplex CustomCurrencyFilterField = "aircraft_complex" CustomCurrencyFilterFieldAircraftHighPerformance CustomCurrencyFilterField = "aircraft_high_performance" CustomCurrencyFilterFieldAircraftRegistration CustomCurrencyFilterField = "aircraft_registration" CustomCurrencyFilterFieldAircraftTailwheel CustomCurrencyFilterField = "aircraft_tailwheel" CustomCurrencyFilterFieldAircraftType CustomCurrencyFilterField = "aircraft_type" CustomCurrencyFilterFieldHasIfr CustomCurrencyFilterField = "has_ifr" CustomCurrencyFilterFieldHasNight CustomCurrencyFilterField = "has_night" CustomCurrencyFilterFieldIsCrossCountry CustomCurrencyFilterField = "is_cross_country" CustomCurrencyFilterFieldIsDual CustomCurrencyFilterField = "is_dual" CustomCurrencyFilterFieldIsPic CustomCurrencyFilterField = "is_pic" CustomCurrencyFilterFieldLaunchMethod CustomCurrencyFilterField = "launch_method" )
Defines values for CustomCurrencyFilterField.
func (CustomCurrencyFilterField) Valid ¶ added in v1.3.7
func (e CustomCurrencyFilterField) Valid() bool
Valid indicates whether the value is a known member of the CustomCurrencyFilterField enum.
type CustomCurrencyFilterOp ¶ added in v1.3.7
type CustomCurrencyFilterOp string
CustomCurrencyFilterOp Example: eq
const ( Eq CustomCurrencyFilterOp = "eq" In CustomCurrencyFilterOp = "in" IsTrue CustomCurrencyFilterOp = "is_true" )
Defines values for CustomCurrencyFilterOp.
func (CustomCurrencyFilterOp) Valid ¶ added in v1.3.7
func (e CustomCurrencyFilterOp) Valid() bool
Valid indicates whether the value is a known member of the CustomCurrencyFilterOp enum.
type CustomCurrencyNotifyRequest ¶ added in v1.3.7
type CustomCurrencyNotifyRequest struct {
Notify bool `json:"notify"`
}
CustomCurrencyNotifyRequest defines model for CustomCurrencyNotifyRequest.
type CustomCurrencyPreviewRequest ¶ added in v1.3.7
type CustomCurrencyPreviewRequest struct {
// Definition The declarative rule document: a lookback window, filters selecting which flights count, and requirements measured against the aggregated flight metrics.
Definition CustomCurrencyRuleBody `json:"definition"`
}
CustomCurrencyPreviewRequest defines model for CustomCurrencyPreviewRequest.
type CustomCurrencyRule ¶ added in v1.3.7
type CustomCurrencyRule struct {
CreatedAt time.Time `json:"createdAt"`
// Definition The declarative rule document: a lookback window, filters selecting which flights count, and requirements measured against the aggregated flight metrics.
Definition CustomCurrencyRuleBody `json:"definition"`
Description *string `json:"description,omitempty"`
// Emoji Example: 🌙
Emoji *string `json:"emoji,omitempty"`
// Enabled A paused rule is kept and listed but not evaluated.
Enabled bool `json:"enabled"`
Id openapi_types.UUID `json:"id"`
// ImportedFrom The source rule this one was imported from, when applicable.
ImportedFrom *openapi_types.UUID `json:"importedFrom,omitempty"`
// Name Example: Night landings
Name string `json:"name"`
// Notify Per-rule opt-in to expiry and lapse notification emails.
Notify bool `json:"notify"`
// ShareToken Present once sharing has been enabled at least once.
UpdatedAt time.Time `json:"updatedAt"`
UserId openapi_types.UUID `json:"userId"`
}
CustomCurrencyRule A stored, user-authored currency definition. Rules are private by default; enabling sharing exposes a read-only copy at a share token that other users can import.
type CustomCurrencyRuleBody ¶ added in v1.3.7
type CustomCurrencyRuleBody struct {
Filters *[]CustomCurrencyFilter `json:"filters,omitempty"`
Requirements []CustomCurrencyThreshold `json:"requirements"`
// Window Rolling lookback anchored at the moment of evaluation: only flights on or after (now − amount × unit) count.
Window CustomCurrencyWindow `json:"window"`
}
CustomCurrencyRuleBody The declarative rule document: a lookback window, filters selecting which flights count, and requirements measured against the aggregated flight metrics.
type CustomCurrencyRuleId ¶ added in v1.3.7
type CustomCurrencyRuleId = openapi_types.UUID
CustomCurrencyRuleId Example: 880e8400-e29b-41d4-a716-446655440003
type CustomCurrencyRuleInput ¶ added in v1.3.7
type CustomCurrencyRuleInput struct {
// Definition The declarative rule document: a lookback window, filters selecting which flights count, and requirements measured against the aggregated flight metrics.
Definition CustomCurrencyRuleBody `json:"definition"`
Description *string `json:"description,omitempty"`
// Emoji Example: 🌙
Emoji *string `json:"emoji,omitempty"`
// Name Example: Night landings
Name string `json:"name"`
}
CustomCurrencyRuleInput Writable fields of a custom currency rule.
type CustomCurrencyRuleWithStatus ¶ added in v1.3.7
type CustomCurrencyRuleWithStatus struct {
// Evaluation The result of evaluating a rule definition against the caller's flights.
Evaluation CustomCurrencyEvaluation `json:"evaluation"`
// Rule A stored, user-authored currency definition. Rules are private by default; enabling sharing exposes a read-only copy at a share token that other users can import.
Rule CustomCurrencyRule `json:"rule"`
}
CustomCurrencyRuleWithStatus A stored rule bundled with its current evaluation — the rule carries the definition for editing, the evaluation carries status and progress for display.
type CustomCurrencyShareToken ¶ added in v1.3.7
type CustomCurrencyShareToken = string
CustomCurrencyShareToken defines model for CustomCurrencyShareToken.
type CustomCurrencyThreshold ¶ added in v1.3.7
type CustomCurrencyThreshold struct {
// Label Optional display label for this requirement
//
// Example: 3 landings in 90 days
Label *string `json:"label,omitempty"`
// Metric Time metrics (`unit` applies): `total_time`, `pic_time`,
// `picus_time`, `spic_time`, `examiner_time`, `relief_time`,
// `dual_time`, `night_time`, `ifr_time`, `cross_country_time`.
// Count metrics (`unit` ignored): `flights`, `landings`,
// `day_landings`, `night_landings`, `takeoffs`, `day_takeoffs`,
// `night_takeoffs`, `approaches`, `holds`.
//
//
// Example: landings
Metric CustomCurrencyThresholdMetric `json:"metric"`
// Min The threshold the metric must reach
//
// Example: 3
Min float64 `json:"min"`
// Unit How `min` is expressed, for time metrics only. Defaults to hours. Rejected on count metrics.
Unit *CustomCurrencyThresholdUnit `json:"unit,omitempty"`
}
CustomCurrencyThreshold A single "at least N" threshold on an aggregated metric over the filtered, windowed flight set. Requirements combine with logical AND.
type CustomCurrencyThresholdMetric ¶ added in v1.3.7
type CustomCurrencyThresholdMetric string
CustomCurrencyThresholdMetric Time metrics (`unit` applies): `total_time`, `pic_time`, `picus_time`, `spic_time`, `examiner_time`, `relief_time`, `dual_time`, `night_time`, `ifr_time`, `cross_country_time`. Count metrics (`unit` ignored): `flights`, `landings`, `day_landings`, `night_landings`, `takeoffs`, `day_takeoffs`, `night_takeoffs`, `approaches`, `holds`.
Example: landings
const ( CustomCurrencyThresholdMetricApproaches CustomCurrencyThresholdMetric = "approaches" CustomCurrencyThresholdMetricCrossCountryTime CustomCurrencyThresholdMetric = "cross_country_time" CustomCurrencyThresholdMetricDayLandings CustomCurrencyThresholdMetric = "day_landings" CustomCurrencyThresholdMetricDayTakeoffs CustomCurrencyThresholdMetric = "day_takeoffs" CustomCurrencyThresholdMetricDualTime CustomCurrencyThresholdMetric = "dual_time" CustomCurrencyThresholdMetricExaminerTime CustomCurrencyThresholdMetric = "examiner_time" CustomCurrencyThresholdMetricFlights CustomCurrencyThresholdMetric = "flights" CustomCurrencyThresholdMetricHolds CustomCurrencyThresholdMetric = "holds" CustomCurrencyThresholdMetricIfrTime CustomCurrencyThresholdMetric = "ifr_time" CustomCurrencyThresholdMetricLandings CustomCurrencyThresholdMetric = "landings" CustomCurrencyThresholdMetricNightLandings CustomCurrencyThresholdMetric = "night_landings" CustomCurrencyThresholdMetricNightTakeoffs CustomCurrencyThresholdMetric = "night_takeoffs" CustomCurrencyThresholdMetricNightTime CustomCurrencyThresholdMetric = "night_time" CustomCurrencyThresholdMetricPicTime CustomCurrencyThresholdMetric = "pic_time" CustomCurrencyThresholdMetricPicusTime CustomCurrencyThresholdMetric = "picus_time" CustomCurrencyThresholdMetricReliefTime CustomCurrencyThresholdMetric = "relief_time" CustomCurrencyThresholdMetricSpicTime CustomCurrencyThresholdMetric = "spic_time" CustomCurrencyThresholdMetricTakeoffs CustomCurrencyThresholdMetric = "takeoffs" CustomCurrencyThresholdMetricTotalTime CustomCurrencyThresholdMetric = "total_time" )
Defines values for CustomCurrencyThresholdMetric.
func (CustomCurrencyThresholdMetric) Valid ¶ added in v1.3.7
func (e CustomCurrencyThresholdMetric) Valid() bool
Valid indicates whether the value is a known member of the CustomCurrencyThresholdMetric enum.
type CustomCurrencyThresholdUnit ¶ added in v1.3.7
type CustomCurrencyThresholdUnit string
CustomCurrencyThresholdUnit How `min` is expressed, for time metrics only. Defaults to hours. Rejected on count metrics.
const ( Hours CustomCurrencyThresholdUnit = "hours" Minutes CustomCurrencyThresholdUnit = "minutes" )
Defines values for CustomCurrencyThresholdUnit.
func (CustomCurrencyThresholdUnit) Valid ¶ added in v1.3.7
func (e CustomCurrencyThresholdUnit) Valid() bool
Valid indicates whether the value is a known member of the CustomCurrencyThresholdUnit enum.
type CustomCurrencyWindow ¶ added in v1.3.7
type CustomCurrencyWindow struct {
// Amount Example: 90
Amount int `json:"amount"`
// Unit Example: days
Unit CustomCurrencyWindowUnit `json:"unit"`
}
CustomCurrencyWindow Rolling lookback anchored at the moment of evaluation: only flights on or after (now − amount × unit) count.
type CustomCurrencyWindowUnit ¶ added in v1.3.7
type CustomCurrencyWindowUnit string
CustomCurrencyWindowUnit Example: days
const ( Days CustomCurrencyWindowUnit = "days" Months CustomCurrencyWindowUnit = "months" Weeks CustomCurrencyWindowUnit = "weeks" Years CustomCurrencyWindowUnit = "years" )
Defines values for CustomCurrencyWindowUnit.
func (CustomCurrencyWindowUnit) Valid ¶ added in v1.3.7
func (e CustomCurrencyWindowUnit) Valid() bool
Valid indicates whether the value is a known member of the CustomCurrencyWindowUnit enum.
type DeleteCurrentUserJSONBody ¶
type DeleteCurrentUserJSONBody struct {
// ConfirmEmail The account's own email address, typed as confirmation. Required in OIDC mode, where no local password exists.
ConfirmEmail *openapi_types.Email `json:"confirmEmail,omitempty"`
// Password Current password for confirmation (local mode)
Password *string `json:"password,omitempty"`
}
DeleteCurrentUserJSONBody defines parameters for DeleteCurrentUser.
type DeleteCurrentUserJSONRequestBody ¶
type DeleteCurrentUserJSONRequestBody DeleteCurrentUserJSONBody
DeleteCurrentUserJSONRequestBody defines body for DeleteCurrentUser for application/json ContentType.
type Deletion ¶ added in v1.3.2
type Deletion struct {
// DeletedAt When the record was deleted
//
// Example: 2026-08-05T11:12:13.456789Z
DeletedAt time.Time `json:"deletedAt"`
// Entity Which collection the deleted record belonged to
//
// Example: flight
Entity DeletionEntity `json:"entity"`
// Id Id of the deleted record, as it was reported by the list endpoints
//
// Example: 660e8400-e29b-41d4-a716-446655440001
Id openapi_types.UUID `json:"id"`
}
Deletion defines model for Deletion.
type DeletionEntity ¶ added in v1.3.2
type DeletionEntity string
DeletionEntity Which collection the deleted record belonged to
Example: flight
const ( DeletionEntityAircraft DeletionEntity = "aircraft" DeletionEntityContact DeletionEntity = "contact" DeletionEntityCredential DeletionEntity = "credential" DeletionEntityFlight DeletionEntity = "flight" DeletionEntityLicense DeletionEntity = "license" )
Defines values for DeletionEntity.
func (DeletionEntity) Valid ¶ added in v1.3.2
func (e DeletionEntity) Valid() bool
Valid indicates whether the value is a known member of the DeletionEntity enum.
type DeletionFeed ¶ added in v1.3.2
type DeletionFeed struct {
// Data Deletions after the watermark, oldest first
Data []Deletion `json:"data"`
Pagination struct {
// Page Current page (1-indexed)
//
// Example: 1
Page int `json:"page"`
// PageSize Items per page
//
// Example: 100
PageSize int `json:"pageSize"`
// Total Total number of deletions after the watermark
//
// Example: 3
Total int `json:"total"`
// TotalPages Total number of pages
//
// Example: 1
TotalPages int `json:"totalPages"`
} `json:"pagination"`
// RetentionDays How long a tombstone is kept before it is swept
//
// Example: 90
RetentionDays int `json:"retentionDays"`
// WatermarkExpired True when `since` predates the retention horizon. Tombstones older than that may already have been swept, so this page is not a complete account of what was deleted and the client must fall back to a full ID-set reconciliation.
//
// Example: false
WatermarkExpired bool `json:"watermarkExpired"`
}
DeletionFeed defines model for DeletionFeed.
type Disable2FAJSONBody ¶
type Disable2FAJSONBody struct {
Password string `json:"password"`
}
Disable2FAJSONBody defines parameters for Disable2FA.
type Disable2FAJSONRequestBody ¶
type Disable2FAJSONRequestBody Disable2FAJSONBody
Disable2FAJSONRequestBody defines body for Disable2FA for application/json ContentType.
type DocumentFile ¶ added in v1.3.2
type DocumentFile struct {
// ByteSize Size of the stored image in bytes
//
// Example: 1843200
ByteSize int `json:"byteSize"`
// Caption Example: Front page
Caption *string `json:"caption,omitempty"`
// ContentType Determined from the stored bytes, not from what the uploader declared
ContentType DocumentFileContentType `json:"contentType"`
CreatedAt time.Time `json:"createdAt"`
// CredentialId Set when the image belongs to a credential; null otherwise
CredentialId *openapi_types.UUID `json:"credentialId,omitempty"`
// Filename Original filename, sanitized to a basename. Display only.
//
// Example: licence-front.jpg
Filename *string `json:"filename,omitempty"`
// Height Pixel height; null for formats without intrinsic dimensions, such as PDF
//
// Example: 1536
Height *int `json:"height,omitempty"`
Id openapi_types.UUID `json:"id"`
// LicenseId Set when the image belongs to a licence; null otherwise
LicenseId *openapi_types.UUID `json:"licenseId,omitempty"`
UpdatedAt time.Time `json:"updatedAt"`
// Width Pixel width; null for formats without intrinsic dimensions, such as PDF
//
// Example: 2048
Width *int `json:"width,omitempty"`
}
DocumentFile Metadata for one reference photo attached to a licence or credential. The bytes themselves are never inlined — fetch them from the image's own authenticated URL.
type DocumentFileContentType ¶ added in v1.3.2
type DocumentFileContentType string
DocumentFileContentType Determined from the stored bytes, not from what the uploader declared
const ( Applicationpdf DocumentFileContentType = "application/pdf" Imagejpeg DocumentFileContentType = "image/jpeg" Imagepng DocumentFileContentType = "image/png" )
Defines values for DocumentFileContentType.
func (DocumentFileContentType) Valid ¶ added in v1.3.2
func (e DocumentFileContentType) Valid() bool
Valid indicates whether the value is a known member of the DocumentFileContentType enum.
type DocumentFileId ¶ added in v1.3.2
type DocumentFileId = openapi_types.UUID
DocumentFileId Example: aa0e8400-e29b-41d4-a716-446655440009
type DocumentFileLimitReached ¶ added in v1.3.2
type DocumentFileLimitReached = Error
DocumentFileLimitReached defines model for DocumentFileLimitReached.
type DocumentFileUpload ¶ added in v1.3.2
type DocumentFileUpload struct {
// Caption Optional short label shown with the image
Caption *string `json:"caption,omitempty"`
// File JPEG, PNG or PDF, at most 5 MB
File openapi_types.File `json:"file"`
}
DocumentFileUpload defines model for DocumentFileUpload.
type DocumentFilesDisabled ¶ added in v1.3.2
type DocumentFilesDisabled = Error
DocumentFilesDisabled defines model for DocumentFilesDisabled.
type EmailDeliveryEvent ¶ added in v1.3.2
type EmailDeliveryEvent struct {
CreatedAt time.Time `json:"createdAt"`
// Detail Server reply text or internal reason, for operators.
Detail *string `json:"detail,omitempty"`
// EmailType What the message was for, e.g. verify_email, verification_reminder.
EmailType string `json:"emailType"`
Id openapi_types.UUID `json:"id"`
Recipient openapi_types.Email `json:"recipient"`
// SmtpCode SMTP reply code, absent when there was no conversation.
SmtpCode *int `json:"smtpCode,omitempty"`
// Status What the SMTP conversation said. `delivered` means the receiving
// server accepted the message — not that it reached an inbox, which an
// SMTP client cannot observe. `hard_bounce` is a permanent refusal of
// the recipient itself and is the only status that suppresses an
// address; `rejected` and `server_error` blame the message or our own
// mail setup and never do.
Status EmailDeliveryEventStatus `json:"status"`
// UserId Account the address belonged to when sent, if any.
UserId *openapi_types.UUID `json:"userId,omitempty"`
}
EmailDeliveryEvent defines model for EmailDeliveryEvent.
type EmailDeliveryEventStatus ¶ added in v1.3.2
type EmailDeliveryEventStatus string
EmailDeliveryEventStatus What the SMTP conversation said. `delivered` means the receiving server accepted the message — not that it reached an inbox, which an SMTP client cannot observe. `hard_bounce` is a permanent refusal of the recipient itself and is the only status that suppresses an address; `rejected` and `server_error` blame the message or our own mail setup and never do.
const ( Delivered EmailDeliveryEventStatus = "delivered" DryRun EmailDeliveryEventStatus = "dry_run" HardBounce EmailDeliveryEventStatus = "hard_bounce" InvalidAddress EmailDeliveryEventStatus = "invalid_address" Rejected EmailDeliveryEventStatus = "rejected" ServerError EmailDeliveryEventStatus = "server_error" SoftBounce EmailDeliveryEventStatus = "soft_bounce" Suppressed EmailDeliveryEventStatus = "suppressed" )
Defines values for EmailDeliveryEventStatus.
func (EmailDeliveryEventStatus) Valid ¶ added in v1.3.2
func (e EmailDeliveryEventStatus) Valid() bool
Valid indicates whether the value is a known member of the EmailDeliveryEventStatus enum.
type EmailSuppression ¶ added in v1.3.2
type EmailSuppression struct {
BounceCount int `json:"bounceCount"`
Detail *string `json:"detail,omitempty"`
Email openapi_types.Email `json:"email"`
FirstBouncedAt time.Time `json:"firstBouncedAt"`
LastBouncedAt time.Time `json:"lastBouncedAt"`
// Reason Delivery status that caused the suppression.
Reason string `json:"reason"`
SmtpCode *int `json:"smtpCode,omitempty"`
}
EmailSuppression defines model for EmailSuppression.
type Error ¶
type Error struct {
// Code Optional machine-readable error code, used by clients to distinguish
// between conditions that share an HTTP status (e.g. `email_not_verified`
// vs `account_disabled` for 403 on /auth/login).
//
//
// Example: email_not_verified
Code *string `json:"code,omitempty"`
// Details Detailed validation errors
Details *[]struct {
// Field Example: totalTime
Field *string `json:"field,omitempty"`
// Message Example: Must be greater than 0
Message *string `json:"message,omitempty"`
} `json:"details,omitempty"`
// Error Error message
//
// Example: Validation failed
Error string `json:"error"`
}
Error defines model for Error.
type ExchangeOidcCodeJSONBody ¶ added in v1.3.2
type ExchangeOidcCodeJSONBody struct {
// Code The single-use code from the `oidc_code` query parameter
Code string `json:"code"`
}
ExchangeOidcCodeJSONBody defines parameters for ExchangeOidcCode.
type ExchangeOidcCodeJSONRequestBody ¶ added in v1.3.2
type ExchangeOidcCodeJSONRequestBody ExchangeOidcCodeJSONBody
ExchangeOidcCodeJSONRequestBody defines body for ExchangeOidcCode for application/json ContentType.
type ExportFlightsCSVParams ¶
type ExportFlightsCSVParams struct {
// Format CSV column format — easa, faa, or standard (ForeFlight-compatible default)
Format *ExportFlightsCSVParamsFormat `form:"format,omitempty" json:"format,omitempty"`
}
ExportFlightsCSVParams defines parameters for ExportFlightsCSV.
type ExportFlightsCSVParamsFormat ¶
type ExportFlightsCSVParamsFormat string
ExportFlightsCSVParamsFormat defines parameters for ExportFlightsCSV.
const ( ExportFlightsCSVParamsFormatEasa ExportFlightsCSVParamsFormat = "easa" ExportFlightsCSVParamsFormatFaa ExportFlightsCSVParamsFormat = "faa" ExportFlightsCSVParamsFormatStandard ExportFlightsCSVParamsFormat = "standard" )
Defines values for ExportFlightsCSVParamsFormat.
func (ExportFlightsCSVParamsFormat) Valid ¶ added in v1.1.0
func (e ExportFlightsCSVParamsFormat) Valid() bool
Valid indicates whether the value is a known member of the ExportFlightsCSVParamsFormat enum.
type ExportFlightsPDFParams ¶
type ExportFlightsPDFParams struct {
// LogbookLicenseId Filter flights for a specific logbook license
LogbookLicenseId *openapi_types.UUID `form:"logbookLicenseId,omitempty" json:"logbookLicenseId,omitempty"`
// Format PDF format — easa (AMC1 FCL.050 columns), faa (14 CFR § 61.51 / ASA-Jeppesen columns), or summary (simplified totals)
Format *ExportFlightsPDFParamsFormat `form:"format,omitempty" json:"format,omitempty"`
// PageSize Page size for the generated PDF. All sizes are rendered in landscape orientation.
PageSize *ExportFlightsPDFParamsPageSize `form:"page_size,omitempty" json:"page_size,omitempty"`
// Layout Page layout. `spread` (default) lays the logbook out as a book-style two-page spread (left + right facing pages) intended for double-sided printing, in any page size; intentionally-blank filler pages (one at the start, one before the totals summary) keep each spread on facing pages when printed duplex. `single` renders all columns on one landscape page per batch of flights — designed for single-page A4 landscape printing. Ignored for the summary format.
Layout *ExportFlightsPDFParamsLayout `form:"layout,omitempty" json:"layout,omitempty"`
// RowsPerPage Number of flight rows per logbook page. When set, the row height — and, for dense layouts, the body font — scales dynamically so the rows fill the page: fewer rows give an airier, larger-print logbook, more rows a denser one. Values are clamped to what stays legible on the chosen page size; omitted, the row count is derived from the page size's default row height. Ignored for the summary format.
RowsPerPage *int `form:"rows_per_page,omitempty" json:"rows_per_page,omitempty"`
}
ExportFlightsPDFParams defines parameters for ExportFlightsPDF.
type ExportFlightsPDFParamsFormat ¶
type ExportFlightsPDFParamsFormat string
ExportFlightsPDFParamsFormat defines parameters for ExportFlightsPDF.
const ( ExportFlightsPDFParamsFormatEasa ExportFlightsPDFParamsFormat = "easa" ExportFlightsPDFParamsFormatFaa ExportFlightsPDFParamsFormat = "faa" ExportFlightsPDFParamsFormatSummary ExportFlightsPDFParamsFormat = "summary" )
Defines values for ExportFlightsPDFParamsFormat.
func (ExportFlightsPDFParamsFormat) Valid ¶ added in v1.1.0
func (e ExportFlightsPDFParamsFormat) Valid() bool
Valid indicates whether the value is a known member of the ExportFlightsPDFParamsFormat enum.
type ExportFlightsPDFParamsLayout ¶ added in v1.3.3
type ExportFlightsPDFParamsLayout string
ExportFlightsPDFParamsLayout defines parameters for ExportFlightsPDF.
const ( Single ExportFlightsPDFParamsLayout = "single" Spread ExportFlightsPDFParamsLayout = "spread" )
Defines values for ExportFlightsPDFParamsLayout.
func (ExportFlightsPDFParamsLayout) Valid ¶ added in v1.3.3
func (e ExportFlightsPDFParamsLayout) Valid() bool
Valid indicates whether the value is a known member of the ExportFlightsPDFParamsLayout enum.
type ExportFlightsPDFParamsPageSize ¶ added in v1.2.1
type ExportFlightsPDFParamsPageSize string
ExportFlightsPDFParamsPageSize defines parameters for ExportFlightsPDF.
const ( A4 ExportFlightsPDFParamsPageSize = "a4" A5 ExportFlightsPDFParamsPageSize = "a5" Letter ExportFlightsPDFParamsPageSize = "letter" )
Defines values for ExportFlightsPDFParamsPageSize.
func (ExportFlightsPDFParamsPageSize) Valid ¶ added in v1.2.1
func (e ExportFlightsPDFParamsPageSize) Valid() bool
Valid indicates whether the value is a known member of the ExportFlightsPDFParamsPageSize enum.
type Features ¶ added in v1.3.2
type Features struct {
DocumentFiles struct {
// AllowedContentTypes Example: ["image/jpeg","image/png","application/pdf"]
AllowedContentTypes []string `json:"allowedContentTypes"`
// Enabled When false, every /files endpoint answers 403 — uploads and downloads alike
Enabled bool `json:"enabled"`
// MaxBytes Maximum size of a single image in bytes
//
// Example: 5242880
MaxBytes int `json:"maxBytes"`
// MaxPerDocument Maximum number of files per licence or credential
//
// Example: 5
MaxPerDocument int `json:"maxPerDocument"`
} `json:"documentFiles"`
}
Features Optional features an operator can switch off at deploy time, with the limits a client needs in order to validate before uploading.
type Flight ¶
type Flight struct {
// ActualInstrumentTime Actual instrument flight time in minutes (under IMC or simulated IMC with view-limiting device)
//
// Example: 30
ActualInstrumentTime *int `json:"actualInstrumentTime,omitempty"`
// AircraftReg Aircraft registration
//
// Example: D-EFGH
AircraftReg string `json:"aircraftReg"`
// AircraftType Aircraft type
//
// Example: C172
AircraftType string `json:"aircraftType"`
// AllLandings Total landings (day + night). Auto-calculated by the server.
//
// Example: 4
AllLandings int `json:"allLandings"`
// Approaches Structured instrument approach details (FAA §61.51(g)(3)) — type, airport, and runway for each approach
Approaches *[]ApproachEntry `json:"approaches,omitempty"`
// ApproachesCount Number of instrument approaches performed
//
// Example: 2
ApproachesCount *int `json:"approachesCount,omitempty"`
// ArrivalAirportName Airport name resolved live from the airport database for display. Not stored with the flight. Null when arrivalIcao does not resolve against the airport database (e.g. a free-text off-airport site).
//
// Example: Hamburg Airport
ArrivalAirportName *string `json:"arrivalAirportName,omitempty"`
// ArrivalIcao Arrival location — an ICAO code (resolved to coordinates for maps/distance) or a free-text place name for off-airport sites
//
// Example: EDDH
ArrivalIcao *string `json:"arrivalIcao,omitempty"`
// ArrivalTime Landing time in UTC. Marks the end of airborne/flight time.
//
// Example: 16:45:00
ArrivalTime *string `json:"arrivalTime,omitempty"`
// CreatedAt Example: 2026-01-30T16:00:00Z
CreatedAt time.Time `json:"createdAt"`
// CrewMembers People on board this flight with their roles
CrewMembers *[]FlightCrewMember `json:"crewMembers,omitempty"`
// CrossCountryTime Cross-country time in minutes. Auto-calculated when departure ≠ arrival.
//
// Example: 150
CrossCountryTime int `json:"crossCountryTime"`
// Date Example: 2026-01-30
Date openapi_types.Date `json:"date"`
// DepartureAirportName Airport name resolved live from the airport database for display. Not stored with the flight. Null when departureIcao does not resolve against the airport database (e.g. a free-text off-airport site).
//
// Example: Frankfurt am Main Airport
DepartureAirportName *string `json:"departureAirportName,omitempty"`
// DepartureIcao Departure location — an ICAO code (resolved to coordinates for maps/distance) or a free-text place name for off-airport sites
//
// Example: EDDF
DepartureIcao *string `json:"departureIcao,omitempty"`
// DepartureTime Takeoff time in UTC. Marks the beginning of airborne/flight time.
//
// Example: 14:30:00
DepartureTime *string `json:"departureTime,omitempty"`
// Distance Distance in nautical miles. Auto-calculated from airport coordinates.
//
// Example: 185.3
Distance float32 `json:"distance"`
// DualGivenTime Dual instruction given time in minutes. Auto-calculated when user acts as instructor.
//
// Example: 0
DualGivenTime *int `json:"dualGivenTime,omitempty"`
// DualTime Dual instruction block time in minutes (computed from isDual and totalTime)
//
// Example: 0
DualTime int `json:"dualTime"`
// Endorsements Instructor endorsements, skill test references, examiner notes. EASA AMC1 FCL.050 Col 24 / FAA §61.51(h). Separate from pilot remarks.
//
// Example: Skill test passed
Endorsements *string `json:"endorsements,omitempty"`
// ExaminerTime Time conducting a check as examiner, in minutes. Overlays the pilot function time like dualGivenTime; bounded by totalTime only.
//
// Example: 0
ExaminerTime *int `json:"examinerTime,omitempty"`
// FstdType FSTD type designation (e.g., "FNPT II", "FFS A320", "FTD Level 5", "BATD", "AATD"). Required by EASA AMC1 FCL.050 Col 22 and FAA §61.51(b)(1)(iv).
//
// Example: FNPT II
FstdType *string `json:"fstdType,omitempty"`
// GroundTrainingTime Ground training time in minutes
//
// Example: 0
GroundTrainingTime *int `json:"groundTrainingTime,omitempty"`
// Holds Number of holding procedures performed
//
// Example: 1
Holds *int `json:"holds,omitempty"`
// Id Example: 770e8400-e29b-41d4-a716-446655440002
Id openapi_types.UUID `json:"id"`
// IfrTime Instrument block time in minutes
//
// Example: 60
IfrTime int `json:"ifrTime"`
// InstructorComments Instructor comments about the flight
InstructorComments *string `json:"instructorComments,omitempty"`
// InstructorName Name of the instructor for this flight
InstructorName *string `json:"instructorName,omitempty"`
// IsDual Whether this flight was logged as dual instruction received. Mutually exclusive with isPic.
//
// Example: false
IsDual bool `json:"isDual"`
// IsFlightReview Whether this flight was a Flight Review (FAA 61.56) or equivalent
//
// Example: false
IsFlightReview *bool `json:"isFlightReview,omitempty"`
// IsIpc Whether this flight included an Instrument Proficiency Check (IPC)
//
// Example: false
IsIpc *bool `json:"isIpc,omitempty"`
// IsPassenger True when the user was carried on this flight rather than crewing it.
// Derived on save: another person is pilot-in-command and the operation
// carries no co-pilot seat the user may occupy — the aircraft is not
// certificated for a minimum crew of two, the user is not a required
// safety pilot, and no co-pilot seat was declared. The row keeps its
// route and block times as the record of the trip and carries zero in
// every flight-time column, contributing to no total, statistic or
// currency calculation.
//
//
// Example: false
IsPassenger bool `json:"isPassenger"`
// IsPic Whether this flight was logged as pilot-in-command. Mutually exclusive with isDual.
//
// Example: true
IsPic bool `json:"isPic"`
// IsProficiencyCheck Whether this flight was a Proficiency Check (EASA FCL.740.A MEP/SET, FCL.625.A IR, or FAA §61.58)
//
// Example: false
IsProficiencyCheck *bool `json:"isProficiencyCheck,omitempty"`
// IsSimulator True when this entry is an FSTD (simulator) session rather than a flight.
// A session carries its duration in simulatedFlightTime and zero in every
// flight-time column — totalTime, picTime, dualTime, sicTime, dualGivenTime,
// multiPilotTime, soloTime, crossCountryTime, nightTime and ifrTime — and
// contributes to no flight total, statistic or currency calculation
// (EASA AMC1 FCL.050: session time is recorded separately and is never
// summed with flight time).
//
//
// Example: false
IsSimulator bool `json:"isSimulator"`
// LandingsDay Number of day landings. Auto-calculated from sunset/sunrise at arrival airport.
//
// Example: 3
LandingsDay int `json:"landingsDay"`
// LandingsNight Number of night landings. Auto-calculated from sunset/sunrise at arrival airport.
//
// Example: 1
LandingsNight int `json:"landingsNight"`
// LaunchMethod Launch method for glider/SPL flights (winch, aerotow, or self-launch)
//
// Example: winch
LaunchMethod *FlightLaunchMethod `json:"launchMethod,omitempty"`
// MultiPilotTime Multi-pilot time in minutes (EASA AMC1 FCL.050 Col 10). Time operated on multi-pilot aircraft.
//
// Example: 0
MultiPilotTime *int `json:"multiPilotTime,omitempty"`
// NightTime Night block time in minutes. Auto-calculated from departure/arrival times and airport sunset/sunrise data.
//
// Example: 30
NightTime int `json:"nightTime"`
// OffBlockTime Off-block time (chocks off / engine start) in UTC. Marks the beginning of block time per EASA FCL.010 / FAA 14 CFR 1.1.
//
// Example: 14:15:00
OffBlockTime *string `json:"offBlockTime,omitempty"`
// OnBlockTime On-block time (chocks on / engine shutdown) in UTC. Marks the end of block time per EASA FCL.010 / FAA 14 CFR 1.1.
//
// Example: 16:55:00
OnBlockTime *string `json:"onBlockTime,omitempty"`
// PicName Name of the pilot-in-command for this flight (EASA AMC1 FCL.050 Col 12). Auto-set to "Self" when isPic=true, or to instructorName when isDual=true.
//
// Example: Self
PicName *string `json:"picName,omitempty"`
// PicTime Pilot-in-command block time in minutes (computed from isPic and totalTime)
//
// Example: 150
PicTime int `json:"picTime"`
// PicusTime PIC under supervision (PICUS) time in minutes (EASA FCL.030, Part-FCL). Declared by the pilot, never auto-calculated; carved out of the derived function time. Counts toward PIC experience requirements (e.g. unfreezing an ATPL) but is kept distinct from PIC and SIC time.
//
// Example: 0
PicusTime *int `json:"picusTime,omitempty"`
// ReliefTime Cruise relief co-pilot time in minutes (augmented crew). Declared by the pilot, never auto-calculated; carved out of the derived function time.
//
// Example: 0
ReliefTime *int `json:"reliefTime,omitempty"`
// Remarks Free text notes
//
// Example: Training flight - touch and go practice
Remarks *string `json:"remarks,omitempty"`
// Route Route waypoints as comma-separated ICAO codes for VFR/IFR flight plans
//
// Example: EDDF,EDDS,EDDM
Route *string `json:"route,omitempty"`
// SicTime Second-in-command time in minutes. Auto-calculated when SIC crew role assigned.
//
// Example: 0
SicTime *int `json:"sicTime,omitempty"`
// SignatureId Present iff the flight is locked by a completed, non-voided
// instructor signature. Void the signature (see
// /flights/{flightId}/signatures/{signatureId}/void) to unlock it
// for editing.
SignatureId *openapi_types.UUID `json:"signatureId,omitempty"`
// SimulatedFlightTime Simulated flight time in minutes (FTD/FSTD)
//
// Example: 0
SimulatedFlightTime *int `json:"simulatedFlightTime,omitempty"`
// SimulatedInstrumentTime Simulated instrument time in minutes (FSTD/FTD/ATD)
//
// Example: 18
SimulatedInstrumentTime *int `json:"simulatedInstrumentTime,omitempty"`
// SoloTime Solo time in minutes. Auto-calculated when no crew and not dual instruction.
//
// Example: 90
SoloTime int `json:"soloTime"`
// SpicTime Student pilot-in-command (SPIC) time in minutes (EASA integrated course). Declared by the pilot, never auto-calculated; carved out of the derived function time.
//
// Example: 0
SpicTime *int `json:"spicTime,omitempty"`
// TakeoffsDay Number of day takeoffs. Auto-calculated from sunset/sunrise at departure airport unless overridden.
//
// Example: 3
TakeoffsDay int `json:"takeoffsDay"`
// TakeoffsNight Number of night takeoffs. Auto-calculated from sunset/sunrise at departure airport unless overridden.
//
// Example: 1
TakeoffsNight int `json:"takeoffsNight"`
// TotalTime Total block time in minutes (off-block to on-block)
//
// Example: 150
TotalTime int `json:"totalTime"`
// UpdatedAt Example: 2026-01-30T16:00:00Z
UpdatedAt time.Time `json:"updatedAt"`
// UserId Example: 550e8400-e29b-41d4-a716-446655440000
UserId openapi_types.UUID `json:"userId"`
}
Flight defines model for Flight.
type FlightAnalytics ¶ added in v1.3.1
type FlightAnalytics struct {
// ApproachTypes Instrument approaches flown, grouped by approach type.
ApproachTypes []AnalyticsApproachTypeRow `json:"approachTypes"`
// Baseline Present when the user's initial-hours snapshot was added to `totals`.
// The snapshot is applied whenever the timeframe reaches back to the
// baseline date (always for all time), so the Reports totals match the
// dashboard statistics. It contributes to `totals` only — per-month,
// per-aircraft and per-airport breakdowns cannot attribute it.
Baseline *StatisticsBaselineContribution `json:"baseline,omitempty"`
ByAircraftType []AnalyticsAircraftRow `json:"byAircraftType"`
ByAirport []AnalyticsAirportRow `json:"byAirport"`
// ByCategory Aircraft categories (tailwheel, complex, high performance). A flight can appear in more than one category.
ByCategory []AnalyticsGroupRow `json:"byCategory"`
ByClass []AnalyticsGroupRow `json:"byClass"`
ByCountry []AnalyticsCountryRow `json:"byCountry"`
// ByCrew Time flown alongside each logged crew member — one row per person,
// not per role. Crew entries linked to the same contact are one
// person; unlinked entries fold by trimmed, case-insensitive name.
ByCrew []AnalyticsPersonRow `json:"byCrew"`
// ByInstructor Dual received, grouped by the instructor named on the flight.
ByInstructor []AnalyticsPersonRow `json:"byInstructor"`
ByRegistration []AnalyticsAircraftRow `json:"byRegistration"`
ByRoute []AnalyticsRouteRow `json:"byRoute"`
// DayOfWeek Always seven entries, Monday (1) through Sunday (7), including days with no flights.
DayOfWeek []AnalyticsBucketRow `json:"dayOfWeek"`
// DurationBuckets Flight-length histogram. Buckets are fixed - under 30m, 30–60m, 1–2h, 2–3h, 3–5h, over 5h.
DurationBuckets []AnalyticsBucketRow `json:"durationBuckets"`
// HourOfDay Always 24 entries, 00–23 UTC, keyed by off-block time (falling back to take-off time). Flights with neither time recorded are omitted.
HourOfDay []AnalyticsBucketRow `json:"hourOfDay"`
// MonthOfYear Always twelve entries, January (1) through December (12), including months with no flights.
MonthOfYear []AnalyticsBucketRow `json:"monthOfYear"`
// Monthly One entry per calendar month in the timeframe that has at least one flight, oldest first.
Monthly []AnalyticsMonthPoint `json:"monthly"`
Range AnalyticsRange `json:"range"`
Records AnalyticsRecords `json:"records"`
// Totals Aggregated totals for the timeframe. When the user has an initial-hours
// snapshot that the timeframe reaches back to, its carried-forward totals
// are included here and reported separately in `FlightAnalytics.baseline`.
Totals AnalyticsTotals `json:"totals"`
// Yearly One entry per calendar year in the timeframe that has at least one flight, oldest first.
Yearly []AnalyticsYearPoint `json:"yearly"`
}
FlightAnalytics defines model for FlightAnalytics.
type FlightBaseline ¶ added in v1.2.3
type FlightBaseline struct {
// BaselineDate Cutoff date the snapshot covers (inclusive).
BaselineDate openapi_types.Date `json:"baselineDate"`
CreatedAt *time.Time `json:"createdAt,omitempty"`
CrossCountryMinutes *int `json:"crossCountryMinutes,omitempty"`
DualGivenMinutes *int `json:"dualGivenMinutes,omitempty"`
// DualMinutes Dual instruction received in minutes
DualMinutes *int `json:"dualMinutes,omitempty"`
// ExaminerMinutes Carried-forward examiner time in minutes
ExaminerMinutes *int `json:"examinerMinutes,omitempty"`
// IfrMinutes Total IFR / instrument time in minutes
IfrMinutes *int `json:"ifrMinutes,omitempty"`
LandingsDay *int `json:"landingsDay,omitempty"`
LandingsNight *int `json:"landingsNight,omitempty"`
MultiPilotMinutes *int `json:"multiPilotMinutes,omitempty"`
NightMinutes *int `json:"nightMinutes,omitempty"`
// Notes Optional free-form context (e.g. "From paper logbook 1998-2010").
Notes *string `json:"notes,omitempty"`
PicMinutes *int `json:"picMinutes,omitempty"`
// PicusMinutes Carried-forward PIC under supervision (PICUS) time in minutes
PicusMinutes *int `json:"picusMinutes,omitempty"`
// ReliefMinutes Carried-forward cruise relief co-pilot time in minutes
ReliefMinutes *int `json:"reliefMinutes,omitempty"`
SicMinutes *int `json:"sicMinutes,omitempty"`
SoloMinutes *int `json:"soloMinutes,omitempty"`
// SpicMinutes Carried-forward student pilot-in-command (SPIC) time in minutes
SpicMinutes *int `json:"spicMinutes,omitempty"`
TotalFlights *int `json:"totalFlights,omitempty"`
// TotalMinutes Total block time in minutes
TotalMinutes *int `json:"totalMinutes,omitempty"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}
FlightBaseline defines model for FlightBaseline.
type FlightBaselineInput ¶ added in v1.2.3
type FlightBaselineInput struct {
// BaselineDate Cutoff date the snapshot covers (inclusive).
BaselineDate openapi_types.Date `json:"baselineDate"`
CrossCountryMinutes *int `json:"crossCountryMinutes,omitempty"`
DualGivenMinutes *int `json:"dualGivenMinutes,omitempty"`
// DualMinutes Dual instruction received in minutes
DualMinutes *int `json:"dualMinutes,omitempty"`
// ExaminerMinutes Carried-forward examiner time in minutes
ExaminerMinutes *int `json:"examinerMinutes,omitempty"`
// IfrMinutes Total IFR / instrument time in minutes
IfrMinutes *int `json:"ifrMinutes,omitempty"`
LandingsDay *int `json:"landingsDay,omitempty"`
LandingsNight *int `json:"landingsNight,omitempty"`
MultiPilotMinutes *int `json:"multiPilotMinutes,omitempty"`
NightMinutes *int `json:"nightMinutes,omitempty"`
// Notes Optional free-form context (e.g. "From paper logbook 1998-2010").
Notes *string `json:"notes,omitempty"`
PicMinutes *int `json:"picMinutes,omitempty"`
// PicusMinutes Carried-forward PIC under supervision (PICUS) time in minutes
PicusMinutes *int `json:"picusMinutes,omitempty"`
// ReliefMinutes Carried-forward cruise relief co-pilot time in minutes
ReliefMinutes *int `json:"reliefMinutes,omitempty"`
SicMinutes *int `json:"sicMinutes,omitempty"`
SoloMinutes *int `json:"soloMinutes,omitempty"`
// SpicMinutes Carried-forward student pilot-in-command (SPIC) time in minutes
SpicMinutes *int `json:"spicMinutes,omitempty"`
TotalFlights *int `json:"totalFlights,omitempty"`
// TotalMinutes Total block time in minutes
TotalMinutes *int `json:"totalMinutes,omitempty"`
}
FlightBaselineInput Initial-hours snapshot input. Allows a user to record their pre-existing flying experience as a single carried-forward total without entering every historical flight. All numeric fields default to 0 when omitted.
type FlightCreate ¶
type FlightCreate struct {
// ActualInstrumentTime Actual instrument (IMC) time in minutes. Always 0 for an FSTD session.
ActualInstrumentTime *int `json:"actualInstrumentTime,omitempty"`
// AircraftReg Aircraft registration. Required for a flight, rejected for an FSTD session.
//
// Example: D-EFGH
AircraftReg *string `json:"aircraftReg,omitempty"`
// AircraftType Aircraft type. For an FSTD session, the aircraft type the device represents.
//
// Example: C172
AircraftType string `json:"aircraftType"`
// AllLandings Total landings (day + night). Auto-calculated by the server.
AllLandings *int `json:"allLandings,omitempty"`
// Approaches Structured instrument approach details
Approaches *[]ApproachEntryInput `json:"approaches,omitempty"`
ApproachesCount *int `json:"approachesCount,omitempty"`
// ArrivalIcao Arrival location — an ICAO code (resolved to coordinates for maps/distance) or a free-text place name for off-airport sites. Required for a flight, rejected for an FSTD session.
//
// Example: EDDH
ArrivalIcao *string `json:"arrivalIcao,omitempty"`
// ArrivalTime Landing time in UTC
//
// Example: 16:45:00
ArrivalTime *string `json:"arrivalTime,omitempty"`
// CrewMembers People on board this flight
CrewMembers *[]FlightCrewMemberInput `json:"crewMembers,omitempty"`
// CrossCountryTime Cross-country time in minutes. Auto-calculated by the server.
CrossCountryTime *int `json:"crossCountryTime,omitempty"`
// Date Example: 2026-01-30
Date openapi_types.Date `json:"date"`
// DepartureIcao Departure location — an ICAO code (resolved to coordinates for maps/distance) or a free-text place name for off-airport sites. Required for a flight, rejected for an FSTD session.
//
// Example: EDDF
DepartureIcao *string `json:"departureIcao,omitempty"`
// DepartureTime Takeoff time in UTC
//
// Example: 14:30:00
DepartureTime *string `json:"departureTime,omitempty"`
// Distance Distance in nautical miles. Auto-calculated by the server.
Distance *float32 `json:"distance,omitempty"`
DualGivenTime *int `json:"dualGivenTime,omitempty"`
// DualTime Dual instruction time in minutes. Computed by server — equals totalTime when isDual is true, 0 otherwise.
//
// Example: 0
DualTime *int `json:"dualTime,omitempty"`
// Endorsements Instructor endorsements, skill test references
Endorsements *string `json:"endorsements,omitempty"`
// ExaminerTime Time conducting a check as examiner, in minutes. Overlays function time; bounded by totalTime.
ExaminerTime *int `json:"examinerTime,omitempty"`
// FstdType FSTD type designation (e.g., "FNPT II", "FFS A320"). Required when isSimulator is true.
FstdType *string `json:"fstdType,omitempty"`
GroundTrainingTime *int `json:"groundTrainingTime,omitempty"`
Holds *int `json:"holds,omitempty"`
// IfrTime Example: 60
IfrTime *int `json:"ifrTime,omitempty"`
InstructorComments *string `json:"instructorComments,omitempty"`
InstructorName *string `json:"instructorName,omitempty"`
IsFlightReview *bool `json:"isFlightReview,omitempty"`
IsIpc *bool `json:"isIpc,omitempty"`
IsProficiencyCheck *bool `json:"isProficiencyCheck,omitempty"`
// IsSimulator Marks this entry as an FSTD (simulator) session rather than a flight.
IsSimulator *bool `json:"isSimulator,omitempty"`
// Landings Total number of landings. Day/night split is auto-calculated from sunset/sunrise at arrival airport. Required for a flight, rejected for an FSTD session.
//
// Example: 3
Landings *int `json:"landings,omitempty"`
LaunchMethod *FlightCreateLaunchMethod `json:"launchMethod,omitempty"`
// MultiPilotTime Multi-pilot time in minutes (EASA AMC1 FCL.050 Col 10)
MultiPilotTime *int `json:"multiPilotTime,omitempty"`
// OffBlockTime Off-block time (chocks off / engine start) in UTC. Required for a flight, rejected for an FSTD session.
//
// Example: 14:15:00
OffBlockTime *string `json:"offBlockTime,omitempty"`
// OnBlockTime On-block time (chocks on / engine shutdown) in UTC. Required for a flight, rejected for an FSTD session.
//
// Example: 16:55:00
OnBlockTime *string `json:"onBlockTime,omitempty"`
// PicName Name of the PIC. Auto-set to "Self" when isPic=true, or to instructorName when isDual=true.
PicName *string `json:"picName,omitempty"`
// PicTime Pilot-in-command time in minutes. Computed by server — equals totalTime when isPic is true, 0 otherwise.
//
// Example: 150
PicTime *int `json:"picTime,omitempty"`
// PicusTime PIC under supervision time in minutes. Carved out of the derived function time; the declared function times together with the derived ones must not exceed totalTime.
PicusTime *int `json:"picusTime,omitempty"`
// ReliefTime Cruise relief co-pilot time in minutes. Carved out of the derived function time.
ReliefTime *int `json:"reliefTime,omitempty"`
// Remarks Example: Training flight - touch and go practice
Remarks *string `json:"remarks,omitempty"`
// Route Route waypoints as comma-separated ICAO codes
//
// Example: EDDF,EDDS,EDDM
Route *string `json:"route,omitempty"`
SicTime *int `json:"sicTime,omitempty"`
// SimulatedFlightTime FSTD session duration in minutes (EASA AMC1 FCL.050 Col 22). Required and positive when isSimulator is true.
SimulatedFlightTime *int `json:"simulatedFlightTime,omitempty"`
SimulatedInstrumentTime *int `json:"simulatedInstrumentTime,omitempty"`
// SoloTime Solo time in minutes. Auto-calculated by the server.
SoloTime *int `json:"soloTime,omitempty"`
// SpicTime Student pilot-in-command time in minutes. Carved out of the derived function time.
SpicTime *int `json:"spicTime,omitempty"`
// TakeoffsDay Number of day takeoffs. Provide to override auto-calculation.
//
// Example: 3
TakeoffsDay *int `json:"takeoffsDay,omitempty"`
// TakeoffsNight Number of night takeoffs. Provide to override auto-calculation.
//
// Example: 0
TakeoffsNight *int `json:"takeoffsNight,omitempty"`
// TotalTime Total block time in minutes calculated from offBlockTime and onBlockTime. Always 0 for an FSTD session. This field is computed by the server and should not be provided by the client.
//
// Example: 150
TotalTime *int `json:"totalTime,omitempty"`
}
FlightCreate Creates either a flight or an FSTD (simulator) session.
For a flight (`isSimulator` absent or false) `aircraftReg`, `departureIcao`, `arrivalIcao`, `offBlockTime`, `onBlockTime` and `landings` are all required; omitting any of them returns 400.
For an FSTD session (`isSimulator: true`) they must be omitted — a training device is not flown between places and has no block times. The session requires `fstdType` and `simulatedFlightTime` instead. Session time is never summed into flight time (EASA AMC1 FCL.050 Cols 20-22).
type FlightCreateLaunchMethod ¶
type FlightCreateLaunchMethod string
FlightCreateLaunchMethod defines model for FlightCreate.LaunchMethod.
const ( FlightCreateLaunchMethodAerotow FlightCreateLaunchMethod = "aerotow" FlightCreateLaunchMethodSelfLaunch FlightCreateLaunchMethod = "self-launch" FlightCreateLaunchMethodWinch FlightCreateLaunchMethod = "winch" )
Defines values for FlightCreateLaunchMethod.
func (FlightCreateLaunchMethod) Valid ¶ added in v1.1.0
func (e FlightCreateLaunchMethod) Valid() bool
Valid indicates whether the value is a known member of the FlightCreateLaunchMethod enum.
type FlightCrewMember ¶
type FlightCrewMember struct {
// ContactId Reference to a saved contact for autocomplete reuse
ContactId *openapi_types.UUID `json:"contactId,omitempty"`
FlightId openapi_types.UUID `json:"flightId"`
Id openapi_types.UUID `json:"id"`
// Name Example: John Smith
Name string `json:"name"`
// Role Role of a person on board a flight
Role CrewRole `json:"role"`
}
FlightCrewMember defines model for FlightCrewMember.
type FlightCrewMemberInput ¶
type FlightCrewMemberInput struct {
ContactId *openapi_types.UUID `json:"contactId,omitempty"`
// Name Example: John Smith
Name string `json:"name"`
// Role Role of a person on board a flight
Role CrewRole `json:"role"`
}
FlightCrewMemberInput defines model for FlightCrewMemberInput.
type FlightId ¶
type FlightId = openapi_types.UUID
FlightId Example: 660e8400-e29b-41d4-a716-446655440001
type FlightLaunchMethod ¶
type FlightLaunchMethod string
FlightLaunchMethod Launch method for glider/SPL flights (winch, aerotow, or self-launch)
Example: winch
const ( FlightLaunchMethodAerotow FlightLaunchMethod = "aerotow" FlightLaunchMethodSelfLaunch FlightLaunchMethod = "self-launch" FlightLaunchMethodWinch FlightLaunchMethod = "winch" )
Defines values for FlightLaunchMethod.
func (FlightLaunchMethod) Valid ¶ added in v1.1.0
func (e FlightLaunchMethod) Valid() bool
Valid indicates whether the value is a known member of the FlightLaunchMethod enum.
type FlightListColumn ¶ added in v1.3.2
type FlightListColumn string
FlightListColumn An optional column of the flights list. Date, route, aircraft and total time are the identity of a logbook row and are always shown, so they are not part of this enum. The order below is the display order, and for the time columns also the priority order in which they survive as the list gets narrower.
Example: picTime
const ( FlightListColumnCrossCountryTime FlightListColumn = "crossCountryTime" FlightListColumnDualGivenTime FlightListColumn = "dualGivenTime" FlightListColumnDualTime FlightListColumn = "dualTime" FlightListColumnExaminerTime FlightListColumn = "examinerTime" FlightListColumnFunction FlightListColumn = "function" FlightListColumnIfrTime FlightListColumn = "ifrTime" FlightListColumnLandings FlightListColumn = "landings" FlightListColumnMultiPilotTime FlightListColumn = "multiPilotTime" FlightListColumnNightTime FlightListColumn = "nightTime" FlightListColumnOffOnBlock FlightListColumn = "offOnBlock" FlightListColumnPicTime FlightListColumn = "picTime" FlightListColumnPicusTime FlightListColumn = "picusTime" FlightListColumnReliefTime FlightListColumn = "reliefTime" FlightListColumnRemarks FlightListColumn = "remarks" FlightListColumnSicTime FlightListColumn = "sicTime" FlightListColumnSimulatedFlightTime FlightListColumn = "simulatedFlightTime" FlightListColumnSoloTime FlightListColumn = "soloTime" FlightListColumnSpicTime FlightListColumn = "spicTime" )
Defines values for FlightListColumn.
func (FlightListColumn) Valid ¶ added in v1.3.2
func (e FlightListColumn) Valid() bool
Valid indicates whether the value is a known member of the FlightListColumn enum.
type FlightReviewStatus ¶
type FlightReviewStatus struct {
// ExpiresOn Last date the flight review remains valid — the final day of the 24th calendar month after it was completed (inclusive)
ExpiresOn *openapi_types.Date `json:"expiresOn,omitempty"`
// LastCompleted Date of most recent flight review
LastCompleted *openapi_types.Date `json:"lastCompleted,omitempty"`
// MessageKey Stable key identifying which statement is true, for client-side localisation. Catalogued in docs/CURRENCY_MESSAGES.md.
//
// Example: flight_review.current
MessageKey *string `json:"messageKey,omitempty"`
// MessageParams Variable parts of a localised message that are not already fields on the enclosing object. Which fields are present is determined by messageKey; see docs/CURRENCY_MESSAGES.md for the per-key contract.
MessageParams *MessageParams `json:"messageParams,omitempty"`
// Status Flight review currency status
Status FlightReviewStatusStatus `json:"status"`
}
FlightReviewStatus defines model for FlightReviewStatus.
type FlightReviewStatusStatus ¶
type FlightReviewStatusStatus string
FlightReviewStatusStatus Flight review currency status
const ( FlightReviewStatusStatusCurrent FlightReviewStatusStatus = "current" FlightReviewStatusStatusExpired FlightReviewStatusStatus = "expired" FlightReviewStatusStatusExpiring FlightReviewStatusStatus = "expiring" FlightReviewStatusStatusUnknown FlightReviewStatusStatus = "unknown" )
Defines values for FlightReviewStatusStatus.
func (FlightReviewStatusStatus) Valid ¶ added in v1.1.0
func (e FlightReviewStatusStatus) Valid() bool
Valid indicates whether the value is a known member of the FlightReviewStatusStatus enum.
type FlightRoute ¶
type FlightRoute struct {
ArrivalCoords struct {
Lat float64 `json:"lat"`
Lng float64 `json:"lng"`
} `json:"arrivalCoords"`
// ArrivalIcao Example: EDDH
ArrivalIcao string `json:"arrivalIcao"`
DepartureCoords struct {
Lat float64 `json:"lat"`
Lng float64 `json:"lng"`
} `json:"departureCoords"`
// DepartureIcao Example: EDDF
DepartureIcao string `json:"departureIcao"`
// FlightCount Number of flights on this route
//
// Example: 5
FlightCount int `json:"flightCount"`
}
FlightRoute defines model for FlightRoute.
type FlightRoutesResponse ¶
type FlightRoutesResponse struct {
Airports []Airport `json:"airports"`
Routes []FlightRoute `json:"routes"`
}
FlightRoutesResponse defines model for FlightRoutesResponse.
type FlightSession ¶ added in v1.2.8
type FlightSession struct {
// AircraftReg Aircraft registration; required by the time the session goes on blocks
//
// Example: D-EFGH
AircraftReg *string `json:"aircraftReg,omitempty"`
// ArrivalIcao Arrival airport, provided explicitly or resolved from GPS coordinates
//
// Example: EDDH
ArrivalIcao *string `json:"arrivalIcao,omitempty"`
CreatedAt time.Time `json:"createdAt"`
// DepartureIcao Departure airport, provided explicitly or resolved from GPS coordinates
//
// Example: EDDF
DepartureIcao *string `json:"departureIcao,omitempty"`
// FlightId ID of the flight log entry created when the session was completed
FlightId *openapi_types.UUID `json:"flightId,omitempty"`
Id openapi_types.UUID `json:"id"`
// LandingAt Landing instant in UTC
LandingAt *time.Time `json:"landingAt,omitempty"`
// OffBlockAt Off-block instant (chocks off / engine start) in UTC
OffBlockAt *time.Time `json:"offBlockAt,omitempty"`
// OnBlockAt On-block instant (chocks on / engine shutdown) in UTC
OnBlockAt *time.Time `json:"onBlockAt,omitempty"`
// Status Session lifecycle state. `onblock` events complete the session.
Status FlightSessionStatus `json:"status"`
// TakeoffAt Takeoff instant in UTC
TakeoffAt *time.Time `json:"takeoffAt,omitempty"`
UpdatedAt time.Time `json:"updatedAt"`
UserId openapi_types.UUID `json:"userId"`
}
FlightSession defines model for FlightSession.
type FlightSessionEvent ¶ added in v1.2.8
type FlightSessionEvent struct {
// AircraftReg Aircraft registration. Can be sent with any event; required by the time the session goes on blocks.
//
// Example: D-EFGH
AircraftReg *string `json:"aircraftReg,omitempty"`
// Icao Explicit airport for this event (departure for offblock/takeoff, arrival for landing/onblock). Takes precedence over lat/lon.
//
// Example: EDDF
Icao *string `json:"icao,omitempty"`
// Lat GPS latitude used to resolve the nearest airport
Lat *float64 `json:"lat,omitempty"`
// Lon GPS longitude used to resolve the nearest airport
Lon *float64 `json:"lon,omitempty"`
// OccurredAt When the event actually happened (UTC). Defaults to the server clock; send this when the tap was queued offline.
OccurredAt *time.Time `json:"occurredAt,omitempty"`
// Type Which block/flight time instant this event records
Type FlightSessionEventType `json:"type"`
}
FlightSessionEvent defines model for FlightSessionEvent.
type FlightSessionEventType ¶ added in v1.2.8
type FlightSessionEventType string
FlightSessionEventType Which block/flight time instant this event records
const ( Landing FlightSessionEventType = "landing" Offblock FlightSessionEventType = "offblock" Onblock FlightSessionEventType = "onblock" Takeoff FlightSessionEventType = "takeoff" )
Defines values for FlightSessionEventType.
func (FlightSessionEventType) Valid ¶ added in v1.2.8
func (e FlightSessionEventType) Valid() bool
Valid indicates whether the value is a known member of the FlightSessionEventType enum.
type FlightSessionStatus ¶ added in v1.2.8
type FlightSessionStatus string
FlightSessionStatus Session lifecycle state. `onblock` events complete the session.
const ( FlightSessionStatusCompleted FlightSessionStatus = "completed" FlightSessionStatusDiscarded FlightSessionStatus = "discarded" FlightSessionStatusOpen FlightSessionStatus = "open" )
Defines values for FlightSessionStatus.
func (FlightSessionStatus) Valid ¶ added in v1.2.8
func (e FlightSessionStatus) Valid() bool
Valid indicates whether the value is a known member of the FlightSessionStatus enum.
type FlightSignature ¶ added in v1.2.9
type FlightSignature struct {
CreatedAt time.Time `json:"createdAt"`
EmailSendCount int `json:"emailSendCount"`
EmailSentAt *time.Time `json:"emailSentAt,omitempty"`
FlightId openapi_types.UUID `json:"flightId"`
Id openapi_types.UUID `json:"id"`
InstructorCredentialNumber *string `json:"instructorCredentialNumber,omitempty"`
InstructorEmail *openapi_types.Email `json:"instructorEmail,omitempty"`
InstructorName *string `json:"instructorName,omitempty"`
// Method live = captured in person with no token; deferred = token-based, delivered by email and/or a shareable link/QR
Method FlightSignatureMethod `json:"method"`
SignedAt *time.Time `json:"signedAt,omitempty"`
Status FlightSignatureStatus `json:"status"`
TokenExpiresAt *time.Time `json:"tokenExpiresAt,omitempty"`
UpdatedAt time.Time `json:"updatedAt"`
VoidedAt *time.Time `json:"voidedAt,omitempty"`
VoidedReason *string `json:"voidedReason,omitempty"`
}
FlightSignature defines model for FlightSignature.
type FlightSignatureMethod ¶ added in v1.2.9
type FlightSignatureMethod string
FlightSignatureMethod live = captured in person with no token; deferred = token-based, delivered by email and/or a shareable link/QR
const ( FlightSignatureMethodDeferred FlightSignatureMethod = "deferred" FlightSignatureMethodLive FlightSignatureMethod = "live" )
Defines values for FlightSignatureMethod.
func (FlightSignatureMethod) Valid ¶ added in v1.2.9
func (e FlightSignatureMethod) Valid() bool
Valid indicates whether the value is a known member of the FlightSignatureMethod enum.
type FlightSignatureStatus ¶ added in v1.2.9
type FlightSignatureStatus string
FlightSignatureStatus defines model for FlightSignature.Status.
const ( FlightSignatureStatusCompleted FlightSignatureStatus = "completed" FlightSignatureStatusExpired FlightSignatureStatus = "expired" FlightSignatureStatusPending FlightSignatureStatus = "pending" FlightSignatureStatusRevoked FlightSignatureStatus = "revoked" FlightSignatureStatusVoided FlightSignatureStatus = "voided" )
Defines values for FlightSignatureStatus.
func (FlightSignatureStatus) Valid ¶ added in v1.2.9
func (e FlightSignatureStatus) Valid() bool
Valid indicates whether the value is a known member of the FlightSignatureStatus enum.
type FlightUpdate ¶
type FlightUpdate struct {
ActualInstrumentTime *int `json:"actualInstrumentTime,omitempty"`
AircraftReg *string `json:"aircraftReg,omitempty"`
AircraftType *string `json:"aircraftType,omitempty"`
Approaches *[]ApproachEntryInput `json:"approaches,omitempty"`
ApproachesCount *int `json:"approachesCount,omitempty"`
ArrivalIcao nullable.Nullable[string] `json:"arrivalIcao,omitempty"`
// ArrivalTime Landing time in UTC
ArrivalTime nullable.Nullable[string] `json:"arrivalTime,omitempty"`
// CrewMembers People on board this flight
CrewMembers *[]FlightCrewMemberInput `json:"crewMembers,omitempty"`
Date *openapi_types.Date `json:"date,omitempty"`
DepartureIcao nullable.Nullable[string] `json:"departureIcao,omitempty"`
// DepartureTime Takeoff time in UTC
DepartureTime nullable.Nullable[string] `json:"departureTime,omitempty"`
DualGivenTime *int `json:"dualGivenTime,omitempty"`
// Endorsements Instructor endorsements, skill test references
Endorsements nullable.Nullable[string] `json:"endorsements,omitempty"`
// ExaminerTime Time conducting a check as examiner, in minutes. Overlays function time; bounded by totalTime.
ExaminerTime *int `json:"examinerTime,omitempty"`
// FstdType FSTD type designation
FstdType nullable.Nullable[string] `json:"fstdType,omitempty"`
GroundTrainingTime *int `json:"groundTrainingTime,omitempty"`
Holds *int `json:"holds,omitempty"`
IfrTime *int `json:"ifrTime,omitempty"`
InstructorComments nullable.Nullable[string] `json:"instructorComments,omitempty"`
InstructorName nullable.Nullable[string] `json:"instructorName,omitempty"`
IsFlightReview *bool `json:"isFlightReview,omitempty"`
IsIpc *bool `json:"isIpc,omitempty"`
IsProficiencyCheck *bool `json:"isProficiencyCheck,omitempty"`
// IsSimulator Switches the entry between flight and FSTD session. Changing it clears the columns that do not apply to the new kind.
IsSimulator *bool `json:"isSimulator,omitempty"`
// Landings Total number of landings
Landings *int `json:"landings,omitempty"`
LaunchMethod nullable.Nullable[string] `json:"launchMethod,omitempty"`
// MultiPilotTime Multi-pilot time in minutes
MultiPilotTime *int `json:"multiPilotTime,omitempty"`
// OffBlockTime Off-block time (chocks off / engine start) in UTC
OffBlockTime nullable.Nullable[string] `json:"offBlockTime,omitempty"`
// OnBlockTime On-block time (chocks on / engine shutdown) in UTC
OnBlockTime nullable.Nullable[string] `json:"onBlockTime,omitempty"`
// PicName Name of the PIC
PicName nullable.Nullable[string] `json:"picName,omitempty"`
// PicusTime PIC under supervision time in minutes. Carved out of the derived function time.
PicusTime *int `json:"picusTime,omitempty"`
// ReliefTime Cruise relief co-pilot time in minutes. Carved out of the derived function time.
ReliefTime *int `json:"reliefTime,omitempty"`
Remarks nullable.Nullable[string] `json:"remarks,omitempty"`
// Route Route waypoints as comma-separated ICAO codes
Route nullable.Nullable[string] `json:"route,omitempty"`
SicTime *int `json:"sicTime,omitempty"`
SimulatedFlightTime *int `json:"simulatedFlightTime,omitempty"`
SimulatedInstrumentTime *int `json:"simulatedInstrumentTime,omitempty"`
// SpicTime Student pilot-in-command time in minutes. Carved out of the derived function time.
SpicTime *int `json:"spicTime,omitempty"`
// TakeoffsDay Number of day takeoffs. Provide to override auto-calculation.
TakeoffsDay *int `json:"takeoffsDay,omitempty"`
// TakeoffsNight Number of night takeoffs. Provide to override auto-calculation.
TakeoffsNight *int `json:"takeoffsNight,omitempty"`
TotalTime *int `json:"totalTime,omitempty"`
}
FlightUpdate defines model for FlightUpdate.
type GetFlightAnalyticsParams ¶ added in v1.3.1
type GetFlightAnalyticsParams struct {
// Months Number of months to include, counted from the start of the month `months` months ago. 0 means all time.
Months *int `form:"months,omitempty" json:"months,omitempty"`
// Limit Maximum number of rows returned per ranked breakdown (aircraft, airports, routes, instructors, crew).
Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}
GetFlightAnalyticsParams defines parameters for GetFlightAnalytics.
type GetFlightTrendsParams ¶
type GetFlightTrendsParams struct {
// Months Number of months to include (default 12, max 60)
Months *int `form:"months,omitempty" json:"months,omitempty"`
}
GetFlightTrendsParams defines parameters for GetFlightTrends.
type GetLicenseStatisticsParams ¶
type GetLicenseStatisticsParams struct {
// StartDate Filter from this date (inclusive)
StartDate *openapi_types.Date `form:"startDate,omitempty" json:"startDate,omitempty"`
// EndDate Filter to this date (inclusive)
EndDate *openapi_types.Date `form:"endDate,omitempty" json:"endDate,omitempty"`
}
GetLicenseStatisticsParams defines parameters for GetLicenseStatistics.
type GetMyStatisticsParams ¶
type GetMyStatisticsParams struct {
// StartDate Filter from this date (inclusive)
StartDate *openapi_types.Date `form:"startDate,omitempty" json:"startDate,omitempty"`
// EndDate Filter to this date (inclusive)
EndDate *openapi_types.Date `form:"endDate,omitempty" json:"endDate,omitempty"`
}
GetMyStatisticsParams defines parameters for GetMyStatistics.
type GetNotificationHistoryParams ¶
type GetNotificationHistoryParams struct {
// Limit Maximum number of results to return
Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
// Offset Number of results to skip
Offset *int `form:"offset,omitempty" json:"offset,omitempty"`
}
GetNotificationHistoryParams defines parameters for GetNotificationHistory.
type GetStatsByClassParams ¶ added in v1.2.2
type GetStatsByClassParams struct {
// Months Number of months to include (default 12, 0 = all time)
Months *int `form:"months,omitempty" json:"months,omitempty"`
}
GetStatsByClassParams defines parameters for GetStatsByClass.
type GetUpdateStatusParams ¶ added in v1.3.5
type GetUpdateStatusParams struct {
// FrontendVersion Version the calling frontend build was stamped with.
FrontendVersion *string `form:"frontendVersion,omitempty" json:"frontendVersion,omitempty"`
// FrontendCommit Commit the calling frontend image was built from. Used when the frontend runs an untagged build (the `latest` image), where there is no version to compare.
FrontendCommit *string `form:"frontendCommit,omitempty" json:"frontendCommit,omitempty"`
}
GetUpdateStatusParams defines parameters for GetUpdateStatus.
type GinServerOptions ¶
type GinServerOptions struct {
BaseURL string
Middlewares []MiddlewareFunc
ErrorHandler func(*gin.Context, error, int)
}
GinServerOptions provides options for the Gin server.
type ImportColumnMapping ¶
type ImportColumnMapping struct {
// DateFormat Date parsing format (Go / strftime-style). Only relevant when targetField is `date`.
//
// Example: 2006-01-02
DateFormat *string `json:"dateFormat,omitempty"`
// SourceColumn Column header name from the uploaded file
//
// Example: Date
SourceColumn string `json:"sourceColumn"`
// TargetField Target flight log field for column mapping.
//
// Landings can be mapped either as a day/night split (`landingsDay` +
// `landingsNight`, which are summed) or as a single `landingsTotal`
// column. When a file carries both — as ForeFlight and MyFlightbook do —
// the larger of the two wins, so touch-and-go landings counted only in
// the total column are not lost.
//
// Person fields (`person1`–`person6`) extract crew members from import rows.
// During ForeFlight imports, role assignment is automatic:
// - If an instructor is detected (via `instructorName` or dual-received time),
// `person1` is assigned the **Instructor** role and `person2` the **Student** role.
// - Otherwise, `person1` is assigned **PIC**.
// - `person3`–`person6` default to **Passenger**.
// Contacts are auto-created for each unique person name.
// Use `ignore` to skip a column during import.
TargetField ImportField `json:"targetField"`
// TimeFormat Time parsing format. Only relevant for time fields.
//
// Example: 15:04
TimeFormat *string `json:"timeFormat,omitempty"`
// TrueValue String value that maps to boolean `true` (e.g. "Yes", "X", "1"). Only relevant for isPic / isDual.
//
// Example: X
TrueValue *string `json:"trueValue,omitempty"`
}
ImportColumnMapping defines model for ImportColumnMapping.
type ImportConfirmRequest ¶
type ImportConfirmRequest struct {
// IncludeDuplicates When true, import all duplicate rows as well (overrides selectedRows filtering)
IncludeDuplicates *bool `json:"includeDuplicates,omitempty"`
// SelectedRows Row indices to import (1-based). If omitted or empty, all `valid` rows are imported.
// Include duplicate row indices here to force-import them.
//
//
// Example: [1,2,3,5,7,8]
SelectedRows *[]int `json:"selectedRows,omitempty"`
// UploadToken Upload token from the preview response
//
// Example: imp_01HXYZ1234567890ABCDEF
UploadToken string `json:"uploadToken"`
}
ImportConfirmRequest defines model for ImportConfirmRequest.
type ImportDataJSONJSONBody ¶ added in v1.2.3
type ImportDataJSONJSONBody struct {
Aircraft *[]map[string]interface{} `json:"aircraft,omitempty"`
Contacts *[]map[string]interface{} `json:"contacts,omitempty"`
Credentials *[]map[string]interface{} `json:"credentials,omitempty"`
CustomCurrencyRules *[]map[string]interface{} `json:"customCurrencyRules,omitempty"`
ExportedAt *time.Time `json:"exportedAt,omitempty"`
FlightBaseline *map[string]interface{} `json:"flightBaseline,omitempty"`
Flights *[]map[string]interface{} `json:"flights,omitempty"`
// Format Example: NinerLog JSON Backup
Format string `json:"format"`
Licenses *[]map[string]interface{} `json:"licenses,omitempty"`
NotificationPreferences *map[string]interface{} `json:"notificationPreferences,omitempty"`
Version *string `json:"version,omitempty"`
}
ImportDataJSONJSONBody defines parameters for ImportDataJSON.
type ImportDataJSONJSONRequestBody ¶ added in v1.2.3
type ImportDataJSONJSONRequestBody ImportDataJSONJSONBody
ImportDataJSONJSONRequestBody defines body for ImportDataJSON for application/json ContentType.
type ImportField ¶
type ImportField string
ImportField Target flight log field for column mapping.
Landings can be mapped either as a day/night split (`landingsDay` + `landingsNight`, which are summed) or as a single `landingsTotal` column. When a file carries both — as ForeFlight and MyFlightbook do — the larger of the two wins, so touch-and-go landings counted only in the total column are not lost.
Person fields (`person1`–`person6`) extract crew members from import rows. During ForeFlight imports, role assignment is automatic:
- If an instructor is detected (via `instructorName` or dual-received time), `person1` is assigned the **Instructor** role and `person2` the **Student** role.
- Otherwise, `person1` is assigned **PIC**.
- `person3`–`person6` default to **Passenger**.
Contacts are auto-created for each unique person name. Use `ignore` to skip a column during import.
const ( ImportFieldActualInstrumentTime ImportField = "actualInstrumentTime" ImportFieldAircraftReg ImportField = "aircraftReg" ImportFieldAircraftType ImportField = "aircraftType" ImportFieldApproachesCount ImportField = "approachesCount" ImportFieldArrivalIcao ImportField = "arrivalIcao" ImportFieldArrivalTime ImportField = "arrivalTime" ImportFieldDate ImportField = "date" ImportFieldDepartureIcao ImportField = "departureIcao" ImportFieldDepartureTime ImportField = "departureTime" ImportFieldDualGivenTime ImportField = "dualGivenTime" ImportFieldHolds ImportField = "holds" ImportFieldIfrTime ImportField = "ifrTime" ImportFieldIgnore ImportField = "ignore" ImportFieldInstructorComments ImportField = "instructorComments" ImportFieldInstructorName ImportField = "instructorName" ImportFieldIsDual ImportField = "isDual" ImportFieldIsFlightReview ImportField = "isFlightReview" ImportFieldIsIpc ImportField = "isIpc" ImportFieldIsPic ImportField = "isPic" ImportFieldLandingsDay ImportField = "landingsDay" ImportFieldLandingsNight ImportField = "landingsNight" ImportFieldLandingsTotal ImportField = "landingsTotal" ImportFieldNightTime ImportField = "nightTime" ImportFieldOffBlockTime ImportField = "offBlockTime" ImportFieldOnBlockTime ImportField = "onBlockTime" ImportFieldPerson1 ImportField = "person1" ImportFieldPerson2 ImportField = "person2" ImportFieldPerson3 ImportField = "person3" ImportFieldPerson4 ImportField = "person4" ImportFieldPerson5 ImportField = "person5" ImportFieldPerson6 ImportField = "person6" ImportFieldRemarks ImportField = "remarks" ImportFieldRoute ImportField = "route" ImportFieldSimulatedInstrumentTime ImportField = "simulatedInstrumentTime" ImportFieldTotalTime ImportField = "totalTime" )
Defines values for ImportField.
func (ImportField) Valid ¶ added in v1.1.0
func (e ImportField) Valid() bool
Valid indicates whether the value is a known member of the ImportField enum.
type ImportFormat ¶
type ImportFormat string
ImportFormat The import template that matched the uploaded file, detected from its header row. Recording the source format is what makes the import auditable — and it is the value the admin dashboard groups by to show which logbooks pilots are migrating from.
- CSV: no template matched; columns were mapped by name and by hand - FOREFLIGHT_CSV: ForeFlight Logbook export (also carries an Aircraft Table) - NINERLOG_CSV: NinerLog's own CSV export, re-imported - LOGTEN_CSV: LogTen Pro (Coradine), human-readable or `flight_…` key dialect - MYFLIGHTBOOK_CSV: MyFlightbook - CAPZLOG_CSV: capzlog.aero - FLYLOG_CSV: FLYLOG.io - WADER_CSV: Wader Pilot Logbook - VEREINSFLIEGER_CSV: Vereinsflieger club flight list, standard export (German headers, airborne times only) - VEREINSFLIEGER_EXTENDED_CSV: Vereinsflieger club flight list, extended export (adds off-block/on-block and block minutes) - SKYDEMON_CSV: SkyDemon logbook export - EASA_CSV: generic EASA AMC1 FCL.050 column layout - FAA_CSV: generic FAA/ASA column layout - XLS: Microsoft Excel 97-2003 workbook - XLSX: Microsoft Excel 2007+ workbook (Open XML)
const ( CAPZLOGCSV ImportFormat = "CAPZLOG_CSV" CSV ImportFormat = "CSV" EASACSV ImportFormat = "EASA_CSV" FAACSV ImportFormat = "FAA_CSV" FLYLOGCSV ImportFormat = "FLYLOG_CSV" FOREFLIGHTCSV ImportFormat = "FOREFLIGHT_CSV" LOGTENCSV ImportFormat = "LOGTEN_CSV" MYFLIGHTBOOKCSV ImportFormat = "MYFLIGHTBOOK_CSV" NINERLOGCSV ImportFormat = "NINERLOG_CSV" SKYDEMONCSV ImportFormat = "SKYDEMON_CSV" VEREINSFLIEGERCSV ImportFormat = "VEREINSFLIEGER_CSV" VEREINSFLIEGEREXTENDEDCSV ImportFormat = "VEREINSFLIEGER_EXTENDED_CSV" WADERCSV ImportFormat = "WADER_CSV" XLS ImportFormat = "XLS" XLSX ImportFormat = "XLSX" )
Defines values for ImportFormat.
func (ImportFormat) Valid ¶ added in v1.1.0
func (e ImportFormat) Valid() bool
Valid indicates whether the value is a known member of the ImportFormat enum.
type ImportId ¶
type ImportId = openapi_types.UUID
ImportId Example: 990e8400-e29b-41d4-a716-446655440004
type ImportJSONResult ¶ added in v1.2.3
type ImportJSONResult struct {
// AircraftImported Number of aircraft created from the backup
//
// Example: 3
AircraftImported int `json:"aircraftImported"`
// AircraftSkipped Aircraft skipped because the registration already exists for the user
//
// Example: 1
AircraftSkipped int `json:"aircraftSkipped"`
// ClassRatingsImported Example: 4
ClassRatingsImported int `json:"classRatingsImported"`
// ContactsCreated Contacts created because a crew name in the backup matched none of this account's contacts — counted after the backup's own contacts have been restored, so it covers only crew names with no contact record of their own.
//
// Example: 5
ContactsCreated int `json:"contactsCreated"`
// ContactsImported Contacts restored from the backup's own contacts section
//
// Example: 12
ContactsImported int `json:"contactsImported"`
// ContactsSkipped Contacts skipped because this account already holds that name
//
// Example: 2
ContactsSkipped int `json:"contactsSkipped"`
// CredentialsImported Example: 2
CredentialsImported int `json:"credentialsImported"`
// CrewMembersImported Example: 11
CrewMembersImported int `json:"crewMembersImported"`
// CustomCurrencyRulesImported User-authored currency rules restored. Sharing state is never carried over: a restored rule is private until shared again.
//
// Example: 3
CustomCurrencyRulesImported int `json:"customCurrencyRulesImported"`
// FlightBaselineImported Whether the backup carried a carried-forward hours baseline that was applied
FlightBaselineImported bool `json:"flightBaselineImported"`
// FlightsImported Example: 27
FlightsImported int `json:"flightsImported"`
// LicensesImported Example: 2
LicensesImported int `json:"licensesImported"`
// NotificationPreferencesImported Whether the backup carried notification preferences that were applied
NotificationPreferencesImported bool `json:"notificationPreferencesImported"`
}
ImportJSONResult Summary returned by `POST /imports/json` after restoring a backup.
type ImportPreviewFlight ¶
type ImportPreviewFlight struct {
// Errors Validation errors when status is `error`
Errors *[]struct {
// Field Example: totalTime
Field *string `json:"field,omitempty"`
// Message Example: Must be greater than 0
Message *string `json:"message,omitempty"`
} `json:"errors,omitempty"`
// ExistingFlightId ID of the matching existing flight when status is `duplicate`
ExistingFlightId *openapi_types.UUID `json:"existingFlightId,omitempty"`
// Flight Creates either a flight or an FSTD (simulator) session.
//
// For a flight (`isSimulator` absent or false) `aircraftReg`, `departureIcao`,
// `arrivalIcao`, `offBlockTime`, `onBlockTime` and `landings` are all required;
// omitting any of them returns 400.
//
// For an FSTD session (`isSimulator: true`) they must be omitted — a training
// device is not flown between places and has no block times. The session
// requires `fstdType` and `simulatedFlightTime` instead. Session time is never
// summed into flight time (EASA AMC1 FCL.050 Cols 20-22).
Flight FlightCreate `json:"flight"`
// RowIndex 1-based row number in the original file
//
// Example: 2
RowIndex int `json:"rowIndex"`
// Status Row validation result:
// - valid: Ready to import
// - duplicate: Matches an existing flight (same date, aircraft, departure, arrival, total time ±0.1h)
// - error: Validation failed — see `errors` field
Status ImportPreviewFlightStatus `json:"status"`
}
ImportPreviewFlight defines model for ImportPreviewFlight.
type ImportPreviewFlightStatus ¶
type ImportPreviewFlightStatus string
ImportPreviewFlightStatus Row validation result: - valid: Ready to import - duplicate: Matches an existing flight (same date, aircraft, departure, arrival, total time ±0.1h) - error: Validation failed — see `errors` field
const ( ImportPreviewFlightStatusDuplicate ImportPreviewFlightStatus = "duplicate" ImportPreviewFlightStatusError ImportPreviewFlightStatus = "error" ImportPreviewFlightStatusValid ImportPreviewFlightStatus = "valid" )
Defines values for ImportPreviewFlightStatus.
func (ImportPreviewFlightStatus) Valid ¶ added in v1.1.0
func (e ImportPreviewFlightStatus) Valid() bool
Valid indicates whether the value is a known member of the ImportPreviewFlightStatus enum.
type ImportPreviewRequest ¶
type ImportPreviewRequest struct {
// Mappings Column → field mappings (user-confirmed or adjusted)
Mappings []ImportColumnMapping `json:"mappings"`
// SkipDuplicates Whether to flag rows that match existing flights as duplicates
SkipDuplicates *bool `json:"skipDuplicates,omitempty"`
// UploadToken Upload token from the upload response
//
// Example: imp_01HXYZ1234567890ABCDEF
UploadToken string `json:"uploadToken"`
}
ImportPreviewRequest defines model for ImportPreviewRequest.
type ImportPreviewResponse ¶
type ImportPreviewResponse struct {
// DuplicateCount Rows matching existing flights
//
// Example: 3
DuplicateCount int `json:"duplicateCount"`
// ErrorCount Rows with validation errors
//
// Example: 1
ErrorCount int `json:"errorCount"`
// Flights All rows with their validation status, sorted by rowIndex
Flights []ImportPreviewFlight `json:"flights"`
// TotalRows Total rows processed
//
// Example: 42
TotalRows int `json:"totalRows"`
// UploadToken Upload token to use in the confirm request
//
// Example: imp_01HXYZ1234567890ABCDEF
UploadToken string `json:"uploadToken"`
// ValidCount Rows ready to import
//
// Example: 38
ValidCount int `json:"validCount"`
}
ImportPreviewResponse defines model for ImportPreviewResponse.
type ImportResult ¶
type ImportResult struct {
// AircraftCreated Number of aircraft auto-created from the imported rows. Any registration that appears in the file but not yet in the user's fleet is added, so imported flights are backed by a fleet entry.
//
// Example: 4
AircraftCreated *int `json:"aircraftCreated,omitempty"`
// ContactsCreated Number of new contacts auto-created from person data during import
//
// Example: 2
ContactsCreated *int `json:"contactsCreated,omitempty"`
// CreatedAt Example: 2026-02-13T18:00:00Z
CreatedAt time.Time `json:"createdAt"`
// DuplicateCount Number of rows detected as duplicates
//
// Example: 3
DuplicateCount int `json:"duplicateCount"`
// ErrorCount Number of rows that failed validation
//
// Example: 1
ErrorCount int `json:"errorCount"`
// Errors Per-row errors for rows that were not imported
Errors *[]struct {
// Field Example: totalTime
Field string `json:"field"`
// Message Example: Must be greater than 0
Message string `json:"message"`
// RawValue The original value from the file that caused the error
//
// Example: -1.5
RawValue *string `json:"rawValue,omitempty"`
// RowIndex 1-based row number that caused the error
//
// Example: 15
RowIndex int `json:"rowIndex"`
} `json:"errors,omitempty"`
// FileName Example: foreflight_logbook_2025.csv
FileName string `json:"fileName"`
// Format The import template that matched the uploaded file, detected from its
// header row. Recording the source format is what makes the import
// auditable — and it is the value the admin dashboard groups by to show
// which logbooks pilots are migrating from.
//
// - CSV: no template matched; columns were mapped by name and by hand
// - FOREFLIGHT_CSV: ForeFlight Logbook export (also carries an Aircraft Table)
// - NINERLOG_CSV: NinerLog's own CSV export, re-imported
// - LOGTEN_CSV: LogTen Pro (Coradine), human-readable or `flight_…` key dialect
// - MYFLIGHTBOOK_CSV: MyFlightbook
// - CAPZLOG_CSV: capzlog.aero
// - FLYLOG_CSV: FLYLOG.io
// - WADER_CSV: Wader Pilot Logbook
// - VEREINSFLIEGER_CSV: Vereinsflieger club flight list, standard export (German headers, airborne times only)
// - VEREINSFLIEGER_EXTENDED_CSV: Vereinsflieger club flight list, extended export (adds off-block/on-block and block minutes)
// - SKYDEMON_CSV: SkyDemon logbook export
// - EASA_CSV: generic EASA AMC1 FCL.050 column layout
// - FAA_CSV: generic FAA/ASA column layout
// - XLS: Microsoft Excel 97-2003 workbook
// - XLSX: Microsoft Excel 2007+ workbook (Open XML)
Format ImportFormat `json:"format"`
// Id Example: 990e8400-e29b-41d4-a716-446655440004
Id openapi_types.UUID `json:"id"`
// ImportedCount Number of flights successfully created
//
// Example: 38
ImportedCount int `json:"importedCount"`
// ImportedFlightIds IDs of the created flight log entries
ImportedFlightIds *[]openapi_types.UUID `json:"importedFlightIds,omitempty"`
// SkippedCount Number of rows skipped (duplicates not imported)
//
// Example: 3
SkippedCount int `json:"skippedCount"`
// Status Overall import result:
// - completed: All selected rows imported successfully
// - partial: Some rows imported, some failed
// - failed: No rows imported (all failed validation)
Status ImportStatus `json:"status"`
// TotalRows Total rows in the uploaded file
//
// Example: 42
TotalRows int `json:"totalRows"`
// UserId Example: 550e8400-e29b-41d4-a716-446655440000
UserId openapi_types.UUID `json:"userId"`
}
ImportResult defines model for ImportResult.
type ImportStatus ¶
type ImportStatus string
ImportStatus Overall import result: - completed: All selected rows imported successfully - partial: Some rows imported, some failed - failed: No rows imported (all failed validation)
const ( ImportStatusCompleted ImportStatus = "completed" ImportStatusFailed ImportStatus = "failed" ImportStatusPartial ImportStatus = "partial" )
Defines values for ImportStatus.
func (ImportStatus) Valid ¶ added in v1.1.0
func (e ImportStatus) Valid() bool
Valid indicates whether the value is a known member of the ImportStatus enum.
type ImportTemplate ¶ added in v1.3.5
type ImportTemplate struct {
// AutoDetected Whether a file in this format is recognised automatically from its
// header row. `false` means the file still imports, but every column
// is mapped on the mapping screen.
AutoDetected bool `json:"autoDetected"`
// Confidence How the template's column list was built.
// - `exact`: the header row is known verbatim (NinerLog's own exports,
// or a published and stable column list)
// - `best-effort`: the aliases cover the documented columns plus the
// usual spelling variants, but the export has not been verified byte
// for byte. Auto-detection may miss; the column-mapping step catches it.
Confidence ImportTemplateConfidence `json:"confidence"`
// Description What this template covers and what it cannot carry across
Description string `json:"description"`
// ExportSteps Ordered, human-readable instructions for exporting from the source
// application. Shown on the import screen.
ExportSteps []string `json:"exportSteps"`
// Id The import template that matched the uploaded file, detected from its
// header row. Recording the source format is what makes the import
// auditable — and it is the value the admin dashboard groups by to show
// which logbooks pilots are migrating from.
//
// - CSV: no template matched; columns were mapped by name and by hand
// - FOREFLIGHT_CSV: ForeFlight Logbook export (also carries an Aircraft Table)
// - NINERLOG_CSV: NinerLog's own CSV export, re-imported
// - LOGTEN_CSV: LogTen Pro (Coradine), human-readable or `flight_…` key dialect
// - MYFLIGHTBOOK_CSV: MyFlightbook
// - CAPZLOG_CSV: capzlog.aero
// - FLYLOG_CSV: FLYLOG.io
// - WADER_CSV: Wader Pilot Logbook
// - VEREINSFLIEGER_CSV: Vereinsflieger club flight list, standard export (German headers, airborne times only)
// - VEREINSFLIEGER_EXTENDED_CSV: Vereinsflieger club flight list, extended export (adds off-block/on-block and block minutes)
// - SKYDEMON_CSV: SkyDemon logbook export
// - EASA_CSV: generic EASA AMC1 FCL.050 column layout
// - FAA_CSV: generic FAA/ASA column layout
// - XLS: Microsoft Excel 97-2003 workbook
// - XLSX: Microsoft Excel 2007+ workbook (Open XML)
Id ImportFormat `json:"id"`
// Name Display name of the source logbook
//
// Example: MyFlightbook
Name string `json:"name"`
// Regions Regulatory layouts the source targets
Regions []ImportTemplateRegions `json:"regions"`
// Vendor Company or project behind the source logbook
//
// Example: MyFlightbook
Vendor *string `json:"vendor,omitempty"`
// Website Homepage of the source logbook, when it has one
//
// Example: https://myflightbook.com
Website *string `json:"website,omitempty"`
}
ImportTemplate One logbook export format NinerLog knows how to read, together with the steps for getting that file out of the source application.
type ImportTemplateConfidence ¶ added in v1.3.5
type ImportTemplateConfidence string
ImportTemplateConfidence How the template's column list was built.
- `exact`: the header row is known verbatim (NinerLog's own exports, or a published and stable column list)
- `best-effort`: the aliases cover the documented columns plus the usual spelling variants, but the export has not been verified byte for byte. Auto-detection may miss; the column-mapping step catches it.
const ( BestEffort ImportTemplateConfidence = "best-effort" Exact ImportTemplateConfidence = "exact" )
Defines values for ImportTemplateConfidence.
func (ImportTemplateConfidence) Valid ¶ added in v1.3.5
func (e ImportTemplateConfidence) Valid() bool
Valid indicates whether the value is a known member of the ImportTemplateConfidence enum.
type ImportTemplateList ¶ added in v1.3.5
type ImportTemplateList struct {
Templates []ImportTemplate `json:"templates"`
}
ImportTemplateList defines model for ImportTemplateList.
type ImportTemplateRegions ¶ added in v1.3.5
type ImportTemplateRegions string
ImportTemplateRegions defines model for ImportTemplate.Regions.
const ( EASA ImportTemplateRegions = "EASA" FAA ImportTemplateRegions = "FAA" )
Defines values for ImportTemplateRegions.
func (ImportTemplateRegions) Valid ¶ added in v1.3.5
func (e ImportTemplateRegions) Valid() bool
Valid indicates whether the value is a known member of the ImportTemplateRegions enum.
type ImportUploadResponse ¶
type ImportUploadResponse struct {
// Columns Column headers found in the file
//
// Example: ["Date","AircraftID","From","To","Route","TimeOut","TimeIn","TotalTime","PIC","Landings"]
Columns []string `json:"columns"`
// DetectedTemplate One logbook export format NinerLog knows how to read, together with the
// steps for getting that file out of the source application.
DetectedTemplate *ImportTemplate `json:"detectedTemplate,omitempty"`
// Format The import template that matched the uploaded file, detected from its
// header row. Recording the source format is what makes the import
// auditable — and it is the value the admin dashboard groups by to show
// which logbooks pilots are migrating from.
//
// - CSV: no template matched; columns were mapped by name and by hand
// - FOREFLIGHT_CSV: ForeFlight Logbook export (also carries an Aircraft Table)
// - NINERLOG_CSV: NinerLog's own CSV export, re-imported
// - LOGTEN_CSV: LogTen Pro (Coradine), human-readable or `flight_…` key dialect
// - MYFLIGHTBOOK_CSV: MyFlightbook
// - CAPZLOG_CSV: capzlog.aero
// - FLYLOG_CSV: FLYLOG.io
// - WADER_CSV: Wader Pilot Logbook
// - VEREINSFLIEGER_CSV: Vereinsflieger club flight list, standard export (German headers, airborne times only)
// - VEREINSFLIEGER_EXTENDED_CSV: Vereinsflieger club flight list, extended export (adds off-block/on-block and block minutes)
// - SKYDEMON_CSV: SkyDemon logbook export
// - EASA_CSV: generic EASA AMC1 FCL.050 column layout
// - FAA_CSV: generic FAA/ASA column layout
// - XLS: Microsoft Excel 97-2003 workbook
// - XLSX: Microsoft Excel 2007+ workbook (Open XML)
Format ImportFormat `json:"format"`
// PreviewRows First 5 rows as key-value objects (column header → cell value)
//
// Example: [{"AircraftID":"D-EFGH","Date":"2025-12-01","From":"EDDF","Landings":"1","PIC":"1.5","To":"EDDH","TotalTime":"1.5"}]
PreviewRows []map[string]string `json:"previewRows"`
// SuggestedMappings Server-suggested column mappings based on header names.
// When a template matched, these come from that template's column
// layout; otherwise they fall back to a cross-vendor alias table.
// The user can adjust mappings before submitting the preview request.
SuggestedMappings []ImportColumnMapping `json:"suggestedMappings"`
// TotalRows Total number of data rows in the file (excluding header)
//
// Example: 42
TotalRows int `json:"totalRows"`
// UploadToken Opaque token identifying this upload session. Valid for 1 hour.
//
// Example: imp_01HXYZ1234567890ABCDEF
UploadToken string `json:"uploadToken"`
}
ImportUploadResponse defines model for ImportUploadResponse.
type LaunchMethodCurrency ¶
type LaunchMethodCurrency struct {
// Launches Number of launches with this method in evaluation period
Launches int `json:"launches"`
// MessageKey Always `launch_method.progress`; the client renders launches/required/method.
//
// Example: launch_method.progress
MessageKey *string `json:"messageKey,omitempty"`
// Met Whether the requirement is met
Met bool `json:"met"`
// Method Launch method (winch, aerotow, self-launch)
//
// Example: winch
Method string `json:"method"`
// Required Required number of launches (typically 5)
//
// Example: 5
Required int `json:"required"`
}
LaunchMethodCurrency defines model for LaunchMethodCurrency.
type License ¶
type License struct {
// CreatedAt Example: 2020-01-15T10:00:00Z
CreatedAt time.Time `json:"createdAt"`
// Id Example: 550e8400-e29b-41d4-a716-446655440000
Id openapi_types.UUID `json:"id"`
// IssueDate Example: 2020-01-15
IssueDate openapi_types.Date `json:"issueDate"`
// IssuingAuthority e.g., EASA, FAA, CAA UK
//
// Example: EASA
IssuingAuthority string `json:"issuingAuthority"`
// LicenseNumber Example: PPL-123456
LicenseNumber string `json:"licenseNumber"`
// LicenseType License type (e.g., PPL, CPL, ATPL, SPL, LAPL, UL)
//
// Example: PPL
LicenseType string `json:"licenseType"`
// RegulatoryAuthority Regulatory authority (e.g., EASA, FAA, CAA UK, Transport Canada)
//
// Example: EASA
RegulatoryAuthority string `json:"regulatoryAuthority"`
// RequiresSeparateLogbook Whether this license requires a separate logbook (e.g., SPL, Ultralight)
RequiresSeparateLogbook *bool `json:"requiresSeparateLogbook,omitempty"`
// UpdatedAt Example: 2026-01-20T12:00:00Z
UpdatedAt time.Time `json:"updatedAt"`
// UserId Example: 660e8400-e29b-41d4-a716-446655440001
UserId openapi_types.UUID `json:"userId"`
}
License defines model for License.
type LicenseCreate ¶
type LicenseCreate struct {
// IssueDate Example: 2020-01-15
IssueDate openapi_types.Date `json:"issueDate"`
// IssuingAuthority Example: EASA
IssuingAuthority string `json:"issuingAuthority"`
// LicenseNumber Example: PPL-123456
LicenseNumber string `json:"licenseNumber"`
// LicenseType Example: PPL
LicenseType string `json:"licenseType"`
// RegulatoryAuthority Example: EASA
RegulatoryAuthority string `json:"regulatoryAuthority"`
RequiresSeparateLogbook *bool `json:"requiresSeparateLogbook,omitempty"`
}
LicenseCreate defines model for LicenseCreate.
type LicenseId ¶
type LicenseId = openapi_types.UUID
LicenseId Example: 550e8400-e29b-41d4-a716-446655440000
type ListAdminAuditLogParams ¶
type ListAdminAuditLogParams struct {
Page *int `form:"page,omitempty" json:"page,omitempty"`
PageSize *int `form:"pageSize,omitempty" json:"pageSize,omitempty"`
}
ListAdminAuditLogParams defines parameters for ListAdminAuditLog.
type ListAdminUsersParams ¶
type ListAdminUsersParams struct {
Page *int `form:"page,omitempty" json:"page,omitempty"`
PageSize *int `form:"pageSize,omitempty" json:"pageSize,omitempty"`
// Search Search by email or name
Search *string `form:"search,omitempty" json:"search,omitempty"`
}
ListAdminUsersParams defines parameters for ListAdminUsers.
type ListAircraftParams ¶
type ListAircraftParams struct {
// Page Page number (1-indexed)
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page
PageSize *int `form:"pageSize,omitempty" json:"pageSize,omitempty"`
// UpdatedSince Delta sync: return only records whose `updatedAt` is **strictly after** this instant. The value is an RFC 3339 date-time and is compared with full timestamp precision, so a client can pass back the highest `updatedAt` it has seen and receive exactly what changed since. Combines with the endpoint's other filters (ANDed) and pages as usual; on paginated endpoints `pagination.total` counts the delta.
// A bare `YYYY-MM-DD` is also accepted and read as midnight UTC on that date. An empty value is treated as if the parameter were omitted. Anything else returns 400.
// Deletions are not reported: a removed record simply stops appearing.
UpdatedSince *UpdatedSince `form:"updatedSince,omitempty" json:"updatedSince,omitempty"`
}
ListAircraftParams defines parameters for ListAircraft.
type ListBackupRunsParams ¶ added in v1.2.4
type ListBackupRunsParams struct {
Page *int `form:"page,omitempty" json:"page,omitempty"`
PageSize *int `form:"pageSize,omitempty" json:"pageSize,omitempty"`
}
ListBackupRunsParams defines parameters for ListBackupRuns.
type ListContactsParams ¶ added in v1.3.2
type ListContactsParams struct {
// UpdatedSince Delta sync: return only records whose `updatedAt` is **strictly after** this instant. The value is an RFC 3339 date-time and is compared with full timestamp precision, so a client can pass back the highest `updatedAt` it has seen and receive exactly what changed since. Combines with the endpoint's other filters (ANDed) and pages as usual; on paginated endpoints `pagination.total` counts the delta.
// A bare `YYYY-MM-DD` is also accepted and read as midnight UTC on that date. An empty value is treated as if the parameter were omitted. Anything else returns 400.
// Deletions are not reported: a removed record simply stops appearing.
UpdatedSince *UpdatedSince `form:"updatedSince,omitempty" json:"updatedSince,omitempty"`
}
ListContactsParams defines parameters for ListContacts.
type ListCredentialsParams ¶ added in v1.3.2
type ListCredentialsParams struct {
// UpdatedSince Delta sync: return only records whose `updatedAt` is **strictly after** this instant. The value is an RFC 3339 date-time and is compared with full timestamp precision, so a client can pass back the highest `updatedAt` it has seen and receive exactly what changed since. Combines with the endpoint's other filters (ANDed) and pages as usual; on paginated endpoints `pagination.total` counts the delta.
// A bare `YYYY-MM-DD` is also accepted and read as midnight UTC on that date. An empty value is treated as if the parameter were omitted. Anything else returns 400.
// Deletions are not reported: a removed record simply stops appearing.
UpdatedSince *UpdatedSince `form:"updatedSince,omitempty" json:"updatedSince,omitempty"`
}
ListCredentialsParams defines parameters for ListCredentials.
type ListDeletionsParams ¶ added in v1.3.2
type ListDeletionsParams struct {
// Since Return deletions that happened strictly after this instant (RFC 3339 date-time). Use the same watermark passed to `updatedSince`.
Since time.Time `form:"since" json:"since"`
// Entity Restrict the feed to a single entity type.
Entity *ListDeletionsParamsEntity `form:"entity,omitempty" json:"entity,omitempty"`
// Page Page number (1-indexed)
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page
PageSize *int `form:"pageSize,omitempty" json:"pageSize,omitempty"`
}
ListDeletionsParams defines parameters for ListDeletions.
type ListDeletionsParamsEntity ¶ added in v1.3.2
type ListDeletionsParamsEntity string
ListDeletionsParamsEntity defines parameters for ListDeletions.
const ( ListDeletionsParamsEntityAircraft ListDeletionsParamsEntity = "aircraft" ListDeletionsParamsEntityContact ListDeletionsParamsEntity = "contact" ListDeletionsParamsEntityCredential ListDeletionsParamsEntity = "credential" ListDeletionsParamsEntityFlight ListDeletionsParamsEntity = "flight" ListDeletionsParamsEntityLicense ListDeletionsParamsEntity = "license" )
Defines values for ListDeletionsParamsEntity.
func (ListDeletionsParamsEntity) Valid ¶ added in v1.3.2
func (e ListDeletionsParamsEntity) Valid() bool
Valid indicates whether the value is a known member of the ListDeletionsParamsEntity enum.
type ListEmailDeliveriesParams ¶ added in v1.3.2
type ListEmailDeliveriesParams struct {
// Recipient Narrow the log to one address.
Recipient *openapi_types.Email `form:"recipient,omitempty" json:"recipient,omitempty"`
// Limit Maximum events to return.
Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}
ListEmailDeliveriesParams defines parameters for ListEmailDeliveries.
type ListEmailSuppressionsParams ¶ added in v1.3.2
type ListEmailSuppressionsParams struct {
Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}
ListEmailSuppressionsParams defines parameters for ListEmailSuppressions.
type ListFlightsParams ¶
type ListFlightsParams struct {
// StartDate Filter from this date (inclusive)
StartDate *openapi_types.Date `form:"startDate,omitempty" json:"startDate,omitempty"`
// EndDate Filter to this date (inclusive)
EndDate *openapi_types.Date `form:"endDate,omitempty" json:"endDate,omitempty"`
// AircraftReg Filter by aircraft registration
AircraftReg *string `form:"aircraftReg,omitempty" json:"aircraftReg,omitempty"`
// DepartureIcao Filter by departure location (ICAO code or free-text place name)
DepartureIcao *string `form:"departureIcao,omitempty" json:"departureIcao,omitempty"`
// ArrivalIcao Filter by arrival location (ICAO code or free-text place name)
ArrivalIcao *string `form:"arrivalIcao,omitempty" json:"arrivalIcao,omitempty"`
// IsPic Filter by PIC flights only
IsPic *bool `form:"isPic,omitempty" json:"isPic,omitempty"`
// IsDual Filter by dual instruction flights only
IsDual *bool `form:"isDual,omitempty" json:"isDual,omitempty"`
// Search Free-text search across registration, type, ICAO codes, and remarks
Search *string `form:"search,omitempty" json:"search,omitempty"`
// Q Advanced search query. Combines free-text terms and field tags with
// boolean logic; all conditions are evaluated in the database and can
// be combined with the other filter parameters (which are ANDed).
//
// **Syntax**
// - Bare terms match across registration, type, ICAO codes, route,
// remarks, instructor, PIC name, and crew names: `EDDF checkride`.
// At most 5 bare terms per query, each at least 3 characters; use
// tagged fields (below) for additional or shorter conditions.
// - Tags: `field:value` (contains for text, equals otherwise),
// `field=value` (exact), `field!=value`, and `>`, `>=`, `<`, `<=`
// for numeric, duration, date, and time-of-day fields.
// - Boolean operators `AND`, `OR`, `NOT` (case-insensitive) and
// parentheses. Adjacent terms are implicitly ANDed; `-term` negates.
// - Quote values containing spaces: `crew:"John Doe"`.
// - `*` is a wildcard in text values: `reg:D-E*`.
// - Durations accept minutes (`90`), `H:MM` (`1:30`), or hours
// (`1.5h`). Dates accept `YYYY`, `YYYY-MM`, or `YYYY-MM-DD`
// (partial dates match the whole period). Times of day are `HH:MM`
// UTC. Booleans are `true`/`false`.
//
// **Tags** (aliases in parentheses): date; aircraftReg (reg,
// registration, aircraft); aircraftType (type, model); departureIcao
// (departure, from, dep); arrivalIcao (arrival, to, arr); route;
// remarks (comments); offBlockTime (offBlock); onBlockTime (onBlock);
// departureTime (takeoffTime); arrivalTime (landingTime); totalTime
// (total); picTime; dualTime; nightTime (night); ifrTime (ifr);
// soloTime (solo); crossCountryTime (xc, crossCountry); sicTime;
// picusTime (picus); spicTime (spic); examinerTime (examiner);
// reliefTime (relief); dualGivenTime (dualGiven);
// simulatedFlightTime (simTime);
// groundTrainingTime; actualInstrumentTime; simulatedInstrumentTime
// (hoodTime); multiPilotTime; landings; landingsDay; landingsNight;
// takeoffsDay; takeoffsNight; holds; approaches; approachType;
// distance; isPic; isDual; isIpc (ipc); isFlightReview (flightReview,
// bfr); isProficiencyCheck (proficiencyCheck); signed; instructorName
// (instructor); instructorComments; picName; crew; fstdType (fstd);
// endorsements; launchMethod (launch); createdAt; updatedAt.
//
// Example: `q=(departure:EDDF OR arrival:EDDF) AND nightTime>0 NOT remarks:cancelled`
//
// An invalid query returns 400 with a description of the problem.
Q *string `form:"q,omitempty" json:"q,omitempty"`
// Page Page number (1-indexed)
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Number of items per page
PageSize *int `form:"pageSize,omitempty" json:"pageSize,omitempty"`
// SortBy Sort field
SortBy *ListFlightsParamsSortBy `form:"sortBy,omitempty" json:"sortBy,omitempty"`
// SortOrder Sort order
SortOrder *ListFlightsParamsSortOrder `form:"sortOrder,omitempty" json:"sortOrder,omitempty"`
// LogbookLicenseId Filter flights for a separate-logbook license. Only returns flights on aircraft whose class matches the license's class ratings.
LogbookLicenseId *openapi_types.UUID `form:"logbookLicenseId,omitempty" json:"logbookLicenseId,omitempty"`
// UpdatedSince Delta sync: return only records whose `updatedAt` is **strictly after** this instant. The value is an RFC 3339 date-time and is compared with full timestamp precision, so a client can pass back the highest `updatedAt` it has seen and receive exactly what changed since. Combines with the endpoint's other filters (ANDed) and pages as usual; on paginated endpoints `pagination.total` counts the delta.
// A bare `YYYY-MM-DD` is also accepted and read as midnight UTC on that date. An empty value is treated as if the parameter were omitted. Anything else returns 400.
// Deletions are not reported: a removed record simply stops appearing.
UpdatedSince *UpdatedSince `form:"updatedSince,omitempty" json:"updatedSince,omitempty"`
}
ListFlightsParams defines parameters for ListFlights.
type ListFlightsParamsSortBy ¶
type ListFlightsParamsSortBy string
ListFlightsParamsSortBy defines parameters for ListFlights.
const ( ListFlightsParamsSortByCreatedAt ListFlightsParamsSortBy = "createdAt" ListFlightsParamsSortByDate ListFlightsParamsSortBy = "date" ListFlightsParamsSortByTotalTime ListFlightsParamsSortBy = "totalTime" )
Defines values for ListFlightsParamsSortBy.
func (ListFlightsParamsSortBy) Valid ¶ added in v1.1.0
func (e ListFlightsParamsSortBy) Valid() bool
Valid indicates whether the value is a known member of the ListFlightsParamsSortBy enum.
type ListFlightsParamsSortOrder ¶
type ListFlightsParamsSortOrder string
ListFlightsParamsSortOrder defines parameters for ListFlights.
const ( Asc ListFlightsParamsSortOrder = "asc" Desc ListFlightsParamsSortOrder = "desc" )
Defines values for ListFlightsParamsSortOrder.
func (ListFlightsParamsSortOrder) Valid ¶ added in v1.1.0
func (e ListFlightsParamsSortOrder) Valid() bool
Valid indicates whether the value is a known member of the ListFlightsParamsSortOrder enum.
type ListImportsParams ¶
type ListImportsParams struct {
// Page Page number (1-indexed)
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page
PageSize *int `form:"pageSize,omitempty" json:"pageSize,omitempty"`
}
ListImportsParams defines parameters for ListImports.
type ListLicensesParams ¶ added in v1.3.2
type ListLicensesParams struct {
// UpdatedSince Delta sync: return only records whose `updatedAt` is **strictly after** this instant. The value is an RFC 3339 date-time and is compared with full timestamp precision, so a client can pass back the highest `updatedAt` it has seen and receive exactly what changed since. Combines with the endpoint's other filters (ANDed) and pages as usual; on paginated endpoints `pagination.total` counts the delta.
// A bare `YYYY-MM-DD` is also accepted and read as midnight UTC on that date. An empty value is treated as if the parameter were omitted. Anything else returns 400.
// Deletions are not reported: a removed record simply stops appearing.
UpdatedSince *UpdatedSince `form:"updatedSince,omitempty" json:"updatedSince,omitempty"`
}
ListLicensesParams defines parameters for ListLicenses.
type LocalAuthDisabled ¶ added in v1.3.2
type LocalAuthDisabled = Error
LocalAuthDisabled defines model for LocalAuthDisabled.
type Login2FAJSONBody ¶
type Login2FAJSONBody struct {
// Code 6-digit TOTP code or recovery code
Code string `json:"code"`
// TwoFactorToken Temporary token from login response
TwoFactorToken string `json:"twoFactorToken"`
}
Login2FAJSONBody defines parameters for Login2FA.
type Login2FAJSONRequestBody ¶
type Login2FAJSONRequestBody Login2FAJSONBody
Login2FAJSONRequestBody defines body for Login2FA for application/json ContentType.
type LoginUser200JSONResponseBody ¶ added in v1.3.2
type LoginUser200JSONResponseBody struct {
// contains filtered or unexported fields
}
LoginUser200JSONResponseBody defines parameters for LoginUser.
func (LoginUser200JSONResponseBody) AsAuthResponse ¶ added in v1.3.2
func (t LoginUser200JSONResponseBody) AsAuthResponse() (AuthResponse, error)
AsAuthResponse returns the union data inside the LoginUser200JSONResponseBody as a AuthResponse
func (LoginUser200JSONResponseBody) AsTwoFactorLoginRequired ¶ added in v1.3.2
func (t LoginUser200JSONResponseBody) AsTwoFactorLoginRequired() (TwoFactorLoginRequired, error)
AsTwoFactorLoginRequired returns the union data inside the LoginUser200JSONResponseBody as a TwoFactorLoginRequired
func (*LoginUser200JSONResponseBody) FromAuthResponse ¶ added in v1.3.2
func (t *LoginUser200JSONResponseBody) FromAuthResponse(v AuthResponse) error
FromAuthResponse overwrites any union data inside the LoginUser200JSONResponseBody as the provided AuthResponse
func (*LoginUser200JSONResponseBody) FromTwoFactorLoginRequired ¶ added in v1.3.2
func (t *LoginUser200JSONResponseBody) FromTwoFactorLoginRequired(v TwoFactorLoginRequired) error
FromTwoFactorLoginRequired overwrites any union data inside the LoginUser200JSONResponseBody as the provided TwoFactorLoginRequired
func (LoginUser200JSONResponseBody) MarshalJSON ¶ added in v1.3.2
func (t LoginUser200JSONResponseBody) MarshalJSON() ([]byte, error)
func (*LoginUser200JSONResponseBody) MergeAuthResponse ¶ added in v1.3.2
func (t *LoginUser200JSONResponseBody) MergeAuthResponse(v AuthResponse) error
MergeAuthResponse performs a merge with any union data inside the LoginUser200JSONResponseBody, using the provided AuthResponse
func (*LoginUser200JSONResponseBody) MergeTwoFactorLoginRequired ¶ added in v1.3.2
func (t *LoginUser200JSONResponseBody) MergeTwoFactorLoginRequired(v TwoFactorLoginRequired) error
MergeTwoFactorLoginRequired performs a merge with any union data inside the LoginUser200JSONResponseBody, using the provided TwoFactorLoginRequired
func (*LoginUser200JSONResponseBody) UnmarshalJSON ¶ added in v1.3.2
func (t *LoginUser200JSONResponseBody) UnmarshalJSON(b []byte) error
type LoginUserJSONBody ¶
type LoginUserJSONBody struct {
// Email Example: pilot@example.com
Email openapi_types.Email `json:"email"`
// Password Example: SecurePass123!
Password string `json:"password"`
}
LoginUserJSONBody defines parameters for LoginUser.
type LoginUserJSONRequestBody ¶
type LoginUserJSONRequestBody LoginUserJSONBody
LoginUserJSONRequestBody defines body for LoginUser for application/json ContentType.
type LogoutUserJSONBody ¶ added in v1.3.1
type LogoutUserJSONBody struct {
RefreshToken string `json:"refreshToken"`
}
LogoutUserJSONBody defines parameters for LogoutUser.
type LogoutUserJSONRequestBody ¶ added in v1.3.1
type LogoutUserJSONRequestBody LogoutUserJSONBody
LogoutUserJSONRequestBody defines body for LogoutUser for application/json ContentType.
type MessageParams ¶ added in v1.3.7
type MessageParams struct {
// Date A date the message refers to that is not the object's own expiry — a proficiency check, a flight review completion, or a window opening
//
// Example: 2026-01-15
Date *openapi_types.Date `json:"date,omitempty"`
// Days Days until expiry, for countdown keys
//
// Example: 42
Days *int `json:"days,omitempty"`
// Needed Outstanding count for a shortfall key (landings, launches)
//
// Example: 2
Needed *int `json:"needed,omitempty"`
}
MessageParams Variable parts of a localised message that are not already fields on the enclosing object. Which fields are present is determined by messageKey; see docs/CURRENCY_MESSAGES.md for the per-key contract.
type MiddlewareFunc ¶
type NotificationCategory ¶
type NotificationCategory string
NotificationCategory Notification category for granular control: - credential_medical: Medical certificate expiry - credential_language: Language proficiency expiry - credential_security: Security clearance expiry - credential_other: Other credential expiry - rating_expiry: Class rating expiry date approaching - currency_passenger: Passenger carrying currency (e.g., 3 T&L in 90 days) - currency_night: Night currency - currency_instrument: Instrument currency - currency_flight_review: Flight review / proficiency check due - currency_revalidation: EASA revalidation requirements approaching expiry
const ( CredentialLanguage NotificationCategory = "credential_language" CredentialMedical NotificationCategory = "credential_medical" CredentialOther NotificationCategory = "credential_other" CredentialSecurity NotificationCategory = "credential_security" CurrencyFlightReview NotificationCategory = "currency_flight_review" CurrencyInstrument NotificationCategory = "currency_instrument" CurrencyNight NotificationCategory = "currency_night" CurrencyPassenger NotificationCategory = "currency_passenger" CurrencyRevalidation NotificationCategory = "currency_revalidation" RatingExpiry NotificationCategory = "rating_expiry" )
Defines values for NotificationCategory.
func (NotificationCategory) Valid ¶ added in v1.1.0
func (e NotificationCategory) Valid() bool
Valid indicates whether the value is a known member of the NotificationCategory enum.
type NotificationHistoryEntry ¶
type NotificationHistoryEntry struct {
// Category Notification category for granular control:
// - credential_medical: Medical certificate expiry
// - credential_language: Language proficiency expiry
// - credential_security: Security clearance expiry
// - credential_other: Other credential expiry
// - rating_expiry: Class rating expiry date approaching
// - currency_passenger: Passenger carrying currency (e.g., 3 T&L in 90 days)
// - currency_night: Night currency
// - currency_instrument: Instrument currency
// - currency_flight_review: Flight review / proficiency check due
// - currency_revalidation: EASA revalidation requirements approaching expiry
Category NotificationCategory `json:"category"`
// DaysBeforeExpiry Days before expiry when notification was sent
DaysBeforeExpiry *int `json:"daysBeforeExpiry,omitempty"`
Id openapi_types.UUID `json:"id"`
// ReferenceDescription Human-readable description of the reference item
ReferenceDescription *string `json:"referenceDescription,omitempty"`
// ReferenceType Type of item that triggered the notification (e.g., credential, rating)
ReferenceType *string `json:"referenceType,omitempty"`
// SentAt When the notification was sent
SentAt time.Time `json:"sentAt"`
// Subject Email subject line
Subject string `json:"subject"`
}
NotificationHistoryEntry defines model for NotificationHistoryEntry.
type NotificationHistoryResponse ¶
type NotificationHistoryResponse struct {
Items []NotificationHistoryEntry `json:"items"`
// Total Total number of notification history entries
Total int `json:"total"`
}
NotificationHistoryResponse defines model for NotificationHistoryResponse.
type NotificationPreferences ¶
type NotificationPreferences struct {
// CheckHour Preferred hour (UTC) for daily notification check (0-23)
//
// Example: 8
CheckHour int `json:"checkHour"`
// EmailEnabled Master switch for all email notifications
//
// Example: true
EmailEnabled bool `json:"emailEnabled"`
// EnabledCategories List of enabled notification categories
//
// Example: ["credential_medical","credential_language","credential_security","credential_other","rating_expiry","currency_passenger","currency_night","currency_instrument","currency_flight_review","currency_revalidation"]
EnabledCategories []NotificationCategory `json:"enabledCategories"`
// WarningDays Days before expiry to send warnings
//
// Example: [30,14,7]
WarningDays []int `json:"warningDays"`
}
NotificationPreferences defines model for NotificationPreferences.
type NotificationPreferencesUpdate ¶
type NotificationPreferencesUpdate struct {
CheckHour *int `json:"checkHour,omitempty"`
EmailEnabled *bool `json:"emailEnabled,omitempty"`
EnabledCategories *[]NotificationCategory `json:"enabledCategories,omitempty"`
WarningDays *[]int `json:"warningDays,omitempty"`
}
NotificationPreferencesUpdate defines model for NotificationPreferencesUpdate.
type OidcCallbackParams ¶ added in v1.3.7
type OidcCallbackParams struct {
// Code Authorization code issued by the provider
Code *string `form:"code,omitempty" json:"code,omitempty"`
// State Opaque state minted by /auth/oidc/authorize
State *string `form:"state,omitempty" json:"state,omitempty"`
// Error Error code reported by the provider (for example `access_denied`)
Error *string `form:"error,omitempty" json:"error,omitempty"`
}
OidcCallbackParams defines parameters for OidcCallback.
type PaginatedAdminAuditLog ¶
type PaginatedAdminAuditLog struct {
Data []AdminAuditLogEntry `json:"data"`
Pagination struct {
Page int `json:"page"`
PageSize int `json:"pageSize"`
Total int `json:"total"`
TotalPages int `json:"totalPages"`
} `json:"pagination"`
}
PaginatedAdminAuditLog defines model for PaginatedAdminAuditLog.
type PaginatedAdminUsers ¶
type PaginatedAdminUsers struct {
Data []AdminUser `json:"data"`
Pagination struct {
Page int `json:"page"`
PageSize int `json:"pageSize"`
Total int `json:"total"`
TotalPages int `json:"totalPages"`
} `json:"pagination"`
}
PaginatedAdminUsers defines model for PaginatedAdminUsers.
type PaginatedAircraft ¶
type PaginatedAircraft struct {
Data []Aircraft `json:"data"`
Pagination struct {
// Page Current page (1-indexed)
//
// Example: 1
Page int `json:"page"`
// PageSize Items per page
//
// Example: 20
PageSize int `json:"pageSize"`
// Total Total number of items
//
// Example: 25
Total int `json:"total"`
// TotalPages Total number of pages
//
// Example: 2
TotalPages int `json:"totalPages"`
} `json:"pagination"`
}
PaginatedAircraft defines model for PaginatedAircraft.
type PaginatedBackupRuns ¶ added in v1.2.4
type PaginatedBackupRuns struct {
Data []BackupRun `json:"data"`
Pagination struct {
Page int `json:"page"`
PageSize int `json:"pageSize"`
Total int `json:"total"`
TotalPages int `json:"totalPages"`
} `json:"pagination"`
}
PaginatedBackupRuns defines model for PaginatedBackupRuns.
type PaginatedFlights ¶
type PaginatedFlights struct {
Data []Flight `json:"data"`
Pagination struct {
// Page Current page (1-indexed)
//
// Example: 1
Page int `json:"page"`
// PageSize Items per page
//
// Example: 20
PageSize int `json:"pageSize"`
// Total Total number of items
//
// Example: 150
Total int `json:"total"`
// TotalPages Total number of pages
//
// Example: 8
TotalPages int `json:"totalPages"`
} `json:"pagination"`
}
PaginatedFlights defines model for PaginatedFlights.
type PaginatedImports ¶
type PaginatedImports struct {
Data []ImportResult `json:"data"`
Pagination struct {
// Page Current page (1-indexed)
//
// Example: 1
Page int `json:"page"`
// PageSize Items per page
//
// Example: 20
PageSize int `json:"pageSize"`
// Total Total number of imports
//
// Example: 5
Total int `json:"total"`
// TotalPages Total number of pages
//
// Example: 1
TotalPages int `json:"totalPages"`
} `json:"pagination"`
}
PaginatedImports defines model for PaginatedImports.
type PassengerCurrency ¶
type PassengerCurrency struct {
// ClassType Aircraft class rating type:
// - SEP_LAND/SEP_SEA: Single Engine Piston (Land/Sea)
// - MEP_LAND/MEP_SEA: Multi Engine Piston (Land/Sea)
// - SET_LAND/SET_SEA: Single Engine Turboprop (Land/Sea)
// - TMG: Touring Motor Glider
// - IR: Instrument Rating
// - OTHER: Other rating type
ClassType ClassType `json:"classType"`
// DayExpiresOn Last date the day requirement stays met if the pilot does not fly again — the oldest landing still needed to reach dayRequired, plus 90 days (inclusive). Absent when the day requirement is not currently met.
//
// Example: 2026-11-15
DayExpiresOn *openapi_types.Date `json:"dayExpiresOn,omitempty"`
// DayLandings Number of landings in the preceding 90 days
DayLandings int `json:"dayLandings"`
// DayRequired Required landings for day passenger currency (typically 3)
//
// Example: 3
DayRequired int `json:"dayRequired"`
// DayStatus Day passenger currency status
DayStatus PassengerCurrencyDayStatus `json:"dayStatus"`
// MessageKey Stable key identifying which statement is true, for client-side localisation. Catalogued in docs/CURRENCY_MESSAGES.md. Not an enum — an unrecognised key should fall back to `message`.
//
// Example: pax.current_day_night
MessageKey *string `json:"messageKey,omitempty"`
// MessageParams Variable parts of a localised message that are not already fields on the enclosing object. Which fields are present is determined by messageKey; see docs/CURRENCY_MESSAGES.md for the per-key contract.
MessageParams *MessageParams `json:"messageParams,omitempty"`
// NightExpiresOn Last date the night requirement stays met if the pilot does not fly again. Absent when the night requirement is not met, not applicable (no night privilege) or waived (EASA IR holders under FCL.060(b)(2)(ii)).
//
// Example: 2026-10-02
NightExpiresOn *openapi_types.Date `json:"nightExpiresOn,omitempty"`
// NightLandings Number of night landings in the preceding 90 days
NightLandings int `json:"nightLandings"`
// NightPrivilege Whether this license type has night flying privileges. false for Sport, Recreational, Glider (FAA), SPL, LAPL (EASA), UL.
//
// Example: true
NightPrivilege *bool `json:"nightPrivilege,omitempty"`
// NightRequired Required night landings for night passenger currency (typically 3, 0 if night not applicable)
//
// Example: 3
NightRequired int `json:"nightRequired"`
// NightStatus Night passenger currency status
NightStatus PassengerCurrencyNightStatus `json:"nightStatus"`
// RegulatoryAuthority Authority that defines the passenger currency rules
RegulatoryAuthority string `json:"regulatoryAuthority"`
// RuleDescription Regulatory reference for the passenger currency rule
//
// Example: 3 takeoffs & landings in same type/class within preceding 90 days to carry passengers (EASA FCL.060(b))
RuleDescription *string `json:"ruleDescription,omitempty"`
// RuleDescriptionKey Stable key for the passenger currency rule, for client-side localisation of ruleDescription
//
// Example: easa_pax
RuleDescriptionKey *string `json:"ruleDescriptionKey,omitempty"`
}
PassengerCurrency defines model for PassengerCurrency.
type PassengerCurrencyDayStatus ¶
type PassengerCurrencyDayStatus string
PassengerCurrencyDayStatus Day passenger currency status
const ( PassengerCurrencyDayStatusCurrent PassengerCurrencyDayStatus = "current" PassengerCurrencyDayStatusExpired PassengerCurrencyDayStatus = "expired" PassengerCurrencyDayStatusExpiring PassengerCurrencyDayStatus = "expiring" PassengerCurrencyDayStatusUnknown PassengerCurrencyDayStatus = "unknown" )
Defines values for PassengerCurrencyDayStatus.
func (PassengerCurrencyDayStatus) Valid ¶ added in v1.1.0
func (e PassengerCurrencyDayStatus) Valid() bool
Valid indicates whether the value is a known member of the PassengerCurrencyDayStatus enum.
type PassengerCurrencyNightStatus ¶
type PassengerCurrencyNightStatus string
PassengerCurrencyNightStatus Night passenger currency status
const ( PassengerCurrencyNightStatusCurrent PassengerCurrencyNightStatus = "current" PassengerCurrencyNightStatusExpired PassengerCurrencyNightStatus = "expired" PassengerCurrencyNightStatusExpiring PassengerCurrencyNightStatus = "expiring" PassengerCurrencyNightStatusUnknown PassengerCurrencyNightStatus = "unknown" )
Defines values for PassengerCurrencyNightStatus.
func (PassengerCurrencyNightStatus) Valid ¶ added in v1.1.0
func (e PassengerCurrencyNightStatus) Valid() bool
Valid indicates whether the value is a known member of the PassengerCurrencyNightStatus enum.
type PayloadTooLarge ¶ added in v1.3.2
type PayloadTooLarge = Error
PayloadTooLarge defines model for PayloadTooLarge.
type PreviewCustomCurrencyRuleJSONRequestBody ¶ added in v1.3.7
type PreviewCustomCurrencyRuleJSONRequestBody = CustomCurrencyPreviewRequest
PreviewCustomCurrencyRuleJSONRequestBody defines body for PreviewCustomCurrencyRule for application/json ContentType.
type PreviewImportJSONRequestBody ¶
type PreviewImportJSONRequestBody = ImportPreviewRequest
PreviewImportJSONRequestBody defines body for PreviewImport for application/json ContentType.
type PublicSignatureInfo ¶ added in v1.2.9
type PublicSignatureInfo struct {
AircraftReg string `json:"aircraftReg"`
AircraftType string `json:"aircraftType"`
DualTime *int `json:"dualTime,omitempty"`
ExpiresAt time.Time `json:"expiresAt"`
FlightDate openapi_types.Date `json:"flightDate"`
// InstructorName Prefill, if the owner supplied one when creating the request.
InstructorName *string `json:"instructorName,omitempty"`
Route *string `json:"route,omitempty"`
// Status Always "pending" on a 200 response; any other state is reported via 404/410 instead.
Status PublicSignatureInfoStatus `json:"status"`
// TotalTime Total block time in minutes
TotalTime int `json:"totalTime"`
}
PublicSignatureInfo Deliberately minimal — no owner PII beyond the flight's own logged details.
type PublicSignatureInfoStatus ¶ added in v1.2.9
type PublicSignatureInfoStatus string
PublicSignatureInfoStatus Always "pending" on a 200 response; any other state is reported via 404/410 instead.
const (
PublicSignatureInfoStatusPending PublicSignatureInfoStatus = "pending"
)
Defines values for PublicSignatureInfoStatus.
func (PublicSignatureInfoStatus) Valid ¶ added in v1.2.9
func (e PublicSignatureInfoStatus) Valid() bool
Valid indicates whether the value is a known member of the PublicSignatureInfoStatus enum.
type PutMyBaselineJSONRequestBody ¶ added in v1.2.3
type PutMyBaselineJSONRequestBody = FlightBaselineInput
PutMyBaselineJSONRequestBody defines body for PutMyBaseline for application/json ContentType.
type RecordFlightSessionEventJSONRequestBody ¶ added in v1.2.8
type RecordFlightSessionEventJSONRequestBody = FlightSessionEvent
RecordFlightSessionEventJSONRequestBody defines body for RecordFlightSessionEvent for application/json ContentType.
type RefreshTokenJSONBody ¶
type RefreshTokenJSONBody struct {
// RefreshToken Example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
RefreshToken string `json:"refreshToken"`
}
RefreshTokenJSONBody defines parameters for RefreshToken.
type RefreshTokenJSONRequestBody ¶
type RefreshTokenJSONRequestBody RefreshTokenJSONBody
RefreshTokenJSONRequestBody defines body for RefreshToken for application/json ContentType.
type RegisterUserJSONBody ¶
type RegisterUserJSONBody struct {
// Email Example: pilot@example.com
Email openapi_types.Email `json:"email"`
// Name Example: John Doe
Name string `json:"name"`
// Password 12–72 characters, containing at least one lowercase letter, one uppercase letter, one digit and one special character.
//
// Example: SecurePass123!
Password string `json:"password"`
// PreferredLocale Preferred language for the interface. Defaults to `en` when omitted.
//
// Example: en
PreferredLocale *RegisterUserJSONBodyPreferredLocale `json:"preferredLocale,omitempty"`
}
RegisterUserJSONBody defines parameters for RegisterUser.
type RegisterUserJSONBodyPreferredLocale ¶ added in v1.2.6
type RegisterUserJSONBodyPreferredLocale string
RegisterUserJSONBodyPreferredLocale defines parameters for RegisterUser.
const ( RegisterUserJSONBodyPreferredLocaleDe RegisterUserJSONBodyPreferredLocale = "de" RegisterUserJSONBodyPreferredLocaleEn RegisterUserJSONBodyPreferredLocale = "en" )
Defines values for RegisterUserJSONBodyPreferredLocale.
func (RegisterUserJSONBodyPreferredLocale) Valid ¶ added in v1.2.6
func (e RegisterUserJSONBodyPreferredLocale) Valid() bool
Valid indicates whether the value is a known member of the RegisterUserJSONBodyPreferredLocale enum.
type RegisterUserJSONRequestBody ¶
type RegisterUserJSONRequestBody RegisterUserJSONBody
RegisterUserJSONRequestBody defines body for RegisterUser for application/json ContentType.
type RegistrationResponse ¶ added in v1.2.5
type RegistrationResponse struct {
// Email Registered account email address
//
// Example: pilot@example.com
Email openapi_types.Email `json:"email"`
// Message Example: A verification email has been sent. Please check your inbox to complete registration.
Message string `json:"message"`
// VerificationRequired True when SMTP is configured and the user must verify via email; false when the backend auto-verifies because SMTP is not configured.
//
// Example: true
VerificationRequired bool `json:"verificationRequired"`
}
RegistrationResponse defines model for RegistrationResponse.
type RequestPasswordResetJSONBody ¶ added in v1.1.0
type RequestPasswordResetJSONBody struct {
// Email Example: pilot@example.com
Email openapi_types.Email `json:"email"`
}
RequestPasswordResetJSONBody defines parameters for RequestPasswordReset.
type RequestPasswordResetJSONRequestBody ¶ added in v1.1.0
type RequestPasswordResetJSONRequestBody RequestPasswordResetJSONBody
RequestPasswordResetJSONRequestBody defines body for RequestPasswordReset for application/json ContentType.
type ResendSignatureRequestJSONRequestBody ¶ added in v1.2.9
type ResendSignatureRequestJSONRequestBody = ResendSignatureRequestRequest
ResendSignatureRequestJSONRequestBody defines body for ResendSignatureRequest for application/json ContentType.
type ResendSignatureRequestRequest ¶ added in v1.2.9
type ResendSignatureRequestRequest struct {
// InstructorEmail If supplied, updates the delivery address and sends the request email. Omit to just rotate the token/link without emailing anyone.
InstructorEmail *openapi_types.Email `json:"instructorEmail,omitempty"`
}
ResendSignatureRequestRequest defines model for ResendSignatureRequestRequest.
type ResendVerificationEmailJSONBody ¶ added in v1.2.5
type ResendVerificationEmailJSONBody struct {
// Email Example: pilot@example.com
Email openapi_types.Email `json:"email"`
}
ResendVerificationEmailJSONBody defines parameters for ResendVerificationEmail.
type ResendVerificationEmailJSONRequestBody ¶ added in v1.2.5
type ResendVerificationEmailJSONRequestBody ResendVerificationEmailJSONBody
ResendVerificationEmailJSONRequestBody defines body for ResendVerificationEmail for application/json ContentType.
type ResetPasswordJSONBody ¶ added in v1.1.0
type ResetPasswordJSONBody struct {
// NewPassword The new password. 12–72 characters, containing at least one lowercase letter, one uppercase letter, one digit and one special character.
NewPassword string `json:"newPassword"`
// Token Password reset token from email
Token string `json:"token"`
// TwoFactorCode TOTP code or recovery code. Required when the account has 2FA enabled,
// ignored otherwise.
//
//
// Example: 123456
TwoFactorCode *string `json:"twoFactorCode,omitempty"`
}
ResetPasswordJSONBody defines parameters for ResetPassword.
type ResetPasswordJSONRequestBody ¶ added in v1.1.0
type ResetPasswordJSONRequestBody ResetPasswordJSONBody
ResetPasswordJSONRequestBody defines body for ResetPassword for application/json ContentType.
type SearchAirportsParams ¶
type SearchAirportsParams struct {
// Q Search query (ICAO code prefix)
Q string `form:"q" json:"q"`
Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}
SearchAirportsParams defines parameters for SearchAirports.
type SearchContactsParams ¶
type SearchContactsParams struct {
// Q Search query string
Q string `form:"q" json:"q"`
// Limit Maximum results (default 10)
Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}
SearchContactsParams defines parameters for SearchContacts.
type ServerInterface ¶
type ServerInterface interface {
// CreateAnnouncement Create a system announcement
// (POST /admin/announcements)
CreateAnnouncement(c *gin.Context)
// DeleteAnnouncement Delete an announcement
// (DELETE /admin/announcements/{announcementId})
DeleteAnnouncement(c *gin.Context, announcementId openapi_types.UUID)
// ListAdminAuditLog List admin audit log
// (GET /admin/audit-log)
ListAdminAuditLog(c *gin.Context, params ListAdminAuditLogParams)
// GetAdminConfig Runtime configuration (non-secret)
// (GET /admin/config)
GetAdminConfig(c *gin.Context)
// ListEmailDeliveries Recent email delivery events
// (GET /admin/email/deliveries)
ListEmailDeliveries(c *gin.Context, params ListEmailDeliveriesParams)
// ListEmailSuppressions List suppressed email addresses
// (GET /admin/email/suppressions)
ListEmailSuppressions(c *gin.Context, params ListEmailSuppressionsParams)
// DeleteEmailSuppression Lift an email suppression
// (DELETE /admin/email/suppressions/{email})
DeleteEmailSuppression(c *gin.Context, email openapi_types.Email)
// CleanupTokens Clean up expired tokens
// (POST /admin/maintenance/cleanup-tokens)
CleanupTokens(c *gin.Context)
// CleanupUnverifiedAccounts Sweep unverified accounts now
// (POST /admin/maintenance/cleanup-unverified)
CleanupUnverifiedAccounts(c *gin.Context)
// SmtpTest Send SMTP test email
// (POST /admin/maintenance/smtp-test)
SmtpTest(c *gin.Context)
// TriggerNotifications Trigger notification check
// (POST /admin/maintenance/trigger-notifications)
TriggerNotifications(c *gin.Context)
// GetAdminStats System-wide aggregate statistics
// (GET /admin/stats)
GetAdminStats(c *gin.Context)
// GetUpdateStatus Release update status for the deployed components
// (GET /admin/update)
GetUpdateStatus(c *gin.Context, params GetUpdateStatusParams)
// ListAdminUsers List all users (privacy-preserving)
// (GET /admin/users)
ListAdminUsers(c *gin.Context, params ListAdminUsersParams)
// DeleteUser Permanently delete a user account
// (DELETE /admin/users/{userId})
DeleteUser(c *gin.Context, userId openapi_types.UUID)
// DisableUser Disable a user account
// (POST /admin/users/{userId}/disable)
DisableUser(c *gin.Context, userId openapi_types.UUID)
// EnableUser Re-enable a user account
// (POST /admin/users/{userId}/enable)
EnableUser(c *gin.Context, userId openapi_types.UUID)
// ResetUser2fa Reset 2FA for a user
// (POST /admin/users/{userId}/reset-2fa)
ResetUser2fa(c *gin.Context, userId openapi_types.UUID)
// UnlockUser Unlock a locked user account
// (POST /admin/users/{userId}/unlock)
UnlockUser(c *gin.Context, userId openapi_types.UUID)
// ListAircraft List aircraft
// (GET /aircraft)
ListAircraft(c *gin.Context, params ListAircraftParams)
// CreateAircraft Add aircraft
// (POST /aircraft)
CreateAircraft(c *gin.Context)
// GetAircraftStats Get per-aircraft flight statistics
// (GET /aircraft/stats)
GetAircraftStats(c *gin.Context)
// DeleteAircraft Delete aircraft
// (DELETE /aircraft/{aircraftId})
DeleteAircraft(c *gin.Context, aircraftId AircraftId)
// GetAircraft Get aircraft details
// (GET /aircraft/{aircraftId})
GetAircraft(c *gin.Context, aircraftId AircraftId)
// UpdateAircraft Update aircraft
// (PATCH /aircraft/{aircraftId})
UpdateAircraft(c *gin.Context, aircraftId AircraftId)
// GetAirportPack Download the airport database pack
// (GET /airports/pack)
GetAirportPack(c *gin.Context)
// GetAirportPackStatus Get airport pack freshness
// (GET /airports/pack/status)
GetAirportPackStatus(c *gin.Context)
// SearchAirports Search airports
// (GET /airports/search)
SearchAirports(c *gin.Context, params SearchAirportsParams)
// GetAirport Get airport coordinates
// (GET /airports/{icaoCode})
GetAirport(c *gin.Context, icaoCode string)
// GetAnnouncements Get active announcements and user hints
// (GET /announcements)
GetAnnouncements(c *gin.Context)
// Disable2FA Disable 2FA
// (POST /auth/2fa/disable)
Disable2FA(c *gin.Context)
// Login2FA Complete login with 2FA code
// (POST /auth/2fa/login)
Login2FA(c *gin.Context)
// Setup2FA Start 2FA setup
// (POST /auth/2fa/setup)
Setup2FA(c *gin.Context)
// Verify2FA Verify and enable 2FA
// (POST /auth/2fa/verify)
Verify2FA(c *gin.Context)
// ChangePassword Change password
// (POST /auth/change-password)
ChangePassword(c *gin.Context)
// LoginUser Login
// (POST /auth/login)
LoginUser(c *gin.Context)
// LogoutUser Log out
// (POST /auth/logout)
LogoutUser(c *gin.Context)
// AuthorizeOidc Start an OIDC login (browser redirect)
// (GET /auth/oidc/authorize)
AuthorizeOidc(c *gin.Context, params AuthorizeOidcParams)
// OidcCallback OIDC provider redirect target (browser redirect)
// (GET /auth/oidc/callback)
OidcCallback(c *gin.Context, params OidcCallbackParams)
// ExchangeOidcCode Exchange an OIDC handoff code for tokens
// (POST /auth/oidc/exchange)
ExchangeOidcCode(c *gin.Context)
// ResetPassword Reset password with token
// (POST /auth/password-reset)
ResetPassword(c *gin.Context)
// RequestPasswordReset Request password reset
// (POST /auth/password-reset-request)
RequestPasswordReset(c *gin.Context)
// GetAuthProviders Which sign-in methods this server offers
// (GET /auth/providers)
GetAuthProviders(c *gin.Context)
// RefreshToken Refresh access token
// (POST /auth/refresh)
RefreshToken(c *gin.Context)
// RegisterUser Register a new user
// (POST /auth/register)
RegisterUser(c *gin.Context)
// RevokeOtherSessions Revoke all other sessions
// (DELETE /auth/sessions)
RevokeOtherSessions(c *gin.Context)
// ListSessions List active sessions
// (GET /auth/sessions)
ListSessions(c *gin.Context)
// RevokeSession Revoke a session
// (DELETE /auth/sessions/{sessionId})
RevokeSession(c *gin.Context, sessionId openapi_types.UUID)
// VerifyEmail Verify email address
// (POST /auth/verify-email)
VerifyEmail(c *gin.Context)
// ResendVerificationEmail Resend the email-verification message
// (POST /auth/verify-email/resend)
ResendVerificationEmail(c *gin.Context)
// ListWebauthnCredentials List the current user's passkeys
// (GET /auth/webauthn/credentials)
ListWebauthnCredentials(c *gin.Context)
// DeleteWebauthnCredential Revoke a passkey
// (DELETE /auth/webauthn/credentials/{credentialId})
DeleteWebauthnCredential(c *gin.Context, credentialId openapi_types.UUID)
// WebauthnLoginOptions Begin passkey login
// (POST /auth/webauthn/login/options)
WebauthnLoginOptions(c *gin.Context)
// WebauthnLoginVerify Verify passkey assertion and sign in
// (POST /auth/webauthn/login/verify)
WebauthnLoginVerify(c *gin.Context)
// WebauthnRegisterOptions Begin passkey registration
// (POST /auth/webauthn/register/options)
WebauthnRegisterOptions(c *gin.Context)
// WebauthnRegisterVerify Verify passkey registration attestation
// (POST /auth/webauthn/register/verify)
WebauthnRegisterVerify(c *gin.Context)
// ListBackupDestinations List the user's backup destinations
// (GET /backups/destinations)
ListBackupDestinations(c *gin.Context)
// CreateBackupDestination Create a backup destination
// (POST /backups/destinations)
CreateBackupDestination(c *gin.Context)
// DeleteBackupDestination Delete a backup destination
// (DELETE /backups/destinations/{destinationId})
DeleteBackupDestination(c *gin.Context, destinationId BackupDestinationId)
// GetBackupDestination Get a backup destination
// (GET /backups/destinations/{destinationId})
GetBackupDestination(c *gin.Context, destinationId BackupDestinationId)
// UpdateBackupDestination Update a backup destination
// (PATCH /backups/destinations/{destinationId})
UpdateBackupDestination(c *gin.Context, destinationId BackupDestinationId)
// RunBackupNow Trigger an immediate backup run
// (POST /backups/destinations/{destinationId}/run)
RunBackupNow(c *gin.Context, destinationId BackupDestinationId)
// ListBackupRuns List backup runs for a destination
// (GET /backups/destinations/{destinationId}/runs)
ListBackupRuns(c *gin.Context, destinationId BackupDestinationId, params ListBackupRunsParams)
// TestBackupDestination Test a backup destination's connectivity
// (POST /backups/destinations/{destinationId}/test)
TestBackupDestination(c *gin.Context, destinationId BackupDestinationId)
// ListBackupProviders List available backup providers
// (GET /backups/providers)
ListBackupProviders(c *gin.Context)
// GetBackupRun Get a single backup run by ID
// (GET /backups/runs/{runId})
GetBackupRun(c *gin.Context, runId openapi_types.UUID)
// ListContacts List all contacts
// (GET /contacts)
ListContacts(c *gin.Context, params ListContactsParams)
// CreateContact Create a contact
// (POST /contacts)
CreateContact(c *gin.Context)
// SearchContacts Search contacts
// (GET /contacts/search)
SearchContacts(c *gin.Context, params SearchContactsParams)
// DeleteContact Delete a contact
// (DELETE /contacts/{contactId})
DeleteContact(c *gin.Context, contactId openapi_types.UUID)
// GetContact Get a contact
// (GET /contacts/{contactId})
GetContact(c *gin.Context, contactId openapi_types.UUID)
// UpdateContact Update a contact
// (PUT /contacts/{contactId})
UpdateContact(c *gin.Context, contactId openapi_types.UUID)
// ListCredentials List credentials
// (GET /credentials)
ListCredentials(c *gin.Context, params ListCredentialsParams)
// CreateCredential Add credential
// (POST /credentials)
CreateCredential(c *gin.Context)
// DeleteCredential Delete credential
// (DELETE /credentials/{credentialId})
DeleteCredential(c *gin.Context, credentialId CredentialId)
// GetCredential Get credential details
// (GET /credentials/{credentialId})
GetCredential(c *gin.Context, credentialId CredentialId)
// UpdateCredential Update credential
// (PATCH /credentials/{credentialId})
UpdateCredential(c *gin.Context, credentialId CredentialId)
// ListCredentialFiles List a credential's reference files
// (GET /credentials/{credentialId}/files)
ListCredentialFiles(c *gin.Context, credentialId CredentialId)
// UploadCredentialFile Upload a reference file for a credential
// (POST /credentials/{credentialId}/files)
UploadCredentialFile(c *gin.Context, credentialId CredentialId)
// DeleteCredentialFile Delete a credential reference image
// (DELETE /credentials/{credentialId}/files/{fileId})
DeleteCredentialFile(c *gin.Context, credentialId CredentialId, fileId DocumentFileId)
// GetCredentialFile Download a credential reference image
// (GET /credentials/{credentialId}/files/{fileId})
GetCredentialFile(c *gin.Context, credentialId CredentialId, fileId DocumentFileId)
// GetAllCurrencyStatus Get currency status for all class ratings
// (GET /currency)
GetAllCurrencyStatus(c *gin.Context)
// ListCustomCurrencyRules List the caller's custom currency rules
// (GET /custom-currency)
ListCustomCurrencyRules(c *gin.Context)
// CreateCustomCurrencyRule Create a custom currency rule
// (POST /custom-currency)
CreateCustomCurrencyRule(c *gin.Context)
// PreviewCustomCurrencyRule Evaluate an unsaved rule definition
// (POST /custom-currency/preview)
PreviewCustomCurrencyRule(c *gin.Context)
// (GET /custom-currency/shared/{shareToken})
GetSharedCustomCurrencyRule(c *gin.Context, shareToken CustomCurrencyShareToken)
// (POST /custom-currency/shared/{shareToken}/import)
ImportSharedCustomCurrencyRule(c *gin.Context, shareToken CustomCurrencyShareToken)
// DeleteCustomCurrencyRule Delete a custom currency rule
// (DELETE /custom-currency/{ruleId})
DeleteCustomCurrencyRule(c *gin.Context, ruleId CustomCurrencyRuleId)
// GetCustomCurrencyRule Get one custom currency rule
// (GET /custom-currency/{ruleId})
GetCustomCurrencyRule(c *gin.Context, ruleId CustomCurrencyRuleId)
// UpdateCustomCurrencyRule Replace a custom currency rule
// (PUT /custom-currency/{ruleId})
UpdateCustomCurrencyRule(c *gin.Context, ruleId CustomCurrencyRuleId)
// SetCustomCurrencyRuleEnabled Pause or resume a rule
// (PUT /custom-currency/{ruleId}/enabled)
SetCustomCurrencyRuleEnabled(c *gin.Context, ruleId CustomCurrencyRuleId)
// SetCustomCurrencyRuleNotify Opt a rule in or out of expiry notifications
// (PUT /custom-currency/{ruleId}/notify)
SetCustomCurrencyRuleNotify(c *gin.Context, ruleId CustomCurrencyRuleId)
// (DELETE /custom-currency/{ruleId}/share)
DisableCustomCurrencyRuleShare(c *gin.Context, ruleId CustomCurrencyRuleId)
// (POST /custom-currency/{ruleId}/share)
EnableCustomCurrencyRuleShare(c *gin.Context, ruleId CustomCurrencyRuleId)
// ExportFlightsCSV Export flights as CSV
// (GET /exports/csv)
ExportFlightsCSV(c *gin.Context, params ExportFlightsCSVParams)
// ExportDataJSON Export full data backup as JSON
// (GET /exports/json)
ExportDataJSON(c *gin.Context)
// ExportFlightsPDF Export flights as PDF logbook
// (GET /exports/pdf)
ExportFlightsPDF(c *gin.Context, params ExportFlightsPDFParams)
// ExportContactsVCard Export contacts as vCard
// (GET /exports/vcard)
ExportContactsVCard(c *gin.Context)
// GetFeatures Which optional features this server has switched on
// (GET /features)
GetFeatures(c *gin.Context)
// DiscardCurrentFlightSession Discard current flight session
// (DELETE /flight-sessions/current)
DiscardCurrentFlightSession(c *gin.Context)
// GetCurrentFlightSession Get current flight session
// (GET /flight-sessions/current)
GetCurrentFlightSession(c *gin.Context)
// RecordFlightSessionEvent Record a flight session event
// (POST /flight-sessions/current/events)
RecordFlightSessionEvent(c *gin.Context)
// ListFlights List flights
// (GET /flights)
ListFlights(c *gin.Context, params ListFlightsParams)
// CreateFlight Create flight log
// (POST /flights)
CreateFlight(c *gin.Context)
// DeleteAllFlights Delete all flights
// (DELETE /flights/delete-all)
DeleteAllFlights(c *gin.Context)
// RecalculateFlights Recalculate all flights
// (POST /flights/recalculate)
RecalculateFlights(c *gin.Context)
// DeleteFlight Delete flight
// (DELETE /flights/{flightId})
DeleteFlight(c *gin.Context, flightId FlightId)
// GetFlight Get flight details
// (GET /flights/{flightId})
GetFlight(c *gin.Context, flightId FlightId)
// UpdateFlight Update flight
// (PUT /flights/{flightId})
UpdateFlight(c *gin.Context, flightId FlightId)
// ListFlightSignatures List signature history for a flight
// (GET /flights/{flightId}/signatures)
ListFlightSignatures(c *gin.Context, flightId FlightId)
// CreateSignatureRequest Create a deferred signature request
// (POST /flights/{flightId}/signatures)
CreateSignatureRequest(c *gin.Context, flightId FlightId)
// SignFlightLive Record a live (in-person) signature
// (POST /flights/{flightId}/signatures/live)
SignFlightLive(c *gin.Context, flightId FlightId)
// GetFlightSignature Get a single signature
// (GET /flights/{flightId}/signatures/{signatureId})
GetFlightSignature(c *gin.Context, flightId FlightId, signatureId SignatureId)
// GetFlightSignatureImage Get the signature image
// (GET /flights/{flightId}/signatures/{signatureId}/image)
GetFlightSignatureImage(c *gin.Context, flightId FlightId, signatureId SignatureId)
// ResendSignatureRequest Resend or regenerate a pending signature request
// (POST /flights/{flightId}/signatures/{signatureId}/resend)
ResendSignatureRequest(c *gin.Context, flightId FlightId, signatureId SignatureId)
// RevokeSignatureRequest Revoke a pending signature request
// (POST /flights/{flightId}/signatures/{signatureId}/revoke)
RevokeSignatureRequest(c *gin.Context, flightId FlightId, signatureId SignatureId)
// VoidFlightSignature Void a completed signature
// (POST /flights/{flightId}/signatures/{signatureId}/void)
VoidFlightSignature(c *gin.Context, flightId FlightId, signatureId SignatureId)
// ListImports List import history
// (GET /imports)
ListImports(c *gin.Context, params ListImportsParams)
// ConfirmImport Confirm and execute import
// (POST /imports/confirm)
ConfirmImport(c *gin.Context)
// ImportDataJSON Restore a NinerLog JSON backup
// (POST /imports/json)
ImportDataJSON(c *gin.Context)
// PreviewImport Preview mapped flights
// (POST /imports/preview)
PreviewImport(c *gin.Context)
// ListImportTemplates List supported logbook import templates
// (GET /imports/templates)
ListImportTemplates(c *gin.Context)
// UploadImportFile Upload file for import
// (POST /imports/upload)
UploadImportFile(c *gin.Context)
// GetImport Get import details
// (GET /imports/{importId})
GetImport(c *gin.Context, importId ImportId)
// ListLicenses List user's licenses
// (GET /licenses)
ListLicenses(c *gin.Context, params ListLicensesParams)
// CreateLicense Create a new license
// (POST /licenses)
CreateLicense(c *gin.Context)
// DeleteLicense Delete license
// (DELETE /licenses/{licenseId})
DeleteLicense(c *gin.Context, licenseId LicenseId)
// GetLicense Get license details
// (GET /licenses/{licenseId})
GetLicense(c *gin.Context, licenseId LicenseId)
// UpdateLicense Update license
// (PATCH /licenses/{licenseId})
UpdateLicense(c *gin.Context, licenseId LicenseId)
// GetLicenseCurrency Check currency status
// (GET /licenses/{licenseId}/currency)
GetLicenseCurrency(c *gin.Context, licenseId LicenseId)
// ListLicenseFiles List a licence's reference files
// (GET /licenses/{licenseId}/files)
ListLicenseFiles(c *gin.Context, licenseId LicenseId)
// UploadLicenseFile Upload a reference file for a licence
// (POST /licenses/{licenseId}/files)
UploadLicenseFile(c *gin.Context, licenseId LicenseId)
// DeleteLicenseFile Delete a licence reference image
// (DELETE /licenses/{licenseId}/files/{fileId})
DeleteLicenseFile(c *gin.Context, licenseId LicenseId, fileId DocumentFileId)
// GetLicenseFile Download a licence reference image
// (GET /licenses/{licenseId}/files/{fileId})
GetLicenseFile(c *gin.Context, licenseId LicenseId, fileId DocumentFileId)
// ListClassRatings List class ratings for a license
// (GET /licenses/{licenseId}/ratings)
ListClassRatings(c *gin.Context, licenseId LicenseId)
// CreateClassRating Add class rating to license
// (POST /licenses/{licenseId}/ratings)
CreateClassRating(c *gin.Context, licenseId LicenseId)
// DeleteClassRating Delete class rating
// (DELETE /licenses/{licenseId}/ratings/{ratingId})
DeleteClassRating(c *gin.Context, licenseId LicenseId, ratingId openapi_types.UUID)
// UpdateClassRating Update class rating
// (PATCH /licenses/{licenseId}/ratings/{ratingId})
UpdateClassRating(c *gin.Context, licenseId LicenseId, ratingId openapi_types.UUID)
// GetLicenseStatistics Get license statistics
// (GET /licenses/{licenseId}/statistics)
GetLicenseStatistics(c *gin.Context, licenseId LicenseId, params GetLicenseStatisticsParams)
// GetAirportStats Get airport statistics
// (GET /reports/airport-stats)
GetAirportStats(c *gin.Context)
// GetFlightAnalytics Get full logbook analytics
// (GET /reports/analytics)
GetFlightAnalytics(c *gin.Context, params GetFlightAnalyticsParams)
// GetFlightRoutes Get flight routes for map
// (GET /reports/routes)
GetFlightRoutes(c *gin.Context)
// GetStatsByClass Get statistics by aircraft class and category
// (GET /reports/stats-by-class)
GetStatsByClass(c *gin.Context, params GetStatsByClassParams)
// GetFlightTrends Get monthly flight trends
// (GET /reports/trends)
GetFlightTrends(c *gin.Context, params GetFlightTrendsParams)
// GetPublicSignatureInfo Get public signing info for a token
// (GET /sign/{token})
GetPublicSignatureInfo(c *gin.Context, token SignatureToken)
// CompletePublicSignature Complete a signature via a public link
// (POST /sign/{token})
CompletePublicSignature(c *gin.Context, token SignatureToken)
// ListDeletions List deletions since a watermark
// (GET /sync/deletions)
ListDeletions(c *gin.Context, params ListDeletionsParams)
// DeleteCurrentUser Delete current user account
// (DELETE /users/me)
DeleteCurrentUser(c *gin.Context)
// GetCurrentUser Get current user profile
// (GET /users/me)
GetCurrentUser(c *gin.Context)
// UpdateCurrentUser Update current user profile
// (PATCH /users/me)
UpdateCurrentUser(c *gin.Context)
// DeleteMyBaseline Remove the user's initial hours snapshot
// (DELETE /users/me/baseline)
DeleteMyBaseline(c *gin.Context)
// GetMyBaseline Get the user's initial hours snapshot (baseline)
// (GET /users/me/baseline)
GetMyBaseline(c *gin.Context)
// PutMyBaseline Create or replace the user's initial hours snapshot
// (PUT /users/me/baseline)
PutMyBaseline(c *gin.Context)
// DeleteAllUserData Delete all user data
// (DELETE /users/me/data)
DeleteAllUserData(c *gin.Context)
// GetNotificationPreferences Get notification preferences
// (GET /users/me/notifications)
GetNotificationPreferences(c *gin.Context)
// UpdateNotificationPreferences Update notification preferences
// (PATCH /users/me/notifications)
UpdateNotificationPreferences(c *gin.Context)
// GetNotificationHistory Get notification history
// (GET /users/me/notifications/history)
GetNotificationHistory(c *gin.Context, params GetNotificationHistoryParams)
// GetMyStatistics Get current user's flight statistics
// (GET /users/me/statistics)
GetMyStatistics(c *gin.Context, params GetMyStatisticsParams)
}
ServerInterface represents all server handlers.
type ServerInterfaceWrapper ¶
type ServerInterfaceWrapper struct {
Handler ServerInterface
HandlerMiddlewares []MiddlewareFunc
ErrorHandler func(*gin.Context, error, int)
}
ServerInterfaceWrapper converts contexts to parameters.
func (*ServerInterfaceWrapper) AuthorizeOidc ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) AuthorizeOidc(c *gin.Context)
AuthorizeOidc operation middleware
func (*ServerInterfaceWrapper) ChangePassword ¶
func (siw *ServerInterfaceWrapper) ChangePassword(c *gin.Context)
ChangePassword operation middleware
func (*ServerInterfaceWrapper) CleanupTokens ¶
func (siw *ServerInterfaceWrapper) CleanupTokens(c *gin.Context)
CleanupTokens operation middleware
func (*ServerInterfaceWrapper) CleanupUnverifiedAccounts ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) CleanupUnverifiedAccounts(c *gin.Context)
CleanupUnverifiedAccounts operation middleware
func (*ServerInterfaceWrapper) CompletePublicSignature ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) CompletePublicSignature(c *gin.Context)
CompletePublicSignature operation middleware
func (*ServerInterfaceWrapper) ConfirmImport ¶
func (siw *ServerInterfaceWrapper) ConfirmImport(c *gin.Context)
ConfirmImport operation middleware
func (*ServerInterfaceWrapper) CreateAircraft ¶
func (siw *ServerInterfaceWrapper) CreateAircraft(c *gin.Context)
CreateAircraft operation middleware
func (*ServerInterfaceWrapper) CreateAnnouncement ¶
func (siw *ServerInterfaceWrapper) CreateAnnouncement(c *gin.Context)
CreateAnnouncement operation middleware
func (*ServerInterfaceWrapper) CreateBackupDestination ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) CreateBackupDestination(c *gin.Context)
CreateBackupDestination operation middleware
func (*ServerInterfaceWrapper) CreateClassRating ¶
func (siw *ServerInterfaceWrapper) CreateClassRating(c *gin.Context)
CreateClassRating operation middleware
func (*ServerInterfaceWrapper) CreateContact ¶
func (siw *ServerInterfaceWrapper) CreateContact(c *gin.Context)
CreateContact operation middleware
func (*ServerInterfaceWrapper) CreateCredential ¶
func (siw *ServerInterfaceWrapper) CreateCredential(c *gin.Context)
CreateCredential operation middleware
func (*ServerInterfaceWrapper) CreateCustomCurrencyRule ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) CreateCustomCurrencyRule(c *gin.Context)
CreateCustomCurrencyRule operation middleware
func (*ServerInterfaceWrapper) CreateFlight ¶
func (siw *ServerInterfaceWrapper) CreateFlight(c *gin.Context)
CreateFlight operation middleware
func (*ServerInterfaceWrapper) CreateLicense ¶
func (siw *ServerInterfaceWrapper) CreateLicense(c *gin.Context)
CreateLicense operation middleware
func (*ServerInterfaceWrapper) CreateSignatureRequest ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) CreateSignatureRequest(c *gin.Context)
CreateSignatureRequest operation middleware
func (*ServerInterfaceWrapper) DeleteAircraft ¶
func (siw *ServerInterfaceWrapper) DeleteAircraft(c *gin.Context)
DeleteAircraft operation middleware
func (*ServerInterfaceWrapper) DeleteAllFlights ¶
func (siw *ServerInterfaceWrapper) DeleteAllFlights(c *gin.Context)
DeleteAllFlights operation middleware
func (*ServerInterfaceWrapper) DeleteAllUserData ¶
func (siw *ServerInterfaceWrapper) DeleteAllUserData(c *gin.Context)
DeleteAllUserData operation middleware
func (*ServerInterfaceWrapper) DeleteAnnouncement ¶
func (siw *ServerInterfaceWrapper) DeleteAnnouncement(c *gin.Context)
DeleteAnnouncement operation middleware
func (*ServerInterfaceWrapper) DeleteBackupDestination ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) DeleteBackupDestination(c *gin.Context)
DeleteBackupDestination operation middleware
func (*ServerInterfaceWrapper) DeleteClassRating ¶
func (siw *ServerInterfaceWrapper) DeleteClassRating(c *gin.Context)
DeleteClassRating operation middleware
func (*ServerInterfaceWrapper) DeleteContact ¶
func (siw *ServerInterfaceWrapper) DeleteContact(c *gin.Context)
DeleteContact operation middleware
func (*ServerInterfaceWrapper) DeleteCredential ¶
func (siw *ServerInterfaceWrapper) DeleteCredential(c *gin.Context)
DeleteCredential operation middleware
func (*ServerInterfaceWrapper) DeleteCredentialFile ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) DeleteCredentialFile(c *gin.Context)
DeleteCredentialFile operation middleware
func (*ServerInterfaceWrapper) DeleteCurrentUser ¶
func (siw *ServerInterfaceWrapper) DeleteCurrentUser(c *gin.Context)
DeleteCurrentUser operation middleware
func (*ServerInterfaceWrapper) DeleteCustomCurrencyRule ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) DeleteCustomCurrencyRule(c *gin.Context)
DeleteCustomCurrencyRule operation middleware
func (*ServerInterfaceWrapper) DeleteEmailSuppression ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) DeleteEmailSuppression(c *gin.Context)
DeleteEmailSuppression operation middleware
func (*ServerInterfaceWrapper) DeleteFlight ¶
func (siw *ServerInterfaceWrapper) DeleteFlight(c *gin.Context)
DeleteFlight operation middleware
func (*ServerInterfaceWrapper) DeleteLicense ¶
func (siw *ServerInterfaceWrapper) DeleteLicense(c *gin.Context)
DeleteLicense operation middleware
func (*ServerInterfaceWrapper) DeleteLicenseFile ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) DeleteLicenseFile(c *gin.Context)
DeleteLicenseFile operation middleware
func (*ServerInterfaceWrapper) DeleteMyBaseline ¶ added in v1.2.3
func (siw *ServerInterfaceWrapper) DeleteMyBaseline(c *gin.Context)
DeleteMyBaseline operation middleware
func (*ServerInterfaceWrapper) DeleteUser ¶ added in v1.2.3
func (siw *ServerInterfaceWrapper) DeleteUser(c *gin.Context)
DeleteUser operation middleware
func (*ServerInterfaceWrapper) DeleteWebauthnCredential ¶ added in v1.2.0
func (siw *ServerInterfaceWrapper) DeleteWebauthnCredential(c *gin.Context)
DeleteWebauthnCredential operation middleware
func (*ServerInterfaceWrapper) Disable2FA ¶
func (siw *ServerInterfaceWrapper) Disable2FA(c *gin.Context)
Disable2FA operation middleware
func (*ServerInterfaceWrapper) DisableCustomCurrencyRuleShare ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) DisableCustomCurrencyRuleShare(c *gin.Context)
DisableCustomCurrencyRuleShare operation middleware
func (*ServerInterfaceWrapper) DisableUser ¶
func (siw *ServerInterfaceWrapper) DisableUser(c *gin.Context)
DisableUser operation middleware
func (*ServerInterfaceWrapper) DiscardCurrentFlightSession ¶ added in v1.2.8
func (siw *ServerInterfaceWrapper) DiscardCurrentFlightSession(c *gin.Context)
DiscardCurrentFlightSession operation middleware
func (*ServerInterfaceWrapper) EnableCustomCurrencyRuleShare ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) EnableCustomCurrencyRuleShare(c *gin.Context)
EnableCustomCurrencyRuleShare operation middleware
func (*ServerInterfaceWrapper) EnableUser ¶
func (siw *ServerInterfaceWrapper) EnableUser(c *gin.Context)
EnableUser operation middleware
func (*ServerInterfaceWrapper) ExchangeOidcCode ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) ExchangeOidcCode(c *gin.Context)
ExchangeOidcCode operation middleware
func (*ServerInterfaceWrapper) ExportContactsVCard ¶ added in v1.3.3
func (siw *ServerInterfaceWrapper) ExportContactsVCard(c *gin.Context)
ExportContactsVCard operation middleware
func (*ServerInterfaceWrapper) ExportDataJSON ¶
func (siw *ServerInterfaceWrapper) ExportDataJSON(c *gin.Context)
ExportDataJSON operation middleware
func (*ServerInterfaceWrapper) ExportFlightsCSV ¶
func (siw *ServerInterfaceWrapper) ExportFlightsCSV(c *gin.Context)
ExportFlightsCSV operation middleware
func (*ServerInterfaceWrapper) ExportFlightsPDF ¶
func (siw *ServerInterfaceWrapper) ExportFlightsPDF(c *gin.Context)
ExportFlightsPDF operation middleware
func (*ServerInterfaceWrapper) GetAdminConfig ¶
func (siw *ServerInterfaceWrapper) GetAdminConfig(c *gin.Context)
GetAdminConfig operation middleware
func (*ServerInterfaceWrapper) GetAdminStats ¶
func (siw *ServerInterfaceWrapper) GetAdminStats(c *gin.Context)
GetAdminStats operation middleware
func (*ServerInterfaceWrapper) GetAircraft ¶
func (siw *ServerInterfaceWrapper) GetAircraft(c *gin.Context)
GetAircraft operation middleware
func (*ServerInterfaceWrapper) GetAircraftStats ¶ added in v1.3.1
func (siw *ServerInterfaceWrapper) GetAircraftStats(c *gin.Context)
GetAircraftStats operation middleware
func (*ServerInterfaceWrapper) GetAirport ¶
func (siw *ServerInterfaceWrapper) GetAirport(c *gin.Context)
GetAirport operation middleware
func (*ServerInterfaceWrapper) GetAirportPack ¶ added in v1.3.5
func (siw *ServerInterfaceWrapper) GetAirportPack(c *gin.Context)
GetAirportPack operation middleware
func (*ServerInterfaceWrapper) GetAirportPackStatus ¶ added in v1.3.5
func (siw *ServerInterfaceWrapper) GetAirportPackStatus(c *gin.Context)
GetAirportPackStatus operation middleware
func (*ServerInterfaceWrapper) GetAirportStats ¶
func (siw *ServerInterfaceWrapper) GetAirportStats(c *gin.Context)
GetAirportStats operation middleware
func (*ServerInterfaceWrapper) GetAllCurrencyStatus ¶
func (siw *ServerInterfaceWrapper) GetAllCurrencyStatus(c *gin.Context)
GetAllCurrencyStatus operation middleware
func (*ServerInterfaceWrapper) GetAnnouncements ¶
func (siw *ServerInterfaceWrapper) GetAnnouncements(c *gin.Context)
GetAnnouncements operation middleware
func (*ServerInterfaceWrapper) GetAuthProviders ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) GetAuthProviders(c *gin.Context)
GetAuthProviders operation middleware
func (*ServerInterfaceWrapper) GetBackupDestination ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) GetBackupDestination(c *gin.Context)
GetBackupDestination operation middleware
func (*ServerInterfaceWrapper) GetBackupRun ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) GetBackupRun(c *gin.Context)
GetBackupRun operation middleware
func (*ServerInterfaceWrapper) GetContact ¶
func (siw *ServerInterfaceWrapper) GetContact(c *gin.Context)
GetContact operation middleware
func (*ServerInterfaceWrapper) GetCredential ¶
func (siw *ServerInterfaceWrapper) GetCredential(c *gin.Context)
GetCredential operation middleware
func (*ServerInterfaceWrapper) GetCredentialFile ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) GetCredentialFile(c *gin.Context)
GetCredentialFile operation middleware
func (*ServerInterfaceWrapper) GetCurrentFlightSession ¶ added in v1.2.8
func (siw *ServerInterfaceWrapper) GetCurrentFlightSession(c *gin.Context)
GetCurrentFlightSession operation middleware
func (*ServerInterfaceWrapper) GetCurrentUser ¶
func (siw *ServerInterfaceWrapper) GetCurrentUser(c *gin.Context)
GetCurrentUser operation middleware
func (*ServerInterfaceWrapper) GetCustomCurrencyRule ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) GetCustomCurrencyRule(c *gin.Context)
GetCustomCurrencyRule operation middleware
func (*ServerInterfaceWrapper) GetFeatures ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) GetFeatures(c *gin.Context)
GetFeatures operation middleware
func (*ServerInterfaceWrapper) GetFlight ¶
func (siw *ServerInterfaceWrapper) GetFlight(c *gin.Context)
GetFlight operation middleware
func (*ServerInterfaceWrapper) GetFlightAnalytics ¶ added in v1.3.1
func (siw *ServerInterfaceWrapper) GetFlightAnalytics(c *gin.Context)
GetFlightAnalytics operation middleware
func (*ServerInterfaceWrapper) GetFlightRoutes ¶
func (siw *ServerInterfaceWrapper) GetFlightRoutes(c *gin.Context)
GetFlightRoutes operation middleware
func (*ServerInterfaceWrapper) GetFlightSignature ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) GetFlightSignature(c *gin.Context)
GetFlightSignature operation middleware
func (*ServerInterfaceWrapper) GetFlightSignatureImage ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) GetFlightSignatureImage(c *gin.Context)
GetFlightSignatureImage operation middleware
func (*ServerInterfaceWrapper) GetFlightTrends ¶
func (siw *ServerInterfaceWrapper) GetFlightTrends(c *gin.Context)
GetFlightTrends operation middleware
func (*ServerInterfaceWrapper) GetImport ¶
func (siw *ServerInterfaceWrapper) GetImport(c *gin.Context)
GetImport operation middleware
func (*ServerInterfaceWrapper) GetLicense ¶
func (siw *ServerInterfaceWrapper) GetLicense(c *gin.Context)
GetLicense operation middleware
func (*ServerInterfaceWrapper) GetLicenseCurrency ¶
func (siw *ServerInterfaceWrapper) GetLicenseCurrency(c *gin.Context)
GetLicenseCurrency operation middleware
func (*ServerInterfaceWrapper) GetLicenseFile ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) GetLicenseFile(c *gin.Context)
GetLicenseFile operation middleware
func (*ServerInterfaceWrapper) GetLicenseStatistics ¶
func (siw *ServerInterfaceWrapper) GetLicenseStatistics(c *gin.Context)
GetLicenseStatistics operation middleware
func (*ServerInterfaceWrapper) GetMyBaseline ¶ added in v1.2.3
func (siw *ServerInterfaceWrapper) GetMyBaseline(c *gin.Context)
GetMyBaseline operation middleware
func (*ServerInterfaceWrapper) GetMyStatistics ¶
func (siw *ServerInterfaceWrapper) GetMyStatistics(c *gin.Context)
GetMyStatistics operation middleware
func (*ServerInterfaceWrapper) GetNotificationHistory ¶
func (siw *ServerInterfaceWrapper) GetNotificationHistory(c *gin.Context)
GetNotificationHistory operation middleware
func (*ServerInterfaceWrapper) GetNotificationPreferences ¶
func (siw *ServerInterfaceWrapper) GetNotificationPreferences(c *gin.Context)
GetNotificationPreferences operation middleware
func (*ServerInterfaceWrapper) GetPublicSignatureInfo ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) GetPublicSignatureInfo(c *gin.Context)
GetPublicSignatureInfo operation middleware
func (*ServerInterfaceWrapper) GetSharedCustomCurrencyRule ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) GetSharedCustomCurrencyRule(c *gin.Context)
GetSharedCustomCurrencyRule operation middleware
func (*ServerInterfaceWrapper) GetStatsByClass ¶
func (siw *ServerInterfaceWrapper) GetStatsByClass(c *gin.Context)
GetStatsByClass operation middleware
func (*ServerInterfaceWrapper) GetUpdateStatus ¶ added in v1.3.5
func (siw *ServerInterfaceWrapper) GetUpdateStatus(c *gin.Context)
GetUpdateStatus operation middleware
func (*ServerInterfaceWrapper) ImportDataJSON ¶ added in v1.2.3
func (siw *ServerInterfaceWrapper) ImportDataJSON(c *gin.Context)
ImportDataJSON operation middleware
func (*ServerInterfaceWrapper) ImportSharedCustomCurrencyRule ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) ImportSharedCustomCurrencyRule(c *gin.Context)
ImportSharedCustomCurrencyRule operation middleware
func (*ServerInterfaceWrapper) ListAdminAuditLog ¶
func (siw *ServerInterfaceWrapper) ListAdminAuditLog(c *gin.Context)
ListAdminAuditLog operation middleware
func (*ServerInterfaceWrapper) ListAdminUsers ¶
func (siw *ServerInterfaceWrapper) ListAdminUsers(c *gin.Context)
ListAdminUsers operation middleware
func (*ServerInterfaceWrapper) ListAircraft ¶
func (siw *ServerInterfaceWrapper) ListAircraft(c *gin.Context)
ListAircraft operation middleware
func (*ServerInterfaceWrapper) ListBackupDestinations ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) ListBackupDestinations(c *gin.Context)
ListBackupDestinations operation middleware
func (*ServerInterfaceWrapper) ListBackupProviders ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) ListBackupProviders(c *gin.Context)
ListBackupProviders operation middleware
func (*ServerInterfaceWrapper) ListBackupRuns ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) ListBackupRuns(c *gin.Context)
ListBackupRuns operation middleware
func (*ServerInterfaceWrapper) ListClassRatings ¶
func (siw *ServerInterfaceWrapper) ListClassRatings(c *gin.Context)
ListClassRatings operation middleware
func (*ServerInterfaceWrapper) ListContacts ¶
func (siw *ServerInterfaceWrapper) ListContacts(c *gin.Context)
ListContacts operation middleware
func (*ServerInterfaceWrapper) ListCredentialFiles ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) ListCredentialFiles(c *gin.Context)
ListCredentialFiles operation middleware
func (*ServerInterfaceWrapper) ListCredentials ¶
func (siw *ServerInterfaceWrapper) ListCredentials(c *gin.Context)
ListCredentials operation middleware
func (*ServerInterfaceWrapper) ListCustomCurrencyRules ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) ListCustomCurrencyRules(c *gin.Context)
ListCustomCurrencyRules operation middleware
func (*ServerInterfaceWrapper) ListDeletions ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) ListDeletions(c *gin.Context)
ListDeletions operation middleware
func (*ServerInterfaceWrapper) ListEmailDeliveries ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) ListEmailDeliveries(c *gin.Context)
ListEmailDeliveries operation middleware
func (*ServerInterfaceWrapper) ListEmailSuppressions ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) ListEmailSuppressions(c *gin.Context)
ListEmailSuppressions operation middleware
func (*ServerInterfaceWrapper) ListFlightSignatures ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) ListFlightSignatures(c *gin.Context)
ListFlightSignatures operation middleware
func (*ServerInterfaceWrapper) ListFlights ¶
func (siw *ServerInterfaceWrapper) ListFlights(c *gin.Context)
ListFlights operation middleware
func (*ServerInterfaceWrapper) ListImportTemplates ¶ added in v1.3.5
func (siw *ServerInterfaceWrapper) ListImportTemplates(c *gin.Context)
ListImportTemplates operation middleware
func (*ServerInterfaceWrapper) ListImports ¶
func (siw *ServerInterfaceWrapper) ListImports(c *gin.Context)
ListImports operation middleware
func (*ServerInterfaceWrapper) ListLicenseFiles ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) ListLicenseFiles(c *gin.Context)
ListLicenseFiles operation middleware
func (*ServerInterfaceWrapper) ListLicenses ¶
func (siw *ServerInterfaceWrapper) ListLicenses(c *gin.Context)
ListLicenses operation middleware
func (*ServerInterfaceWrapper) ListSessions ¶ added in v1.3.6
func (siw *ServerInterfaceWrapper) ListSessions(c *gin.Context)
ListSessions operation middleware
func (*ServerInterfaceWrapper) ListWebauthnCredentials ¶ added in v1.2.0
func (siw *ServerInterfaceWrapper) ListWebauthnCredentials(c *gin.Context)
ListWebauthnCredentials operation middleware
func (*ServerInterfaceWrapper) Login2FA ¶
func (siw *ServerInterfaceWrapper) Login2FA(c *gin.Context)
Login2FA operation middleware
func (*ServerInterfaceWrapper) LoginUser ¶
func (siw *ServerInterfaceWrapper) LoginUser(c *gin.Context)
LoginUser operation middleware
func (*ServerInterfaceWrapper) LogoutUser ¶ added in v1.3.1
func (siw *ServerInterfaceWrapper) LogoutUser(c *gin.Context)
LogoutUser operation middleware
func (*ServerInterfaceWrapper) OidcCallback ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) OidcCallback(c *gin.Context)
OidcCallback operation middleware
func (*ServerInterfaceWrapper) PreviewCustomCurrencyRule ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) PreviewCustomCurrencyRule(c *gin.Context)
PreviewCustomCurrencyRule operation middleware
func (*ServerInterfaceWrapper) PreviewImport ¶
func (siw *ServerInterfaceWrapper) PreviewImport(c *gin.Context)
PreviewImport operation middleware
func (*ServerInterfaceWrapper) PutMyBaseline ¶ added in v1.2.3
func (siw *ServerInterfaceWrapper) PutMyBaseline(c *gin.Context)
PutMyBaseline operation middleware
func (*ServerInterfaceWrapper) RecalculateFlights ¶
func (siw *ServerInterfaceWrapper) RecalculateFlights(c *gin.Context)
RecalculateFlights operation middleware
func (*ServerInterfaceWrapper) RecordFlightSessionEvent ¶ added in v1.2.8
func (siw *ServerInterfaceWrapper) RecordFlightSessionEvent(c *gin.Context)
RecordFlightSessionEvent operation middleware
func (*ServerInterfaceWrapper) RefreshToken ¶
func (siw *ServerInterfaceWrapper) RefreshToken(c *gin.Context)
RefreshToken operation middleware
func (*ServerInterfaceWrapper) RegisterUser ¶
func (siw *ServerInterfaceWrapper) RegisterUser(c *gin.Context)
RegisterUser operation middleware
func (*ServerInterfaceWrapper) RequestPasswordReset ¶ added in v1.1.0
func (siw *ServerInterfaceWrapper) RequestPasswordReset(c *gin.Context)
RequestPasswordReset operation middleware
func (*ServerInterfaceWrapper) ResendSignatureRequest ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) ResendSignatureRequest(c *gin.Context)
ResendSignatureRequest operation middleware
func (*ServerInterfaceWrapper) ResendVerificationEmail ¶ added in v1.2.5
func (siw *ServerInterfaceWrapper) ResendVerificationEmail(c *gin.Context)
ResendVerificationEmail operation middleware
func (*ServerInterfaceWrapper) ResetPassword ¶ added in v1.1.0
func (siw *ServerInterfaceWrapper) ResetPassword(c *gin.Context)
ResetPassword operation middleware
func (*ServerInterfaceWrapper) ResetUser2fa ¶
func (siw *ServerInterfaceWrapper) ResetUser2fa(c *gin.Context)
ResetUser2fa operation middleware
func (*ServerInterfaceWrapper) RevokeOtherSessions ¶ added in v1.3.6
func (siw *ServerInterfaceWrapper) RevokeOtherSessions(c *gin.Context)
RevokeOtherSessions operation middleware
func (*ServerInterfaceWrapper) RevokeSession ¶ added in v1.3.6
func (siw *ServerInterfaceWrapper) RevokeSession(c *gin.Context)
RevokeSession operation middleware
func (*ServerInterfaceWrapper) RevokeSignatureRequest ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) RevokeSignatureRequest(c *gin.Context)
RevokeSignatureRequest operation middleware
func (*ServerInterfaceWrapper) RunBackupNow ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) RunBackupNow(c *gin.Context)
RunBackupNow operation middleware
func (*ServerInterfaceWrapper) SearchAirports ¶
func (siw *ServerInterfaceWrapper) SearchAirports(c *gin.Context)
SearchAirports operation middleware
func (*ServerInterfaceWrapper) SearchContacts ¶
func (siw *ServerInterfaceWrapper) SearchContacts(c *gin.Context)
SearchContacts operation middleware
func (*ServerInterfaceWrapper) SetCustomCurrencyRuleEnabled ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) SetCustomCurrencyRuleEnabled(c *gin.Context)
SetCustomCurrencyRuleEnabled operation middleware
func (*ServerInterfaceWrapper) SetCustomCurrencyRuleNotify ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) SetCustomCurrencyRuleNotify(c *gin.Context)
SetCustomCurrencyRuleNotify operation middleware
func (*ServerInterfaceWrapper) Setup2FA ¶
func (siw *ServerInterfaceWrapper) Setup2FA(c *gin.Context)
Setup2FA operation middleware
func (*ServerInterfaceWrapper) SignFlightLive ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) SignFlightLive(c *gin.Context)
SignFlightLive operation middleware
func (*ServerInterfaceWrapper) SmtpTest ¶
func (siw *ServerInterfaceWrapper) SmtpTest(c *gin.Context)
SmtpTest operation middleware
func (*ServerInterfaceWrapper) TestBackupDestination ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) TestBackupDestination(c *gin.Context)
TestBackupDestination operation middleware
func (*ServerInterfaceWrapper) TriggerNotifications ¶
func (siw *ServerInterfaceWrapper) TriggerNotifications(c *gin.Context)
TriggerNotifications operation middleware
func (*ServerInterfaceWrapper) UnlockUser ¶
func (siw *ServerInterfaceWrapper) UnlockUser(c *gin.Context)
UnlockUser operation middleware
func (*ServerInterfaceWrapper) UpdateAircraft ¶
func (siw *ServerInterfaceWrapper) UpdateAircraft(c *gin.Context)
UpdateAircraft operation middleware
func (*ServerInterfaceWrapper) UpdateBackupDestination ¶ added in v1.2.4
func (siw *ServerInterfaceWrapper) UpdateBackupDestination(c *gin.Context)
UpdateBackupDestination operation middleware
func (*ServerInterfaceWrapper) UpdateClassRating ¶
func (siw *ServerInterfaceWrapper) UpdateClassRating(c *gin.Context)
UpdateClassRating operation middleware
func (*ServerInterfaceWrapper) UpdateContact ¶
func (siw *ServerInterfaceWrapper) UpdateContact(c *gin.Context)
UpdateContact operation middleware
func (*ServerInterfaceWrapper) UpdateCredential ¶
func (siw *ServerInterfaceWrapper) UpdateCredential(c *gin.Context)
UpdateCredential operation middleware
func (*ServerInterfaceWrapper) UpdateCurrentUser ¶
func (siw *ServerInterfaceWrapper) UpdateCurrentUser(c *gin.Context)
UpdateCurrentUser operation middleware
func (*ServerInterfaceWrapper) UpdateCustomCurrencyRule ¶ added in v1.3.7
func (siw *ServerInterfaceWrapper) UpdateCustomCurrencyRule(c *gin.Context)
UpdateCustomCurrencyRule operation middleware
func (*ServerInterfaceWrapper) UpdateFlight ¶
func (siw *ServerInterfaceWrapper) UpdateFlight(c *gin.Context)
UpdateFlight operation middleware
func (*ServerInterfaceWrapper) UpdateLicense ¶
func (siw *ServerInterfaceWrapper) UpdateLicense(c *gin.Context)
UpdateLicense operation middleware
func (*ServerInterfaceWrapper) UpdateNotificationPreferences ¶
func (siw *ServerInterfaceWrapper) UpdateNotificationPreferences(c *gin.Context)
UpdateNotificationPreferences operation middleware
func (*ServerInterfaceWrapper) UploadCredentialFile ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) UploadCredentialFile(c *gin.Context)
UploadCredentialFile operation middleware
func (*ServerInterfaceWrapper) UploadImportFile ¶
func (siw *ServerInterfaceWrapper) UploadImportFile(c *gin.Context)
UploadImportFile operation middleware
func (*ServerInterfaceWrapper) UploadLicenseFile ¶ added in v1.3.2
func (siw *ServerInterfaceWrapper) UploadLicenseFile(c *gin.Context)
UploadLicenseFile operation middleware
func (*ServerInterfaceWrapper) Verify2FA ¶
func (siw *ServerInterfaceWrapper) Verify2FA(c *gin.Context)
Verify2FA operation middleware
func (*ServerInterfaceWrapper) VerifyEmail ¶ added in v1.2.5
func (siw *ServerInterfaceWrapper) VerifyEmail(c *gin.Context)
VerifyEmail operation middleware
func (*ServerInterfaceWrapper) VoidFlightSignature ¶ added in v1.2.9
func (siw *ServerInterfaceWrapper) VoidFlightSignature(c *gin.Context)
VoidFlightSignature operation middleware
func (*ServerInterfaceWrapper) WebauthnLoginOptions ¶ added in v1.2.0
func (siw *ServerInterfaceWrapper) WebauthnLoginOptions(c *gin.Context)
WebauthnLoginOptions operation middleware
func (*ServerInterfaceWrapper) WebauthnLoginVerify ¶ added in v1.2.0
func (siw *ServerInterfaceWrapper) WebauthnLoginVerify(c *gin.Context)
WebauthnLoginVerify operation middleware
func (*ServerInterfaceWrapper) WebauthnRegisterOptions ¶ added in v1.2.0
func (siw *ServerInterfaceWrapper) WebauthnRegisterOptions(c *gin.Context)
WebauthnRegisterOptions operation middleware
func (*ServerInterfaceWrapper) WebauthnRegisterVerify ¶ added in v1.2.0
func (siw *ServerInterfaceWrapper) WebauthnRegisterVerify(c *gin.Context)
WebauthnRegisterVerify operation middleware
type Session ¶ added in v1.3.6
type Session struct {
// CreatedAt When the session was created by signing in
CreatedAt time.Time `json:"createdAt"`
// Current Whether this is the session making the request
Current bool `json:"current"`
// DeviceLabel Browser and platform derived from the User-Agent
//
// Example: Safari on iPhone
DeviceLabel string `json:"deviceLabel"`
// ExpiresAt When the session ends unless it is refreshed again
ExpiresAt time.Time `json:"expiresAt"`
Id openapi_types.UUID `json:"id"`
// IpAddress Address the session was last renewed from
//
// Example: 203.0.113.7
IpAddress *string `json:"ipAddress,omitempty"`
// LastUsedAt When the session last refreshed its access token
LastUsedAt time.Time `json:"lastUsedAt"`
}
Session One signed-in device holding a live session.
type SetCustomCurrencyRuleEnabledJSONRequestBody ¶ added in v1.3.7
type SetCustomCurrencyRuleEnabledJSONRequestBody = CustomCurrencyEnabledRequest
SetCustomCurrencyRuleEnabledJSONRequestBody defines body for SetCustomCurrencyRuleEnabled for application/json ContentType.
type SetCustomCurrencyRuleNotifyJSONRequestBody ¶ added in v1.3.7
type SetCustomCurrencyRuleNotifyJSONRequestBody = CustomCurrencyNotifyRequest
SetCustomCurrencyRuleNotifyJSONRequestBody defines body for SetCustomCurrencyRuleNotify for application/json ContentType.
type SharedCustomCurrencyRule ¶ added in v1.3.7
type SharedCustomCurrencyRule struct {
// Definition The declarative rule document: a lookback window, filters selecting which flights count, and requirements measured against the aggregated flight metrics.
}
SharedCustomCurrencyRule Read-only projection of a shared rule. Owner identity is omitted.
type SignFlightLiveJSONRequestBody ¶ added in v1.2.9
type SignFlightLiveJSONRequestBody = CreateLiveSignatureRequest
SignFlightLiveJSONRequestBody defines body for SignFlightLive for application/json ContentType.
type SignatureId ¶ added in v1.2.9
type SignatureId = openapi_types.UUID
SignatureId Example: 880e8400-e29b-41d4-a716-446655440003
type SignatureRequestCreated ¶ added in v1.2.9
type SignatureRequestCreated struct {
CreatedAt time.Time `json:"createdAt"`
EmailSendCount int `json:"emailSendCount"`
EmailSentAt *time.Time `json:"emailSentAt,omitempty"`
FlightId openapi_types.UUID `json:"flightId"`
Id openapi_types.UUID `json:"id"`
InstructorCredentialNumber *string `json:"instructorCredentialNumber,omitempty"`
InstructorEmail *openapi_types.Email `json:"instructorEmail,omitempty"`
InstructorName *string `json:"instructorName,omitempty"`
// Method live = captured in person with no token; deferred = token-based, delivered by email and/or a shareable link/QR
Method SignatureRequestCreatedMethod `json:"method"`
// SignUrl Example: https://app.ninerlog.com/sign?token=3q2-7w15QSf9jZ0mF8x1uQhz6cQd8k2r9m5b0nJH8k4
SignUrl string `json:"signUrl"`
SignedAt *time.Time `json:"signedAt,omitempty"`
Status SignatureRequestCreatedStatus `json:"status"`
TokenExpiresAt *time.Time `json:"tokenExpiresAt,omitempty"`
UpdatedAt time.Time `json:"updatedAt"`
VoidedAt *time.Time `json:"voidedAt,omitempty"`
VoidedReason *string `json:"voidedReason,omitempty"`
}
SignatureRequestCreated A FlightSignature plus the one-time signing URL. The URL is only ever returned from the create/resend calls that generated it — it is not retrievable again afterwards, so the owner must copy/share it (or its QR code) immediately, or resend to get a fresh one.
type SignatureRequestCreatedMethod ¶ added in v1.2.9
type SignatureRequestCreatedMethod string
SignatureRequestCreatedMethod live = captured in person with no token; deferred = token-based, delivered by email and/or a shareable link/QR
const ( SignatureRequestCreatedMethodDeferred SignatureRequestCreatedMethod = "deferred" SignatureRequestCreatedMethodLive SignatureRequestCreatedMethod = "live" )
Defines values for SignatureRequestCreatedMethod.
func (SignatureRequestCreatedMethod) Valid ¶ added in v1.2.9
func (e SignatureRequestCreatedMethod) Valid() bool
Valid indicates whether the value is a known member of the SignatureRequestCreatedMethod enum.
type SignatureRequestCreatedStatus ¶ added in v1.2.9
type SignatureRequestCreatedStatus string
SignatureRequestCreatedStatus defines model for SignatureRequestCreated.Status.
const ( SignatureRequestCreatedStatusCompleted SignatureRequestCreatedStatus = "completed" SignatureRequestCreatedStatusExpired SignatureRequestCreatedStatus = "expired" SignatureRequestCreatedStatusPending SignatureRequestCreatedStatus = "pending" SignatureRequestCreatedStatusRevoked SignatureRequestCreatedStatus = "revoked" SignatureRequestCreatedStatusVoided SignatureRequestCreatedStatus = "voided" )
Defines values for SignatureRequestCreatedStatus.
func (SignatureRequestCreatedStatus) Valid ¶ added in v1.2.9
func (e SignatureRequestCreatedStatus) Valid() bool
Valid indicates whether the value is a known member of the SignatureRequestCreatedStatus enum.
type SignatureToken ¶ added in v1.2.9
type SignatureToken = string
SignatureToken Example: 3q2-7w15QSf9jZ0mF8x1uQhz6cQd8k2r9m5b0nJH8k4
type Statistics ¶
type Statistics struct {
// Baseline Present when an initial-hours snapshot was added to these totals.
// Frontends can use it to display a "(includes initial snapshot)" hint
// and break down logged vs. carried-forward time.
Baseline *StatisticsBaselineContribution `json:"baseline,omitempty"`
// CrossCountryMinutes Total cross-country time in minutes
//
// Example: 12000
CrossCountryMinutes *int `json:"crossCountryMinutes,omitempty"`
// DualGivenMinutes Total instruction given in minutes
//
// Example: 600
DualGivenMinutes *int `json:"dualGivenMinutes,omitempty"`
// DualMinutes Total dual instruction block time in minutes
//
// Example: 2730
DualMinutes int `json:"dualMinutes"`
// ExaminerMinutes Total examiner time in minutes
//
// Example: 0
ExaminerMinutes *int `json:"examinerMinutes,omitempty"`
// IfrMinutes Total IFR block time in minutes
//
// Example: 1800
IfrMinutes int `json:"ifrMinutes"`
// LandingsDay Total day landings
//
// Example: 450
LandingsDay int `json:"landingsDay"`
// LandingsNight Total night landings
//
// Example: 35
LandingsNight int `json:"landingsNight"`
// LicenseId Example: 660e8400-e29b-41d4-a716-446655440001
LicenseId *openapi_types.UUID `json:"licenseId,omitempty"`
// NightMinutes Total night block time in minutes
//
// Example: 930
NightMinutes int `json:"nightMinutes"`
// PicMinutes Total PIC block time in minutes
//
// Example: 19200
PicMinutes int `json:"picMinutes"`
// PicusMinutes Total PIC under supervision (PICUS) time in minutes
//
// Example: 3600
PicusMinutes *int `json:"picusMinutes,omitempty"`
// ReliefMinutes Total cruise relief co-pilot time in minutes
//
// Example: 0
ReliefMinutes *int `json:"reliefMinutes,omitempty"`
// SicMinutes Total co-pilot (SIC) block time in minutes
//
// Example: 4800
SicMinutes *int `json:"sicMinutes,omitempty"`
// SoloMinutes Total solo time in minutes
//
// Example: 7200
SoloMinutes *int `json:"soloMinutes,omitempty"`
// SpicMinutes Total student pilot-in-command (SPIC) time in minutes
//
// Example: 0
SpicMinutes *int `json:"spicMinutes,omitempty"`
// TotalFlights Total number of flights
//
// Example: 150
TotalFlights int `json:"totalFlights"`
// TotalMinutes Total block time in minutes
//
// Example: 23130
TotalMinutes int `json:"totalMinutes"`
}
Statistics defines model for Statistics.
type StatisticsBaselineContribution ¶ added in v1.2.3
type StatisticsBaselineContribution struct {
BaselineDate openapi_types.Date `json:"baselineDate"`
CrossCountryMinutes *int `json:"crossCountryMinutes,omitempty"`
DualGivenMinutes *int `json:"dualGivenMinutes,omitempty"`
DualMinutes int `json:"dualMinutes"`
ExaminerMinutes *int `json:"examinerMinutes,omitempty"`
IfrMinutes int `json:"ifrMinutes"`
LandingsDay int `json:"landingsDay"`
LandingsNight int `json:"landingsNight"`
MultiPilotMinutes *int `json:"multiPilotMinutes,omitempty"`
NightMinutes int `json:"nightMinutes"`
PicMinutes int `json:"picMinutes"`
PicusMinutes *int `json:"picusMinutes,omitempty"`
ReliefMinutes *int `json:"reliefMinutes,omitempty"`
SicMinutes *int `json:"sicMinutes,omitempty"`
SoloMinutes *int `json:"soloMinutes,omitempty"`
SpicMinutes *int `json:"spicMinutes,omitempty"`
TotalFlights int `json:"totalFlights"`
TotalMinutes int `json:"totalMinutes"`
}
StatisticsBaselineContribution Portion of the statistics totals contributed by the user's initial-hours snapshot.
type TwoFactorEnabled ¶
type TwoFactorEnabled struct {
// RecoveryCodes One-time recovery codes to use if authenticator is unavailable
//
// Example: ["abc12-def34","ghi56-jkl78","mno90-pqr12"]
RecoveryCodes []string `json:"recoveryCodes"`
}
TwoFactorEnabled defines model for TwoFactorEnabled.
type TwoFactorLoginRequired ¶ added in v1.3.2
type TwoFactorLoginRequired struct {
// RequiresTwoFactor Always `true`. Present only on this shape, so clients can use it to
// tell a challenge from a completed `AuthResponse`.
//
//
// Example: true
RequiresTwoFactor bool `json:"requiresTwoFactor"`
// TwoFactorToken Temporary token to use with /auth/2fa/login
TwoFactorToken string `json:"twoFactorToken"`
}
TwoFactorLoginRequired Returned by `/auth/login` with status 200 when the account has two-factor authentication enabled. No session exists yet: the credentials were accepted, but the second factor is still outstanding.
type TwoFactorSetup ¶
type TwoFactorSetup struct {
// QrUri otpauth:// URI for QR code generation
//
// Example: otpauth://totp/NinerLog:pilot@example.com?secret=JBSWY3DPEHPK3PXP&issuer=NinerLog
QrUri string `json:"qrUri"`
// Secret Base32-encoded TOTP secret for manual entry
//
// Example: JBSWY3DPEHPK3PXP
Secret string `json:"secret"`
}
TwoFactorSetup defines model for TwoFactorSetup.
type UpdateAircraftJSONRequestBody ¶
type UpdateAircraftJSONRequestBody = AircraftUpdate
UpdateAircraftJSONRequestBody defines body for UpdateAircraft for application/json ContentType.
type UpdateBackupDestinationJSONRequestBody ¶ added in v1.2.4
type UpdateBackupDestinationJSONRequestBody = BackupDestinationUpdate
UpdateBackupDestinationJSONRequestBody defines body for UpdateBackupDestination for application/json ContentType.
type UpdateClassRatingJSONRequestBody ¶
type UpdateClassRatingJSONRequestBody = ClassRatingUpdate
UpdateClassRatingJSONRequestBody defines body for UpdateClassRating for application/json ContentType.
type UpdateComponent ¶ added in v1.3.5
type UpdateComponent struct {
// BehindBy Commits the tracked branch is ahead of this build. Present only on the `commit` channel.
//
// Example: 7
BehindBy *int `json:"behindBy,omitempty"`
// Channel How `state` was reached. `release` compares a semantic version against the newest published release; `commit` compares the build commit against the tracked branch, which is what an image running the `latest` tag gets. Absent when the state is `unknown`.
Channel *UpdateComponentChannel `json:"channel,omitempty"`
// CompareUrl GitHub comparison between this build and the branch head. Present only on the `commit` channel.
CompareUrl *string `json:"compareUrl,omitempty"`
// CurrentCommit Short commit the running image was built from, absent when the component reported none.
//
// Example: 4f2c1ab
CurrentCommit *string `json:"currentCommit,omitempty"`
// CurrentVersion Version the component is running. Empty when the frontend did not report one; `dev` for a build that was never stamped.
//
// Example: v1.3.4
CurrentVersion string `json:"currentVersion"`
// LatestVersion Newest release published for the component, absent until a lookup succeeds
//
// Example: v1.3.5
LatestVersion *string `json:"latestVersion,omitempty"`
// Name Component this entry describes
Name UpdateComponentName `json:"name"`
// PublishedAt When the newest release was published
PublishedAt *time.Time `json:"publishedAt,omitempty"`
// ReleaseUrl GitHub release page for the newest release
ReleaseUrl *string `json:"releaseUrl,omitempty"`
// State `unknown` means neither comparison could be made: no semantic version, no build commit, or nothing looked up yet.
State UpdateComponentState `json:"state"`
}
UpdateComponent defines model for UpdateComponent.
type UpdateComponentChannel ¶ added in v1.3.5
type UpdateComponentChannel string
UpdateComponentChannel How `state` was reached. `release` compares a semantic version against the newest published release; `commit` compares the build commit against the tracked branch, which is what an image running the `latest` tag gets. Absent when the state is `unknown`.
const ( Commit UpdateComponentChannel = "commit" Release UpdateComponentChannel = "release" )
Defines values for UpdateComponentChannel.
func (UpdateComponentChannel) Valid ¶ added in v1.3.5
func (e UpdateComponentChannel) Valid() bool
Valid indicates whether the value is a known member of the UpdateComponentChannel enum.
type UpdateComponentName ¶ added in v1.3.5
type UpdateComponentName string
UpdateComponentName Component this entry describes
const ( Api UpdateComponentName = "api" Frontend UpdateComponentName = "frontend" )
Defines values for UpdateComponentName.
func (UpdateComponentName) Valid ¶ added in v1.3.5
func (e UpdateComponentName) Valid() bool
Valid indicates whether the value is a known member of the UpdateComponentName enum.
type UpdateComponentState ¶ added in v1.3.5
type UpdateComponentState string
UpdateComponentState `unknown` means neither comparison could be made: no semantic version, no build commit, or nothing looked up yet.
const ( UpdateComponentStateUnknown UpdateComponentState = "unknown" UpdateComponentStateUpToDate UpdateComponentState = "up_to_date" UpdateComponentStateUpdateAvailable UpdateComponentState = "update_available" )
Defines values for UpdateComponentState.
func (UpdateComponentState) Valid ¶ added in v1.3.5
func (e UpdateComponentState) Valid() bool
Valid indicates whether the value is a known member of the UpdateComponentState enum.
type UpdateContactJSONRequestBody ¶
type UpdateContactJSONRequestBody = ContactCreate
UpdateContactJSONRequestBody defines body for UpdateContact for application/json ContentType.
type UpdateCredentialJSONRequestBody ¶
type UpdateCredentialJSONRequestBody = CredentialUpdate
UpdateCredentialJSONRequestBody defines body for UpdateCredential for application/json ContentType.
type UpdateCurrentUserJSONBody ¶
type UpdateCurrentUserJSONBody struct {
// CurrentPassword Current password. Required when changing the email address. The new address is marked unverified and a verification link is sent to it before it is trusted again.
CurrentPassword *string `json:"currentPassword,omitempty"`
// DateFormat Preferred date display format
DateFormat *UpdateCurrentUserJSONBodyDateFormat `json:"dateFormat,omitempty"`
// DecimalSeparator Preferred decimal separator for number display
DecimalSeparator *UpdateCurrentUserJSONBodyDecimalSeparator `json:"decimalSeparator,omitempty"`
Email *openapi_types.Email `json:"email,omitempty"`
// FlightListColumnMode Whether the flights list picks its optional columns from the data ("auto") or uses flightListColumns ("custom")
FlightListColumnMode *UpdateCurrentUserJSONBodyFlightListColumnMode `json:"flightListColumnMode,omitempty"`
// FlightListColumns The optional flights-list columns to show in "custom" mode. Replaces the stored list; an empty array is valid and means no optional columns. Unknown values are ignored.
FlightListColumns *[]FlightListColumn `json:"flightListColumns,omitempty"`
Name *string `json:"name,omitempty"`
// PreferredLocale Preferred language for the interface
PreferredLocale *UpdateCurrentUserJSONBodyPreferredLocale `json:"preferredLocale,omitempty"`
// RecencyPerModel Show informational 90-day landing recency per aircraft model/type
RecencyPerModel *bool `json:"recencyPerModel,omitempty"`
// RecencyPerRegistration Show informational 90-day landing recency per individual aircraft registration
RecencyPerRegistration *bool `json:"recencyPerRegistration,omitempty"`
// TimeDisplayFormat Preferred time display format
TimeDisplayFormat *UpdateCurrentUserJSONBodyTimeDisplayFormat `json:"timeDisplayFormat,omitempty"`
}
UpdateCurrentUserJSONBody defines parameters for UpdateCurrentUser.
type UpdateCurrentUserJSONBodyDateFormat ¶
type UpdateCurrentUserJSONBodyDateFormat string
UpdateCurrentUserJSONBodyDateFormat defines parameters for UpdateCurrentUser.
const ( UpdateCurrentUserJSONBodyDateFormatDDMMYYYY UpdateCurrentUserJSONBodyDateFormat = "DD.MM.YYYY" UpdateCurrentUserJSONBodyDateFormatMMDDYYYY UpdateCurrentUserJSONBodyDateFormat = "MM/DD/YYYY" UpdateCurrentUserJSONBodyDateFormatYYYYMMDD UpdateCurrentUserJSONBodyDateFormat = "YYYY-MM-DD" )
Defines values for UpdateCurrentUserJSONBodyDateFormat.
func (UpdateCurrentUserJSONBodyDateFormat) Valid ¶ added in v1.1.0
func (e UpdateCurrentUserJSONBodyDateFormat) Valid() bool
Valid indicates whether the value is a known member of the UpdateCurrentUserJSONBodyDateFormat enum.
type UpdateCurrentUserJSONBodyDecimalSeparator ¶
type UpdateCurrentUserJSONBodyDecimalSeparator string
UpdateCurrentUserJSONBodyDecimalSeparator defines parameters for UpdateCurrentUser.
const ( UpdateCurrentUserJSONBodyDecimalSeparatorComma UpdateCurrentUserJSONBodyDecimalSeparator = "comma" UpdateCurrentUserJSONBodyDecimalSeparatorDot UpdateCurrentUserJSONBodyDecimalSeparator = "dot" )
Defines values for UpdateCurrentUserJSONBodyDecimalSeparator.
func (UpdateCurrentUserJSONBodyDecimalSeparator) Valid ¶ added in v1.1.0
func (e UpdateCurrentUserJSONBodyDecimalSeparator) Valid() bool
Valid indicates whether the value is a known member of the UpdateCurrentUserJSONBodyDecimalSeparator enum.
type UpdateCurrentUserJSONBodyFlightListColumnMode ¶ added in v1.3.2
type UpdateCurrentUserJSONBodyFlightListColumnMode string
UpdateCurrentUserJSONBodyFlightListColumnMode defines parameters for UpdateCurrentUser.
const ( UpdateCurrentUserJSONBodyFlightListColumnModeAuto UpdateCurrentUserJSONBodyFlightListColumnMode = "auto" UpdateCurrentUserJSONBodyFlightListColumnModeCustom UpdateCurrentUserJSONBodyFlightListColumnMode = "custom" )
Defines values for UpdateCurrentUserJSONBodyFlightListColumnMode.
func (UpdateCurrentUserJSONBodyFlightListColumnMode) Valid ¶ added in v1.3.2
func (e UpdateCurrentUserJSONBodyFlightListColumnMode) Valid() bool
Valid indicates whether the value is a known member of the UpdateCurrentUserJSONBodyFlightListColumnMode enum.
type UpdateCurrentUserJSONBodyPreferredLocale ¶
type UpdateCurrentUserJSONBodyPreferredLocale string
UpdateCurrentUserJSONBodyPreferredLocale defines parameters for UpdateCurrentUser.
const ( UpdateCurrentUserJSONBodyPreferredLocaleDe UpdateCurrentUserJSONBodyPreferredLocale = "de" UpdateCurrentUserJSONBodyPreferredLocaleEn UpdateCurrentUserJSONBodyPreferredLocale = "en" )
Defines values for UpdateCurrentUserJSONBodyPreferredLocale.
func (UpdateCurrentUserJSONBodyPreferredLocale) Valid ¶ added in v1.1.0
func (e UpdateCurrentUserJSONBodyPreferredLocale) Valid() bool
Valid indicates whether the value is a known member of the UpdateCurrentUserJSONBodyPreferredLocale enum.
type UpdateCurrentUserJSONBodyTimeDisplayFormat ¶
type UpdateCurrentUserJSONBodyTimeDisplayFormat string
UpdateCurrentUserJSONBodyTimeDisplayFormat defines parameters for UpdateCurrentUser.
const ( UpdateCurrentUserJSONBodyTimeDisplayFormatDecimal UpdateCurrentUserJSONBodyTimeDisplayFormat = "decimal" UpdateCurrentUserJSONBodyTimeDisplayFormatHm UpdateCurrentUserJSONBodyTimeDisplayFormat = "hm" )
Defines values for UpdateCurrentUserJSONBodyTimeDisplayFormat.
func (UpdateCurrentUserJSONBodyTimeDisplayFormat) Valid ¶ added in v1.1.0
func (e UpdateCurrentUserJSONBodyTimeDisplayFormat) Valid() bool
Valid indicates whether the value is a known member of the UpdateCurrentUserJSONBodyTimeDisplayFormat enum.
type UpdateCurrentUserJSONRequestBody ¶
type UpdateCurrentUserJSONRequestBody UpdateCurrentUserJSONBody
UpdateCurrentUserJSONRequestBody defines body for UpdateCurrentUser for application/json ContentType.
type UpdateCustomCurrencyRuleJSONRequestBody ¶ added in v1.3.7
type UpdateCustomCurrencyRuleJSONRequestBody = CustomCurrencyRuleInput
UpdateCustomCurrencyRuleJSONRequestBody defines body for UpdateCustomCurrencyRule for application/json ContentType.
type UpdateFlightJSONRequestBody ¶
type UpdateFlightJSONRequestBody = FlightUpdate
UpdateFlightJSONRequestBody defines body for UpdateFlight for application/json ContentType.
type UpdateLicenseJSONBody ¶
type UpdateLicenseJSONBody struct {
IssuingAuthority *string `json:"issuingAuthority,omitempty"`
LicenseNumber *string `json:"licenseNumber,omitempty"`
LicenseType *string `json:"licenseType,omitempty"`
RegulatoryAuthority *string `json:"regulatoryAuthority,omitempty"`
RequiresSeparateLogbook *bool `json:"requiresSeparateLogbook,omitempty"`
}
UpdateLicenseJSONBody defines parameters for UpdateLicense.
type UpdateLicenseJSONRequestBody ¶
type UpdateLicenseJSONRequestBody UpdateLicenseJSONBody
UpdateLicenseJSONRequestBody defines body for UpdateLicense for application/json ContentType.
type UpdateNotificationPreferencesJSONRequestBody ¶
type UpdateNotificationPreferencesJSONRequestBody = NotificationPreferencesUpdate
UpdateNotificationPreferencesJSONRequestBody defines body for UpdateNotificationPreferences for application/json ContentType.
type UpdateStatus ¶ added in v1.3.5
type UpdateStatus struct {
// Branch Branch a `latest` build's commit is compared against (UPDATE_CHECK_BRANCH)
//
// Example: main
Branch *string `json:"branch,omitempty"`
// CheckEnabled Whether this deployment checks for releases (UPDATE_CHECK_ENABLED)
CheckEnabled bool `json:"checkEnabled"`
// Components One entry per deployed component, in a stable order.
Components []UpdateComponent `json:"components"`
// LastCheckedAt When the release lookup last ran; null when it never has
LastCheckedAt *time.Time `json:"lastCheckedAt,omitempty"`
// LastError Coarse reason the last lookup failed, absent when it succeeded. `request` is a network or DNS failure, `status` a non-200 answer (rate limiting included), `decode` an unreadable body, `empty` a release without a tag.
LastError *UpdateStatusLastError `json:"lastError,omitempty"`
// UpdateAvailable True when at least one component is behind its newest published release. False when every component is current, unknown, or the check is disabled.
UpdateAvailable bool `json:"updateAvailable"`
}
UpdateStatus defines model for UpdateStatus.
type UpdateStatusLastError ¶ added in v1.3.5
type UpdateStatusLastError string
UpdateStatusLastError Coarse reason the last lookup failed, absent when it succeeded. `request` is a network or DNS failure, `status` a non-200 answer (rate limiting included), `decode` an unreadable body, `empty` a release without a tag.
const ( UpdateStatusLastErrorDecode UpdateStatusLastError = "decode" UpdateStatusLastErrorEmpty UpdateStatusLastError = "empty" UpdateStatusLastErrorError UpdateStatusLastError = "error" UpdateStatusLastErrorRequest UpdateStatusLastError = "request" UpdateStatusLastErrorStatus UpdateStatusLastError = "status" )
Defines values for UpdateStatusLastError.
func (UpdateStatusLastError) Valid ¶ added in v1.3.5
func (e UpdateStatusLastError) Valid() bool
Valid indicates whether the value is a known member of the UpdateStatusLastError enum.
type UpdatedSince ¶ added in v1.3.2
UpdatedSince Example: 2026-08-05T10:08:45.123456Z
type UploadCredentialFileMultipartRequestBody ¶ added in v1.3.2
type UploadCredentialFileMultipartRequestBody = DocumentFileUpload
UploadCredentialFileMultipartRequestBody defines body for UploadCredentialFile for multipart/form-data ContentType.
type UploadImportFileMultipartBody ¶
type UploadImportFileMultipartBody struct {
// File CSV or XLS/XLSX file to import
File openapi_types.File `json:"file"`
}
UploadImportFileMultipartBody defines parameters for UploadImportFile.
type UploadImportFileMultipartRequestBody ¶
type UploadImportFileMultipartRequestBody UploadImportFileMultipartBody
UploadImportFileMultipartRequestBody defines body for UploadImportFile for multipart/form-data ContentType.
type UploadLicenseFileMultipartRequestBody ¶ added in v1.3.2
type UploadLicenseFileMultipartRequestBody = DocumentFileUpload
UploadLicenseFileMultipartRequestBody defines body for UploadLicenseFile for multipart/form-data ContentType.
type User ¶
type User struct {
// CreatedAt Example: 2026-01-15T10:30:00Z
CreatedAt time.Time `json:"createdAt"`
// DateFormat User's preferred date display format.
//
// Example: DD.MM.YYYY
DateFormat *UserDateFormat `json:"dateFormat,omitempty"`
// DecimalSeparator User's preferred decimal separator for number display. "comma" for European style (1,5), "dot" for US/UK style (1.5).
//
// Example: comma
DecimalSeparator *UserDecimalSeparator `json:"decimalSeparator,omitempty"`
// Email Example: pilot@example.com
Email openapi_types.Email `json:"email"`
// EmailVerified Whether the user has confirmed their email address.
//
// Example: true
EmailVerified *bool `json:"emailVerified,omitempty"`
// FlightListColumnMode How the optional columns of the flights list are chosen. "auto" lets the client pick them from the flights on the page, so an unused column (IFR time for a VFR-only pilot) never takes up width. "custom" means flightListColumns is the user's own choice.
//
// Example: auto
FlightListColumnMode *UserFlightListColumnMode `json:"flightListColumnMode,omitempty"`
// FlightListColumns The optional flights-list columns the user picked. Only meaningful when flightListColumnMode is "custom", where an empty array means "none of the optional columns". Stored deduplicated and in the canonical display order; unknown values are dropped.
//
// Example: ["picTime","nightTime","landings"]
FlightListColumns *[]FlightListColumn `json:"flightListColumns,omitempty"`
// Id Example: 550e8400-e29b-41d4-a716-446655440000
Id openapi_types.UUID `json:"id"`
// IsAdmin Whether this user is the platform admin (computed from ADMIN_EMAIL env var, not stored in DB)
//
// Example: false
IsAdmin *bool `json:"isAdmin,omitempty"`
// Name Example: John Doe
Name string `json:"name"`
// PreferredLocale User's preferred language for the interface.
//
// Example: en
PreferredLocale *UserPreferredLocale `json:"preferredLocale,omitempty"`
// RecencyPerModel Show informational 90-day landing recency (styled after EASA FCL.060(b)) per aircraft model/type.
//
// Example: true
RecencyPerModel *bool `json:"recencyPerModel,omitempty"`
// RecencyPerRegistration Show informational 90-day landing recency per individual aircraft registration. Off by default — FCL.060(b) recency is defined per type/class, so per-registration tracking is purely a familiarity aid.
//
// Example: false
RecencyPerRegistration *bool `json:"recencyPerRegistration,omitempty"`
// TimeDisplayFormat User's preferred time display format. "hm" for hours and minutes (1h 30m), "decimal" for decimal hours (1.5h).
//
// Example: hm
TimeDisplayFormat *UserTimeDisplayFormat `json:"timeDisplayFormat,omitempty"`
// TwoFactorEnabled Whether 2FA is enabled for this account
//
// Example: false
TwoFactorEnabled *bool `json:"twoFactorEnabled,omitempty"`
// UpdatedAt Example: 2026-01-20T14:45:00Z
UpdatedAt time.Time `json:"updatedAt"`
}
User defines model for User.
type UserDateFormat ¶
type UserDateFormat string
UserDateFormat User's preferred date display format.
Example: DD.MM.YYYY
const ( UserDateFormatDDMMYYYY UserDateFormat = "DD.MM.YYYY" UserDateFormatMMDDYYYY UserDateFormat = "MM/DD/YYYY" UserDateFormatYYYYMMDD UserDateFormat = "YYYY-MM-DD" )
Defines values for UserDateFormat.
func (UserDateFormat) Valid ¶ added in v1.1.0
func (e UserDateFormat) Valid() bool
Valid indicates whether the value is a known member of the UserDateFormat enum.
type UserDecimalSeparator ¶
type UserDecimalSeparator string
UserDecimalSeparator User's preferred decimal separator for number display. "comma" for European style (1,5), "dot" for US/UK style (1.5).
Example: comma
const ( UserDecimalSeparatorComma UserDecimalSeparator = "comma" UserDecimalSeparatorDot UserDecimalSeparator = "dot" )
Defines values for UserDecimalSeparator.
func (UserDecimalSeparator) Valid ¶ added in v1.1.0
func (e UserDecimalSeparator) Valid() bool
Valid indicates whether the value is a known member of the UserDecimalSeparator enum.
type UserFlightListColumnMode ¶ added in v1.3.2
type UserFlightListColumnMode string
UserFlightListColumnMode How the optional columns of the flights list are chosen. "auto" lets the client pick them from the flights on the page, so an unused column (IFR time for a VFR-only pilot) never takes up width. "custom" means flightListColumns is the user's own choice.
Example: auto
const ( UserFlightListColumnModeAuto UserFlightListColumnMode = "auto" UserFlightListColumnModeCustom UserFlightListColumnMode = "custom" )
Defines values for UserFlightListColumnMode.
func (UserFlightListColumnMode) Valid ¶ added in v1.3.2
func (e UserFlightListColumnMode) Valid() bool
Valid indicates whether the value is a known member of the UserFlightListColumnMode enum.
type UserPreferredLocale ¶
type UserPreferredLocale string
UserPreferredLocale User's preferred language for the interface.
Example: en
const ( UserPreferredLocaleDe UserPreferredLocale = "de" UserPreferredLocaleEn UserPreferredLocale = "en" )
Defines values for UserPreferredLocale.
func (UserPreferredLocale) Valid ¶ added in v1.1.0
func (e UserPreferredLocale) Valid() bool
Valid indicates whether the value is a known member of the UserPreferredLocale enum.
type UserTimeDisplayFormat ¶
type UserTimeDisplayFormat string
UserTimeDisplayFormat User's preferred time display format. "hm" for hours and minutes (1h 30m), "decimal" for decimal hours (1.5h).
Example: hm
const ( UserTimeDisplayFormatDecimal UserTimeDisplayFormat = "decimal" UserTimeDisplayFormatHm UserTimeDisplayFormat = "hm" )
Defines values for UserTimeDisplayFormat.
func (UserTimeDisplayFormat) Valid ¶ added in v1.1.0
func (e UserTimeDisplayFormat) Valid() bool
Valid indicates whether the value is a known member of the UserTimeDisplayFormat enum.
type Verify2FAJSONBody ¶
type Verify2FAJSONBody struct {
// Code 6-digit TOTP code from authenticator app
Code string `json:"code"`
}
Verify2FAJSONBody defines parameters for Verify2FA.
type Verify2FAJSONRequestBody ¶
type Verify2FAJSONRequestBody Verify2FAJSONBody
Verify2FAJSONRequestBody defines body for Verify2FA for application/json ContentType.
type VerifyEmailJSONBody ¶ added in v1.2.5
type VerifyEmailJSONBody struct {
// Token Verification token from the email link
Token string `json:"token"`
}
VerifyEmailJSONBody defines parameters for VerifyEmail.
type VerifyEmailJSONRequestBody ¶ added in v1.2.5
type VerifyEmailJSONRequestBody VerifyEmailJSONBody
VerifyEmailJSONRequestBody defines body for VerifyEmail for application/json ContentType.
type VoidFlightSignatureJSONRequestBody ¶ added in v1.2.9
type VoidFlightSignatureJSONRequestBody = VoidSignatureRequest
VoidFlightSignatureJSONRequestBody defines body for VoidFlightSignature for application/json ContentType.
type VoidSignatureRequest ¶ added in v1.2.9
type VoidSignatureRequest struct {
// Reason Example: Entered wrong dual time, correcting before re-signing
Reason string `json:"reason"`
}
VoidSignatureRequest defines model for VoidSignatureRequest.
type WebAuthnCredential ¶ added in v1.2.0
type WebAuthnCredential struct {
// Aaguid Authenticator AAGUID as a hex/UUID string
Aaguid *string `json:"aaguid,omitempty"`
CreatedAt time.Time `json:"createdAt"`
Id openapi_types.UUID `json:"id"`
// Label Human-readable label for the passkey
Label *string `json:"label,omitempty"`
LastUsedAt *time.Time `json:"lastUsedAt,omitempty"`
// Transports Authenticator transports reported during registration
Transports *[]string `json:"transports,omitempty"`
}
WebAuthnCredential defines model for WebAuthnCredential.
type WebAuthnLoginOptions ¶ added in v1.2.0
type WebAuthnLoginOptions struct {
// PublicKey WebAuthn `PublicKeyCredentialRequestOptions` (passed verbatim to `navigator.credentials.get`)
PublicKey map[string]interface{} `json:"publicKey"`
// SessionId Opaque single-use ceremony handle to send back with the verify request. Hold it in memory for the duration of the ceremony; it must not be persisted.
SessionId string `json:"sessionId"`
}
WebAuthnLoginOptions defines model for WebAuthnLoginOptions.
type WebAuthnRegistrationOptions ¶ added in v1.2.0
type WebAuthnRegistrationOptions struct {
// PublicKey WebAuthn `PublicKeyCredentialCreationOptions` (passed verbatim to `navigator.credentials.create`)
PublicKey map[string]interface{} `json:"publicKey"`
// SessionId Opaque single-use ceremony handle to send back with the verify request. Hold it in memory for the duration of the ceremony; it must not be persisted.
SessionId string `json:"sessionId"`
}
WebAuthnRegistrationOptions defines model for WebAuthnRegistrationOptions.
type WebauthnLoginOptionsJSONBody ¶ added in v1.2.0
type WebauthnLoginOptionsJSONBody struct {
// Email Optional email to scope the challenge to a specific user
Email *openapi_types.Email `json:"email,omitempty"`
}
WebauthnLoginOptionsJSONBody defines parameters for WebauthnLoginOptions.
type WebauthnLoginOptionsJSONRequestBody ¶ added in v1.2.0
type WebauthnLoginOptionsJSONRequestBody WebauthnLoginOptionsJSONBody
WebauthnLoginOptionsJSONRequestBody defines body for WebauthnLoginOptions for application/json ContentType.
type WebauthnLoginVerifyJSONBody ¶ added in v1.2.0
type WebauthnLoginVerifyJSONBody struct {
// Response Raw `PublicKeyCredential` returned from `navigator.credentials.get`
Response map[string]interface{} `json:"response"`
// SessionId Single-use ceremony handle returned from `/auth/webauthn/login/options`. Rejected if it has expired or has already been used.
SessionId string `json:"sessionId"`
}
WebauthnLoginVerifyJSONBody defines parameters for WebauthnLoginVerify.
type WebauthnLoginVerifyJSONRequestBody ¶ added in v1.2.0
type WebauthnLoginVerifyJSONRequestBody WebauthnLoginVerifyJSONBody
WebauthnLoginVerifyJSONRequestBody defines body for WebauthnLoginVerify for application/json ContentType.
type WebauthnRegisterVerifyJSONBody ¶ added in v1.2.0
type WebauthnRegisterVerifyJSONBody struct {
// Label Optional human-readable label for the passkey
Label *string `json:"label,omitempty"`
// Response Raw `PublicKeyCredential` returned from `navigator.credentials.create`
Response map[string]interface{} `json:"response"`
// SessionId Single-use ceremony handle returned from `/auth/webauthn/register/options`. Rejected if it has expired, has already been used, or was issued for a different user.
SessionId string `json:"sessionId"`
}
WebauthnRegisterVerifyJSONBody defines parameters for WebauthnRegisterVerify.
type WebauthnRegisterVerifyJSONRequestBody ¶ added in v1.2.0
type WebauthnRegisterVerifyJSONRequestBody WebauthnRegisterVerifyJSONBody
WebauthnRegisterVerifyJSONRequestBody defines body for WebauthnRegisterVerify for application/json ContentType.