{
  "openapi": "3.0.1",
  "info": {
    "title": "Checkpoint.Api",
    "version": "1.0"
  },
  "paths": {
    "/api/admin/users": {
      "get": {
        "tags": [
          "Admin"
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/admin/users/{id}/lock": {
      "post": {
        "tags": [
          "Admin"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/admin/users/{id}/unlock": {
      "post": {
        "tags": [
          "Admin"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/admin/audit": {
      "get": {
        "tags": [
          "Admin"
        ],
        "parameters": [
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "action",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "actor",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "from",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "to",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/admin/audit/actions": {
      "get": {
        "tags": [
          "Admin"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/admin/users/{id}/audit": {
      "get": {
        "tags": [
          "Admin"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/admin/courses": {
      "get": {
        "tags": [
          "Admin"
        ],
        "parameters": [
          {
            "name": "status",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "club",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdFrom",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "createdTo",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "usedFrom",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "usedTo",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/register": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.RegisterRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpValidationProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/login": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "useCookies",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "useSessionCookies",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.LoginRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Authentication.BearerToken.AccessTokenResponse"
                }
              }
            }
          }
        }
      }
    },
    "/refresh": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.RefreshRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Authentication.BearerToken.AccessTokenResponse"
                }
              }
            }
          }
        }
      }
    },
    "/confirmEmail": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "operationId": "MapIdentityApi-/confirmEmail",
        "parameters": [
          {
            "name": "userId",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "code",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "changedEmail",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/resendConfirmationEmail": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.ResendConfirmationEmailRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/forgotPassword": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.ForgotPasswordRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpValidationProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/resetPassword": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.ResetPasswordRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpValidationProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/manage/2fa": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.TwoFactorRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.TwoFactorResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpValidationProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          }
        }
      }
    },
    "/manage/info": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.InfoResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpValidationProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          }
        }
      },
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.InfoRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Identity.Data.InfoResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Http.HttpValidationProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          }
        }
      }
    },
    "/logout": {
      "post": {
        "tags": [
          "Checkpoint.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{id}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/e/{key}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/c/{key}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/q/{token}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/k/{key}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/m/{key}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/r/{registrationId}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/r/{eventKey}/{athleteKey}": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "parameters": [
          {
            "name": "eventKey",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "athleteKey",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/clubs": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/sitemap.xml": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/robots.txt": {
      "get": {
        "tags": [
          "Checkpoint.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/invitations": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/invitations/{inviteId}/accept": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "inviteId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/invitations/{inviteId}/decline": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "inviteId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/join-links/{token}": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/join-links/{token}/redeem": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "skip",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "west",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Clubs"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ClubEndpoints.CreateClubRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/map": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "west",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "zoom",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/mine": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ClubEndpoints.UpdateClubRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/courses": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/events": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/maps": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/join": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ClubEndpoints.JoinClubRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/members/me": {
      "delete": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/requests": {
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/requests/{memberUserId}/approve": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "memberUserId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/requests/{memberUserId}": {
      "delete": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "memberUserId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "reason",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/invitations": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ClubEndpoints.InviteRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/invitations/{inviteId}": {
      "delete": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "inviteId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/join-links": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ClubEndpoints.CreateJoinLinkRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/join-links/{linkId}": {
      "delete": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "linkId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/members/{memberUserId}/role": {
      "put": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "memberUserId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ClubEndpoints.SetRoleRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/members/{memberUserId}": {
      "delete": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "memberUserId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/clubs/{id}/transfer": {
      "post": {
        "tags": [
          "Clubs"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ClubEndpoints.TransferClubRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/accept-terms": {
      "post": {
        "tags": [
          "Consent"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/import": {
      "post": {
        "tags": [
          "Courses"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "file"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "format": {
                    "type": "string"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "format": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/export": {
      "get": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "format",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses": {
      "get": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "skip",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scope",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clubId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "mapId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "west",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Courses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.CourseEndpoints.CreateCourseRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/map": {
      "get": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "west",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "zoom",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scope",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clubId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}": {
      "get": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "eventId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.CourseEndpoints.UpdateCourseRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/events": {
      "get": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/near": {
      "get": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "lat",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "lon",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "radiusMeters",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/approve": {
      "post": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/reject": {
      "post": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.CourseEndpoints.RejectCourseRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/duplicate": {
      "post": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.CourseEndpoints.DuplicateCourseRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/checkpoints": {
      "put": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.CourseEndpoints.CheckPointInput"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/start-training": {
      "post": {
        "tags": [
          "Courses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/descriptions/images": {
      "post": {
        "tags": [
          "Descriptions"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "file"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/descriptions/images/{name}": {
      "get": {
        "tags": [
          "Descriptions"
        ],
        "parameters": [
          {
            "name": "name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/categories": {
      "post": {
        "tags": [
          "Event categories"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventCategoryEndpoints.CategoryRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/categories/{categoryId}": {
      "put": {
        "tags": [
          "Event categories"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "categoryId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventCategoryEndpoints.CategoryRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Event categories"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "categoryId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/categories/order": {
      "put": {
        "tags": [
          "Event categories"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventCategoryEndpoints.CategoryOrderRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/registrations/{registrationId}/category": {
      "put": {
        "tags": [
          "Event categories"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventCategoryEndpoints.MoveEntryRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/broadcast/audience": {
      "get": {
        "tags": [
          "EventBroadcast"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "categoryId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/broadcast": {
      "post": {
        "tags": [
          "EventBroadcast"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventBroadcastEndpoints.BroadcastRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events": {
      "get": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "status",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/Checkpoint.Api.Domain.EventStatus"
            }
          },
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "skip",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clubId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "minLengthMeters",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "maxLengthMeters",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "startsAfter",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "startsBefore",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "lat",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "lon",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "withinMeters",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "west",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Events"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventEndpoints.CreateEventRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/map": {
      "get": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "west",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "zoom",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clubId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "minLengthMeters",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "maxLengthMeters",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "startsAfter",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "startsBefore",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "lat",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "lon",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "withinMeters",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}": {
      "get": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventEndpoints.UpdateEventRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/duplicate": {
      "post": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/status": {
      "post": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventEndpoints.SetStatusRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/register": {
      "post": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventEndpoints.RegisterRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/registrations/{registrationId}/approve": {
      "post": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/registrations/{registrationId}/reject": {
      "post": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventEndpoints.RejectRegistrationRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/registrations": {
      "get": {
        "tags": [
          "Events"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/external/{provider}": {
      "get": {
        "tags": [
          "ExternalAuth"
        ],
        "parameters": [
          {
            "name": "provider",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "returnUrl",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/auth/external/callback": {
      "get": {
        "tags": [
          "ExternalAuth"
        ],
        "parameters": [
          {
            "name": "returnUrl",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/themes": {
      "get": {
        "tags": [
          "Feedback"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/ideas": {
      "get": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "status",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "theme",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Feedback"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.FeedbackEndpoints.CreateIdeaRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/ideas/{id}": {
      "get": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.FeedbackEndpoints.UpdateIdeaRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/ideas/{id}/vote": {
      "post": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/ideas/{id}/comments": {
      "post": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.FeedbackEndpoints.CreateCommentRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/ideas/{ideaId}/comments/{commentId}": {
      "put": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "ideaId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.FeedbackEndpoints.UpdateCommentRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "ideaId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/ideas/{id}/status": {
      "patch": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.FeedbackEndpoints.SetStatusRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/ideas/{id}/follow": {
      "post": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/feedback/unsubscribe/{token}": {
      "get": {
        "tags": [
          "Feedback"
        ],
        "parameters": [
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/friends": {
      "get": {
        "tags": [
          "Friends"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/friends/search": {
      "get": {
        "tags": [
          "Friends"
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/friends/requests": {
      "post": {
        "tags": [
          "Friends"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.FriendEndpoints.FriendRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/friends/requests/{friendshipId}/accept": {
      "post": {
        "tags": [
          "Friends"
        ],
        "parameters": [
          {
            "name": "friendshipId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/friends/requests/{friendshipId}": {
      "delete": {
        "tags": [
          "Friends"
        ],
        "parameters": [
          {
            "name": "friendshipId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/friends/{userId}": {
      "delete": {
        "tags": [
          "Friends"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/geocode": {
      "get": {
        "tags": [
          "Geocode"
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "lang",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/geocode/reverse": {
      "get": {
        "tags": [
          "Geocode"
        ],
        "parameters": [
          {
            "name": "lat",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "lon",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "lang",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps": {
      "get": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "skip",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clubId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "west",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Maps"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "clubId",
                  "name"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "name": {
                    "type": "string"
                  },
                  "clubId": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "descriptionI18n": {
                    "type": "string"
                  },
                  "tlLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "tlLon": {
                    "type": "number",
                    "format": "double"
                  },
                  "trLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "trLon": {
                    "type": "number",
                    "format": "double"
                  },
                  "brLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "brLon": {
                    "type": "number",
                    "format": "double"
                  },
                  "blLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "blLon": {
                    "type": "number",
                    "format": "double"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "name": {
                  "style": "form"
                },
                "clubId": {
                  "style": "form"
                },
                "descriptionI18n": {
                  "style": "form"
                },
                "tlLat": {
                  "style": "form"
                },
                "tlLon": {
                  "style": "form"
                },
                "trLat": {
                  "style": "form"
                },
                "trLon": {
                  "style": "form"
                },
                "brLat": {
                  "style": "form"
                },
                "brLon": {
                  "style": "form"
                },
                "blLat": {
                  "style": "form"
                },
                "blLon": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/map": {
      "get": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "west",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "zoom",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "q",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clubId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/import/providers": {
      "get": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "west",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/import/providers/{providerId}/availability": {
      "post": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "providerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "west",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "south",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "east",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "north",
            "in": "query",
            "required": true,
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/import": {
      "post": {
        "tags": [
          "Maps"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.MapEndpoints.ImportMapRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/{id}/import": {
      "put": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.MapEndpoints.ImportIntoMapRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/{id}/image": {
      "get": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/{id}/tiles/{z}/{x}/{y}.png": {
      "get": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "z",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "x",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "y",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/{id}": {
      "get": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.MapEndpoints.UpdateMapRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/maps/{id}/georeference": {
      "put": {
        "tags": [
          "Maps"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "blLat",
                  "blLon",
                  "brLat",
                  "brLon",
                  "tlLat",
                  "tlLon",
                  "trLat",
                  "trLon"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "tlLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "tlLon": {
                    "type": "number",
                    "format": "double"
                  },
                  "trLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "trLon": {
                    "type": "number",
                    "format": "double"
                  },
                  "brLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "brLon": {
                    "type": "number",
                    "format": "double"
                  },
                  "blLat": {
                    "type": "number",
                    "format": "double"
                  },
                  "blLon": {
                    "type": "number",
                    "format": "double"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "tlLat": {
                  "style": "form"
                },
                "tlLon": {
                  "style": "form"
                },
                "trLat": {
                  "style": "form"
                },
                "trLon": {
                  "style": "form"
                },
                "brLat": {
                  "style": "form"
                },
                "brLon": {
                  "style": "form"
                },
                "blLat": {
                  "style": "form"
                },
                "blLon": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/alerts": {
      "get": {
        "tags": [
          "Me"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/notifications/{id}/read": {
      "post": {
        "tags": [
          "Me"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/notifications/read-all": {
      "post": {
        "tags": [
          "Me"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/active-run": {
      "get": {
        "tags": [
          "Me"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/runs": {
      "get": {
        "tags": [
          "Me"
        ],
        "parameters": [
          {
            "name": "startedAfter",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startedBefore",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/registrations": {
      "get": {
        "tags": [
          "Me"
        ],
        "parameters": [
          {
            "name": "startsAfter",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startsBefore",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/organizer-summary": {
      "get": {
        "tags": [
          "Me"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/export": {
      "get": {
        "tags": [
          "Me"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/me/erase": {
      "post": {
        "tags": [
          "Me"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.MeEndpoints.EraseRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/messages": {
      "get": {
        "tags": [
          "Messages"
        ],
        "parameters": [
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "skip",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Messages"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.MessageEndpoints.StartConversationRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/messages/{conversationId}": {
      "get": {
        "tags": [
          "Messages"
        ],
        "parameters": [
          {
            "name": "conversationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "top",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "skip",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/messages/{messageId}/reply": {
      "post": {
        "tags": [
          "Messages"
        ],
        "parameters": [
          {
            "name": "messageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.MessageEndpoints.ReplyRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/messages/{conversationId}/read": {
      "post": {
        "tags": [
          "Messages"
        ],
        "parameters": [
          {
            "name": "conversationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/messages/{messageId}": {
      "delete": {
        "tags": [
          "Messages"
        ],
        "parameters": [
          {
            "name": "messageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/profile": {
      "get": {
        "tags": [
          "Profile"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Profile"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ProfileEndpoints.UpdateProfileRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/profile/language": {
      "put": {
        "tags": [
          "Profile"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ProfileEndpoints.UpdateLanguageRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/profile/clubs": {
      "get": {
        "tags": [
          "Profile"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/registrations/{registrationId}/punch": {
      "post": {
        "tags": [
          "Punching"
        ],
        "parameters": [
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.PunchEndpoints.PunchRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/registrations/{registrationId}/punch-qr": {
      "post": {
        "tags": [
          "Punching"
        ],
        "parameters": [
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.PunchEndpoints.QrPunchRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/qr/{token}": {
      "get": {
        "tags": [
          "QR codes"
        ],
        "parameters": [
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/qr-codes": {
      "get": {
        "tags": [
          "QR codes"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/courses/{id}/qr-codes/regenerate": {
      "post": {
        "tags": [
          "QR codes"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.QrEndpoints.RegenerateQrRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/registrations/{id}": {
      "get": {
        "tags": [
          "Registrations"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Registrations"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/results": {
      "get": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "categoryId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/live-tracks": {
      "get": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/results/{id}": {
      "get": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/registrations/{registrationId}/result": {
      "get": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/results/{id}/shared": {
      "put": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.ResultsEndpoints.SetSharedRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/results/{id}/track-coords": {
      "get": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/finalize": {
      "post": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/unfinalize": {
      "post": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/stats": {
      "get": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/events/{id}/splits": {
      "get": {
        "tags": [
          "Results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "categoryId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/results/{id}/track": {
      "post": {
        "tags": [
          "Run"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "file"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/results/{id}/track/append": {
      "post": {
        "tags": [
          "Run"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.RunEndpoints.AppendTrackRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/registrations/{registrationId}/run-context": {
      "get": {
        "tags": [
          "Run"
        ],
        "parameters": [
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/registrations/{registrationId}/stop": {
      "post": {
        "tags": [
          "Run"
        ],
        "parameters": [
          {
            "name": "registrationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/public": {
      "get": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams": {
      "post": {
        "tags": [
          "Teams"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.TeamEndpoints.CreateTeamRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/mine": {
      "get": {
        "tags": [
          "Teams"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}": {
      "get": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.TeamEndpoints.RenameTeamRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/invites": {
      "post": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.TeamEndpoints.InviteRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/guests": {
      "post": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.TeamEndpoints.AddGuestRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/guests/{memberId}": {
      "delete": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "memberId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/invites/accept": {
      "post": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/members/me": {
      "delete": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/members/{memberUserId}": {
      "delete": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "memberUserId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/teams/{id}/transfer": {
      "post": {
        "tags": [
          "Teams"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.TeamEndpoints.TransferRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Checkpoint.Api.Domain.CheckPointType": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.ClubRole": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.CourseType": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.EventMode": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.EventStatus": {
        "enum": [
          0,
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.FeedbackStatus": {
        "enum": [
          0,
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.IofDirection": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.PunchMethod": {
        "enum": [
          0,
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.ResultsVisibility": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Domain.Visibility": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Endpoints.ClubEndpoints.CreateClubRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "lat": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "lon": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "requiresApproval": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ClubEndpoints.CreateJoinLinkRequest": {
        "type": "object",
        "properties": {
          "role": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.ClubRole"
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "maxUses": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ClubEndpoints.InviteRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.ClubRole"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ClubEndpoints.JoinClubRequest": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ClubEndpoints.SetRoleRequest": {
        "type": "object",
        "properties": {
          "role": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.ClubRole"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ClubEndpoints.TransferClubRequest": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ClubEndpoints.UpdateClubRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "lat": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "lon": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "requiresApproval": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.CourseEndpoints.CheckPointInput": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "lat": {
            "type": "number",
            "format": "double"
          },
          "lon": {
            "type": "number",
            "format": "double"
          },
          "radiusMeters": {
            "type": "number",
            "format": "double"
          },
          "points": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.CheckPointType"
          },
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "iofWhichOneCode": {
            "type": "string",
            "nullable": true
          },
          "iofWhichOneDirection": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.IofDirection"
          },
          "iofFeatureCode": {
            "type": "string",
            "nullable": true
          },
          "iofAppearanceCode": {
            "type": "string",
            "nullable": true
          },
          "iofDimensionCode": {
            "type": "string",
            "nullable": true
          },
          "iofDimensionValue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "iofLocationCode": {
            "type": "string",
            "nullable": true
          },
          "iofLocationDirection": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.IofDirection"
          },
          "iofOtherCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.CourseEndpoints.CreateCourseRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "clubOwnerId": {
            "type": "string",
            "format": "uuid"
          },
          "mapId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.CourseType"
          },
          "startLat": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "startLon": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "distanceMeters": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "checkPoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.CourseEndpoints.CheckPointInput"
            },
            "nullable": true
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          },
          "allowDuplication": {
            "type": "boolean"
          },
          "iofLegendVisible": {
            "type": "boolean"
          },
          "iofLegendX": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "iofLegendY": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "iofLegendScale": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "showCompass": {
            "type": "boolean"
          },
          "compassX": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "compassY": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.CourseEndpoints.DuplicateCourseRequest": {
        "type": "object",
        "properties": {
          "clubOwnerId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.CourseEndpoints.RejectCourseRequest": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.CourseEndpoints.UpdateCourseRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "distanceMeters": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          },
          "type": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.CourseType"
          },
          "mapId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "allowDuplication": {
            "type": "boolean"
          },
          "iofLegendVisible": {
            "type": "boolean"
          },
          "iofLegendX": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "iofLegendY": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "iofLegendScale": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "showCompass": {
            "type": "boolean"
          },
          "compassX": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "compassY": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventBroadcastEndpoints.BroadcastAudience": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "Checkpoint.Api.Endpoints.EventBroadcastEndpoints.BroadcastRequest": {
        "type": "object",
        "properties": {
          "audience": {
            "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventBroadcastEndpoints.BroadcastAudience"
          },
          "body": {
            "type": "string",
            "nullable": true
          },
          "doNotReply": {
            "type": "boolean"
          },
          "categoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventCategoryEndpoints.CategoryOrderRequest": {
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventCategoryEndpoints.CategoryRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "courseId": {
            "type": "string",
            "format": "uuid"
          },
          "maxRegistrants": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "startWindowStart": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startWindowEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "allowIndividual": {
            "type": "boolean",
            "nullable": true
          },
          "allowTeams": {
            "type": "boolean",
            "nullable": true
          },
          "minTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "maxTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "scoreTimeLimitMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "scorePenaltyPerMinute": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventCategoryEndpoints.MoveEntryRequest": {
        "type": "object",
        "properties": {
          "categoryId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventEndpoints.CategoryInput": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "courseId": {
            "type": "string",
            "format": "uuid"
          },
          "maxRegistrants": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "startWindowStart": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startWindowEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "allowIndividual": {
            "type": "boolean",
            "nullable": true
          },
          "allowTeams": {
            "type": "boolean",
            "nullable": true
          },
          "minTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "maxTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "scoreTimeLimitMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "scorePenaltyPerMinute": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventEndpoints.CreateEventRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "courseId": {
            "type": "string",
            "format": "uuid"
          },
          "mode": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.EventMode"
          },
          "startsAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endsAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "allowIndividual": {
            "type": "boolean"
          },
          "requireGpxValidation": {
            "type": "boolean"
          },
          "orderEnforced": {
            "type": "boolean"
          },
          "showAthleteOnMap": {
            "type": "boolean"
          },
          "allowRegistrantsToSeeRegistrants": {
            "type": "boolean"
          },
          "requiresApproval": {
            "type": "boolean"
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          },
          "scoreTimeLimitMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "scorePenaltyPerMinute": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "registrationOpensAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "registrationClosesAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startWindowStart": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startWindowEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "timeZoneId": {
            "type": "string",
            "nullable": true
          },
          "resultsVisibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.ResultsVisibility"
          },
          "minTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "maxTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "maxRegistrants": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "showLocationBeforeLive": {
            "type": "boolean"
          },
          "punchMethod": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.PunchMethod"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.EventEndpoints.CategoryInput"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventEndpoints.RegisterRequest": {
        "type": "object",
        "properties": {
          "teamId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "categoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventEndpoints.RejectRegistrationRequest": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventEndpoints.SetStatusRequest": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.EventStatus"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.EventEndpoints.UpdateEventRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "courseId": {
            "type": "string",
            "format": "uuid"
          },
          "mode": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.EventMode"
          },
          "startsAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endsAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "allowIndividual": {
            "type": "boolean"
          },
          "requireGpxValidation": {
            "type": "boolean"
          },
          "orderEnforced": {
            "type": "boolean"
          },
          "showAthleteOnMap": {
            "type": "boolean"
          },
          "allowRegistrantsToSeeRegistrants": {
            "type": "boolean"
          },
          "requiresApproval": {
            "type": "boolean"
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          },
          "scoreTimeLimitMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "scorePenaltyPerMinute": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "registrationOpensAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "registrationClosesAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startWindowStart": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startWindowEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "timeZoneId": {
            "type": "string",
            "nullable": true
          },
          "resultsVisibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.ResultsVisibility"
          },
          "minTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "maxTeamSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "maxRegistrants": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "showLocationBeforeLive": {
            "type": "boolean"
          },
          "punchMethod": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.PunchMethod"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.FeedbackEndpoints.CreateCommentRequest": {
        "type": "object",
        "properties": {
          "body": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.FeedbackEndpoints.CreateIdeaRequest": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "theme": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.FeedbackEndpoints.SetStatusRequest": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.FeedbackStatus"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.FeedbackEndpoints.UpdateCommentRequest": {
        "type": "object",
        "properties": {
          "body": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.FeedbackEndpoints.UpdateIdeaRequest": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "theme": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.FriendEndpoints.FriendRequestBody": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.MapEndpoints.ImportIntoMapRequest": {
        "type": "object",
        "properties": {
          "providerId": {
            "type": "string",
            "nullable": true
          },
          "west": {
            "type": "number",
            "format": "double"
          },
          "south": {
            "type": "number",
            "format": "double"
          },
          "east": {
            "type": "number",
            "format": "double"
          },
          "north": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.MapEndpoints.ImportMapRequest": {
        "type": "object",
        "properties": {
          "clubOwnerId": {
            "type": "string",
            "format": "uuid"
          },
          "providerId": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "west": {
            "type": "number",
            "format": "double"
          },
          "south": {
            "type": "number",
            "format": "double"
          },
          "east": {
            "type": "number",
            "format": "double"
          },
          "north": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.MapEndpoints.UpdateMapRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "descriptionI18n": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.MeEndpoints.EraseRequest": {
        "type": "object",
        "properties": {
          "confirm": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.MessageEndpoints.ReplyRequest": {
        "type": "object",
        "properties": {
          "body": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.MessageEndpoints.StartConversationRequest": {
        "type": "object",
        "properties": {
          "toUserId": {
            "type": "string",
            "format": "uuid"
          },
          "body": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ProfileEndpoints.UpdateLanguageRequest": {
        "type": "object",
        "properties": {
          "culture": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ProfileEndpoints.UpdateProfileRequest": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "preferredCulture": {
            "type": "string",
            "nullable": true
          },
          "visibility": {
            "$ref": "#/components/schemas/Checkpoint.Api.Domain.Visibility"
          },
          "allowsDirectMessages": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.PunchEndpoints.PunchRequest": {
        "type": "object",
        "properties": {
          "checkPointId": {
            "type": "string",
            "format": "uuid"
          },
          "lat": {
            "type": "number",
            "format": "double"
          },
          "lon": {
            "type": "number",
            "format": "double"
          },
          "at": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.PunchEndpoints.QrPunchRequest": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "nullable": true
          },
          "lat": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "lon": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "at": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.QrEndpoints.RegenerateQrRequest": {
        "type": "object",
        "properties": {
          "checkPointId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.ResultsEndpoints.SetSharedRequest": {
        "type": "object",
        "properties": {
          "shared": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.RunEndpoints.AppendTrackPoint": {
        "type": "object",
        "properties": {
          "lat": {
            "type": "number",
            "format": "double"
          },
          "lon": {
            "type": "number",
            "format": "double"
          },
          "t": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.RunEndpoints.AppendTrackRequest": {
        "type": "object",
        "properties": {
          "points": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Checkpoint.Api.Endpoints.RunEndpoints.AppendTrackPoint"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.TeamEndpoints.AddGuestRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.TeamEndpoints.CreateTeamRequest": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "clubId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.TeamEndpoints.InviteRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.TeamEndpoints.RenameTeamRequest": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Checkpoint.Api.Endpoints.TeamEndpoints.TransferRequest": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Authentication.BearerToken.AccessTokenResponse": {
        "required": [
          "accessToken",
          "expiresIn",
          "refreshToken"
        ],
        "type": "object",
        "properties": {
          "tokenType": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "accessToken": {
            "type": "string",
            "nullable": true
          },
          "expiresIn": {
            "type": "integer",
            "format": "int64"
          },
          "refreshToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Http.HttpValidationProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          },
          "errors": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "Microsoft.AspNetCore.Identity.Data.ForgotPasswordRequest": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.InfoRequest": {
        "type": "object",
        "properties": {
          "newEmail": {
            "type": "string",
            "nullable": true
          },
          "newPassword": {
            "type": "string",
            "nullable": true
          },
          "oldPassword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.InfoResponse": {
        "required": [
          "email",
          "isEmailConfirmed"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "isEmailConfirmed": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.LoginRequest": {
        "required": [
          "email",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "twoFactorCode": {
            "type": "string",
            "nullable": true
          },
          "twoFactorRecoveryCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.RefreshRequest": {
        "required": [
          "refreshToken"
        ],
        "type": "object",
        "properties": {
          "refreshToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.RegisterRequest": {
        "required": [
          "email",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.ResendConfirmationEmailRequest": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.ResetPasswordRequest": {
        "required": [
          "email",
          "newPassword",
          "resetCode"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "resetCode": {
            "type": "string",
            "nullable": true
          },
          "newPassword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.TwoFactorRequest": {
        "type": "object",
        "properties": {
          "enable": {
            "type": "boolean",
            "nullable": true
          },
          "twoFactorCode": {
            "type": "string",
            "nullable": true
          },
          "resetSharedKey": {
            "type": "boolean"
          },
          "resetRecoveryCodes": {
            "type": "boolean"
          },
          "forgetMachine": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Microsoft.AspNetCore.Identity.Data.TwoFactorResponse": {
        "required": [
          "isMachineRemembered",
          "isTwoFactorEnabled",
          "recoveryCodesLeft",
          "sharedKey"
        ],
        "type": "object",
        "properties": {
          "sharedKey": {
            "type": "string",
            "nullable": true
          },
          "recoveryCodesLeft": {
            "type": "integer",
            "format": "int32"
          },
          "recoveryCodes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "isTwoFactorEnabled": {
            "type": "boolean"
          },
          "isMachineRemembered": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    }
  }
}