{"openapi": "3.1.0", "info": {"title": "AISOLUS Padel API documentation", "version": "0.9.0"}, "servers": [{"url": "https://your-server/api"}], "paths": {"/v1/integrations/1c/ping": {"get": {"tags": ["Integration: 1C payments"], "summary": "Ping and token check", "operationId": "ping_v1_integrations_1c_ping_get", "parameters": [{"name": "X-1C-Token", "in": "header", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X-1C-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/integrations/1c/payments": {"post": {"tags": ["Integration: 1C payments"], "summary": "Import payments", "operationId": "import_payments_v1_integrations_1c_payments_post", "parameters": [{"name": "X-1C-Token", "in": "header", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X-1C-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PaymentsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "get": {"tags": ["Integration: 1C payments"], "summary": "List payments (reconciliation)", "operationId": "list_payments_v1_integrations_1c_payments_get", "parameters": [{"name": "status", "in": "query", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Status"}}, {"name": "since", "in": "query", "required": false, "schema": {"anyOf": [{"type": "string", "format": "date-time"}, {"type": "null"}], "title": "Since"}}, {"name": "limit", "in": "query", "required": false, "schema": {"type": "integer", "maximum": 1000, "minimum": 1, "default": 200, "title": "Limit"}}, {"name": "X-1C-Token", "in": "header", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X-1C-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/integrations/1c/payments/retry": {"post": {"tags": ["Integration: 1C payments"], "summary": "Re-match unmatched payments", "operationId": "retry_unmatched_v1_integrations_1c_payments_retry_post", "parameters": [{"name": "X-1C-Token", "in": "header", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X-1C-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/integrations/matchi/{club_id}": {"post": {"tags": ["Integration: MATCHi"], "summary": "MATCHi court booking event", "operationId": "matchi_event_v1_integrations_matchi__club_id__post", "parameters": [{"name": "club_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/match-result": {"post": {"tags": ["Court server: data ingest"], "summary": "Match result from the court", "operationId": "match_result_v1_ingest_match_result_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MatchResultIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/match-stats": {"post": {"tags": ["Court server: data ingest"], "summary": "Match stats", "operationId": "match_stats_v1_ingest_match_stats_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MatchStatsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/match-movement": {"post": {"tags": ["Court server: data ingest"], "summary": "Player movement", "operationId": "match_movement_v1_ingest_match_movement_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MatchMovementIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/clips": {"post": {"tags": ["Court server: data ingest"], "summary": "Clip metadata", "operationId": "clips_v1_ingest_clips_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ClipsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/clips/file": {"put": {"tags": ["Court server: data ingest"], "summary": "Upload clip file", "operationId": "clip_file_v1_ingest_clips_file_put", "parameters": [{"name": "key", "in": "query", "required": true, "schema": {"type": "string", "title": "Key"}}, {"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/player-clip": {"post": {"tags": ["Court server: data ingest"], "summary": "Player highlight during the match", "operationId": "player_clip_v1_ingest_player_clip_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PlayerClipIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/live": {"post": {"tags": ["Court server: data ingest"], "summary": "Live court score", "operationId": "live_v1_ingest_live_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LiveIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/quick-games": {"get": {"tags": ["Court server: data ingest"], "summary": "Current americano game on a court", "operationId": "pending_game_v1_ingest_quick_games_get", "parameters": [{"name": "court", "in": "query", "required": true, "schema": {"type": "string", "title": "Court"}}, {"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/quick-games/{game_id}/score": {"post": {"tags": ["Court server: data ingest"], "summary": "Americano game score from the court", "operationId": "court_score_v1_ingest_quick_games__game_id__score_post", "parameters": [{"name": "game_id", "in": "path", "required": true, "schema": {"type": "integer", "title": "Game Id"}}, {"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CourtScoreIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/bracket": {"get": {"tags": ["Court server: data ingest"], "summary": "Bracket match on a court", "operationId": "pending_match_v1_ingest_bracket_get", "parameters": [{"name": "court", "in": "query", "required": true, "schema": {"type": "string", "title": "Court"}}, {"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/bracket/{match_id}/result": {"post": {"tags": ["Court server: data ingest"], "summary": "Bracket match result from the court", "operationId": "court_result_v1_ingest_bracket__match_id__result_post", "parameters": [{"name": "match_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Match Id"}}, {"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CourtResultIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/levels": {"get": {"tags": ["Court server: data ingest"], "summary": "Player levels for the terminal", "operationId": "court_levels_v1_ingest_levels_get", "parameters": [{"name": "ids", "in": "query", "required": false, "schema": {"type": "string", "default": "", "title": "Ids"}}, {"name": "phones", "in": "query", "required": false, "schema": {"type": "string", "default": "", "title": "Phones"}}, {"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/player-pass": {"post": {"tags": ["Court server: data ingest"], "summary": "Check a player pass in the cloud", "operationId": "court_player_pass_v1_ingest_player_pass_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CourtPassIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/cv/rally": {"post": {"tags": ["Court server: computer vision"], "summary": "Rally", "operationId": "rally_v1_cv_rally_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/RallyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/cv/match-summary": {"post": {"tags": ["Court server: computer vision"], "summary": "Match summary", "operationId": "match_summary_v1_cv_match_summary_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MatchSummaryIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/cv/health": {"post": {"tags": ["Court server: computer vision"], "summary": "Court health", "operationId": "court_health_in_v1_cv_health_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HealthIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/cv/match/{match_id}": {"get": {"tags": ["Court server: computer vision"], "summary": "Match computer vision data", "operationId": "match_cv_v1_cv_match__match_id__get", "security": [{"HTTPBearer": []}], "parameters": [{"name": "match_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Match Id"}}, {"name": "x-club-token", "in": "header", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/cv/court/{court}/health": {"get": {"tags": ["Court server: computer vision"], "summary": "Latest court health", "operationId": "court_health_out_v1_cv_court__court__health_get", "security": [{"HTTPBearer": []}], "parameters": [{"name": "court", "in": "path", "required": true, "schema": {"type": "string", "title": "Court"}}, {"name": "club_id", "in": "query", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Club Id"}}, {"name": "x-club-token", "in": "header", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/cv/court-bookings": {"get": {"tags": ["Court server: computer vision"], "summary": "Court bookings now", "operationId": "court_bookings_now_v1_cv_court_bookings_get", "parameters": [{"name": "court", "in": "query", "required": false, "schema": {"type": "array", "items": {"type": "string"}, "maxItems": 16, "default": [], "title": "Court"}}, {"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/license/court": {"post": {"tags": ["Court server license"], "summary": "Issue a court server license", "operationId": "issue_court_license_v1_license_court_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CourtLicenseIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/live/{club_id}": {"get": {"tags": ["Live score"], "summary": "Live scores of club courts", "operationId": "live_courts_v1_live__club_id__get", "parameters": [{"name": "club_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/leads": {"post": {"tags": ["Leads"], "summary": "Create a lead", "operationId": "lead_create_v1_leads_post", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/LeadIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/clubs": {"get": {"tags": ["Clubs and slots"], "summary": "List clubs", "operationId": "clubs_v1_clubs_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}}}, "/v1/clubs/{club_id}": {"get": {"tags": ["Clubs and slots"], "summary": "Club", "operationId": "club_v1_clubs__club_id__get", "parameters": [{"name": "club_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/clubs/{club_id}/courts": {"get": {"tags": ["Clubs and slots"], "summary": "Club courts", "operationId": "courts_v1_clubs__club_id__courts_get", "parameters": [{"name": "club_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/clubs/{club_id}/slots": {"get": {"tags": ["Clubs and slots"], "summary": "Club slots for a day", "operationId": "slots_v1_clubs__club_id__slots_get", "parameters": [{"name": "club_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Club Id"}}, {"name": "day", "in": "query", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Day"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings": {"post": {"tags": ["Bookings"], "summary": "Create a booking", "operationId": "create_v1_bookings_post", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/BookingIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/bookings/my": {"get": {"tags": ["Bookings"], "summary": "My bookings", "operationId": "my_v1_bookings_my_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/bookings/{booking_id}/cancel": {"post": {"tags": ["Bookings"], "summary": "Cancel a booking", "operationId": "cancel_v1_bookings__booking_id__cancel_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "booking_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Booking Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/{booking_id}/reschedule": {"post": {"tags": ["Bookings"], "summary": "Reschedule a booking", "operationId": "reschedule_v1_bookings__booking_id__reschedule_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "booking_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Booking Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__bookings__RescheduleIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/rules": {"get": {"tags": ["Bookings"], "summary": "My booking rules in a club", "operationId": "my_rules_v1_bookings_rules_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": true, "schema": {"type": "string", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/promo/check": {"get": {"tags": ["Bookings"], "summary": "Check a promo code", "operationId": "promo_check_v1_promo_check_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": true, "schema": {"type": "string", "title": "Club Id"}}, {"name": "code", "in": "query", "required": true, "schema": {"type": "string", "title": "Code"}}, {"name": "day", "in": "query", "required": true, "schema": {"type": "string", "format": "date", "title": "Day"}}, {"name": "at", "in": "query", "required": true, "schema": {"type": "string", "title": "At"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/waitlist": {"post": {"tags": ["Bookings"], "summary": "Join the waitlist", "operationId": "waitlist_join_v1_bookings_waitlist_post", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/WaitIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/bookings/waitlist/my": {"get": {"tags": ["Bookings"], "summary": "My waitlist", "operationId": "waitlist_my_v1_bookings_waitlist_my_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/bookings/waitlist/{wait_id}/cancel": {"post": {"tags": ["Bookings"], "summary": "Leave the waitlist", "operationId": "waitlist_cancel_v1_bookings_waitlist__wait_id__cancel_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "wait_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Wait Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/{booking_id}/split": {"post": {"tags": ["Bookings"], "summary": "Split the booking payment", "operationId": "split_v1_bookings__booking_id__split_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "booking_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Booking Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SplitIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/splits/my": {"get": {"tags": ["Bookings"], "summary": "My pending shares", "operationId": "my_splits_v1_bookings_splits_my_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/bookings/splits/{split_id}/accept": {"post": {"tags": ["Bookings"], "summary": "Pay my share", "operationId": "accept_split_v1_bookings_splits__split_id__accept_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "split_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Split Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/rental": {"get": {"tags": ["Bookings"], "summary": "Rental items in a club", "operationId": "rental_items_v1_bookings_rental_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": true, "schema": {"type": "string", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/{booking_id}/rental": {"post": {"tags": ["Bookings"], "summary": "Add rental to my booking", "operationId": "rental_add_v1_bookings__booking_id__rental_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "booking_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Booking Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/RentalAddIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "get": {"tags": ["Bookings"], "summary": "Rental on a booking", "operationId": "rental_of_booking_v1_bookings__booking_id__rental_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "booking_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Booking Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/bookings/{booking_id}/rental-pass": {"get": {"tags": ["Bookings"], "summary": "Rental QR for a booking", "operationId": "my_rental_pass_v1_bookings__booking_id__rental_pass_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "booking_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Booking Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/wallet": {"get": {"tags": ["Wallet and payments"], "summary": "Player wallet", "operationId": "wallet_v1_wallet_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/wallet/topup": {"post": {"tags": ["Wallet and payments"], "summary": "Top up the wallet", "operationId": "topup_v1_wallet_topup_post", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/TopupIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/wallet/payments/{payment_id}": {"get": {"tags": ["Wallet and payments"], "summary": "Top-up payment status", "operationId": "payment_status_v1_wallet_payments__payment_id__get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "payment_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Payment Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/wallet/yookassa/webhook": {"post": {"tags": ["Wallet and payments"], "summary": "YooKassa notification", "operationId": "yookassa_webhook_v1_wallet_yookassa_webhook_post", "requestBody": {"content": {"application/json": {"schema": {"additionalProperties": true, "type": "object", "title": "Payload"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/matches/my": {"get": {"tags": ["Matches"], "summary": "My matches", "operationId": "my_matches_v1_matches_my_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/matches/{match_id}": {"get": {"tags": ["Matches"], "summary": "Match card", "operationId": "match_detail_v1_matches__match_id__get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "match_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Match Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/matches/manual": {"post": {"tags": ["Matches"], "summary": "Manual score entry", "operationId": "manual_v1_matches_manual_post", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ManualMatchIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/matches/{match_id}/score-correction": {"post": {"tags": ["Matches"], "summary": "Score correction by a referee", "operationId": "score_correction_v1_matches__match_id__score_correction_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "match_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Match Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ScoreCorrectionIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/matches/mark": {"post": {"tags": ["Matches"], "summary": "Mark a rally for highlights", "operationId": "mark_rally_v1_matches_mark_post", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/MarkIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/matches/{match_id}/review": {"get": {"tags": ["Matches"], "summary": "Match text review", "operationId": "match_review_v1_matches__match_id__review_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "match_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Match Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/matches/{match_id}/clips/{clip_id}/share": {"post": {"tags": ["Matches"], "summary": "Share link for a clip", "operationId": "share_clip_v1_matches__match_id__clips__clip_id__share_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "match_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Match Id"}}, {"name": "clip_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Clip Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/players/recent": {"get": {"tags": ["Players"], "summary": "Recent players", "operationId": "recent_players_v1_players_recent_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/players/{player_id}": {"get": {"tags": ["Players"], "summary": "Player profile", "operationId": "player_v1_players__player_id__get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "player_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Player Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/rating/scale": {"get": {"tags": ["AISOLUS rating"], "summary": "Rating scale", "operationId": "scale_v1_rating_scale_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}}}, "/v1/rating/me": {"get": {"tags": ["AISOLUS rating"], "summary": "My rating", "operationId": "me_v1_rating_me_get", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/rating/user/{uid}": {"get": {"tags": ["AISOLUS rating"], "summary": "Another player's rating", "operationId": "other_v1_rating_user__uid__get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "uid", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Uid"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/rating/leaderboard": {"get": {"tags": ["AISOLUS rating"], "summary": "Top players by AISOLUS rating", "operationId": "leaderboard_v1_rating_leaderboard_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Club Id"}}, {"name": "limit", "in": "query", "required": false, "schema": {"type": "integer", "default": 50, "title": "Limit"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/leaderboard": {"get": {"tags": ["Leaderboard"], "summary": "Elo leaderboard", "operationId": "get_leaderboard_v1_leaderboard_get", "parameters": [{"name": "scope", "in": "query", "required": false, "schema": {"type": "string", "default": "club", "title": "Scope"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients": {"get": {"tags": ["Integration: YCLIENTS"], "summary": "Get Link", "operationId": "get_link_v1_admin_yclients_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "put": {"tags": ["Integration: YCLIENTS"], "summary": "Put Link", "operationId": "put_link_v1_admin_yclients_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__yclients_admin__LinkIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/staff": {"get": {"tags": ["Integration: YCLIENTS"], "summary": "Staff", "operationId": "staff_v1_admin_yclients_staff_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/sync": {"post": {"tags": ["Integration: YCLIENTS"], "summary": "Sync Now", "operationId": "sync_now_v1_admin_yclients_sync_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/records": {"get": {"tags": ["Integration: YCLIENTS"], "summary": "Records", "operationId": "records_v1_admin_yclients_records_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/players": {"get": {"tags": ["Integration: YCLIENTS"], "operationId": "get_players_v1_admin_yclients_players_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/players/settings": {"put": {"tags": ["Integration: YCLIENTS"], "operationId": "put_settings_v1_admin_yclients_players_settings_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__SettingsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/players/bind": {"post": {"tags": ["Integration: YCLIENTS"], "operationId": "post_bind_v1_admin_yclients_players_bind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BindIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/players/unbind": {"post": {"tags": ["Integration: YCLIENTS"], "operationId": "post_unbind_v1_admin_yclients_players_unbind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__ClientIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/players/legacy/move": {"post": {"tags": ["Integration: YCLIENTS"], "operationId": "legacy_move_v1_admin_yclients_players_legacy_move_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/yclients/players/legacy/keep": {"post": {"tags": ["Integration: YCLIENTS"], "operationId": "legacy_keep_v1_admin_yclients_players_legacy_keep_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/onec-fitness": {"get": {"tags": ["Integration: 1C Fitness Club"], "summary": "Get Link", "operationId": "get_link_v1_admin_onec_fitness_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/onec-fitness/records": {"get": {"tags": ["Integration: 1C Fitness Club"], "summary": "Records", "operationId": "records_v1_admin_onec_fitness_records_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/onec-fitness/writes": {"get": {"tags": ["Integration: 1C Fitness Club"], "summary": "Writes", "operationId": "writes_v1_admin_onec_fitness_writes_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/onec-fitness/rentals": {"post": {"tags": ["Integration: 1C Fitness Club"], "summary": "Court Rentals", "operationId": "court_rentals_v1_ingest_onec_fitness_rentals_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/RentalsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/onec-fitness/outbox": {"post": {"tags": ["Integration: 1C Fitness Club"], "summary": "Outbox", "operationId": "outbox_v1_ingest_onec_fitness_outbox_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/OutboxIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/onec-fitness/outbox/report": {"post": {"tags": ["Integration: 1C Fitness Club"], "summary": "Outbox Report", "operationId": "outbox_report_v1_ingest_onec_fitness_outbox_report_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/WriteReportIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/onec-fitness/money/wanted": {"post": {"tags": ["Integration: 1C Fitness Club"], "summary": "Money Wanted", "operationId": "money_wanted_v1_ingest_onec_fitness_money_wanted_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"content": {"application/json": {"schema": {"anyOf": [{"$ref": "#/components/schemas/MoneyWantedIn"}, {"type": "null"}], "title": "Body"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/onec-fitness/money/report": {"post": {"tags": ["Integration: 1C Fitness Club"], "summary": "Money Report", "operationId": "money_report_v1_ingest_onec_fitness_money_report_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MoneyReportIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/onec-fitness/money/outbox": {"post": {"tags": ["Integration: 1C Fitness Club"], "summary": "Money Outbox", "operationId": "money_outbox_v1_ingest_onec_fitness_money_outbox_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/ingest/onec-fitness/money/outbox/report": {"post": {"tags": ["Integration: 1C Fitness Club"], "summary": "Money Outbox Report", "operationId": "money_outbox_report_v1_ingest_onec_fitness_money_outbox_report_post", "parameters": [{"name": "x-club-token", "in": "header", "required": true, "schema": {"type": "string", "title": "X-Club-Token"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MoneyWriteReportIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/pay1c": {"post": {"tags": ["Integration: 1C payments"], "summary": "Create", "operationId": "create_v1_pay1c_post", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/nominal_pay__PayIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/pay1c/mine": {"get": {"tags": ["Integration: 1C payments"], "summary": "Mine", "operationId": "mine_v1_pay1c_mine_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": true, "schema": {"type": "string", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/pay1c/{payment_id}": {"get": {"tags": ["Integration: 1C payments"], "summary": "Status", "operationId": "status_v1_pay1c__payment_id__get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "payment_id", "in": "path", "required": true, "schema": {"type": "string", "format": "uuid", "title": "Payment Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/onec": {"get": {"tags": ["Integration: 1C payments"], "summary": "Onec Summary", "operationId": "onec_summary_v1_admin_onec_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "limit", "in": "query", "required": false, "schema": {"type": "integer", "default": 20, "title": "Limit"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/onec/retry": {"post": {"tags": ["Integration: 1C payments"], "summary": "Onec Retry", "operationId": "onec_retry_v1_admin_onec_retry_post", "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/admin/onec/settings": {"put": {"tags": ["Integration: 1C payments"], "summary": "Onec Settings", "operationId": "onec_settings_v1_admin_onec_settings_put", "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/OnecSettingsIn"}}}, "required": true}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}, "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}]}}, "/v1/admin/onec/{ext_id}/confirm": {"post": {"tags": ["Integration: 1C payments"], "summary": "Onec Confirm", "operationId": "onec_confirm_v1_admin_onec__ext_id__confirm_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "ext_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Ext Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/onec/{ext_id}/assign": {"post": {"tags": ["Integration: 1C payments"], "summary": "Onec Assign", "operationId": "onec_assign_v1_admin_onec__ext_id__assign_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "ext_id", "in": "path", "required": true, "schema": {"type": "string", "title": "Ext Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__admin__AssignIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic": {"get": {"tags": ["Integration: Playtomic"], "summary": "Get Link", "operationId": "get_link_v1_admin_playtomic_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "put": {"tags": ["Integration: Playtomic"], "summary": "Put Link", "operationId": "put_link_v1_admin_playtomic_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__playtomic_admin__LinkIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/resources": {"get": {"tags": ["Integration: Playtomic"], "summary": "Resources", "operationId": "resources_v1_admin_playtomic_resources_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/sync": {"post": {"tags": ["Integration: Playtomic"], "summary": "Sync Now", "operationId": "sync_now_v1_admin_playtomic_sync_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/records": {"get": {"tags": ["Integration: Playtomic"], "summary": "Records", "operationId": "records_v1_admin_playtomic_records_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/players": {"get": {"tags": ["Integration: Playtomic"], "operationId": "get_players_v1_admin_playtomic_players_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/players/settings": {"put": {"tags": ["Integration: Playtomic"], "operationId": "put_settings_v1_admin_playtomic_players_settings_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__SettingsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/players/bind": {"post": {"tags": ["Integration: Playtomic"], "operationId": "post_bind_v1_admin_playtomic_players_bind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BindIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/players/unbind": {"post": {"tags": ["Integration: Playtomic"], "operationId": "post_unbind_v1_admin_playtomic_players_unbind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__ClientIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/players/legacy/move": {"post": {"tags": ["Integration: Playtomic"], "operationId": "legacy_move_v1_admin_playtomic_players_legacy_move_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/playtomic/players/legacy/keep": {"post": {"tags": ["Integration: Playtomic"], "operationId": "legacy_keep_v1_admin_playtomic_players_legacy_keep_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi": {"get": {"tags": ["Integration: MATCHi"], "summary": "Get Link", "operationId": "get_link_v1_admin_matchi_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "put": {"tags": ["Integration: MATCHi"], "summary": "Put Link", "operationId": "put_link_v1_admin_matchi_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__matchi_admin__LinkIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/check": {"post": {"tags": ["Integration: MATCHi"], "operationId": "check_v1_admin_matchi_check_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"content": {"application/json": {"schema": {"anyOf": [{"$ref": "#/components/schemas/routers__matchi_admin__CheckIn"}, {"type": "null"}], "title": "Body"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/sync": {"post": {"tags": ["Integration: MATCHi"], "operationId": "sync_now_v1_admin_matchi_sync_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/records": {"get": {"tags": ["Integration: MATCHi"], "summary": "Records", "operationId": "records_v1_admin_matchi_records_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/events": {"get": {"tags": ["Integration: MATCHi"], "summary": "Events", "operationId": "events_v1_admin_matchi_events_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/players": {"get": {"tags": ["Integration: MATCHi"], "operationId": "get_players_v1_admin_matchi_players_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/players/settings": {"put": {"tags": ["Integration: MATCHi"], "operationId": "put_settings_v1_admin_matchi_players_settings_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__SettingsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/players/bind": {"post": {"tags": ["Integration: MATCHi"], "operationId": "post_bind_v1_admin_matchi_players_bind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BindIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/players/unbind": {"post": {"tags": ["Integration: MATCHi"], "operationId": "post_unbind_v1_admin_matchi_players_unbind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__ClientIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/players/legacy/move": {"post": {"tags": ["Integration: MATCHi"], "operationId": "legacy_move_v1_admin_matchi_players_legacy_move_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/matchi/players/legacy/keep": {"post": {"tags": ["Integration: MATCHi"], "operationId": "legacy_keep_v1_admin_matchi_players_legacy_keep_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/courtreserve/players": {"get": {"tags": ["Integration: a club connects its service"], "operationId": "get_players_v1_admin_connect_courtreserve_players_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/courtreserve/players/settings": {"put": {"tags": ["Integration: a club connects its service"], "operationId": "put_settings_v1_admin_connect_courtreserve_players_settings_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__SettingsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/courtreserve/players/bind": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "post_bind_v1_admin_connect_courtreserve_players_bind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BindIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/courtreserve/players/unbind": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "post_unbind_v1_admin_connect_courtreserve_players_unbind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__ClientIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/courtreserve/players/legacy/move": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "legacy_move_v1_admin_connect_courtreserve_players_legacy_move_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/courtreserve/players/legacy/keep": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "legacy_keep_v1_admin_connect_courtreserve_players_legacy_keep_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/altegio/players": {"get": {"tags": ["Integration: a club connects its service"], "operationId": "get_players_v1_admin_connect_altegio_players_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/altegio/players/settings": {"put": {"tags": ["Integration: a club connects its service"], "operationId": "put_settings_v1_admin_connect_altegio_players_settings_put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__SettingsIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/altegio/players/bind": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "post_bind_v1_admin_connect_altegio_players_bind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BindIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/altegio/players/unbind": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "post_unbind_v1_admin_connect_altegio_players_unbind_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/routers__service_players__ClientIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/altegio/players/legacy/move": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "legacy_move_v1_admin_connect_altegio_players_legacy_move_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/altegio/players/legacy/keep": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "legacy_keep_v1_admin_connect_altegio_players_legacy_keep_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/LegacyIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect": {"get": {"tags": ["Integration: a club connects its service"], "operationId": "services_v1_admin_connect_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/{code}/check": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "check_v1_admin_connect__code__check_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "code", "in": "path", "required": true, "schema": {"type": "string", "title": "Code"}}, {"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"content": {"application/json": {"schema": {"anyOf": [{"$ref": "#/components/schemas/routers__connect_admin__CheckIn"}, {"type": "null"}], "title": "Body"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/{code}": {"put": {"tags": ["Integration: a club connects its service"], "operationId": "save_v1_admin_connect__code__put", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "code", "in": "path", "required": true, "schema": {"type": "string", "title": "Code"}}, {"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SaveIn"}}}}, "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}, "delete": {"tags": ["Integration: a club connects its service"], "operationId": "disconnect_v1_admin_connect__code__delete", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "code", "in": "path", "required": true, "schema": {"type": "string", "title": "Code"}}, {"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/{code}/sync": {"post": {"tags": ["Integration: a club connects its service"], "operationId": "sync_now_v1_admin_connect__code__sync_post", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "code", "in": "path", "required": true, "schema": {"type": "string", "title": "Code"}}, {"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}, "/v1/admin/connect/{code}/records": {"get": {"tags": ["Integration: a club connects its service"], "operationId": "records_v1_admin_connect__code__records_get", "security": [{"HTTPBearer": []}, {"OAuth2PasswordBearer": []}], "parameters": [{"name": "code", "in": "path", "required": true, "schema": {"type": "string", "title": "Code"}}, {"name": "club_id", "in": "query", "required": false, "schema": {"type": "string", "default": "c1", "title": "Club Id"}}], "responses": {"200": {"description": "Successful Response", "content": {"application/json": {"schema": {}}}}, "422": {"description": "Validation Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HTTPValidationError"}}}}}}}}, "components": {"securitySchemes": {"HTTPBearer": {"type": "http", "scheme": "bearer"}, "OAuth2PasswordBearer": {"type": "oauth2", "flows": {"password": {"scopes": {}, "tokenUrl": "v1/admin/token"}}}}, "schemas": {"AppIn": {"properties": {"version": {"type": "string", "title": "Version", "default": ""}, "uptime_s": {"type": "integer", "title": "Uptime S", "default": 0}}, "type": "object", "title": "AppIn"}, "BindIn": {"properties": {"customerId": {"type": "string", "maxLength": 120, "minLength": 1, "title": "Customerid"}, "userId": {"type": "string", "format": "uuid", "title": "Userid"}}, "type": "object", "required": ["customerId", "userId"], "title": "BindIn"}, "BookingIn": {"properties": {"club_id": {"type": "string", "title": "Club Id"}, "day": {"type": "string", "title": "Day"}, "time": {"type": "string", "title": "Time"}, "court_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Court Id"}, "promo_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Promo Code"}, "pay": {"type": "string", "pattern": "^(wallet|card|club)$", "title": "Pay", "default": "wallet"}, "coach_id": {"anyOf": [{"type": "string", "format": "uuid"}, {"type": "null"}], "title": "Coach Id"}, "return_scheme": {"anyOf": [{"type": "string", "pattern": "^(aipadel|aisolus-padel)$"}, {"type": "null"}], "title": "Return Scheme"}}, "type": "object", "required": ["club_id", "day", "time"], "title": "BookingIn"}, "CameraIn": {"properties": {"tag": {"type": "string", "title": "Tag"}, "model": {"type": "string", "title": "Model", "default": ""}, "online": {"type": "boolean", "title": "Online", "default": false}, "fps": {"type": "number", "title": "Fps", "default": 0.0}, "fails": {"type": "integer", "title": "Fails", "default": 0}, "reopens": {"type": "integer", "title": "Reopens", "default": 0}, "last_frame_age_s": {"type": "number", "title": "Last Frame Age S", "default": 0.0}, "bright": {"type": "number", "title": "Bright", "default": 0.0}, "temp_c": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Temp C"}, "dropped": {"type": "integer", "title": "Dropped", "default": 0}, "drop_ratio": {"type": "number", "title": "Drop Ratio", "default": 0.0}}, "type": "object", "required": ["tag"], "title": "CameraIn"}, "ClipIn": {"properties": {"clip_id": {"type": "string", "title": "Clip Id", "default": ""}, "kind": {"type": "string", "title": "Kind", "default": ""}, "title": {"type": "string", "title": "Title", "default": ""}, "url": {"type": "string", "title": "Url", "default": ""}, "object_key": {"type": "string", "title": "Object Key", "default": ""}, "preview_url": {"type": "string", "title": "Preview Url", "default": ""}, "duration_s": {"type": "number", "title": "Duration S", "default": 0}, "group": {"type": "string", "title": "Group", "default": ""}, "camera": {"type": "string", "title": "Camera", "default": ""}, "faces": {"anyOf": [{"additionalProperties": true, "type": "object"}, {"type": "null"}], "title": "Faces"}}, "type": "object", "title": "ClipIn"}, "ClipsIn": {"properties": {"match_id": {"type": "string", "format": "uuid", "title": "Match Id"}, "clips": {"items": {"$ref": "#/components/schemas/ClipIn"}, "type": "array", "title": "Clips"}}, "type": "object", "required": ["match_id", "clips"], "title": "ClipsIn"}, "CourtLicenseIn": {"properties": {"fingerprint": {"type": "string", "pattern": "^[0-9a-f]{64}$", "title": "Fingerprint"}, "version": {"type": "string", "maxLength": 40, "title": "Version", "default": ""}}, "type": "object", "required": ["fingerprint"], "title": "CourtLicenseIn"}, "CourtPassIn": {"properties": {"code": {"type": "string", "maxLength": 120, "title": "Code"}}, "type": "object", "required": ["code"], "title": "CourtPassIn"}, "CourtResultIn": {"properties": {"score": {"type": "string", "pattern": "^\\d+:\\d+(,\\d+:\\d+)*$", "title": "Score"}, "winner": {"type": "integer", "maximum": 2.0, "minimum": 1.0, "title": "Winner"}}, "type": "object", "required": ["score", "winner"], "title": "CourtResultIn"}, "CourtScoreIn": {"properties": {"score1": {"type": "integer", "maximum": 64.0, "minimum": 0.0, "title": "Score1"}, "score2": {"type": "integer", "maximum": 64.0, "minimum": 0.0, "title": "Score2"}}, "type": "object", "required": ["score1", "score2"], "title": "CourtScoreIn"}, "HTTPValidationError": {"properties": {"detail": {"items": {"$ref": "#/components/schemas/ValidationError"}, "type": "array", "title": "Detail"}}, "type": "object", "title": "HTTPValidationError"}, "HealthIn": {"properties": {"court": {"type": "string", "title": "Court"}, "ts": {"type": "number", "title": "Ts", "default": 0.0}, "cameras": {"items": {"$ref": "#/components/schemas/CameraIn"}, "type": "array", "maxItems": 32, "title": "Cameras"}, "app": {"$ref": "#/components/schemas/AppIn"}, "host": {"$ref": "#/components/schemas/HostIn"}}, "type": "object", "required": ["court"], "title": "HealthIn"}, "HostIn": {"properties": {"disk_free_gb": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Disk Free Gb"}, "disk_used_pct": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Disk Used Pct"}, "gpu_temp_c": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Gpu Temp C"}, "gpu_name": {"type": "string", "title": "Gpu Name", "default": ""}}, "type": "object", "title": "HostIn"}, "LeadIn": {"properties": {"phone": {"type": "string", "maxLength": 32, "minLength": 5, "title": "Phone"}, "name": {"type": "string", "maxLength": 80, "title": "Name", "default": ""}, "club_id": {"anyOf": [{"type": "string", "maxLength": 24}, {"type": "null"}], "title": "Club Id"}, "source": {"type": "string", "maxLength": 60, "title": "Source", "default": ""}, "utm": {"anyOf": [{"additionalProperties": true, "type": "object"}, {"type": "null"}], "title": "Utm"}, "comment": {"type": "string", "maxLength": 300, "title": "Comment", "default": ""}}, "type": "object", "required": ["phone"], "title": "LeadIn"}, "LegacyIn": {"properties": {"ref": {"type": "string", "maxLength": 120, "minLength": 1, "title": "Ref"}}, "type": "object", "required": ["ref"], "title": "LegacyIn"}, "LiveIn": {"properties": {"court": {"type": "string", "title": "Court"}, "score": {"type": "string", "title": "Score", "default": ""}, "teams": {"type": "string", "title": "Teams", "default": ""}, "set_no": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Set No"}, "on_air": {"type": "boolean", "title": "On Air", "default": false}, "players": {"items": {"type": "string"}, "type": "array", "maxItems": 8, "title": "Players"}, "serving": {"anyOf": [{"type": "integer", "maximum": 2.0, "minimum": 1.0}, {"type": "null"}], "title": "Serving"}, "teams_ids": {"items": {"items": {"type": "string"}, "type": "array"}, "type": "array", "maxItems": 2, "title": "Teams Ids"}}, "type": "object", "required": ["court"], "title": "LiveIn"}, "ManualMatchIn": {"properties": {"club_id": {"type": "string", "title": "Club Id"}, "day": {"type": "string", "title": "Day"}, "time": {"type": "string", "title": "Time"}, "sets": {"type": "string", "pattern": "^\\d+:\\d+(,\\d+:\\d+)*$", "title": "Sets"}, "players": {"items": {"$ref": "#/components/schemas/ManualPlayer"}, "type": "array", "maxItems": 4, "minItems": 2, "title": "Players"}}, "type": "object", "required": ["club_id", "day", "time", "sets", "players"], "title": "ManualMatchIn"}, "ManualPlayer": {"properties": {"user_id": {"type": "string", "format": "uuid", "title": "User Id"}, "team": {"type": "integer", "maximum": 2.0, "minimum": 1.0, "title": "Team"}}, "type": "object", "required": ["user_id", "team"], "title": "ManualPlayer"}, "MarkIn": {"properties": {"club_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Club Id"}, "court": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Court"}}, "type": "object", "title": "MarkIn"}, "MatchMovementIn": {"properties": {"match_id": {"type": "string", "format": "uuid", "title": "Match Id"}, "source": {"type": "string", "maxLength": 16, "title": "Source", "default": "court3d"}, "players": {"items": {"$ref": "#/components/schemas/MovementPlayerIn"}, "type": "array", "maxItems": 8, "minItems": 1, "title": "Players"}}, "type": "object", "required": ["match_id", "players"], "title": "MatchMovementIn"}, "MatchResultIn": {"properties": {"court": {"type": "string", "title": "Court", "default": ""}, "day": {"type": "string", "title": "Day"}, "time": {"type": "string", "title": "Time"}, "sets": {"type": "string", "pattern": "^\\d+:\\d+(,\\d+:\\d+)*$", "title": "Sets"}, "players": {"items": {"$ref": "#/components/schemas/PlayerRef"}, "type": "array", "maxItems": 4, "title": "Players"}, "guests": {"type": "boolean", "title": "Guests", "default": false}, "booking_id": {"anyOf": [{"type": "string", "format": "uuid"}, {"type": "null"}], "title": "Booking Id"}, "points_auto": {"anyOf": [{"type": "integer", "minimum": 0.0}, {"type": "null"}], "title": "Points Auto"}, "points_manual": {"anyOf": [{"type": "integer", "minimum": 0.0}, {"type": "null"}], "title": "Points Manual"}, "quick_tournament": {"type": "boolean", "title": "Quick Tournament", "default": false}}, "type": "object", "required": ["day", "time", "sets"], "title": "MatchResultIn"}, "MatchStatsIn": {"properties": {"match_id": {"type": "string", "format": "uuid", "title": "Match Id"}, "avg_rally_shots": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Avg Rally Shots"}, "players": {"items": {"$ref": "#/components/schemas/PlayerStatsIn"}, "type": "array", "title": "Players"}}, "type": "object", "required": ["match_id", "players"], "title": "MatchStatsIn"}, "MatchSummaryIn": {"properties": {"match_id": {"type": "string", "format": "uuid", "title": "Match Id"}, "court": {"type": "string", "title": "Court", "default": ""}, "rallies": {"type": "integer", "title": "Rallies", "default": 0}, "max_kmh": {"type": "number", "title": "Max Kmh", "default": 0.0}, "avg_kmh": {"type": "number", "title": "Avg Kmh", "default": 0.0}, "total_shots": {"type": "integer", "title": "Total Shots", "default": 0}, "heat": {"items": {"items": {"type": "number"}, "type": "array"}, "type": "array", "maxItems": 8000, "title": "Heat"}, "trails": {"items": {"items": {"type": "number"}, "type": "array"}, "type": "array", "maxItems": 4000, "title": "Trails"}, "fw": {"type": "integer", "title": "Fw", "default": 0}, "fh": {"type": "integer", "title": "Fh", "default": 0}}, "type": "object", "required": ["match_id"], "title": "MatchSummaryIn"}, "MoneyAccountIn": {"properties": {"id": {"type": "string", "maxLength": 60, "title": "Id", "default": ""}, "name": {"type": "string", "maxLength": 120, "title": "Name", "default": ""}, "balance": {"type": "number", "title": "Balance", "default": 0}, "validTo": {"anyOf": [{"type": "string", "maxLength": 25}, {"type": "null"}], "title": "Validto"}}, "type": "object", "title": "MoneyAccountIn"}, "MoneyDebtIn": {"properties": {"id": {"type": "string", "maxLength": 60, "title": "Id", "default": ""}, "date": {"type": "string", "maxLength": 25, "title": "Date", "default": ""}, "amount": {"type": "number", "title": "Amount", "default": 0}, "description": {"type": "string", "maxLength": 300, "title": "Description", "default": ""}}, "type": "object", "title": "MoneyDebtIn"}, "MoneyItemIn": {"properties": {"phone": {"type": "string", "maxLength": 20, "title": "Phone"}, "ok": {"type": "boolean", "title": "Ok", "default": false}, "found": {"type": "boolean", "title": "Found", "default": true}, "error": {"type": "string", "maxLength": 300, "title": "Error", "default": ""}, "deposits": {"items": {"$ref": "#/components/schemas/MoneyAccountIn"}, "type": "array", "maxItems": 50, "title": "Deposits"}, "bonuses": {"items": {"$ref": "#/components/schemas/MoneyAccountIn"}, "type": "array", "maxItems": 50, "title": "Bonuses"}, "debts": {"items": {"$ref": "#/components/schemas/MoneyDebtIn"}, "type": "array", "maxItems": 50, "title": "Debts"}, "tickets": {"items": {"$ref": "#/components/schemas/MoneyTicketIn"}, "type": "array", "maxItems": 50, "title": "Tickets"}, "history": {"items": {"$ref": "#/components/schemas/MoneyOpIn"}, "type": "array", "maxItems": 50, "title": "History"}}, "type": "object", "required": ["phone"], "title": "MoneyItemIn"}, "MoneyOpIn": {"properties": {"date": {"type": "string", "maxLength": 25, "title": "Date", "default": ""}, "operation": {"type": "string", "maxLength": 10, "title": "Operation", "default": ""}, "description": {"type": "string", "maxLength": 300, "title": "Description", "default": ""}, "amount": {"type": "number", "title": "Amount", "default": 0}, "account": {"type": "string", "pattern": "^(deposit|bonus)$", "title": "Account", "default": "deposit"}}, "type": "object", "title": "MoneyOpIn"}, "MoneyReportIn": {"properties": {"items": {"items": {"$ref": "#/components/schemas/MoneyItemIn"}, "type": "array", "maxItems": 40, "title": "Items"}}, "type": "object", "title": "MoneyReportIn"}, "MoneyTicketIn": {"properties": {"id": {"type": "string", "maxLength": 60, "title": "Id", "default": ""}, "title": {"type": "string", "maxLength": 200, "title": "Title", "default": ""}, "type": {"type": "string", "maxLength": 30, "title": "Type", "default": ""}, "status": {"type": "string", "maxLength": 20, "title": "Status", "default": ""}, "endDate": {"anyOf": [{"type": "string", "maxLength": 25}, {"type": "null"}], "title": "Enddate"}, "count": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Count"}}, "type": "object", "title": "MoneyTicketIn"}, "MoneyWantedIn": {"properties": {}, "type": "object", "title": "MoneyWantedIn"}, "MoneyWriteIn": {"properties": {"id": {"type": "string", "maxLength": 40, "title": "Id"}, "ok": {"type": "boolean", "title": "Ok", "default": false}, "kind": {"type": "string", "pattern": "^(rejected|unavailable|uncertain)$", "title": "Kind", "default": "rejected"}, "error": {"type": "string", "maxLength": 300, "title": "Error", "default": ""}, "note": {"type": "string", "maxLength": 300, "title": "Note", "default": ""}}, "type": "object", "required": ["id"], "title": "MoneyWriteIn"}, "MoneyWriteReportIn": {"properties": {"items": {"items": {"$ref": "#/components/schemas/MoneyWriteIn"}, "type": "array", "maxItems": 40, "title": "Items"}}, "type": "object", "title": "MoneyWriteReportIn"}, "MovementPlayerIn": {"properties": {"user_id": {"anyOf": [{"type": "string", "format": "uuid"}, {"type": "null"}], "title": "User Id"}, "phone": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Phone"}, "name": {"type": "string", "title": "Name", "default": ""}, "team": {"type": "integer", "maximum": 2.0, "minimum": 1.0, "title": "Team"}, "distance_m": {"anyOf": [{"type": "number", "minimum": 0.0}, {"type": "null"}], "title": "Distance M"}, "work_rate_m_per_min": {"anyOf": [{"type": "number", "minimum": 0.0}, {"type": "null"}], "title": "Work Rate M Per Min"}, "top_speed_ms": {"anyOf": [{"type": "number", "minimum": 0.0}, {"type": "null"}], "title": "Top Speed Ms"}, "sprints": {"anyOf": [{"type": "integer", "minimum": 0.0}, {"type": "null"}], "title": "Sprints"}, "zones": {"anyOf": [{"additionalProperties": {"anyOf": [{"type": "number"}, {"type": "null"}]}, "type": "object"}, {"type": "null"}], "title": "Zones"}, "coverage_percent": {"anyOf": [{"type": "number", "maximum": 100.0, "minimum": 0.0}, {"type": "null"}], "title": "Coverage Percent"}, "grid": {"items": {"items": {"type": "number"}, "type": "array"}, "type": "array", "maxItems": 4000, "title": "Grid"}, "zone_transitions": {"anyOf": [{"type": "integer", "maximum": 100000.0, "minimum": 0.0}, {"type": "null"}], "title": "Zone Transitions"}, "zone_seconds": {"anyOf": [{"additionalProperties": {"anyOf": [{"type": "number"}, {"type": "null"}]}, "type": "object"}, {"type": "null"}], "title": "Zone Seconds"}, "intensity_percent": {"anyOf": [{"type": "number", "maximum": 100.0, "minimum": 0.0}, {"type": "null"}], "title": "Intensity Percent"}, "intensity_by_minute": {"items": {"anyOf": [{"type": "number"}, {"type": "null"}]}, "type": "array", "maxItems": 240, "title": "Intensity By Minute"}, "top_shot_kmh": {"anyOf": [{"type": "number", "maximum": 300.0, "minimum": 0.0}, {"type": "null"}], "title": "Top Shot Kmh"}, "ball3d": {"anyOf": [{"additionalProperties": true, "type": "object"}, {"type": "null"}], "title": "Ball3D"}, "path": {"items": {}, "type": "array", "maxItems": 5000, "title": "Path"}}, "type": "object", "required": ["team"], "title": "MovementPlayerIn"}, "OnecSettingsIn": {"properties": {"autoCredit": {"type": "boolean", "title": "Autocredit"}}, "type": "object", "required": ["autoCredit"], "title": "OnecSettingsIn"}, "OutboxIn": {"properties": {"since": {"type": "string", "format": "date-time", "title": "Since"}}, "type": "object", "required": ["since"], "title": "OutboxIn"}, "PaymentIn": {"properties": {"ext_id": {"type": "string", "maxLength": 64, "minLength": 1, "title": "Ext Id"}, "phone": {"type": "string", "maxLength": 20, "minLength": 10, "title": "Phone"}, "amount": {"type": "integer", "maximum": 1000000.0, "exclusiveMinimum": 0.0, "title": "Amount"}, "paid_at": {"type": "string", "format": "date-time", "title": "Paid At"}, "purpose": {"type": "string", "maxLength": 200, "title": "Purpose", "default": ""}, "kind": {"type": "string", "maxLength": 12, "title": "Kind", "default": "topup"}}, "type": "object", "required": ["ext_id", "phone", "amount", "paid_at"], "title": "PaymentIn"}, "PaymentsIn": {"properties": {"payments": {"items": {"$ref": "#/components/schemas/PaymentIn"}, "type": "array", "maxItems": 500, "minItems": 1, "title": "Payments"}}, "type": "object", "required": ["payments"], "title": "PaymentsIn"}, "PlanItem": {"properties": {"id": {"type": "string", "maxLength": 120, "title": "Id"}, "name": {"type": "string", "maxLength": 120, "title": "Name", "default": ""}, "action": {"type": "string", "pattern": "^(new|link|skip)$", "title": "Action"}, "courtId": {"type": "string", "maxLength": 40, "title": "Courtid", "default": ""}}, "type": "object", "required": ["id", "action"], "title": "PlanItem"}, "PlayerClipIn": {"properties": {"user_id": {"anyOf": [{"type": "string", "format": "uuid"}, {"type": "null"}], "title": "User Id"}, "phone": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Phone"}, "pass_code": {"anyOf": [{"type": "string", "maxLength": 120}, {"type": "null"}], "title": "Pass Code"}, "name": {"type": "string", "title": "Name", "default": ""}, "object_key": {"type": "string", "title": "Object Key"}, "title": {"type": "string", "title": "Title", "default": ""}, "court": {"type": "string", "title": "Court", "default": ""}, "duration_s": {"type": "number", "title": "Duration S", "default": 0}, "moment": {"type": "string", "maxLength": 80, "title": "Moment", "default": ""}, "role": {"type": "string", "maxLength": 20, "title": "Role", "default": ""}, "note": {"type": "string", "maxLength": 200, "title": "Note", "default": ""}}, "type": "object", "required": ["object_key"], "title": "PlayerClipIn"}, "PlayerRef": {"properties": {"user_id": {"anyOf": [{"type": "string", "format": "uuid"}, {"type": "null"}], "title": "User Id"}, "phone": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Phone"}, "team": {"type": "integer", "maximum": 2.0, "minimum": 1.0, "title": "Team"}, "name": {"type": "string", "title": "Name", "default": ""}, "pass_code": {"anyOf": [{"type": "string", "maxLength": 120}, {"type": "null"}], "title": "Pass Code"}}, "type": "object", "required": ["team"], "title": "PlayerRef"}, "PlayerStatsIn": {"properties": {"user_id": {"anyOf": [{"type": "string", "format": "uuid"}, {"type": "null"}], "title": "User Id"}, "phone": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Phone"}, "max_ball_kmh": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Max Ball Kmh"}, "run_m": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Run M"}, "shots": {"items": {"additionalProperties": true, "type": "object"}, "type": "array", "title": "Shots", "default": []}}, "type": "object", "title": "PlayerStatsIn"}, "RallyIn": {"properties": {"match_id": {"type": "string", "format": "uuid", "title": "Match Id"}, "court": {"type": "string", "title": "Court", "default": ""}, "rally_no": {"type": "integer", "minimum": 0.0, "title": "Rally No"}, "t_start": {"type": "number", "title": "T Start"}, "t_end": {"type": "number", "title": "T End"}, "duration_s": {"type": "number", "title": "Duration S", "default": 0.0}, "path": {"items": {"items": {"type": "number"}, "type": "array"}, "type": "array", "maxItems": 400, "title": "Path"}, "path_fw": {"type": "integer", "title": "Path Fw", "default": 0}, "path_fh": {"type": "integer", "title": "Path Fh", "default": 0}, "shots": {"items": {"$ref": "#/components/schemas/ShotIn"}, "type": "array", "maxItems": 500, "title": "Shots"}, "max_kmh": {"type": "number", "title": "Max Kmh", "default": 0.0}, "avg_kmh": {"type": "number", "title": "Avg Kmh", "default": 0.0}, "shots_count": {"type": "integer", "title": "Shots Count", "default": 0}, "winner_team": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Winner Team"}}, "type": "object", "required": ["match_id", "rally_no", "t_start", "t_end"], "title": "RallyIn"}, "RentalAddIn": {"properties": {"item_id": {"type": "string", "format": "uuid", "title": "Item Id"}, "qty": {"type": "integer", "maximum": 4.0, "minimum": 1.0, "title": "Qty", "default": 1}}, "type": "object", "required": ["item_id"], "title": "RentalAddIn"}, "RentalIn": {"properties": {"rental_id": {"type": "string", "maxLength": 60, "minLength": 1, "title": "Rental Id"}, "court": {"type": "string", "maxLength": 60, "title": "Court", "default": ""}, "room": {"type": "string", "maxLength": 120, "title": "Room", "default": ""}, "start": {"type": "string", "maxLength": 19, "title": "Start"}, "end": {"type": "string", "maxLength": 19, "title": "End"}, "title": {"type": "string", "maxLength": 200, "title": "Title", "default": ""}}, "type": "object", "required": ["rental_id", "start", "end"], "title": "RentalIn"}, "RentalsIn": {"properties": {"start": {"type": "string", "format": "date", "title": "Start"}, "end": {"type": "string", "format": "date", "title": "End"}, "rentals": {"items": {"$ref": "#/components/schemas/RentalIn"}, "type": "array", "maxItems": 3000, "title": "Rentals"}}, "type": "object", "required": ["start", "end"], "title": "RentalsIn"}, "SaveIn": {"properties": {"fields": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Fields"}, "courts": {"items": {"$ref": "#/components/schemas/PlanItem"}, "type": "array", "maxItems": 60, "title": "Courts"}, "enabled": {"type": "boolean", "title": "Enabled", "default": true}}, "type": "object", "title": "SaveIn"}, "ScoreCorrectionIn": {"properties": {"sets": {"type": "string", "pattern": "^\\d+:\\d+(,\\d+:\\d+)*$", "title": "Sets"}}, "type": "object", "required": ["sets"], "title": "ScoreCorrectionIn"}, "ShotIn": {"properties": {"t": {"type": "number", "title": "T"}, "v_kmh": {"type": "number", "title": "V Kmh", "default": 0.0}, "x": {"type": "integer", "title": "X", "default": 0}, "y": {"type": "integer", "title": "Y", "default": 0}}, "type": "object", "required": ["t"], "title": "ShotIn"}, "SplitIn": {"properties": {"user_ids": {"items": {"type": "string", "format": "uuid"}, "type": "array", "maxItems": 3, "minItems": 1, "title": "User Ids"}}, "type": "object", "required": ["user_ids"], "title": "SplitIn"}, "TopupIn": {"properties": {"amount": {"type": "integer", "maximum": 100000.0, "exclusiveMinimum": 0.0, "title": "Amount"}, "club_id": {"anyOf": [{"type": "string", "maxLength": 24}, {"type": "null"}], "title": "Club Id"}}, "type": "object", "required": ["amount"], "title": "TopupIn"}, "ValidationError": {"properties": {"loc": {"items": {"anyOf": [{"type": "string"}, {"type": "integer"}]}, "type": "array", "title": "Location"}, "msg": {"type": "string", "title": "Message"}, "type": {"type": "string", "title": "Error Type"}}, "type": "object", "required": ["loc", "msg", "type"], "title": "ValidationError"}, "WaitIn": {"properties": {"club_id": {"type": "string", "title": "Club Id"}, "day": {"type": "string", "title": "Day"}, "time": {"type": "string", "title": "Time"}}, "type": "object", "required": ["club_id", "day", "time"], "title": "WaitIn"}, "WriteReportIn": {"properties": {"items": {"items": {"$ref": "#/components/schemas/WriteResultIn"}, "type": "array", "maxItems": 40, "title": "Items"}}, "type": "object", "title": "WriteReportIn"}, "WriteResultIn": {"properties": {"booking_id": {"type": "string", "maxLength": 40, "title": "Booking Id"}, "op": {"type": "string", "pattern": "^(create|cancel)$", "title": "Op"}, "ok": {"type": "boolean", "title": "Ok", "default": false}, "rental_id": {"type": "string", "maxLength": 60, "title": "Rental Id", "default": ""}, "rev": {"type": "string", "maxLength": 120, "title": "Rev", "default": ""}, "fallback": {"type": "boolean", "title": "Fallback", "default": false}, "kind": {"type": "string", "pattern": "^(rejected|unavailable|uncertain)$", "title": "Kind", "default": "rejected"}, "error": {"type": "string", "maxLength": 300, "title": "Error", "default": ""}, "note": {"type": "string", "maxLength": 300, "title": "Note", "default": ""}}, "type": "object", "required": ["booking_id", "op"], "title": "WriteResultIn"}, "nominal_pay__PayIn": {"properties": {"club_id": {"type": "string", "maxLength": 24, "title": "Club Id"}, "amount": {"type": "integer", "maximum": 1000000.0, "minimum": 0.0, "title": "Amount", "default": 0}, "purpose": {"type": "string", "pattern": "^(topup|booking|debt)$", "title": "Purpose", "default": "topup"}, "ref": {"type": "string", "maxLength": 80, "title": "Ref", "default": ""}, "return_scheme": {"anyOf": [{"type": "string", "pattern": "^(aipadel|aisolus-padel)$"}, {"type": "null"}], "title": "Return Scheme"}}, "type": "object", "required": ["club_id"], "title": "PayIn"}, "routers__admin__AssignIn": {"properties": {"user_id": {"type": "string", "format": "uuid", "title": "User Id"}}, "type": "object", "required": ["user_id"], "title": "AssignIn"}, "routers__bookings__RescheduleIn": {"properties": {"day": {"type": "string", "title": "Day"}, "time": {"type": "string", "title": "Time"}}, "type": "object", "required": ["day", "time"], "title": "RescheduleIn"}, "routers__connect_admin__CheckIn": {"properties": {"fields": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Fields"}}, "type": "object", "title": "CheckIn"}, "routers__matchi_admin__CheckIn": {"properties": {"apiKey": {"anyOf": [{"type": "string", "maxLength": 300}, {"type": "null"}], "title": "Apikey"}, "facilityId": {"anyOf": [{"type": "string", "maxLength": 80}, {"type": "null"}], "title": "Facilityid"}}, "type": "object", "title": "CheckIn"}, "routers__matchi_admin__LinkIn": {"properties": {"facilityId": {"type": "string", "maxLength": 80, "title": "Facilityid", "default": ""}, "secret": {"anyOf": [{"type": "string", "maxLength": 200}, {"type": "null"}], "title": "Secret"}, "apiKey": {"anyOf": [{"type": "string", "maxLength": 300}, {"type": "null"}], "title": "Apikey"}, "clearApiKey": {"type": "boolean", "title": "Clearapikey", "default": false}, "courtMap": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Courtmap", "default": {}}, "enabled": {"type": "boolean", "title": "Enabled", "default": false}}, "type": "object", "title": "LinkIn"}, "routers__playtomic_admin__LinkIn": {"properties": {"tenantId": {"type": "string", "maxLength": 80, "minLength": 1, "title": "Tenantid"}, "clientId": {"type": "string", "maxLength": 120, "minLength": 1, "title": "Clientid"}, "secret": {"anyOf": [{"type": "string", "maxLength": 200}, {"type": "null"}], "title": "Secret"}, "courtMap": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Courtmap", "default": {}}, "enabled": {"type": "boolean", "title": "Enabled", "default": false}}, "type": "object", "required": ["tenantId", "clientId"], "title": "LinkIn"}, "routers__service_players__ClientIn": {"properties": {"customerId": {"type": "string", "maxLength": 120, "minLength": 1, "title": "Customerid"}}, "type": "object", "required": ["customerId"], "title": "ClientIn"}, "routers__service_players__SettingsIn": {"properties": {"playerMode": {"anyOf": [{"type": "string", "pattern": "^(manual|phone)$"}, {"type": "null"}], "title": "Playermode"}, "legacyPlayed": {"anyOf": [{"type": "string", "pattern": "^(keep|move)$"}, {"type": "null"}], "title": "Legacyplayed"}}, "type": "object", "title": "SettingsIn"}, "routers__yclients_admin__LinkIn": {"properties": {"companyId": {"type": "integer", "exclusiveMinimum": 0.0, "title": "Companyid"}, "userToken": {"anyOf": [{"type": "string", "maxLength": 200}, {"type": "null"}], "title": "Usertoken"}, "staffMap": {"additionalProperties": {"type": "string"}, "type": "object", "title": "Staffmap", "default": {}}, "enabled": {"type": "boolean", "title": "Enabled", "default": false}}, "type": "object", "required": ["companyId"], "title": "LinkIn"}}}, "tags": [{"name": "Integration: YCLIENTS", "description": "Club appointments from YCLIENTS become bookings."}, {"name": "Integration: Playtomic", "description": "Court bookings from Playtomic become bookings."}, {"name": "Integration: MATCHi", "description": "MATCHi booking events."}, {"name": "Integration: a club connects its service", "description": "A club pastes the key of its booking service: Playtomic, YCLIENTS, CourtReserve, Altegio, MATCHi."}, {"name": "Integration: 1C Fitness Club", "description": "Court bookings from 1C Fitness Club through the court server in the club network."}, {"name": "Integration: 1C payments", "description": "Club payments from 1C to player wallets."}, {"name": "Court server: data ingest", "description": "Match results, stats, movement, clips, live score, americano, tournament bracket, levels and player passes. Access: the club token in X-Club-Token."}, {"name": "Court server: computer vision", "description": "Rallies with ball trajectory, match summary, camera health and court bookings. Writes use the club token; reads accept the club token or a player token."}, {"name": "Court server license", "description": "Signed license for a club court server machine. Access: the club token."}, {"name": "Live score", "description": "Score of matches in progress on the club courts, for scoreboards, websites and apps. Public method."}, {"name": "Leads", "description": "Requests from a website, an ad or the club front desk. Public method."}, {"name": "Clubs and slots", "description": "Clubs, courts and free slots for a day with prices. Public methods."}, {"name": "Bookings", "description": "Court booking on behalf of a player: create, reschedule, cancel, waitlist, split payment, rentals, promo codes. Access: a player token."}, {"name": "Wallet and payments", "description": "Player balance, top-up through YooKassa and YooKassa notifications."}, {"name": "Matches", "description": "Player matches, match card with highlights, manual score entry and correction, rally marking. Access: a player token."}, {"name": "Players", "description": "Player profile and recent partners. Access: a player token."}, {"name": "AISOLUS rating", "description": "The 1.0–7.0 scale, player rating and top players."}, {"name": "Leaderboard", "description": "Leaderboard by Elo rating. Public method."}], "x-integrations": [{"name": "Integration: YCLIENTS", "methods": 11}, {"name": "Integration: Playtomic", "methods": 11}, {"name": "Integration: MATCHi", "methods": 13}, {"name": "Integration: a club connects its service", "methods": 18}, {"name": "Integration: 1C Fitness Club", "methods": 10}, {"name": "Integration: 1C payments", "methods": 12}], "x-total": 135}