{ "openapi": "3.0.0", "info": { "title": "GridPilot API", "description": "GridPilot API documentation", "version": "1.0.0" }, "paths": {}, "components": { "schemas": { "SponsorshipRequestDTO": { "type": "object", "properties": { "id": { "type": "string" }, "sponsorId": { "type": "string" }, "sponsorName": { "type": "string" } }, "required": [ "id", "sponsorId", "sponsorName" ] }, "SponsorshipPricingItemDTO": { "type": "object", "properties": { "id": { "type": "string" }, "level": { "type": "string" }, "price": { "type": "string" }, "currency": { "type": "string" } }, "required": [ "id", "level", "price", "currency" ] }, "SponsorshipDetailDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "leagueName": { "type": "string" }, "seasonId": { "type": "string" }, "seasonName": { "type": "string" } }, "required": [ "id", "leagueId", "leagueName", "seasonId", "seasonName" ] }, "SponsorshipDTO": { "type": "object", "properties": { "id": { "type": "string" } }, "required": [ "id" ] }, "SponsoredLeagueDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "name" ] }, "SponsorSponsorshipsDTO": { "type": "object", "properties": { "sponsorId": { "type": "string" }, "sponsorName": { "type": "string" } }, "required": [ "sponsorId", "sponsorName" ] }, "SponsorProfileDTO": { "type": "object", "properties": { "companyName": { "type": "string" }, "contactName": { "type": "string" }, "contactEmail": { "type": "string" }, "contactPhone": { "type": "string" }, "website": { "type": "string" }, "description": { "type": "string" } }, "required": [ "companyName", "contactName", "contactEmail", "contactPhone", "website", "description" ] }, "SponsorDashboardMetricsDTO": { "type": "object", "properties": { "impressions": { "type": "string" }, "impressionsChange": { "type": "string" }, "uniqueViewers": { "type": "string" }, "viewersChange": { "type": "string" }, "races": { "type": "string" }, "drivers": { "type": "string" }, "exposure": { "type": "string" }, "exposureChange": { "type": "string" } }, "required": [ "impressions", "impressionsChange", "uniqueViewers", "viewersChange", "races", "drivers", "exposure", "exposureChange" ] }, "SponsorDashboardInvestmentDTO": { "type": "object", "properties": { "activeSponsorships": { "type": "string" }, "totalInvestment": { "type": "string" }, "costPerThousandViews": { "type": "string" } }, "required": [ "activeSponsorships", "totalInvestment", "costPerThousandViews" ] }, "SponsorDashboardDTO": { "type": "object", "properties": { "sponsorId": { "type": "string" }, "sponsorName": { "type": "string" } }, "required": [ "sponsorId", "sponsorName" ] }, "SponsorDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "name" ] }, "RenewalAlertDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "name" ] }, "RejectSponsorshipRequestInputDTO": { "type": "object", "properties": { "respondedBy": { "type": "string" } }, "required": [ "respondedBy" ] }, "RaceDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "date": { "type": "string" }, "views": { "type": "string" } }, "required": [ "id", "name", "date", "views" ] }, "PrivacySettingsDTO": { "type": "object", "properties": { "publicProfile": { "type": "string" }, "showStats": { "type": "string" }, "showActiveSponsorships": { "type": "string" }, "allowDirectContact": { "type": "string" } }, "required": [ "publicProfile", "showStats", "showActiveSponsorships", "allowDirectContact" ] }, "PaymentMethodDTO": { "type": "object", "properties": { "id": { "type": "string" } }, "required": [ "id" ] }, "NotificationSettingsDTO": { "type": "object", "properties": { "emailNewSponsorships": { "type": "string" }, "emailWeeklyReport": { "type": "string" }, "emailRaceAlerts": { "type": "string" }, "emailPaymentAlerts": { "type": "string" }, "emailNewOpportunities": { "type": "string" }, "emailContractExpiry": { "type": "string" } }, "required": [ "emailNewSponsorships", "emailWeeklyReport", "emailRaceAlerts", "emailPaymentAlerts", "emailNewOpportunities", "emailContractExpiry" ] }, "LeagueDetailDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "game": { "type": "string" } }, "required": [ "id", "name", "game" ] }, "InvoiceDTO": { "type": "object", "properties": { "id": { "type": "string" }, "invoiceNumber": { "type": "string" }, "date": { "type": "string" }, "dueDate": { "type": "string" }, "amount": { "type": "string" }, "vatAmount": { "type": "string" }, "totalAmount": { "type": "string" } }, "required": [ "id", "invoiceNumber", "date", "dueDate", "amount", "vatAmount", "totalAmount" ] }, "GetSponsorSponsorshipsQueryParamsDTO": { "type": "object", "properties": { "sponsorId": { "type": "string" } }, "required": [ "sponsorId" ] }, "GetSponsorDashboardQueryParamsDTO": { "type": "object", "properties": { "sponsorId": { "type": "string" } }, "required": [ "sponsorId" ] }, "GetPendingSponsorshipRequestsOutputDTO": { "type": "object", "properties": { "entityType": { "type": "string" }, "entityId": { "type": "string" } }, "required": [ "entityType", "entityId" ] }, "GetEntitySponsorshipPricingResultDTO": { "type": "object", "properties": { "entityType": { "type": "string" }, "entityId": { "type": "string" } }, "required": [ "entityType", "entityId" ] }, "DriverDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "country": { "type": "string" }, "position": { "type": "string" }, "races": { "type": "string" }, "impressions": { "type": "string" }, "team": { "type": "string" } }, "required": [ "id", "name", "country", "position", "races", "impressions", "team" ] }, "CreateSponsorInputDTO": { "type": "object", "properties": { "name": { "type": "string" }, "contactEmail": { "type": "string" } }, "required": [ "name", "contactEmail" ] }, "BillingStatsDTO": { "type": "object", "properties": { "totalSpent": { "type": "string" }, "pendingAmount": { "type": "string" }, "nextPaymentDate": { "type": "string" }, "nextPaymentAmount": { "type": "string" }, "activeSponsorships": { "type": "string" }, "averageMonthlySpend": { "type": "string" } }, "required": [ "totalSpent", "pendingAmount", "nextPaymentDate", "nextPaymentAmount", "activeSponsorships", "averageMonthlySpend" ] }, "AvailableLeagueDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "game": { "type": "string" }, "drivers": { "type": "string" }, "avgViewsPerRace": { "type": "string" } }, "required": [ "id", "name", "game", "drivers", "avgViewsPerRace" ] }, "ActivityItemDTO": { "type": "object", "properties": { "id": { "type": "string" } }, "required": [ "id" ] }, "AcceptSponsorshipRequestInputDTO": { "type": "object", "properties": { "respondedBy": { "type": "string" } }, "required": [ "respondedBy" ] }, "UpdateTeamOutputDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "GetTeamMembershipOutputDTO": { "type": "object", "properties": { "role": { "type": "string" }, "joinedAt": { "type": "string" }, "isActive": { "type": "boolean" } }, "required": [ "role", "joinedAt", "isActive" ] }, "CreateTeamOutputDTO": { "type": "object", "properties": { "id": { "type": "string" }, "success": { "type": "boolean" } }, "required": [ "id", "success" ] }, "CreateTeamInputDTO": { "type": "object", "properties": { "name": { "type": "string" }, "tag": { "type": "string" } }, "required": [ "name", "tag" ] }, "UpdatePaymentStatusInputDTO": { "type": "object", "properties": { "paymentId": { "type": "string" } }, "required": [ "paymentId" ] }, "PaymentDTO": { "type": "object", "properties": { "id": { "type": "string" } }, "required": [ "id" ] }, "MembershipFeeDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" } }, "required": [ "id", "leagueId" ] }, "MemberPaymentDTO": { "type": "object", "properties": { "id": { "type": "string" }, "feeId": { "type": "string" }, "driverId": { "type": "string" }, "amount": { "type": "number" }, "platformFee": { "type": "number" }, "netAmount": { "type": "number" } }, "required": [ "id", "feeId", "driverId", "amount", "platformFee", "netAmount" ] }, "PrizeDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "seasonId": { "type": "string" }, "position": { "type": "number" }, "name": { "type": "string" }, "amount": { "type": "number" } }, "required": [ "id", "leagueId", "seasonId", "position", "name", "amount" ] }, "WalletDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "balance": { "type": "number" }, "totalRevenue": { "type": "number" }, "totalPlatformFees": { "type": "number" }, "totalWithdrawn": { "type": "number" }, "createdAt": { "type": "string", "format": "date-time" }, "currency": { "type": "string" } }, "required": [ "id", "leagueId", "balance", "totalRevenue", "totalPlatformFees", "totalWithdrawn", "createdAt", "currency" ] }, "TransactionDTO": { "type": "object", "properties": { "id": { "type": "string" }, "walletId": { "type": "string" } }, "required": [ "id", "walletId" ] }, "DeletePrizeResultDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "WithdrawFromRaceParamsDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "driverId": { "type": "string" } }, "required": [ "raceId", "driverId" ] }, "ReviewProtestCommandDTO": { "type": "object", "properties": { "protestId": { "type": "string" }, "stewardId": { "type": "string" }, "enum": { "type": "string" } }, "required": [ "protestId", "stewardId", "enum" ] }, "RequestProtestDefenseCommandDTO": { "type": "object", "properties": { "protestId": { "type": "string" }, "stewardId": { "type": "string" } }, "required": [ "protestId", "stewardId" ] }, "RegisterForRaceParamsDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "leagueId": { "type": "string" }, "driverId": { "type": "string" } }, "required": [ "raceId", "leagueId", "driverId" ] }, "RacesPageDataRaceDTO": { "type": "object", "properties": { "id": { "type": "string" }, "track": { "type": "string" }, "car": { "type": "string" }, "scheduledAt": { "type": "string" }, "status": { "type": "string" }, "leagueId": { "type": "string" }, "leagueName": { "type": "string" } }, "required": [ "id", "track", "car", "scheduledAt", "status", "leagueId", "leagueName" ] }, "RaceWithSOFDTO": { "type": "object", "properties": { "id": { "type": "string" }, "track": { "type": "string" } }, "required": [ "id", "track" ] }, "RaceStatsDTO": { "type": "object", "properties": { "totalRaces": { "type": "number" } }, "required": [ "totalRaces" ] }, "RaceResultsDetailDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "track": { "type": "string" } }, "required": [ "raceId", "track" ] }, "RaceResultDTO": { "type": "object", "properties": { "driverId": { "type": "string" }, "driverName": { "type": "string" }, "avatarUrl": { "type": "string" }, "position": { "type": "number" }, "startPosition": { "type": "number" }, "incidents": { "type": "number" }, "fastestLap": { "type": "number" }, "positionChange": { "type": "number" }, "isPodium": { "type": "boolean" }, "isClean": { "type": "boolean" } }, "required": [ "driverId", "driverName", "avatarUrl", "position", "startPosition", "incidents", "fastestLap", "positionChange", "isPodium", "isClean" ] }, "RaceProtestDTO": { "type": "object", "properties": { "id": { "type": "string" }, "protestingDriverId": { "type": "string" }, "accusedDriverId": { "type": "string" }, "incident": { "type": "object" }, "lap": { "type": "number" }, "description": { "type": "string" } }, "required": [ "id", "protestingDriverId", "accusedDriverId", "incident", "lap", "description" ] }, "RacePenaltyDTO": { "type": "object", "properties": { "id": { "type": "string" }, "driverId": { "type": "string" }, "type": { "type": "string" }, "value": { "type": "number" }, "reason": { "type": "string" }, "issuedBy": { "type": "string" }, "issuedAt": { "type": "string" } }, "required": [ "id", "driverId", "type", "value", "reason", "issuedBy", "issuedAt" ] }, "RaceDetailUserResultDTO": { "type": "object", "properties": { "position": { "type": "number" }, "startPosition": { "type": "number" }, "incidents": { "type": "number" }, "fastestLap": { "type": "number" }, "positionChange": { "type": "number" }, "isPodium": { "type": "boolean" }, "isClean": { "type": "boolean" } }, "required": [ "position", "startPosition", "incidents", "fastestLap", "positionChange", "isPodium", "isClean" ] }, "RaceDetailRegistrationDTO": { "type": "object", "properties": { "isUserRegistered": { "type": "boolean" }, "canRegister": { "type": "boolean" } }, "required": [ "isUserRegistered", "canRegister" ] }, "RaceDetailRaceDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "track": { "type": "string" }, "car": { "type": "string" }, "scheduledAt": { "type": "string" }, "sessionType": { "type": "string" }, "status": { "type": "string" } }, "required": [ "id", "leagueId", "track", "car", "scheduledAt", "sessionType", "status" ] }, "RaceDetailLeagueDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "description": { "type": "string" }, "settings": { "type": "object" }, "maxDrivers": { "type": "number" }, "qualifyingFormat": { "type": "string" } }, "required": [ "id", "name", "description", "settings" ] }, "RaceDetailEntryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "country": { "type": "string" }, "avatarUrl": { "type": "string" } }, "required": [ "id", "name", "country", "avatarUrl" ] }, "RaceActionParamsDTO": { "type": "object", "properties": { "raceId": { "type": "string" } }, "required": [ "raceId" ] }, "QuickPenaltyCommandDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "driverId": { "type": "string" }, "adminId": { "type": "string" } }, "required": [ "raceId", "driverId", "adminId" ] }, "ImportRaceResultsSummaryDTO": { "type": "object", "properties": { "success": { "type": "boolean" }, "raceId": { "type": "string" }, "driversProcessed": { "type": "number" }, "resultsRecorded": { "type": "number" } }, "required": [ "success", "raceId", "driversProcessed", "resultsRecorded" ] }, "ImportRaceResultsDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "resultsFileContent": { "type": "string" } }, "required": [ "raceId", "resultsFileContent" ] }, "GetRaceDetailParamsDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "driverId": { "type": "string" } }, "required": [ "raceId", "driverId" ] }, "FileProtestCommandDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "protestingDriverId": { "type": "string" }, "accusedDriverId": { "type": "string" }, "incident": { "type": "object" }, "lap": { "type": "number" }, "description": { "type": "string" }, "timeInRace": { "type": "number" } }, "required": [ "raceId", "protestingDriverId", "accusedDriverId", "incident", "lap", "description" ] }, "DashboardRecentResultDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "raceName": { "type": "string" }, "leagueId": { "type": "string" }, "leagueName": { "type": "string" }, "finishedAt": { "type": "string" }, "position": { "type": "number" }, "incidents": { "type": "number" } }, "required": [ "raceId", "raceName", "leagueId", "leagueName", "finishedAt", "position", "incidents" ] }, "DashboardRaceSummaryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "leagueName": { "type": "string" }, "track": { "type": "string" }, "car": { "type": "string" }, "scheduledAt": { "type": "string" } }, "required": [ "id", "leagueId", "leagueName", "track", "car", "scheduledAt" ] }, "DashboardLeagueStandingSummaryDTO": { "type": "object", "properties": { "leagueId": { "type": "string" }, "leagueName": { "type": "string" }, "position": { "type": "number" }, "totalDrivers": { "type": "number" }, "points": { "type": "number" } }, "required": [ "leagueId", "leagueName", "position", "totalDrivers", "points" ] }, "DashboardFriendSummaryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "country": { "type": "string" }, "avatarUrl": { "type": "string" } }, "required": [ "id", "name", "country", "avatarUrl" ] }, "DashboardFeedSummaryDTO": { "type": "object", "properties": { "notificationCount": { "type": "number" } }, "required": [ "notificationCount" ] }, "DashboardFeedItemSummaryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "enum": { "type": "string" } }, "required": [ "id", "enum" ] }, "DashboardDriverSummaryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "country": { "type": "string" }, "avatarUrl": { "type": "string" } }, "required": [ "id", "name", "country", "avatarUrl" ] }, "ApplyPenaltyCommandDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "driverId": { "type": "string" }, "stewardId": { "type": "string" }, "enum": { "type": "string" } }, "required": [ "raceId", "driverId", "stewardId", "enum" ] }, "AllRacesListItemDTO": { "type": "object", "properties": { "id": { "type": "string" }, "track": { "type": "string" }, "car": { "type": "string" }, "scheduledAt": { "type": "string" }, "status": { "type": "string" }, "leagueId": { "type": "string" }, "leagueName": { "type": "string" } }, "required": [ "id", "track", "car", "scheduledAt", "status", "leagueId", "leagueName" ] }, "AllRacesStatusFilterDTO": { "type": "object", "properties": { "value": { "type": "string" }, "label": { "type": "string" } }, "required": [ "value", "label" ] }, "AllRacesLeagueFilterDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "name" ] }, "UploadMediaOutputDTO": { "type": "object", "properties": { "success": { "type": "string" } }, "required": [ "success" ] }, "UpdateAvatarOutputDTO": { "type": "object", "properties": { "success": { "type": "string" } }, "required": [ "success" ] }, "UpdateAvatarInputDTO": { "type": "object", "properties": { "driverId": { "type": "string" }, "avatarUrl": { "type": "string" } }, "required": [ "driverId", "avatarUrl" ] }, "RequestAvatarGenerationInputDTO": { "type": "object", "properties": { "userId": { "type": "string" }, "facePhotoData": { "type": "string" }, "suitColor": { "type": "string" } }, "required": [ "userId", "facePhotoData", "suitColor" ] }, "GetMediaOutputDTO": { "type": "object", "properties": { "id": { "type": "string" }, "url": { "type": "string" }, "type": { "type": "string" }, "category": { "type": "string" }, "uploadedAt": { "type": "string" }, "size": { "type": "number" } }, "required": [ "id", "url", "type", "uploadedAt" ] }, "GetAvatarOutputDTO": { "type": "object", "properties": { "avatarUrl": { "type": "string" } }, "required": [ "avatarUrl" ] }, "DeleteMediaOutputDTO": { "type": "object", "properties": { "success": { "type": "string" } }, "required": [ "success" ] }, "GetDriverRegistrationStatusQueryDTO": { "type": "object", "properties": { "raceId": { "type": "string" }, "driverId": { "type": "string" } }, "required": [ "raceId", "driverId" ] }, "GetDriverOutputDTO": { "type": "object", "properties": { "id": { "type": "string" }, "iracingId": { "type": "string" }, "name": { "type": "string" }, "country": { "type": "string" }, "bio": { "type": "string" }, "joinedAt": { "type": "string" } }, "required": [ "id", "iracingId", "name", "country", "joinedAt" ] }, "DriverStatsDTO": { "type": "object", "properties": { "totalDrivers": { "type": "number" } }, "required": [ "totalDrivers" ] }, "DriverRegistrationStatusDTO": { "type": "object", "properties": { "isRegistered": { "type": "boolean" }, "raceId": { "type": "string" }, "driverId": { "type": "string" } }, "required": [ "isRegistered", "raceId", "driverId" ] }, "DriverProfileTeamMembershipDTO": { "type": "object", "properties": { "teamId": { "type": "string" }, "teamName": { "type": "string" } }, "required": [ "teamId", "teamName" ] }, "DriverProfileStatsDTO": { "type": "object", "properties": { "totalRaces": { "type": "number" }, "wins": { "type": "number" }, "podiums": { "type": "number" }, "dnfs": { "type": "number" } }, "required": [ "totalRaces", "wins", "podiums", "dnfs" ] }, "DriverProfileSocialSummaryDTO": { "type": "object", "properties": { "friendsCount": { "type": "number" } }, "required": [ "friendsCount" ] }, "DriverProfileSocialFriendSummaryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "country": { "type": "string" }, "avatarUrl": { "type": "string" } }, "required": [ "id", "name", "country", "avatarUrl" ] }, "DriverProfileFinishDistributionDTO": { "type": "object", "properties": { "totalRaces": { "type": "number" }, "wins": { "type": "number" }, "podiums": { "type": "number" }, "topTen": { "type": "number" }, "dnfs": { "type": "number" }, "other": { "type": "number" } }, "required": [ "totalRaces", "wins", "podiums", "topTen", "dnfs", "other" ] }, "DriverProfileDriverSummaryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "country": { "type": "string" }, "avatarUrl": { "type": "string" } }, "required": [ "id", "name", "country", "avatarUrl" ] }, "DriverProfileAchievementDTO": { "type": "object", "properties": { "id": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" } }, "required": [ "id", "title", "description" ] }, "DriverLeaderboardItemDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "rating": { "type": "number" }, "skillLevel": { "type": "string" }, "nationality": { "type": "string" }, "racesCompleted": { "type": "number" }, "wins": { "type": "number" }, "podiums": { "type": "number" }, "isActive": { "type": "boolean" }, "rank": { "type": "number" } }, "required": [ "id", "name", "rating", "skillLevel", "nationality", "racesCompleted", "wins", "podiums", "isActive", "rank" ] }, "CompleteOnboardingOutputDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "CompleteOnboardingInputDTO": { "type": "object", "properties": { "firstName": { "type": "string" }, "lastName": { "type": "string" }, "displayName": { "type": "string" }, "country": { "type": "string" } }, "required": [ "firstName", "lastName", "displayName", "country" ] }, "WithdrawFromLeagueWalletOutputDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "WithdrawFromLeagueWalletInputDTO": { "type": "object", "properties": { "amount": { "type": "number" }, "currency": { "type": "string" }, "seasonId": { "type": "string" }, "destinationAccount": { "type": "string" } }, "required": [ "amount", "currency", "seasonId", "destinationAccount" ] }, "UpdateLeagueMemberRoleOutputDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "UpdateLeagueMemberRoleInputDTO": { "type": "object", "properties": { "leagueId": { "type": "string" }, "performerDriverId": { "type": "string" }, "targetDriverId": { "type": "string" } }, "required": [ "leagueId", "performerDriverId", "targetDriverId" ] }, "TotalLeaguesDTO": { "type": "object", "properties": { "totalLeagues": { "type": "number" } }, "required": [ "totalLeagues" ] }, "SeasonDTO": { "type": "object", "properties": { "seasonId": { "type": "string" }, "name": { "type": "string" }, "leagueId": { "type": "string" } }, "required": [ "seasonId", "name", "leagueId" ] }, "RemoveLeagueMemberOutputDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "RemoveLeagueMemberInputDTO": { "type": "object", "properties": { "leagueId": { "type": "string" }, "performerDriverId": { "type": "string" }, "targetDriverId": { "type": "string" } }, "required": [ "leagueId", "performerDriverId", "targetDriverId" ] }, "RejectJoinRequestOutputDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "RejectJoinRequestInputDTO": { "type": "object", "properties": { "requestId": { "type": "string" }, "leagueId": { "type": "string" } }, "required": [ "requestId", "leagueId" ] }, "ProtestDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "raceId": { "type": "string" }, "protestingDriverId": { "type": "string" }, "accusedDriverId": { "type": "string" }, "submittedAt": { "type": "string", "format": "date-time" }, "description": { "type": "string" } }, "required": [ "id", "leagueId", "raceId", "protestingDriverId", "accusedDriverId", "submittedAt", "description" ] }, "LeagueWithCapacityDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "name" ] }, "LeagueSummaryDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "name" ] }, "LeagueStatsDTO": { "type": "object", "properties": { "totalMembers": { "type": "number" }, "totalRaces": { "type": "number" }, "averageRating": { "type": "number" } }, "required": [ "totalMembers", "totalRaces", "averageRating" ] }, "LeagueStandingDTO": { "type": "object", "properties": { "driverId": { "type": "string" } }, "required": [ "driverId" ] }, "LeagueSeasonSummaryDTO": { "type": "object", "properties": { "seasonId": { "type": "string" }, "name": { "type": "string" }, "status": { "type": "string" } }, "required": [ "seasonId", "name", "status" ] }, "LeagueScoringPresetDTO": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "description": { "type": "string" } }, "required": [ "id", "name", "description" ] }, "LeagueMembershipDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "driverId": { "type": "string" } }, "required": [ "id", "leagueId", "driverId" ] }, "LeagueMemberDTO": { "type": "object", "properties": { "driverId": { "type": "string" } }, "required": [ "driverId" ] }, "LeagueJoinRequestDTO": { "type": "object", "properties": { "id": { "type": "string" }, "leagueId": { "type": "string" }, "driverId": { "type": "string" }, "requestedAt": { "type": "string", "format": "date-time" } }, "required": [ "id", "leagueId", "driverId", "requestedAt" ] }, "LeagueConfigFormModelTimingsDTO": { "type": "object", "properties": { "raceDayOfWeek": { "type": "string" }, "raceTimeHour": { "type": "number" }, "raceTimeMinute": { "type": "number" } }, "required": [ "raceDayOfWeek", "raceTimeHour", "raceTimeMinute" ] }, "LeagueConfigFormModelStructureDTO": { "type": "object", "properties": { "mode": { "type": "string" } }, "required": [ "mode" ] }, "LeagueConfigFormModelScoringDTO": { "type": "object", "properties": { "type": { "type": "string" }, "points": { "type": "number" } }, "required": [ "type", "points" ] }, "LeagueConfigFormModelDTO": { "type": "object", "properties": { "leagueId": { "type": "string" } }, "required": [ "leagueId" ] }, "LeagueConfigFormModelBasicsDTO": { "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" } }, "required": [ "name", "description" ] }, "LeagueAdminPermissionsDTO": { "type": "object", "properties": { "canRemoveMember": { "type": "boolean" }, "canUpdateRoles": { "type": "boolean" } }, "required": [ "canRemoveMember", "canUpdateRoles" ] }, "WalletTransactionDTO": { "type": "object", "properties": { "id": { "type": "string" } }, "required": [ "id" ] }, "GetLeagueWalletOutputDTO": { "type": "object", "properties": { "balance": { "type": "number" }, "currency": { "type": "string" }, "totalRevenue": { "type": "number" }, "totalFees": { "type": "number" }, "totalWithdrawals": { "type": "number" }, "pendingPayouts": { "type": "number" }, "canWithdraw": { "type": "boolean" } }, "required": [ "balance", "currency", "totalRevenue", "totalFees", "totalWithdrawals", "pendingPayouts", "canWithdraw" ] }, "GetLeagueSeasonsQueryDTO": { "type": "object", "properties": { "leagueId": { "type": "string" } }, "required": [ "leagueId" ] }, "GetLeagueProtestsQueryDTO": { "type": "object", "properties": { "leagueId": { "type": "string" } }, "required": [ "leagueId" ] }, "GetLeagueOwnerSummaryQueryDTO": { "type": "object", "properties": { "ownerId": { "type": "string" }, "leagueId": { "type": "string" } }, "required": [ "ownerId", "leagueId" ] }, "GetLeagueJoinRequestsQueryDTO": { "type": "object", "properties": { "leagueId": { "type": "string" } }, "required": [ "leagueId" ] }, "GetLeagueAdminPermissionsInputDTO": { "type": "object", "properties": { "leagueId": { "type": "string" }, "performerDriverId": { "type": "string" } }, "required": [ "leagueId", "performerDriverId" ] }, "GetLeagueAdminConfigQueryDTO": { "type": "object", "properties": { "leagueId": { "type": "string" } }, "required": [ "leagueId" ] }, "CreateLeagueOutputDTO": { "type": "object", "properties": { "leagueId": { "type": "string" }, "success": { "type": "boolean" } }, "required": [ "leagueId", "success" ] }, "CreateLeagueInputDTO": { "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" } }, "required": [ "name", "description" ] }, "ApproveJoinRequestOutputDTO": { "type": "object", "properties": { "success": { "type": "boolean" } }, "required": [ "success" ] }, "ApproveJoinRequestInputDTO": { "type": "object", "properties": { "requestId": { "type": "string" }, "leagueId": { "type": "string" } }, "required": [ "requestId", "leagueId" ] }, "AuthenticatedUserDTO": { "type": "object", "properties": { "userId": { "type": "string" }, "email": { "type": "string" }, "displayName": { "type": "string" } }, "required": [ "userId", "email", "displayName" ] }, "AuthSessionDTO": { "type": "object", "properties": { "token": { "type": "string" }, "user": { "$ref": "#/components/schemas/AuthenticatedUserDTO" } }, "required": [ "token", "user" ] }, "RecordPageViewOutputDTO": { "type": "object", "properties": { "pageViewId": { "type": "string" } }, "required": [ "pageViewId" ] }, "RecordEngagementOutputDTO": { "type": "object", "properties": { "eventId": { "type": "string" }, "engagementWeight": { "type": "number" } }, "required": [ "eventId", "engagementWeight" ] }, "GetDashboardDataOutputDTO": { "type": "object", "properties": { "totalUsers": { "type": "number" }, "activeUsers": { "type": "number" }, "totalRaces": { "type": "number" }, "totalLeagues": { "type": "number" } }, "required": [ "totalUsers", "activeUsers", "totalRaces", "totalLeagues" ] }, "GetAnalyticsMetricsOutputDTO": { "type": "object", "properties": { "pageViews": { "type": "number" }, "uniqueVisitors": { "type": "number" }, "averageSessionDuration": { "type": "number" }, "bounceRate": { "type": "number" } }, "required": [ "pageViews", "uniqueVisitors", "averageSessionDuration", "bounceRate" ] } } } }