{
  "openapi": "3.1.0",
  "info": {
    "title": "Aghanim Server-to-Server API",
    "description": "The Aghanim Server-to-Server API is designed for **backend server integrations only**. Use this API when you need to automate game hub updates from your server-side applications.\n\n\n## OpenAPI Specification\n\nYou can download the [OpenAPI](https://www.openapis.org/) specification for this API at the following link:\n[docs.aghanim.com/openapi.json](https://docs.aghanim.com/openapi.json).\n\n## Changelog\n\nSee the [S2S API Changelog](https://docs.aghanim.com/s2s-api/changelog/) for a history of changes to this API.\n\n## Authentication\n\nAghanim supports two methods of authentication: **Bearer token** and **Basic authentication**.\n\nTo authenticate, you will need your API key, which can be retrieved from\nthe Aghanim Dashboard \u2192 [**Game \u2192 Integration \u2192 API Keys**](https://dashboard.aghanim.com/go/integration/api-keys).\n\n**\u26a0\ufe0f Security Notice**: The S2S API key is **secret** and must be kept secure on your server. Never expose the S2S API key in client-side code, mobile apps, or any public-facing applications.\n\n### Bearer Token Authentication\n\nUse the Bearer method by including an `Authorization` header with the word `Bearer`\nfollowed by your API key. The `Authorization` header in your HTTP request should look like this: `Authorization: Bearer API_KEY`\n\n### Basic Authentication\n\nAlternatively, you can authenticate using Basic authentication. Your API key is used\nas the `username`, and the `password` should be left empty. Send an `Authorization`\nheader with the word `Basic` followed by a base64-encoded string\nin the format `API_KEY:` (note the colon at the end).\n\nThe `Authorization` header should look like this: `Authorization: Basic ZGVtbzpwQDU1dzByZA==`\n\n## Error Codes\n\nAghanim employs standard HTTP response codes to denote the success or failure of an API request.\nBelow is a table detailing error codes.\n\n| Code | Description |\n| ---- | ----------- |\n| 200  | OK          |\n| 400  | Bad request |\n| 401  | Not authenticated |\n| 403  | Not authorized |\n| 404  | Resource not found |\n| 409  | Conflict. Request conflicts with current state of resource |\n| 422  | Validation error |\n| 429  | Too many requests. Rate limit exceeded |\n| 503  | Server unavailable |\n\n### Generic error schema\n\n```json\n{\n  \"detail\": \"string\"\n}\n```\n\n### Validation error schema\n\n```json\n{\n  \"detail\": [\n    {\n      \"loc\": [\n        \"string\",\n        0\n      ],\n      \"msg\": \"string\",\n      \"type\": \"string\"\n    }\n  ]\n}\n```\n\n## Rate Limits\n\nThe Aghanim API has rate limiting in place to avoid overloading and to ensure it remains stable.\nThe allowable rate of requests is capped at 1,000 per minute for every game.\nGame developers who exceed this limit will receive a 429 error code.\n\nTo increase the rate limit, please contact us via [integration@aghanim.com](mailto:integration@aghanim.com).\n\n## Pagination\n\nIn the Aghanim API, pagination is managed through the use of the `limit` and `offset` query parameters.\nThese parameters allow to fine-tune your data retrieval requests by specifying:\n\n- `limit`: the number of records to be returned in a single request.\n- `offset`: indicates the number of records to skip from the start of the dataset.\n",
    "contact": {
      "name": "Aghanim",
      "email": "integration@aghanim.com"
    },
    "version": "2026.08.27"
  },
  "paths": {
    "/v1/achievements": {
      "get": {
        "tags": [
          "Achievements"
        ],
        "summary": "Get Achievements",
        "description": "Returns a list of achievements.",
        "operationId": "get_achievements",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AchievementRead"
                  },
                  "title": "Response Get Achievements"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Achievements"
        ],
        "summary": "Create Achievement",
        "operationId": "create_achievement",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AchievementCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AchievementRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Achievements"
        ],
        "summary": "Bulk Update Achievement",
        "description": "Updates multiple store items.",
        "operationId": "bulk_update_achievement",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AchievementBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AchievementRead"
                  },
                  "title": "Response Bulk Update Achievement"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/achievements/{achievement_id}": {
      "get": {
        "tags": [
          "Achievements"
        ],
        "summary": "Get Achievement",
        "description": "Returns a single achievement.",
        "operationId": "get_achievement",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "achievement_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Achievement Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AchievementRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Achievements"
        ],
        "summary": "Update Achievement",
        "description": "Updates an achievement.",
        "operationId": "update_achievement",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "achievement_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Achievement Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AchievementUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AchievementRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Achievements"
        ],
        "summary": "Delete Achievement",
        "description": "Deletes an achievement.",
        "operationId": "delete_achievement",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "achievement_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Achievement Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/achievements/{achievement_type}/unlock": {
      "post": {
        "tags": [
          "Achievements"
        ],
        "summary": "Unlock Achievement",
        "description": "Unlock an achievement for a player.",
        "operationId": "unlock_achievement",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "achievement_type",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Achievement Type",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AchievementUnlockRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/coupons/user/{user_id}": {
      "get": {
        "tags": [
          "Coupons"
        ],
        "summary": "Get User Coupons",
        "operationId": "get_user_coupons",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "User Id",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserCouponRead"
                  },
                  "title": "Response Get User Coupons"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/coupons": {
      "get": {
        "tags": [
          "Coupons"
        ],
        "summary": "Get Coupons",
        "description": "Returns a list of coupons.",
        "operationId": "get_coupons",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Q",
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/CouponType"
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Category Id",
              "type": "string"
            }
          },
          {
            "name": "generated_type",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/CouponGeneratedType"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CouponRead"
                  },
                  "title": "Response Get Coupons"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Coupons"
        ],
        "summary": "Create Coupon",
        "description": "Creates a new coupon.",
        "operationId": "create_coupon",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CouponCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CouponRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Coupons"
        ],
        "summary": "Bulk Update Coupon",
        "operationId": "bulk_update_coupon",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CouponBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CouponRead"
                  },
                  "title": "Response Bulk Update Coupon"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/coupons/{coupon_id}": {
      "get": {
        "tags": [
          "Coupons"
        ],
        "summary": "Get Coupon",
        "description": "Returns a single coupon.",
        "operationId": "get_coupon",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "coupon_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Coupon Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CouponRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Coupons"
        ],
        "summary": "Update Coupon",
        "description": "Updates a coupon.",
        "operationId": "update_coupon",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "coupon_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Coupon Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CouponUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CouponRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Coupons"
        ],
        "summary": "Delete Coupon",
        "description": "Deletes a coupon.",
        "operationId": "delete_coupon",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "coupon_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Coupon Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/creators/countries": {
      "get": {
        "tags": [
          "Creators"
        ],
        "summary": "Get Creator Countries",
        "operationId": "get_creator_countries",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "type": "string",
                    "pattern": "^[A-Z]{2}$"
                  },
                  "type": "array",
                  "title": "Response Get Creator Countries"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/creators": {
      "get": {
        "tags": [
          "Creators"
        ],
        "summary": "Get Creators",
        "operationId": "get_creators",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Q",
              "type": "string"
            }
          },
          {
            "name": "platform",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/CreatorSocialPlatform"
            }
          },
          {
            "name": "terms_accepted",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Terms Accepted",
              "type": "boolean"
            }
          },
          {
            "name": "creator_tier_group_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Creator Tier Group Id",
              "type": "string"
            }
          },
          {
            "name": "country",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Country",
              "type": "string",
              "pattern": "^[A-Z]{2}$"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedResponse_list_CreatorRead__"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Creators"
        ],
        "summary": "Create Creator",
        "operationId": "create_creator",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatorCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatorRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/creators/{creator_id}": {
      "get": {
        "tags": [
          "Creators"
        ],
        "summary": "Get Creator",
        "operationId": "get_creator",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "creator_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Creator Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatorRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Creators"
        ],
        "summary": "Update Creator",
        "operationId": "update_creator",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "creator_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Creator Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatorUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatorRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Creators"
        ],
        "summary": "Delete Creator",
        "operationId": "delete_creator",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "creator_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Creator Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/creators/{creator_id}/social-accounts": {
      "get": {
        "tags": [
          "Creators"
        ],
        "summary": "Get Creator Social Accounts",
        "operationId": "get_creator_social_accounts",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "creator_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Creator Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CreatorSocialAccountRead"
                  },
                  "title": "Response Get Creator Social Accounts"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/creators/{creator_id}/terms": {
      "patch": {
        "tags": [
          "Creators"
        ],
        "summary": "Update Creator Terms",
        "operationId": "update_creator_terms",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "creator_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Creator Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatorTermsUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatorTermsRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/daily_rewards": {
      "get": {
        "tags": [
          "Daily Rewards"
        ],
        "summary": "Get Daily Rewards",
        "operationId": "get_daily_rewards",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Q",
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/DailyRewardType"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DailyRewardRead"
                  },
                  "title": "Response Get Daily Rewards"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Daily Rewards"
        ],
        "summary": "Create Daily Reward",
        "operationId": "create_daily_reward",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DailyRewardCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DailyRewardRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/daily_rewards/{daily_reward_id}": {
      "get": {
        "tags": [
          "Daily Rewards"
        ],
        "summary": "Get Daily Reward",
        "operationId": "get_daily_reward",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "daily_reward_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Daily Reward Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DailyRewardRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Daily Rewards"
        ],
        "summary": "Update Daily Reward",
        "operationId": "update_daily_reward",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "daily_reward_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Daily Reward Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DailyRewardUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DailyRewardRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Daily Rewards"
        ],
        "summary": "Delete Daily Reward",
        "operationId": "delete_daily_reward",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "daily_reward_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Daily Reward Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/daily_rewards/{daily_reward_id}/copy": {
      "post": {
        "tags": [
          "Daily Rewards"
        ],
        "summary": "Copy Daily Reward",
        "operationId": "copy_daily_reward",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "daily_reward_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Daily Reward Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DailyRewardRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/gdpr_requests": {
      "post": {
        "tags": [
          "GDPR Requests"
        ],
        "summary": "GDPR Data Removal",
        "description": "Create a request for GDPR data removal.",
        "operationId": "gdpr_data_removal",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GDPRDataRemovalRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/item_categories/{item_category_id}": {
      "get": {
        "tags": [
          "Item Categories"
        ],
        "summary": "Get Item Category",
        "operationId": "get_item_category",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "item_category_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Item Category Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemCategoryRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Item Categories"
        ],
        "summary": "Update Item Category",
        "operationId": "update_item_category",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "item_category_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Item Category Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ItemCategoryUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemCategoryRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Item Categories"
        ],
        "summary": "Delete Item Category",
        "operationId": "delete_item_category",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "item_category_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Item Category Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/item_categories": {
      "get": {
        "tags": [
          "Item Categories"
        ],
        "summary": "Get Item Categories",
        "operationId": "get_item_categories",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ItemCategoryRead"
                  },
                  "title": "Response Get Item Categories"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Item Categories"
        ],
        "summary": "Bulk Update Item Categories",
        "description": "Updates multiple categories.",
        "operationId": "bulk_update_item_categories",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ItemCategoryBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ItemCategoryRead"
                  },
                  "title": "Response Bulk Update Item Categories"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Item Categories"
        ],
        "summary": "Create Item Category",
        "operationId": "create_item_category",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ItemCategoryCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemCategoryRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Item Categories"
        ],
        "summary": "Bulk Delete Item Categories",
        "operationId": "bulk_delete_item_categories",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ItemCategoryBulkDelete"
                },
                "title": "Bulk Delete"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/items": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get Items",
        "operationId": "get_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          },
          {
            "name": "state",
            "in": "query",
            "required": false,
            "schema": {
              "description": "Filter by item state",
              "$ref": "#/components/schemas/ResourceState"
            },
            "description": "Filter by item state"
          },
          {
            "name": "search_string",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Search String",
              "type": "string"
            }
          },
          {
            "name": "category_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Category Id",
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/UnsetType"
                }
              ]
            }
          },
          {
            "name": "order_by",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/ItemOrderType"
            }
          },
          {
            "name": "rarity_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Rarity Id",
              "type": "string"
            }
          },
          {
            "name": "item_stackable_type",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/ItemStackableType"
            }
          },
          {
            "name": "sort_order",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/SortOrder"
            }
          },
          {
            "name": "with_price",
            "in": "query",
            "required": false,
            "schema": {
              "title": "With Price",
              "type": "boolean"
            }
          },
          {
            "name": "item_price_type",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/ItemPriceType"
            }
          },
          {
            "name": "types",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Types",
              "description": "Optional comma separated list of types",
              "type": "string"
            },
            "description": "Optional comma separated list of types"
          },
          {
            "name": "ids",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Ids",
              "description": "Optional comma separated list of ids",
              "type": "string"
            },
            "description": "Optional comma separated list of ids"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "$ref": "#/components/schemas/ItemRead"
                      },
                      {
                        "$ref": "#/components/schemas/LootboxRead"
                      },
                      {
                        "$ref": "#/components/schemas/SubscriptionRead"
                      },
                      {
                        "$ref": "#/components/schemas/VirtualCurrencyRead"
                      }
                    ]
                  },
                  "title": "Response Get Items"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Items"
        ],
        "summary": "Create Item",
        "description": "Creates a new item.",
        "operationId": "create_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ItemCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Items"
        ],
        "summary": "Bulk Create Or Update Items",
        "description": "Creates or updates multiple items.",
        "operationId": "bulk_create_or_update_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ItemBulkCreateOrUpdate"
                },
                "title": "Bulk Create Or Update"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Items"
        ],
        "summary": "Bulk Update Items",
        "description": "Updates multiple items.",
        "operationId": "bulk_update_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ItemBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ItemRead"
                  },
                  "title": "Response Bulk Update Items"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Items"
        ],
        "summary": "Bulk Delete Items",
        "description": "Deletes multiple items.",
        "operationId": "bulk_delete_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ItemBulkDelete"
                },
                "title": "Bulk Delete"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/items/{item_id}": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get Item",
        "description": "Returns a single item.",
        "operationId": "get_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Item Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Items"
        ],
        "summary": "Update Item",
        "description": "Updates an item.",
        "operationId": "update_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Item Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ItemUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Items"
        ],
        "summary": "Delete Item",
        "description": "Deletes an item.",
        "operationId": "delete_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Item Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/items/{item_id}/translate": {
      "post": {
        "tags": [
          "Items"
        ],
        "summary": "Translate Item",
        "description": "Translates an item.",
        "operationId": "translate_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Item Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ItemTranslate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/leaderboards": {
      "get": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Get Leaderboards",
        "description": "Returns a list of leaderboards.",
        "operationId": "get_leaderboards",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LeaderboardRead"
                  },
                  "title": "Response Get Leaderboards"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Create Leaderboard",
        "description": "Creates a new leaderboard.",
        "operationId": "create_leaderboard",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LeaderboardCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeaderboardRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/leaderboards/{leaderboard_id}": {
      "get": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Get Leaderboard",
        "description": "Returns a single leaderboard.",
        "operationId": "get_leaderboard",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "leaderboard_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Leaderboard Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeaderboardRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Update Leaderboard",
        "description": "Updates a leaderboard.",
        "operationId": "update_leaderboard",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "leaderboard_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Leaderboard Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LeaderboardUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeaderboardRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Delete Leaderboard",
        "description": "Deletes a leaderboard.",
        "operationId": "delete_leaderboard",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "leaderboard_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Leaderboard Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/leaderboards/{leaderboard_id}/members": {
      "get": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Get Leaderboard Members",
        "description": "Returns a list of leaderboard members.",
        "operationId": "get_leaderboard_members",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "leaderboard_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Leaderboard Id",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LeaderboardMemberRead"
                  },
                  "title": "Response Get Leaderboard Members"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/leaderboards/{leaderboard_id}/members/{member_id}": {
      "put": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Update Leaderboard Member",
        "operationId": "update_leaderboard_member",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "member_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Member Id",
              "type": "string"
            }
          },
          {
            "name": "leaderboard_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Leaderboard Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LeaderboardMemberUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Update Leaderboard Member"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/leaderboards/{leaderboard_id}/submit_score": {
      "post": {
        "tags": [
          "Leaderboards"
        ],
        "summary": "Submit Score",
        "operationId": "submit_score",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "leaderboard_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Leaderboard Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LeaderboardMemberUpdate"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/campaigns": {
      "get": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Get Campaigns",
        "operationId": "get_campaigns",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "resource_state",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/ResourceState"
            }
          },
          {
            "name": "enabled",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Enabled",
              "type": "boolean"
            }
          },
          {
            "name": "type",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Type",
              "anyOf": [
                {
                  "$ref": "#/components/schemas/CampaignEventType"
                },
                {
                  "type": "string"
                }
              ]
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Campaign"
                  },
                  "title": "Response Get Campaigns"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Create Campaign",
        "operationId": "create_campaign",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CampaignCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Campaign"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Bulk Update Campaigns",
        "description": "Updates multiple campaigns.",
        "operationId": "bulk_update_campaigns",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/BulkCampaignUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/campaigns/by_ids": {
      "get": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Get Campaigns By Ids",
        "operationId": "get_campaigns_by_ids",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "ids",
            "in": "query",
            "required": true,
            "schema": {
              "title": "Ids",
              "description": "Comma separated list of ids",
              "type": "string"
            },
            "description": "Comma separated list of ids"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Campaign"
                  },
                  "title": "Response Get Campaigns By Ids"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/campaigns/{campaign_id}": {
      "get": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Get Campaign",
        "operationId": "get_campaign",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "campaign_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Campaign Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Campaign"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Update Campaign",
        "operationId": "update_campaign",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "campaign_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Campaign Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CampaignUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Campaign"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Delete Campaign",
        "operationId": "delete_campaign",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "campaign_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Campaign Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/campaigns/{campaign_id}/graph": {
      "get": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Get Campaign Graph",
        "operationId": "get_campaign_graph",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "campaign_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Campaign Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Get Campaign Graph",
                  "$ref": "#/components/schemas/GraphRoot"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Update Campaign Graph",
        "operationId": "update_campaign_graph",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "campaign_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Campaign Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GraphRoot"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Campaign"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/events": {
      "post": {
        "tags": [
          "LiveOps"
        ],
        "summary": "Trigger Campaign",
        "description": "Starts a [LiveOps campaign](https://dashboard.aghanim.com/go/campaigns/table) triggered by an in-game event.",
        "operationId": "trigger_campaign",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Event"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/locales": {
      "get": {
        "tags": [
          "Locales"
        ],
        "summary": "Get Locales",
        "description": "Returns a list of locales.",
        "operationId": "get_locales",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LocaleRead"
                  },
                  "title": "Response Get Locales"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Locales"
        ],
        "summary": "Create Locale",
        "description": "Creates a new locale.",
        "operationId": "create_locale",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocaleCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocaleRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/locales/{locale_id}": {
      "get": {
        "tags": [
          "Locales"
        ],
        "summary": "Get Locale",
        "description": "Returns a single locale.",
        "operationId": "get_locale",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "locale_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Locale Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocaleRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Locales"
        ],
        "summary": "Update Locale",
        "description": "Updates a locale.",
        "operationId": "update_locale",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "locale_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Locale Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocaleUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocaleRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Locales"
        ],
        "summary": "Delete Locale",
        "description": "Deletes a locale.",
        "operationId": "delete_locale",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "locale_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Locale Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/loyalty": {
      "get": {
        "tags": [
          "Loyalty Program"
        ],
        "summary": "Get Loyalty Settings",
        "operationId": "get_loyalty_settings",
        "responses": {
          "200": {
            "description": "Program retrieved",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoyaltySettingsDashboardRead"
                }
              }
            }
          },
          "201": {
            "description": "Program created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoyaltySettingsDashboardRead"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/loyalty/{loyalty_settings_id}": {
      "put": {
        "tags": [
          "Loyalty Program"
        ],
        "summary": "Update Loyalty Settings",
        "operationId": "update_loyalty_settings",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "loyalty_settings_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Loyalty Settings Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoyaltySettingsUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoyaltySettings"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/loyalty/{loyalty_settings_id}/tiers": {
      "get": {
        "tags": [
          "Loyalty Program"
        ],
        "summary": "Get Loyalty Tiers",
        "operationId": "get_loyalty_tiers",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "loyalty_settings_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Loyalty Settings Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LoyaltyTier"
                  },
                  "title": "Response Get Loyalty Tiers"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Loyalty Program"
        ],
        "summary": "Update Loyalty Tiers",
        "operationId": "update_loyalty_tiers",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "loyalty_settings_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Loyalty Settings Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/LoyaltyTierCreateUpdate"
                },
                "title": "Tiers"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LoyaltyTier"
                  },
                  "title": "Response Update Loyalty Tiers"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/loyalty/{loyalty_settings_id}/issue_points": {
      "post": {
        "tags": [
          "Loyalty Program"
        ],
        "summary": "Issue Loyalty Points",
        "description": "Issue loyalty points to a user manually.",
        "operationId": "issue_loyalty_points",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "loyalty_settings_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Loyalty Settings Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/aghanim__loyalty__schemas__IssueLoyaltyPointsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/news": {
      "get": {
        "tags": [
          "News"
        ],
        "summary": "Get News List",
        "description": "Returns a list of news posts.",
        "operationId": "get_news_list",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "sort_field",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/NewsSortField"
            }
          },
          {
            "name": "sort_order",
            "in": "query",
            "required": false,
            "schema": {
              "default": "asc",
              "$ref": "#/components/schemas/SortOrder"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          },
          {
            "name": "category",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/NewsCategory"
            }
          },
          {
            "name": "group",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/NewsGroup"
            }
          },
          {
            "name": "search_string",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Search String",
              "type": "string"
            }
          },
          {
            "name": "collection_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Collection Id",
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/NewsState"
            }
          },
          {
            "name": "has_collection",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Has Collection",
              "type": "boolean"
            }
          },
          {
            "name": "ids",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Ids",
              "description": "Optional comma separated list of ids",
              "type": "string"
            },
            "description": "Optional comma separated list of ids"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/NewsRead"
                  },
                  "title": "Response Get News List"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "News"
        ],
        "summary": "Create News",
        "description": "Creates a new news post.",
        "operationId": "create_news",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewsCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NewsRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "News"
        ],
        "summary": "Bulk Delete News",
        "description": "Deletes multiple news.",
        "operationId": "bulk_delete_news",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/NewsBulkDelete"
                },
                "title": "Bulk Delete"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "News"
        ],
        "summary": "Bulk Update News",
        "description": "Updates multiple news.",
        "operationId": "bulk_update_news",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/NewsBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/NewsRead"
                  },
                  "title": "Response Bulk Update News"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/news/{news_id}": {
      "get": {
        "tags": [
          "News"
        ],
        "summary": "Get News Post",
        "description": "Returns a single news post.",
        "operationId": "get_news_post",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "news_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "News Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NewsRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "News"
        ],
        "summary": "Update News",
        "description": "Updates a news post.",
        "operationId": "update_news",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "news_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "News Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewsUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NewsRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "News"
        ],
        "summary": "Delete News",
        "description": "Deletes a news post.",
        "operationId": "delete_news",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "news_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "News Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/orders": {
      "get": {
        "tags": [
          "Orders"
        ],
        "summary": "Get Orders",
        "description": "Returns a list of orders.",
        "operationId": "get_orders",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "start_at",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Start At",
              "description": "Optional start of the time range to filter by order creation time, in Unix timestamp format (seconds)",
              "type": "integer"
            },
            "description": "Optional start of the time range to filter by order creation time, in Unix timestamp format (seconds)"
          },
          {
            "name": "end_at",
            "in": "query",
            "required": false,
            "schema": {
              "title": "End At",
              "description": "Optional end of the time range to filter by order creation time, in Unix timestamp format (seconds)",
              "type": "integer"
            },
            "description": "Optional end of the time range to filter by order creation time, in Unix timestamp format (seconds)"
          },
          {
            "name": "platform",
            "in": "query",
            "required": false,
            "schema": {
              "description": "Optional platform to filter orders by (e.g. ios, android, other).",
              "$ref": "#/components/schemas/Platform"
            },
            "description": "Optional platform to filter orders by (e.g. ios, android, other)."
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Order"
                  },
                  "title": "Response Get Orders"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Orders"
        ],
        "summary": "Create Order",
        "description": "Creates an order for the specified `player_id` and list of `items`.\n\nThe response includes a `checkout_url` that the player should be\nredirected to in order to complete the purchase.\n\nYou can optionally provide:\n- `back_to_game_url`: A universal deep link that appears as a \"Back to Game\"\n  button on the checkout page. Typically, this should open the game client.\n- `back_to_store_url`: A web URL that appears as a \"Back to Store\"\n  button on the checkout page. Usually links to your store website.",
        "operationId": "create_order",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OrderCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderCreateResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/orders/{order_id}": {
      "get": {
        "tags": [
          "Orders"
        ],
        "summary": "Get Order",
        "description": "Returns the order with the latest status.",
        "operationId": "get_order",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "order_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Order Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Orders"
        ],
        "summary": "Update Order",
        "description": "Updates the order.",
        "operationId": "update_order",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "order_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Order Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OrderUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/orders/{order_id}/expire": {
      "patch": {
        "tags": [
          "Orders"
        ],
        "summary": "Expire Order",
        "description": "Expires the order.\n\nThe expiration timestamp is set to the current time, which makes the order\nimpossible to pay.\n\nOnly orders with status `created` or `reattempted` can be expired.\nAttempting to expire an order in any other status will result in an error.",
        "operationId": "expire_order",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "order_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Order Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/orders/{order_id}/refund": {
      "post": {
        "tags": [
          "Orders"
        ],
        "summary": "Refund Order",
        "operationId": "refund_order",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "order_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Order Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OrderRefund"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pages": {
      "get": {
        "tags": [
          "Pages"
        ],
        "summary": "Get Pages",
        "operationId": "get_pages",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "parent_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Parent Id",
              "type": "string"
            }
          },
          {
            "name": "ignore_parent_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Ignore Parent Id",
              "default": false,
              "type": "boolean"
            }
          },
          {
            "name": "search_string",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Search String",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          },
          {
            "name": "types",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Types",
              "description": "Optional comma separated list of types",
              "type": "string"
            },
            "description": "Optional comma separated list of types"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PageRead"
                  },
                  "title": "Response Get Pages"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Pages"
        ],
        "summary": "Create Page",
        "operationId": "create_page",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PageCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Pages"
        ],
        "summary": "Bulk Delete Page",
        "description": "Deletes multiple pages.",
        "operationId": "bulk_delete_page",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PageBulkDelete"
                },
                "title": "Bulk Delete"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Pages"
        ],
        "summary": "Bulk Update Page",
        "description": "Updates multiple pages.",
        "operationId": "bulk_update_page",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PageBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PageRead"
                  },
                  "title": "Response Bulk Update Page"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pages/{page_id}": {
      "get": {
        "tags": [
          "Pages"
        ],
        "summary": "Get Page",
        "operationId": "get_page",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "page_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Page Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Pages"
        ],
        "summary": "Update Page",
        "operationId": "update_page",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "page_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Page Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PageUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Pages"
        ],
        "summary": "Delete Page",
        "operationId": "delete_page",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "page_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Page Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pages/{page_id}/translate": {
      "post": {
        "tags": [
          "Pages"
        ],
        "summary": "Translate Page",
        "description": "Translates a page.",
        "operationId": "translate_page",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "page_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Page Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PageTranslate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/payments": {
      "get": {
        "tags": [
          "Payments"
        ],
        "summary": "Get Payments",
        "description": "Returns a list of payments.",
        "operationId": "get_payments",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          },
          {
            "name": "start_at",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Start At",
              "description": "Optional start of the time range to filter, in Unix timestamp format (seconds)",
              "type": "integer"
            },
            "description": "Optional start of the time range to filter, in Unix timestamp format (seconds)"
          },
          {
            "name": "end_at",
            "in": "query",
            "required": false,
            "schema": {
              "title": "End At",
              "description": "Optional end of the time range to filter. Mandatory if start_at is specified.",
              "type": "integer"
            },
            "description": "Optional end of the time range to filter. Mandatory if start_at is specified."
          },
          {
            "name": "field",
            "in": "query",
            "required": false,
            "schema": {
              "description": "Field by which the start_at/end_at range is filtered",
              "default": "created_at",
              "$ref": "#/components/schemas/RangeField"
            },
            "description": "Field by which the start_at/end_at range is filtered"
          },
          {
            "name": "search_string",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Search String",
              "description": "Search across order_id, email, receipt_number, payment_id, status, country, user_id.",
              "type": "string"
            },
            "description": "Search across order_id, email, receipt_number, payment_id, status, country, user_id."
          },
          {
            "name": "user_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "User Id",
              "type": "string"
            }
          },
          {
            "name": "order_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Order Id",
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Status",
              "description": "Optional comma separated list of status",
              "type": "string"
            },
            "description": "Optional comma separated list of status"
          },
          {
            "name": "countries",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Countries",
              "description": "Optional comma separated list of ISO 3166-1 alpha-2 country codes (e.g. US,DE).",
              "type": "string"
            },
            "description": "Optional comma separated list of ISO 3166-1 alpha-2 country codes (e.g. US,DE)."
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PaymentRead"
                  },
                  "title": "Response Get Payments"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/payments/{payment_number}/dispute_evidence": {
      "put": {
        "tags": [
          "Payments' Dispute Evidence"
        ],
        "summary": "Upsert Dispute Evidence",
        "description": "Create or update dispute evidence for a payment.",
        "operationId": "upsert_dispute_evidence",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "payment_number",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Payment Number",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DisputeEvidenceUpsert"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DisputeEvidenceRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Payments' Dispute Evidence"
        ],
        "summary": "Get Dispute Evidence",
        "description": "Return dispute evidence for a payment, including player fields.",
        "operationId": "get_dispute_evidence",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "payment_number",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Payment Number",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DisputeEvidenceRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/payments/{payment_number}/dispute_evidence/files": {
      "post": {
        "tags": [
          "Payments' Dispute Evidence"
        ],
        "summary": "Upload Dispute Evidence File",
        "description": "Upload an evidence file for a payment.",
        "operationId": "upload_dispute_evidence_file",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "payment_number",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Payment Number",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DisputeEvidenceFileCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DisputeEvidenceRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/refresh_store": {
      "post": {
        "tags": [
          "Players"
        ],
        "summary": "Refresh Store For Single Player",
        "description": "Trigger a store content refresh for a single player.\n\nIf the player is on the store page, this will call the `store.get` webhook and\nthe store page content will be refreshed immediately for them on the Game Hub.",
        "operationId": "refresh_store_for_single_player",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/refresh_store": {
      "post": {
        "tags": [
          "Players"
        ],
        "summary": "Refresh Store For All Players",
        "description": "Trigger a store content refresh for all players.\n\nAll players on the store page will eventually see the updated store content.\nBe aware that this operation will call the `store.get` webhook for all players\ncurrently on the store page, so your server might experience a high number of\nrequests if you have a large number of players on the store page.",
        "operationId": "refresh_store_for_all_players",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "query",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}": {
      "post": {
        "tags": [
          "Players"
        ],
        "summary": "Update Player",
        "description": "Update a player",
        "operationId": "update_player",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Players"
        ],
        "summary": "Get Player",
        "description": "Retrieve a player by their player ID.",
        "operationId": "get_player",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlayerRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/issue_loyalty_points": {
      "post": {
        "tags": [
          "Players"
        ],
        "summary": "Issue Loyalty Points",
        "description": "Issue loyalty points to a player.",
        "operationId": "issue_loyalty_points",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/aghanim__s2s__player__schemas__IssueLoyaltyPointsRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/marketing_consent/email/grant": {
      "post": {
        "tags": [
          "Players' Marketing Consents"
        ],
        "summary": "Grant Email Marketing Consent",
        "description": "Grant email marketing consent for a player.",
        "operationId": "grant_email_marketing_consent",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmailMarketingConsentGrant"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/marketing_consent/email/revoke": {
      "post": {
        "tags": [
          "Players' Marketing Consents"
        ],
        "summary": "Revoke Email Marketing Consent",
        "description": "Revoke email marketing consent for a player.",
        "operationId": "revoke_email_marketing_consent",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/subscriptions": {
      "get": {
        "tags": [
          "Players' Subscriptions"
        ],
        "summary": "Get Subscriptions",
        "description": "Retrieve subscriptions for a player.",
        "operationId": "get_player_subscriptions",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          },
          {
            "name": "effective",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Effective",
              "description": "Filter by effective status. True for effective only, False for non-effective only, None for all.",
              "type": "boolean"
            },
            "description": "Filter by effective status. True for effective only, False for non-effective only, None for all."
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/aghanim__s2s__player__subscription__schemas__SubscriptionRead"
                  },
                  "title": "Response Get Player Subscriptions"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/subscriptions/{subscription_id}": {
      "delete": {
        "tags": [
          "Players' Subscriptions"
        ],
        "summary": "Cancel Player Subscriptions",
        "description": "Cancel a players's subscription.",
        "operationId": "cancel_player_subscriptions",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          },
          {
            "name": "subscription_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Subscription Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/subscriptions/{subscription_id}/reactivate": {
      "post": {
        "tags": [
          "Players' Subscriptions"
        ],
        "summary": "Reactivate Player Subscription",
        "description": "Reactivate a player's subscription.\n\nDepending on the current subscription state:\n  - reactivates the existing subscription if it is not in a terminal state,\n  - creates a new subscription if the previous one has ended,\n  - or does nothing if the subscription is already active.",
        "operationId": "reactivate_player_subscription",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          },
          {
            "name": "subscription_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Subscription Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Subscription reactivated.",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Reactivate Player Subscription",
                  "$ref": "#/components/schemas/ReactivatedSubscription"
                }
              }
            }
          },
          "201": {
            "description": "New subscription created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReactivatedSubscription"
                }
              }
            }
          },
          "204": {
            "description": "Subscription already active."
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/players/{player_id}/subscriptions/{subscription_id}/transfer": {
      "post": {
        "tags": [
          "Players' Subscriptions"
        ],
        "summary": "Transfer Player Subscription",
        "description": "Transfer a player's subscription to another player in the same game, keeping the plan, billing schedule and saved payment method.",
        "operationId": "transfer_player_subscription",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "player_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Player Id",
              "type": "string"
            }
          },
          {
            "name": "subscription_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Subscription Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubscriptionTransferRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Subscription transferred to the target player.",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Transfer Player Subscription",
                  "$ref": "#/components/schemas/TransferredSubscription"
                }
              }
            }
          },
          "204": {
            "description": "Subscription changed concurrently, retry later."
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/price_points": {
      "get": {
        "tags": [
          "Price Points"
        ],
        "summary": "Get Price Points",
        "description": "Returns price points from price templates for the specified country.\n\nPrice templates can be configured in Dashboard -> SKU Management ->\n[Price Templates](https://dashboard.aghanim.com/go/sku/price-templates).\n\nThe `locale` parameter is optional and if not provided, it will be resolved\nfrom the country with the best match available for that country.",
        "operationId": "get_price_points",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "country",
            "in": "query",
            "required": true,
            "schema": {
              "title": "Country",
              "description": "The two-letter country code (ISO 3166-1 alpha-2) for price localization.",
              "pattern": "^[A-Z]{2}$",
              "type": "string"
            },
            "description": "The two-letter country code (ISO 3166-1 alpha-2) for price localization."
          },
          {
            "name": "locale",
            "in": "query",
            "required": false,
            "schema": {
              "description": "Locale for price formatting (e.g., en, pt-BR, zh-Hant).",
              "$ref": "#/components/schemas/Locale"
            },
            "description": "Locale for price formatting (e.g., en, pt-BR, zh-Hant)."
          },
          {
            "name": "platform",
            "in": "query",
            "required": false,
            "schema": {
              "description": "Platform for platform-specific pricing (e.g., ios, android, any).",
              "default": "any",
              "$ref": "#/components/schemas/Platform"
            },
            "description": "Platform for platform-specific pricing (e.g., ios, android, any)."
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PricePointsResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/price_templates": {
      "get": {
        "tags": [
          "Price Templates"
        ],
        "summary": "Get Price Templates",
        "description": "Returns a list of price templates.",
        "operationId": "get_price_templates",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Q",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "starting_after",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Starting After",
              "description": "The cursor for pagination",
              "type": "string"
            },
            "description": "The cursor for pagination"
          },
          {
            "name": "ending_before",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Ending Before",
              "description": "The cursor for pagination",
              "type": "string"
            },
            "description": "The cursor for pagination"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InfinitePaginatedResponse_PriceTemplateShort_"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Price Templates"
        ],
        "summary": "Create Price Template",
        "description": "Creates a new price template.",
        "operationId": "create_price_template",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PriceTemplateCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriceTemplateRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/price_templates/{price_template_id}": {
      "get": {
        "tags": [
          "Price Templates"
        ],
        "summary": "Get Price Template",
        "description": "Returns a single price template.",
        "operationId": "get_price_template",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "price_template_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Price Template Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriceTemplateRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Price Templates"
        ],
        "summary": "Update Price Template",
        "description": "Updates a price template.",
        "operationId": "update_price_template",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "price_template_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Price Template Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PriceTemplateUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriceTemplateRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Price Templates"
        ],
        "summary": "Delete Price Template",
        "description": "Deletes a price template.",
        "operationId": "delete_price_template",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "price_template_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Price Template Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/segment_groups/{segment_group_id}": {
      "get": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Get Segment Group",
        "operationId": "get_segment_group",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_group_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Segment Group Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SegmentGroupRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Update Segment Group",
        "operationId": "update_segment_group",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_group_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Segment Group Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SegmentGroupUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Update Segment Group"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Delete Segment Group",
        "operationId": "delete_segment_group",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_group_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Segment Group Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/segment_groups/{segment_group_id}/graph": {
      "get": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Get Segment Group Graph",
        "operationId": "get_segment_group_graph",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_group_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Segment Group Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Get Segment Group Graph"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/segment_groups": {
      "get": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Get Segment Groups",
        "operationId": "get_segment_groups",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/SegmentGroupReadStat"
                  },
                  "type": "array",
                  "title": "Response Get Segment Groups"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      },
      "post": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Create Segment Group",
        "operationId": "create_segment_group",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SegmentGroupCreate"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SegmentGroupRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/segments/{segment_id}": {
      "get": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Get Segment",
        "operationId": "get_segment",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Segment Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SegmentRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Update Segment",
        "operationId": "update_segment",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Segment Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SegmentUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Update Segment"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Delete Segment",
        "operationId": "delete_segment",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Segment Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/segments": {
      "get": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Get Segments",
        "operationId": "get_segments",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "segment_group_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Segment Group Id",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SegmentRead"
                  },
                  "title": "Response Get Segments"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Segmentation"
        ],
        "summary": "Create Segment",
        "operationId": "create_segment",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SegmentCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SegmentRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_promotions/user/{user_id}": {
      "get": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Get User Promotions",
        "operationId": "get_user_promotions",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "User Id",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserStorePromotionRead"
                  },
                  "title": "Response Get User Promotions"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_promotions/user/{user_id}/{store_promotion_id}": {
      "delete": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Delete Store Promotion Of User",
        "operationId": "delete_store_promotion_of_user",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_promotion_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Promotion Id",
              "type": "string"
            }
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "User Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_promotions/{store_promotion_id}": {
      "delete": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Delete Store Promotion",
        "operationId": "delete_store_promotion",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_promotion_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Promotion Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Get Store Promotion",
        "operationId": "get_store_promotion",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_promotion_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Promotion Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorePromotionRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Update Store Promotion",
        "operationId": "update_store_promotion",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_promotion_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Promotion Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StorePromotionUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorePromotionRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_promotions": {
      "get": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Get Store Promotions",
        "operationId": "get_store_promotions",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "resource_state",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/ResourceState"
            }
          },
          {
            "name": "search_string",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Search String",
              "type": "string"
            }
          },
          {
            "name": "active",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Active",
              "type": "boolean"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StorePromotionRead"
                  },
                  "title": "Response Get Store Promotions"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Create Store Promotion",
        "operationId": "create_store_promotion",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StorePromotionCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorePromotionRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Bulk Update Store Promotions",
        "description": "Updates multiple items.",
        "operationId": "bulk_update_store_promotions",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/StorePromotionBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StorePromotionRead"
                  },
                  "title": "Response Bulk Update Store Promotions"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_promotions/{store_promotion_id}/copy": {
      "post": {
        "tags": [
          "Store Promotions"
        ],
        "summary": "Copy Store Promotion",
        "operationId": "copy_store_promotion",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_promotion_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Promotion Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorePromotionRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/stores/store/{store_item_id}": {
      "get": {
        "tags": [
          "Stores"
        ],
        "summary": "Get Store By Store Item",
        "operationId": "get_store_by_store_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_item_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Item Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoreRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/stores": {
      "get": {
        "tags": [
          "Stores"
        ],
        "summary": "Get Stores",
        "operationId": "get_stores",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "search_string",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Search String",
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StoreReadStat"
                  },
                  "title": "Response Get Stores"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Stores"
        ],
        "summary": "Create Store",
        "operationId": "create_store",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StoreCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoreRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Stores"
        ],
        "summary": "Bulk Delete Stores",
        "description": "Deletes multiple stores.",
        "operationId": "bulk_delete_stores",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/StoreBulkDelete"
                },
                "title": "Bulk Delete"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/stores/{store_id}": {
      "get": {
        "tags": [
          "Stores"
        ],
        "summary": "Get Store",
        "operationId": "get_store",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoreRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Stores"
        ],
        "summary": "Update Store",
        "operationId": "update_store",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StoreUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoreRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Stores"
        ],
        "summary": "Delete Store",
        "operationId": "delete_store",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_items/{store_id}": {
      "get": {
        "tags": [
          "Stores"
        ],
        "summary": "Get Store Items",
        "operationId": "get_store_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StoreItemRead"
                  },
                  "title": "Response Get Store Items"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Stores"
        ],
        "summary": "Create Store Item",
        "operationId": "create_store_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StoreItemCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoreItemRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Stores"
        ],
        "summary": "Bulk Update Store Items",
        "description": "Updates multiple store items.",
        "operationId": "bulk_update_store_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/StoreItemBulkUpdate"
                },
                "title": "Bulk Update"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StoreItemRead"
                  },
                  "title": "Response Bulk Update Store Items"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Stores"
        ],
        "summary": "Bulk Delete Store Items",
        "description": "Deletes multiple store items.",
        "operationId": "bulk_delete_store_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/StoreItemBulkDelete"
                },
                "title": "Bulk Delete"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_items": {
      "get": {
        "tags": [
          "Stores"
        ],
        "summary": "Get All Store Items",
        "operationId": "get_all_store_items",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "ids",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Ids",
              "description": "Optional comma separated list of ids",
              "type": "string"
            },
            "description": "Optional comma separated list of ids"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StoreItemRead"
                  },
                  "title": "Response Get All Store Items"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_items/{store_id}/batch": {
      "post": {
        "tags": [
          "Stores"
        ],
        "summary": "Batch Create Store Item",
        "operationId": "batch_create_store_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ItemsCreate"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/store_items/{store_id}/{store_item_id}": {
      "put": {
        "tags": [
          "Stores"
        ],
        "summary": "Update Store Item",
        "operationId": "update_store_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          },
          {
            "name": "store_item_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Item Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StoreItemUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoreItemRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Stores"
        ],
        "summary": "Delete Store Item",
        "operationId": "delete_store_item",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "store_item_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Item Id",
              "type": "string"
            }
          },
          {
            "name": "store_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Store Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/translation_glossaries": {
      "get": {
        "tags": [
          "Translation Glossaries"
        ],
        "summary": "Get Translation Glossaries",
        "description": "Returns a list of translation glossaries.",
        "operationId": "get_translation_glossaries",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "locale_id",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Locale Id",
              "description": "Filter by locale",
              "type": "string"
            },
            "description": "Filter by locale"
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Q",
              "description": "Filter by search query",
              "type": "string"
            },
            "description": "Filter by search query"
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "starting_after",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Starting After",
              "description": "The cursor for pagination",
              "type": "string"
            },
            "description": "The cursor for pagination"
          },
          {
            "name": "ending_before",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Ending Before",
              "description": "The cursor for pagination",
              "type": "string"
            },
            "description": "The cursor for pagination"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InfinitePaginatedResponse_TranslationGlossaryRead_"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Translation Glossaries"
        ],
        "summary": "Create Translation Glossary",
        "description": "Creates a new translation glossary.",
        "operationId": "create_translation_glossary",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TranslationGlossaryCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TranslationGlossaryRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/translation_glossaries/{translation_glossary_id}": {
      "get": {
        "tags": [
          "Translation Glossaries"
        ],
        "summary": "Get Translation Glossary",
        "description": "Returns a single translation glossary.",
        "operationId": "get_translation_glossary",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "translation_glossary_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Translation Glossary Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TranslationGlossaryRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Translation Glossaries"
        ],
        "summary": "Update Translation Glossary",
        "description": "Updates a translation glossary.",
        "operationId": "update_translation_glossary",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "translation_glossary_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Translation Glossary Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TranslationGlossaryUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TranslationGlossaryRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Translation Glossaries"
        ],
        "summary": "Delete Translation Glossary",
        "description": "Deletes a translation glossary.",
        "operationId": "delete_translation_glossary",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "translation_glossary_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Translation Glossary Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/authorize": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Authorize User",
        "description": "Generate an authorization URL to log in a player on the Game Hub.",
        "operationId": "authorize_user",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/users/authenticate": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Authenticate User",
        "description": "Authenticate a user using a one-time token. Game Hub generates and sends this token\nto the game client to process the user's authentication flow with the game server.\n\nThe token is valid for a single use and expires after a short period.",
        "operationId": "authenticate_user",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AuthenticateRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/users/{user_id}": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get User",
        "description": "Retrieve a user by their ID.",
        "operationId": "get_user",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "User Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/{user_id}/link_player": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Link Player",
        "description": "Link a player to a user.",
        "operationId": "link_player",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "User Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LinkPlayerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/{user_id}/unlink_player": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Unlink Player",
        "description": "Unlink a player from a user.",
        "operationId": "unlink_player",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "User Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LinkPlayerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/authorize/reject": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Reject Authorization",
        "description": "Reject a game hub login attempt that cannot proceed and return a URL to show the error.\n\nWhen the nonce from the authorization deep link is provided, the waiting Game Hub page\ncancels its waiter and shows the error to the player, so the login flow ends instead of\nhanging.\n\nOpening the returned URL is optional: the game client may open it to show the error\nitself, and the flow still resolves if it never does.",
        "operationId": "reject_authorization",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RejectAuthorizationRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RejectAuthorizationResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        },
        "security": [
          {
            "HTTPBearer": []
          }
        ]
      }
    },
    "/v1/videos": {
      "get": {
        "tags": [
          "Videos"
        ],
        "summary": "Get Videos",
        "description": "Returns a list of videos.",
        "operationId": "get_videos",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "A limit on the number of objects to be returned",
              "default": 10,
              "type": "integer"
            },
            "description": "A limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/VideoRead"
                  },
                  "title": "Response Get Videos"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Videos"
        ],
        "summary": "Create Video",
        "description": "Creates a new video.",
        "operationId": "create_video",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VideoCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VideoRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/videos/{video_id}": {
      "get": {
        "tags": [
          "Videos"
        ],
        "summary": "Get Video",
        "description": "Returns a single video.",
        "operationId": "get_video",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "video_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Video Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VideoRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Videos"
        ],
        "summary": "Update Video",
        "description": "Updates a video.",
        "operationId": "update_video",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "video_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Video Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VideoUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VideoRead"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Videos"
        ],
        "summary": "Delete Video",
        "description": "Deletes a video.",
        "operationId": "delete_video",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "video_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Video Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/webhooks": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Get Webhooks",
        "description": "Returns a list of webhooks.",
        "operationId": "get_webhooks",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Limit",
              "description": "The limit on the number of objects to be returned",
              "default": 300,
              "type": "integer"
            },
            "description": "The limit on the number of objects to be returned"
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "title": "Offset",
              "description": "The number of objects to skip",
              "type": "integer"
            },
            "description": "The number of objects to skip"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Get Webhooks",
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WebhookRedacted"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Create Webhook",
        "description": "Creates a new webhook.",
        "operationId": "create_webhook",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "title": "Create",
                "$ref": "#/components/schemas/WebhookCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookRevealed"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/webhooks/{webhook_id}": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Get Webhook",
        "description": "Returns a single webhook.",
        "operationId": "get_webhook",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "webhook_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Webhook Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookRedacted"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Update Webhook",
        "description": "Updates a webhook.",
        "operationId": "update_webhook",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "webhook_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Webhook Id",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "title": "Update",
                "$ref": "#/components/schemas/WebhookUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookRedacted"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Delete Webhook",
        "description": "Deletes a webhook.",
        "operationId": "delete_webhook",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "webhook_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Webhook Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Successful Response"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/webhooks/{webhook_id}/expire_secret": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Expire Webhook Secret",
        "description": "Expires the secret of a webhook.",
        "operationId": "expire_webhook_secret",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "webhook_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Webhook Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookRevealed"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/webhooks/{webhook_id}/reveal": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Reveal Webhook Secret",
        "description": "Reveals the secret of a webhook.",
        "operationId": "reveal_webhook_secret",
        "security": [
          {
            "HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "webhook_id",
            "in": "path",
            "required": true,
            "schema": {
              "title": "Webhook Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookRevealed"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AchievementBulkUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the achievement",
            "type": "string",
            "maxLength": 255,
            "minLength": 1
          },
          "description": {
            "title": "Description",
            "description": "The description of the achievement",
            "type": "string",
            "maxLength": 512
          },
          "image_url": {
            "title": "Image Url",
            "description": "The URL of the image for the achievement",
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/AchievementType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Type",
            "description": "The type of the achievement"
          },
          "position": {
            "title": "Position",
            "description": "The position of the achievement in the list",
            "type": "integer"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the achievement"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "AchievementBulkUpdate"
      },
      "AchievementCreate": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "minLength": 1,
            "title": "Name",
            "description": "The name of the achievement"
          },
          "description": {
            "type": "string",
            "maxLength": 512,
            "title": "Description",
            "description": "The description of the achievement"
          },
          "image_url": {
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri",
            "title": "Image Url",
            "description": "The URL of the image for the achievement"
          },
          "type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/AchievementType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Type",
            "description": "The type of the achievement"
          },
          "position": {
            "type": "integer",
            "title": "Position",
            "description": "The position of the achievement in the list"
          }
        },
        "type": "object",
        "required": [
          "name",
          "description",
          "image_url",
          "type",
          "position"
        ],
        "title": "AchievementCreate"
      },
      "AchievementListBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "AchievementListBlock",
            "enum": [
              "AchievementListBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "AchievementListBlock"
      },
      "AchievementRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "minLength": 1,
            "title": "Name",
            "description": "The name of the achievement"
          },
          "description": {
            "type": "string",
            "maxLength": 512,
            "title": "Description",
            "description": "The description of the achievement"
          },
          "image_url": {
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri",
            "title": "Image Url",
            "description": "The URL of the image for the achievement"
          },
          "type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/AchievementType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Type",
            "description": "The type of the achievement"
          },
          "position": {
            "type": "integer",
            "title": "Position",
            "description": "The position of the achievement in the list"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the achievement"
          }
        },
        "type": "object",
        "required": [
          "name",
          "description",
          "image_url",
          "type",
          "position",
          "id"
        ],
        "title": "AchievementRead"
      },
      "AchievementType": {
        "type": "string",
        "enum": [
          "first_visit",
          "first_purchase",
          "regular_visit"
        ],
        "title": "AchievementType"
      },
      "AchievementUnlockRequest": {
        "properties": {
          "player_id": {
            "type": "string",
            "title": "Player Id",
            "description": "The unique player ID who unlocked the achievement"
          }
        },
        "type": "object",
        "required": [
          "player_id"
        ],
        "title": "AchievementUnlockRequest"
      },
      "AchievementUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the achievement",
            "type": "string",
            "maxLength": 255,
            "minLength": 1
          },
          "description": {
            "title": "Description",
            "description": "The description of the achievement",
            "type": "string",
            "maxLength": 512
          },
          "image_url": {
            "title": "Image Url",
            "description": "The URL of the image for the achievement",
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/AchievementType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Type",
            "description": "The type of the achievement"
          },
          "position": {
            "title": "Position",
            "description": "The position of the achievement in the list",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "AchievementUpdate"
      },
      "AddPageBlockNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "AddPageBlockNode",
            "enum": [
              "AddPageBlockNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "page_block": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/FullNewsBlock"
              },
              {
                "$ref": "#/components/schemas/FeaturedNewsBlock"
              },
              {
                "$ref": "#/components/schemas/TwitchBlock"
              },
              {
                "$ref": "#/components/schemas/YoutubeBlock"
              },
              {
                "$ref": "#/components/schemas/TextBlock"
              },
              {
                "$ref": "#/components/schemas/BannerBlock"
              },
              {
                "$ref": "#/components/schemas/FeaturedItemBlock"
              },
              {
                "$ref": "#/components/schemas/RedeemCouponBlock"
              },
              {
                "$ref": "#/components/schemas/LatestNewsBlock"
              },
              {
                "$ref": "#/components/schemas/LatestPagesBlock"
              },
              {
                "$ref": "#/components/schemas/LeaderboardCardBlock"
              },
              {
                "$ref": "#/components/schemas/LeaderboardFullBlock"
              },
              {
                "$ref": "#/components/schemas/LeaderboardCollectionBlock"
              },
              {
                "$ref": "#/components/schemas/LimitedStoreBannerBlock"
              },
              {
                "$ref": "#/components/schemas/AchievementListBlock"
              },
              {
                "$ref": "#/components/schemas/FeaturedPageBlock"
              },
              {
                "$ref": "#/components/schemas/DailyRewardsBlock"
              },
              {
                "$ref": "#/components/schemas/LoyaltyProgramBlock"
              },
              {
                "$ref": "#/components/schemas/IFrameBlock"
              },
              {
                "$ref": "#/components/schemas/ImageBannerBlock"
              },
              {
                "$ref": "#/components/schemas/RichContentBlock"
              },
              {
                "$ref": "#/components/schemas/CarouselBlock"
              },
              {
                "$ref": "#/components/schemas/SequentialOfferBlock"
              },
              {
                "$ref": "#/components/schemas/RangeOfferBlock"
              },
              {
                "$ref": "#/components/schemas/ProgressionProgramBlock"
              },
              {
                "$ref": "#/components/schemas/RollingOfferBlock"
              },
              {
                "$ref": "#/components/schemas/CarouselNewsBlock"
              },
              {
                "$ref": "#/components/schemas/PiggyBankOfferBlock"
              },
              {
                "$ref": "#/components/schemas/PlaceBlock"
              },
              {
                "$ref": "#/components/schemas/PickOneOfferBlock"
              },
              {
                "$ref": "#/components/schemas/UserProfileBlock"
              },
              {
                "$ref": "#/components/schemas/StoreBlock"
              }
            ],
            "title": "Page Block"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "page_block"
        ],
        "title": "AddPageBlockNode"
      },
      "AddStoreNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "AddStoreNode",
            "enum": [
              "AddStoreNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "store_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Store Id"
          },
          "do_not_merge_items": {
            "title": "Do Not Merge Items",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "store_id"
        ],
        "title": "AddStoreNode"
      },
      "AddToSegmentNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "AddToSegmentNode",
            "enum": [
              "AddToSegmentNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "segment_id": {
            "title": "Segment Id",
            "type": "string",
            "maxLength": 32
          },
          "segment_slug": {
            "title": "Segment Slug",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "AddToSegmentNode"
      },
      "AddUserAchievementNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "AddUserAchievementNode",
            "enum": [
              "AddUserAchievementNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "achievement_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Achievement Id"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "achievement_id"
        ],
        "title": "AddUserAchievementNode"
      },
      "AttrType": {
        "type": "string",
        "enum": [
          "number",
          "date",
          "string",
          "boolean",
          "list"
        ],
        "title": "AttrType"
      },
      "AttributeScope": {
        "type": "string",
        "enum": [
          "public",
          "private"
        ],
        "title": "AttributeScope"
      },
      "AttributeValueType": {
        "type": "string",
        "enum": [
          "custom_attribute",
          "event_attribute",
          "constant",
          "variable"
        ],
        "title": "AttributeValueType"
      },
      "AuthenticateRequest": {
        "properties": {
          "token": {
            "type": "string",
            "title": "Token",
            "description": "The token to authenticate the user."
          }
        },
        "type": "object",
        "required": [
          "token"
        ],
        "title": "AuthenticateRequest"
      },
      "AvailabilityCalendar": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/AvailabilityCalendarType",
            "default": "periods"
          },
          "periods": {
            "title": "Periods",
            "items": {
              "$ref": "#/components/schemas/AvailabilityPeriod"
            },
            "type": "array",
            "maxItems": 100
          },
          "recurrence": {
            "$ref": "#/components/schemas/AvailabilityRecurrence"
          }
        },
        "type": "object",
        "title": "AvailabilityCalendar"
      },
      "AvailabilityCalendarType": {
        "type": "string",
        "enum": [
          "periods",
          "recurrence"
        ],
        "title": "AvailabilityCalendarType"
      },
      "AvailabilityPeriod": {
        "properties": {
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "AvailabilityPeriod"
      },
      "AvailabilityRecurrence": {
        "properties": {
          "start_at": {
            "title": "Start At",
            "description": "Timestamp the recurrence starts repeating from",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "Timestamp the recurrence stops repeating at",
            "type": "integer"
          },
          "frequency": {
            "$ref": "#/components/schemas/RecurrenceFrequency",
            "default": "weekly"
          },
          "interval": {
            "type": "integer",
            "maximum": 52.0,
            "minimum": 1.0,
            "title": "Interval",
            "description": "Repeat every N frequency units, counted from start_at",
            "default": 1
          },
          "weekdays": {
            "title": "Weekdays",
            "description": "Days of week the window occurs on; any day when omitted",
            "items": {
              "$ref": "#/components/schemas/Weekday"
            },
            "type": "array",
            "maxItems": 7,
            "minItems": 1
          },
          "start_time": {
            "type": "string",
            "format": "time",
            "title": "Start Time",
            "description": "UTC time the window opens at",
            "default": "00:00:00"
          },
          "end_time": {
            "type": "string",
            "format": "time",
            "title": "End Time",
            "description": "UTC time the window closes at; when not after start_time the window crosses midnight",
            "default": "00:00:00"
          }
        },
        "type": "object",
        "title": "AvailabilityRecurrence",
        "description": "Recurring availability window, e.g. every Mon/Tue/Wed from 15:00 to 16:00."
      },
      "BackgroundSize": {
        "type": "string",
        "enum": [
          "contain",
          "repeat",
          "cover"
        ],
        "title": "BackgroundSize"
      },
      "BanUserNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "BanUserNode",
            "enum": [
              "BanUserNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "reason": {
            "title": "Reason",
            "description": "Ban reason stored on the player.",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "BanUserNode",
        "description": "Bans the player, which declines the payment too."
      },
      "BannerBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "BannerBlock",
            "enum": [
              "BannerBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "background_image_size": {
            "title": "Background Image Size",
            "type": "string"
          }
        },
        "type": "object",
        "title": "BannerBlock"
      },
      "BaseItemPrices": {
        "properties": {
          "default": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/VirtualCurrencyPrice"
              },
              {
                "$ref": "#/components/schemas/RewardPointsPrice"
              },
              {
                "$ref": "#/components/schemas/FiatPrice"
              }
            ],
            "title": "Default",
            "discriminator": {
              "propertyName": "type",
              "mapping": {
                "fiat": "#/components/schemas/FiatPrice",
                "reward_points": "#/components/schemas/RewardPointsPrice",
                "virtual_currency": "#/components/schemas/VirtualCurrencyPrice"
              }
            }
          },
          "available": {
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/VirtualCurrencyPrice"
                },
                {
                  "$ref": "#/components/schemas/RewardPointsPrice"
                },
                {
                  "$ref": "#/components/schemas/FiatPrice"
                }
              ],
              "discriminator": {
                "propertyName": "type",
                "mapping": {
                  "fiat": "#/components/schemas/FiatPrice",
                  "reward_points": "#/components/schemas/RewardPointsPrice",
                  "virtual_currency": "#/components/schemas/VirtualCurrencyPrice"
                }
              }
            },
            "type": "array",
            "title": "Available"
          }
        },
        "type": "object",
        "required": [
          "default",
          "available"
        ],
        "title": "BaseItemPrices"
      },
      "BatchBanUserNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "BatchBanUserNode",
            "enum": [
              "BatchBanUserNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "ban_by_custom_attribute": {
            "type": "string",
            "title": "Ban By Custom Attribute",
            "description": "Custom attribute whose value identifies the players to ban together, e.g. a device or card id; nothing happens when the current player has no such attribute."
          },
          "reason": {
            "title": "Reason",
            "description": "Ban reason stored on every banned player.",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "ban_by_custom_attribute"
        ],
        "title": "BatchBanUserNode",
        "description": "Bans every player of the game sharing the current player's attribute value."
      },
      "BillingAddressCollection": {
        "type": "string",
        "enum": [
          "full",
          "zip_only",
          "none"
        ],
        "title": "BillingAddressCollection",
        "description": "How much of the billing address the checkout page asks for.\n\n- `full`: the complete address\n- `zip_only`: postal code only\n- `none`: do not ask for a billing address"
      },
      "BrowserPopupNotificationActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "BrowserPopupNotificationActionNode",
            "enum": [
              "BrowserPopupNotificationActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "body": {
            "title": "Body",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "content_type": {
            "$ref": "#/components/schemas/HubPopupContentType"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "button_link": {
            "title": "Button Link",
            "type": "string"
          },
          "items": {
            "title": "Items",
            "items": {
              "$ref": "#/components/schemas/CommunicationItem"
            },
            "type": "array"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string"
          },
          "suspend_while_not_read": {
            "title": "Suspend While Not Read",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "BrowserPopupNotificationActionNode"
      },
      "BrowserPushNotificationActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "BrowserPushNotificationActionNode",
            "enum": [
              "BrowserPushNotificationActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "body": {
            "title": "Body",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "content_type": {
            "$ref": "#/components/schemas/HubPopupContentType"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "button_link": {
            "title": "Button Link",
            "type": "string"
          },
          "items": {
            "title": "Items",
            "items": {
              "$ref": "#/components/schemas/CommunicationItem"
            },
            "type": "array"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "BrowserPushNotificationActionNode"
      },
      "BulkCampaignUpdate": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "position": {
            "type": "integer",
            "title": "Position"
          }
        },
        "type": "object",
        "required": [
          "id",
          "position"
        ],
        "title": "BulkCampaignUpdate"
      },
      "CTAButtonTextSettings": {
        "properties": {
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "CTAButtonTextSettings",
            "enum": [
              "CTAButtonTextSettings"
            ]
          },
          "text": {
            "$ref": "#/components/schemas/CTAButtonTextType"
          }
        },
        "type": "object",
        "required": [
          "text"
        ],
        "title": "CTAButtonTextSettings"
      },
      "CTAButtonTextType": {
        "type": "string",
        "enum": [
          "activate",
          "subscribe",
          "start_now",
          "select_plan"
        ],
        "title": "CTAButtonTextType"
      },
      "CTAButtonType": {
        "type": "string",
        "enum": [
          "text",
          "price",
          "trial"
        ],
        "title": "CTAButtonType"
      },
      "CTASupportedText": {
        "type": "string",
        "enum": [
          "default",
          "price_and_trial",
          "promotion"
        ],
        "title": "CTASupportedText"
      },
      "Campaign": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled"
          },
          "type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/CampaignEventType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Type"
          },
          "time_limit": {
            "type": "boolean",
            "title": "Time Limit",
            "default": false
          },
          "start_at": {
            "title": "Start At",
            "type": "number"
          },
          "end_at": {
            "title": "End At",
            "type": "number"
          },
          "archived_at": {
            "title": "Archived At",
            "type": "number"
          },
          "attributes": {
            "$ref": "#/components/schemas/PersistentCampaignAttributes"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "allowed_popups_on_store": {
            "title": "Allowed Popups On Store",
            "type": "boolean"
          },
          "is_sync": {
            "title": "Is Sync",
            "type": "boolean"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "version": {
            "title": "Version",
            "type": "string"
          },
          "created_by_customer_id": {
            "title": "Created By Customer Id",
            "type": "string",
            "maxLength": 32
          },
          "created_from_id": {
            "title": "Created From Id",
            "type": "string",
            "maxLength": 32
          },
          "version_description": {
            "type": "string",
            "title": "Version Description"
          },
          "modified_at": {
            "title": "Modified At",
            "type": "integer"
          },
          "created_at": {
            "type": "integer",
            "title": "Created At"
          }
        },
        "type": "object",
        "required": [
          "name",
          "enabled",
          "type",
          "id",
          "version_description",
          "created_at"
        ],
        "title": "Campaign"
      },
      "CampaignCreate": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled"
          },
          "type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/CampaignEventType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Type"
          },
          "time_limit": {
            "type": "boolean",
            "title": "Time Limit",
            "default": false
          },
          "start_at": {
            "title": "Start At",
            "type": "number"
          },
          "end_at": {
            "title": "End At",
            "type": "number"
          },
          "archived_at": {
            "title": "Archived At",
            "type": "number"
          },
          "attributes": {
            "$ref": "#/components/schemas/PersistentCampaignAttributes"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "allowed_popups_on_store": {
            "title": "Allowed Popups On Store",
            "type": "boolean"
          },
          "is_sync": {
            "title": "Is Sync",
            "type": "boolean"
          },
          "graph": {
            "$ref": "#/components/schemas/GraphRoot"
          },
          "version_description": {
            "type": "string",
            "title": "Version Description",
            "default": "Initial version"
          }
        },
        "type": "object",
        "required": [
          "name",
          "enabled",
          "type"
        ],
        "title": "CampaignCreate"
      },
      "CampaignEventType": {
        "type": "string",
        "enum": [
          "game_hub_visit",
          "game_hub_visit_store",
          "game_hub_first_login",
          "game_hub_login",
          "add_segment",
          "coupon_redeemed",
          "registered_in_game",
          "game_login",
          "purchased_in_game",
          "purchased_in_web",
          "abandoned_cart",
          "level_up",
          "custom_event",
          "free_item_claimed",
          "daily_reward_claimed",
          "loyalty_reward_claimed",
          "progression_reward_claimed",
          "payment_insufficient_funds",
          "subscription_status_updated",
          "subscription_schedule",
          "pwa_installed",
          "pwa_deinstalled",
          "pwa_open"
        ],
        "title": "CampaignEventType"
      },
      "CampaignUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/CampaignEventType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Type"
          },
          "graph": {
            "$ref": "#/components/schemas/GraphRoot"
          },
          "start_at": {
            "title": "Start At",
            "type": "number"
          },
          "end_at": {
            "title": "End At",
            "type": "number"
          },
          "time_limit": {
            "title": "Time Limit",
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "type": "number"
          },
          "attributes": {
            "$ref": "#/components/schemas/PersistentCampaignAttributes"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "version_description": {
            "title": "Version Description",
            "type": "string"
          },
          "allowed_popups_on_store": {
            "title": "Allowed Popups On Store",
            "type": "boolean"
          },
          "is_sync": {
            "title": "Is Sync",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "CampaignUpdate"
      },
      "CarouselBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "CarouselBlock",
            "enum": [
              "CarouselBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "type": {
            "$ref": "#/components/schemas/CarouselBlockType"
          },
          "delay": {
            "title": "Delay",
            "type": "integer"
          },
          "loop": {
            "title": "Loop",
            "type": "boolean"
          },
          "autoplay": {
            "title": "Autoplay",
            "type": "boolean"
          },
          "show_dots": {
            "title": "Show Dots",
            "type": "boolean"
          },
          "category_template_id": {
            "title": "Category Template Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "required": [
          "type"
        ],
        "title": "CarouselBlock"
      },
      "CarouselBlockType": {
        "type": "string",
        "enum": [
          "offers"
        ],
        "title": "CarouselBlockType"
      },
      "CarouselDisplayType": {
        "type": "string",
        "enum": [
          "default",
          "compact",
          "alone"
        ],
        "title": "CarouselDisplayType"
      },
      "CarouselNewsBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "CarouselNewsBlock",
            "enum": [
              "CarouselNewsBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "delay": {
            "title": "Delay",
            "type": "integer"
          },
          "loop": {
            "title": "Loop",
            "type": "boolean"
          },
          "autoplay": {
            "title": "Autoplay",
            "type": "boolean"
          },
          "show_dots": {
            "title": "Show Dots",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "CarouselNewsBlock"
      },
      "CommunicationItem": {
        "properties": {
          "item_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Item Id"
          },
          "store_item_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Store Item Id"
          }
        },
        "type": "object",
        "required": [
          "item_id",
          "store_item_id"
        ],
        "title": "CommunicationItem"
      },
      "ConditionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "ConditionNode",
            "enum": [
              "ConditionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "expression": {
            "title": "Expression",
            "type": "string"
          },
          "expr": {
            "$ref": "#/components/schemas/Expression"
          },
          "true_node_id": {
            "title": "True Node Id",
            "type": "string"
          },
          "false_node_id": {
            "title": "False Node Id",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "expr"
        ],
        "title": "ConditionNode"
      },
      "Country": {
        "type": "string",
        "enum": [
          "VA",
          "MM",
          "PE",
          "DK",
          "PY",
          "SV",
          "US",
          "SI",
          "SG",
          "CZ",
          "KE",
          "JP",
          "KR",
          "NZ",
          "KZ",
          "AE",
          "IQ",
          "AU",
          "CL",
          "QA",
          "NL",
          "IN",
          "GE",
          "EE",
          "BM",
          "AT",
          "VN",
          "LI",
          "KW",
          "TC",
          "BR",
          "PL",
          "MY",
          "HK",
          "MC",
          "VG",
          "GI",
          "SE",
          "EG",
          "GH",
          "CH",
          "LK",
          "SA",
          "SM",
          "PK",
          "DE",
          "TW",
          "LU",
          "BO",
          "FM",
          "CA",
          "SK",
          "LT",
          "FR",
          "KY",
          "LV",
          "CY",
          "MX",
          "RO",
          "TZ",
          "HU",
          "PH",
          "MO",
          "FI",
          "RS",
          "EC",
          "IE",
          "ID",
          "OM",
          "BD",
          "PA",
          "UA",
          "ZA",
          "ES",
          "PT",
          "NO",
          "NG",
          "TH",
          "IL",
          "GB",
          "JO",
          "IT",
          "BG",
          "TR",
          "BH",
          "CR",
          "MA",
          "HR",
          "GR",
          "KH",
          "CO",
          "BE",
          "DZ",
          "CN",
          "AD",
          "AL",
          "BA",
          "IS",
          "MD",
          "ME",
          "MK",
          "MT",
          "RU",
          "AR"
        ],
        "title": "Country"
      },
      "Coupon": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique ID of the coupon."
          },
          "code": {
            "type": "string",
            "title": "Code",
            "description": "The coupon code."
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the coupon."
          },
          "type": {
            "$ref": "#/components/schemas/CouponType",
            "description": "The type of the coupon."
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "Discount percent for `discount` coupons.",
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "Bonus percent for `bonus` coupons.",
            "type": "integer"
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "Fixed bonus quantity for `bonus` coupons.",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "id",
          "code",
          "name",
          "type"
        ],
        "title": "Coupon"
      },
      "CouponBulkUpdate": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "category_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Category Id",
            "description": "The coupon category ID"
          }
        },
        "type": "object",
        "required": [
          "id",
          "category_id"
        ],
        "title": "CouponBulkUpdate"
      },
      "CouponCreate": {
        "properties": {
          "free_items": {
            "description": "Items granted when the coupon is redeemed",
            "$ref": "#/components/schemas/CouponFreeItems"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the coupon",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the coupon",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The fixed bonus amount for the coupon",
            "nullable": true,
            "type": "integer",
            "minimum": 1.0
          },
          "discount_amount_usd": {
            "title": "Discount Amount USD",
            "description": "The discount amount in USD for the coupon",
            "type": "integer",
            "minimum": 0.0
          },
          "requirements_expression": {
            "description": "The requirement expression for the coupon",
            "$ref": "#/components/schemas/Expression"
          },
          "expires_at": {
            "title": "Expires At",
            "description": "The expiration date of the coupon",
            "type": "integer"
          },
          "applicable_item_ids": {
            "title": "Applicable Item Ids",
            "description": "The applicable item IDs",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_id": {
            "title": "Category Id",
            "description": "The coupon category ID",
            "type": "string",
            "maxLength": 32
          },
          "min_amount": {
            "title": "Min Amount",
            "description": "Require a minimum order amount to apply the coupon",
            "type": "integer"
          },
          "max_redemptions": {
            "title": "Max Redemptions",
            "description": "Limit the number of times this code can be redeemed",
            "type": "integer"
          },
          "max_redemptions_per_user": {
            "title": "Max Redemptions Per User",
            "description": "Limit the number of times a user can redeem the coupon",
            "type": "integer"
          },
          "is_stackable_with_bonus_coupons": {
            "title": "Is Stackable With Bonus Coupons",
            "description": "Allow stacking with bonus coupons",
            "type": "boolean"
          },
          "stackable_bonus_limit_percent": {
            "title": "Stackable Bonus Limit Percent",
            "description": "Limit the bonus percent when stacking with bonus coupons",
            "type": "integer"
          },
          "is_stackable_with_discount_coupons": {
            "title": "Is Stackable With Discount Coupons",
            "description": "Allow stacking with discount coupons",
            "type": "boolean"
          },
          "stackable_discount_limit_percent": {
            "title": "Stackable Discount Limit Percent",
            "description": "Limit the discount percent when stacking with discount coupons",
            "type": "integer"
          },
          "store_item_discount_limit_percent": {
            "title": "Store Item Discount Limit Percent",
            "description": "Limit the combined store item and coupon discount percent",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "store_item_bonus_limit_percent": {
            "title": "Store Item Bonus Limit Percent",
            "description": "Limit the combined store item and coupon bonus percent",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "start_at": {
            "title": "Start At",
            "description": "The timestamp when the coupon becomes valid",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The timestamp when the coupon ceases to be valid",
            "type": "integer"
          },
          "player_ids": {
            "title": "Player Ids",
            "description": "The player IDs that can redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "exclude_player_ids": {
            "title": "Exclude Player Ids",
            "description": "The player IDs that cannot redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the coupon"
          },
          "code": {
            "type": "string",
            "maxLength": 20,
            "title": "Code",
            "description": "The code of the coupon"
          },
          "type": {
            "$ref": "#/components/schemas/CouponType",
            "description": "The type of the coupon"
          },
          "creator_program": {
            "description": "The creator program for the coupon",
            "$ref": "#/components/schemas/CreatorProgramBase"
          }
        },
        "type": "object",
        "required": [
          "name",
          "code",
          "type"
        ],
        "title": "CouponCreate"
      },
      "CouponFreeItem": {
        "properties": {
          "item_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Item Id",
            "description": "The item ID to grant when the coupon is redeemed"
          },
          "quantity": {
            "type": "integer",
            "minimum": 1.0,
            "title": "Quantity",
            "description": "Quantity granted when the coupon is redeemed"
          }
        },
        "type": "object",
        "required": [
          "item_id",
          "quantity"
        ],
        "title": "CouponFreeItem"
      },
      "CouponFreeItems": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/CouponFreeItem"
            },
            "type": "array",
            "maxItems": 100,
            "title": "Items",
            "description": "Items granted when the coupon is redeemed"
          }
        },
        "type": "object",
        "title": "CouponFreeItems",
        "description": "API wrapper for the `free_items` JSONB column, mirroring the storage shape."
      },
      "CouponGeneratedType": {
        "type": "string",
        "enum": [
          "campaign",
          "receipt"
        ],
        "title": "CouponGeneratedType",
        "description": "An enumeration."
      },
      "CouponPlayerBondType": {
        "type": "string",
        "enum": [
          "all_users",
          "current_user",
          "except_current_user"
        ],
        "title": "CouponPlayerBondType"
      },
      "CouponRead": {
        "properties": {
          "free_items": {
            "description": "Items granted when the coupon is redeemed",
            "$ref": "#/components/schemas/CouponFreeItems"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the coupon",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the coupon",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The fixed bonus amount for the coupon",
            "nullable": true,
            "type": "integer",
            "minimum": 1.0
          },
          "discount_amount_usd": {
            "title": "Discount Amount USD",
            "description": "The discount amount in USD for the coupon",
            "type": "integer",
            "minimum": 0.0
          },
          "requirements_expression": {
            "description": "The requirement expression for the coupon",
            "$ref": "#/components/schemas/Expression"
          },
          "expires_at": {
            "title": "Expires At",
            "description": "The expiration date of the coupon",
            "type": "integer"
          },
          "applicable_item_ids": {
            "title": "Applicable Item Ids",
            "description": "The applicable item IDs",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_id": {
            "title": "Category Id",
            "description": "The coupon category ID",
            "type": "string",
            "maxLength": 32
          },
          "min_amount": {
            "title": "Min Amount",
            "description": "Require a minimum order amount to apply the coupon",
            "type": "integer"
          },
          "max_redemptions": {
            "title": "Max Redemptions",
            "description": "Limit the number of times this code can be redeemed",
            "type": "integer"
          },
          "max_redemptions_per_user": {
            "title": "Max Redemptions Per User",
            "description": "Limit the number of times a user can redeem the coupon",
            "type": "integer"
          },
          "is_stackable_with_bonus_coupons": {
            "title": "Is Stackable With Bonus Coupons",
            "description": "Allow stacking with bonus coupons",
            "type": "boolean"
          },
          "stackable_bonus_limit_percent": {
            "title": "Stackable Bonus Limit Percent",
            "description": "Limit the bonus percent when stacking with bonus coupons",
            "type": "integer"
          },
          "is_stackable_with_discount_coupons": {
            "title": "Is Stackable With Discount Coupons",
            "description": "Allow stacking with discount coupons",
            "type": "boolean"
          },
          "stackable_discount_limit_percent": {
            "title": "Stackable Discount Limit Percent",
            "description": "Limit the discount percent when stacking with discount coupons",
            "type": "integer"
          },
          "store_item_discount_limit_percent": {
            "title": "Store Item Discount Limit Percent",
            "description": "Limit the combined store item and coupon discount percent",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "store_item_bonus_limit_percent": {
            "title": "Store Item Bonus Limit Percent",
            "description": "Limit the combined store item and coupon bonus percent",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "start_at": {
            "title": "Start At",
            "description": "The timestamp when the coupon becomes valid",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The timestamp when the coupon ceases to be valid",
            "type": "integer"
          },
          "player_ids": {
            "title": "Player Ids",
            "description": "The player IDs that can redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "exclude_player_ids": {
            "title": "Exclude Player Ids",
            "description": "The player IDs that cannot redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the coupon"
          },
          "code": {
            "type": "string",
            "maxLength": 20,
            "title": "Code",
            "description": "The code of the coupon"
          },
          "type": {
            "$ref": "#/components/schemas/CouponType",
            "description": "The type of the coupon"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the coupon"
          },
          "creator_program": {
            "description": "The creator program for the coupon",
            "$ref": "#/components/schemas/CreatorProgramBase"
          },
          "current_balance_usd": {
            "title": "Current Balance USD",
            "description": "The current balance in USD for fixed discount coupon type",
            "type": "integer"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/ItemRead"
            },
            "type": "array",
            "title": "Items",
            "description": "All items granted by the coupon, in the same order as `free_items.items`."
          }
        },
        "type": "object",
        "required": [
          "name",
          "code",
          "type",
          "id"
        ],
        "title": "CouponRead"
      },
      "CouponType": {
        "type": "string",
        "enum": [
          "bonus",
          "discount",
          "free_item",
          "vc",
          "non_benefit",
          "discount_fixed",
          "discount_reward_point"
        ],
        "title": "CouponType"
      },
      "CouponUpdate": {
        "properties": {
          "free_items": {
            "description": "Items granted when the coupon is redeemed",
            "$ref": "#/components/schemas/CouponFreeItems"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the coupon",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the coupon",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The fixed bonus amount for the coupon",
            "nullable": true,
            "type": "integer",
            "minimum": 1.0
          },
          "discount_amount_usd": {
            "title": "Discount Amount USD",
            "description": "The discount amount in USD for the coupon",
            "type": "integer",
            "minimum": 0.0
          },
          "requirements_expression": {
            "description": "The requirement expression for the coupon",
            "$ref": "#/components/schemas/Expression"
          },
          "expires_at": {
            "title": "Expires At",
            "description": "The expiration date of the coupon",
            "type": "integer"
          },
          "applicable_item_ids": {
            "title": "Applicable Item Ids",
            "description": "The applicable item IDs",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_id": {
            "title": "Category Id",
            "description": "The coupon category ID",
            "type": "string",
            "maxLength": 32
          },
          "min_amount": {
            "title": "Min Amount",
            "description": "Require a minimum order amount to apply the coupon",
            "type": "integer"
          },
          "max_redemptions": {
            "title": "Max Redemptions",
            "description": "Limit the number of times this code can be redeemed",
            "type": "integer"
          },
          "max_redemptions_per_user": {
            "title": "Max Redemptions Per User",
            "description": "Limit the number of times a user can redeem the coupon",
            "type": "integer"
          },
          "is_stackable_with_bonus_coupons": {
            "title": "Is Stackable With Bonus Coupons",
            "description": "Allow stacking with bonus coupons",
            "type": "boolean"
          },
          "stackable_bonus_limit_percent": {
            "title": "Stackable Bonus Limit Percent",
            "description": "Limit the bonus percent when stacking with bonus coupons",
            "type": "integer"
          },
          "is_stackable_with_discount_coupons": {
            "title": "Is Stackable With Discount Coupons",
            "description": "Allow stacking with discount coupons",
            "type": "boolean"
          },
          "stackable_discount_limit_percent": {
            "title": "Stackable Discount Limit Percent",
            "description": "Limit the discount percent when stacking with discount coupons",
            "type": "integer"
          },
          "store_item_discount_limit_percent": {
            "title": "Store Item Discount Limit Percent",
            "description": "Limit the combined store item and coupon discount percent",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "store_item_bonus_limit_percent": {
            "title": "Store Item Bonus Limit Percent",
            "description": "Limit the combined store item and coupon bonus percent",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "start_at": {
            "title": "Start At",
            "description": "The timestamp when the coupon becomes valid",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The timestamp when the coupon ceases to be valid",
            "type": "integer"
          },
          "player_ids": {
            "title": "Player Ids",
            "description": "The player IDs that can redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "exclude_player_ids": {
            "title": "Exclude Player Ids",
            "description": "The player IDs that cannot redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "title": "Name",
            "description": "The name of the coupon",
            "type": "string",
            "maxLength": 255
          },
          "creator_program": {
            "description": "The creator program for the coupon",
            "$ref": "#/components/schemas/CreatorProgramUpdate"
          }
        },
        "type": "object",
        "title": "CouponUpdate"
      },
      "CreateCouponNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "CreateCouponNode",
            "enum": [
              "CreateCouponNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "duration": {
            "title": "Duration",
            "type": "integer"
          },
          "type": {
            "$ref": "#/components/schemas/CouponType"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "quantity": {
            "title": "Quantity",
            "type": "integer"
          },
          "use_event_item": {
            "type": "boolean",
            "title": "Use Event Item",
            "default": false
          },
          "discount_percent": {
            "title": "Discount Percent",
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "type": "integer"
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "type": "integer"
          },
          "discount_amount_usd": {
            "title": "Discount Amount USD",
            "description": "The discount amount in USD for the coupon",
            "type": "integer"
          },
          "min_amount": {
            "title": "Min Amount",
            "type": "integer"
          },
          "stackable_bonus_limit": {
            "title": "Stackable Bonus Limit",
            "type": "integer"
          },
          "stackable_discount_limit": {
            "title": "Stackable Discount Limit",
            "type": "integer"
          },
          "code_mask": {
            "title": "Code Mask",
            "type": "string"
          },
          "player_bond": {
            "title": "Player Bond",
            "type": "boolean"
          },
          "player_bond_type": {
            "$ref": "#/components/schemas/CouponPlayerBondType"
          },
          "applicable_item_ids": {
            "title": "Applicable Item Ids",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "payment_method_ids": {
            "title": "Payment Method Ids",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "max_redemptions": {
            "title": "Max Redemptions",
            "type": "integer"
          },
          "is_stackable_with_bonus_coupons": {
            "title": "Is Stackable With Bonus Coupons",
            "type": "boolean"
          },
          "stackable_bonus_limit_percent": {
            "title": "Stackable Bonus Limit Percent",
            "type": "integer"
          },
          "is_stackable_with_discount_coupons": {
            "title": "Is Stackable With Discount Coupons",
            "type": "boolean"
          },
          "stackable_discount_limit_percent": {
            "title": "Stackable Discount Limit Percent",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "type"
        ],
        "title": "CreateCouponNode"
      },
      "CreateItemBannerActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "CreateItemBannerActionNode",
            "enum": [
              "CreateItemBannerActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "page_id": {
            "title": "Page Id",
            "type": "string",
            "maxLength": 32
          },
          "page_slug": {
            "title": "Page Slug",
            "type": "string"
          },
          "config": {
            "$ref": "#/components/schemas/TranslatableFeaturedBannerConfig"
          },
          "duration": {
            "title": "Duration",
            "type": "integer"
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "use_event_item": {
            "type": "boolean",
            "title": "Use Event Item",
            "default": false
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "config"
        ],
        "title": "CreateItemBannerActionNode"
      },
      "CreateUserStoreSettingsNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "CreateUserStoreSettingsNode",
            "enum": [
              "CreateUserStoreSettingsNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "store_ids": {
            "title": "Store Ids",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "item_ids": {
            "title": "Item Ids",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_ids": {
            "title": "Category Ids",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "duration": {
            "type": "integer",
            "title": "Duration"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "type": "number"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "type": "number"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "type": "number"
          },
          "max_purchase_count": {
            "title": "Max Purchase Count",
            "type": "integer"
          },
          "exclude_items_for_reward_points": {
            "title": "Exclude Items For Reward Points",
            "type": "boolean"
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "type": "integer"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "type": "integer"
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "type": "string",
            "maxLength": 32
          },
          "bonus_items_settings": {
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "reward_settings": {
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "attr_name_for_duration_value": {
            "title": "Attr Name For Duration Value",
            "nullable": true,
            "type": "string"
          },
          "item_background_image_url": {
            "title": "Item Background Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "item_featured_card_background_image_url": {
            "title": "Item Featured Card Background Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "type": "string"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "duration"
        ],
        "title": "CreateUserStoreSettingsNode"
      },
      "CreateVirtualSKUNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "CreateVirtualSKUNode",
            "enum": [
              "CreateVirtualSKUNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "use_event_item": {
            "title": "Use Event Item",
            "default": false,
            "type": "boolean"
          },
          "start_at": {
            "title": "Start At",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "nullable": true,
            "type": "integer"
          },
          "duration": {
            "title": "Duration",
            "nullable": true,
            "type": "integer"
          },
          "max_purchases": {
            "title": "Max Purchases",
            "nullable": true,
            "type": "integer"
          },
          "min_amount": {
            "title": "Min Amount",
            "nullable": true,
            "type": "integer"
          },
          "max_reward_points_percent": {
            "title": "Max Reward Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "nullable": true,
            "type": "number"
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "nullable": true,
            "type": "integer"
          },
          "payment_method_ids": {
            "title": "Payment Method Ids",
            "nullable": true,
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "nullable": true,
            "type": "integer"
          },
          "is_free_item": {
            "title": "Is Free Item",
            "nullable": true,
            "type": "boolean"
          },
          "max_purchases_period_type": {
            "nullable": true,
            "$ref": "#/components/schemas/PeriodType"
          },
          "max_purchases_period_value": {
            "title": "Max Purchases Period Value",
            "nullable": true,
            "type": "integer"
          },
          "max_purchases_limit_type": {
            "nullable": true,
            "$ref": "#/components/schemas/MaxPurchaseLimitPeriodType"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "nullable": true,
            "type": "string"
          },
          "card_type": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreCardType"
          },
          "show_first_on_category_list": {
            "title": "Show First On Category List",
            "nullable": true,
            "type": "boolean"
          },
          "item_image_url": {
            "title": "Item Image Url",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "item_name": {
            "title": "Item Name",
            "nullable": true,
            "type": "string"
          },
          "item_description": {
            "title": "Item Description",
            "nullable": true,
            "type": "string"
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "nullable": true,
            "type": "integer"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_items_settings": {
            "nullable": true,
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "nullable": true,
            "type": "string"
          },
          "bonus_source": {
            "$ref": "#/components/schemas/VirtualSKUBonusSource"
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "nullable": true,
            "type": "integer"
          },
          "reward_settings": {
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "attr_name_for_duration_value": {
            "title": "Attr Name For Duration Value",
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "CreateVirtualSKUNode"
      },
      "CreatorAnnotation": {
        "properties": {
          "note": {
            "title": "Note",
            "type": "string",
            "maxLength": 2000
          },
          "display_name": {
            "title": "Display Name",
            "type": "string",
            "maxLength": 120
          }
        },
        "type": "object",
        "title": "CreatorAnnotation"
      },
      "CreatorAttributionMode": {
        "type": "string",
        "enum": [
          "persistent",
          "one_time"
        ],
        "title": "CreatorAttributionMode"
      },
      "CreatorCreate": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "email": {
            "type": "string",
            "title": "Email"
          },
          "avatar_url": {
            "title": "Avatar Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "extra_terms_url": {
            "title": "Extra Terms Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "extra_terms_text": {
            "title": "Extra Terms Text",
            "type": "string"
          },
          "social_medias": {
            "items": {
              "$ref": "#/components/schemas/CreatorSocial"
            },
            "type": "array",
            "title": "Social Medias"
          },
          "creator_tier_group_id": {
            "title": "Creator Tier Group Id",
            "description": "Tier group to assign the creator to on creation, if any.",
            "type": "string",
            "maxLength": 32
          },
          "coupon_code": {
            "title": "Coupon Code",
            "description": "Override for the auto-generated promo code. If omitted, the code is derived from the creator's name.",
            "type": "string",
            "maxLength": 20
          },
          "create_default_coupon": {
            "type": "boolean",
            "title": "Create Default Coupon",
            "description": "Whether to create the default creator promo coupon.",
            "default": true
          }
        },
        "type": "object",
        "required": [
          "name",
          "email"
        ],
        "title": "CreatorCreate"
      },
      "CreatorEarningsCap": {
        "properties": {
          "limit_usd_cents": {
            "type": "integer",
            "minimum": 0.0,
            "title": "Limit USD Cents",
            "description": "Maximum reward the creator may earn within one period, in USD cents."
          },
          "period": {
            "$ref": "#/components/schemas/CreatorEarningsCapPeriod",
            "description": "Period the limit is measured over; it resets at the period start (UTC)."
          }
        },
        "type": "object",
        "required": [
          "limit_usd_cents",
          "period"
        ],
        "title": "CreatorEarningsCap"
      },
      "CreatorEarningsCapPeriod": {
        "type": "string",
        "enum": [
          "week",
          "month"
        ],
        "title": "CreatorEarningsCapPeriod",
        "description": "The subset of `PeriodType` an earnings cap can be measured over."
      },
      "CreatorProgramBase": {
        "properties": {
          "creator_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Creator Id",
            "description": "The creator ID"
          },
          "reward": {
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0,
            "title": "Reward",
            "description": "The reward for the coupon"
          },
          "verbal_terms": {
            "type": "string",
            "title": "Verbal Terms",
            "description": "The verbal terms for the creator program"
          },
          "message": {
            "type": "string",
            "title": "Message",
            "description": "The message for the creator program"
          },
          "inherits_from_tier": {
            "type": "boolean",
            "title": "Inherits From Tier",
            "description": "When true, revenue share is taken from the creator's current tier instead of `reward`.",
            "default": false
          }
        },
        "type": "object",
        "required": [
          "creator_id",
          "reward",
          "verbal_terms",
          "message"
        ],
        "title": "CreatorProgramBase"
      },
      "CreatorProgramUpdate": {
        "properties": {
          "verbal_terms": {
            "title": "Verbal Terms",
            "description": "The verbal terms for the creator program",
            "type": "string"
          },
          "message": {
            "title": "Message",
            "description": "The message for the creator program",
            "type": "string"
          },
          "reward": {
            "title": "Reward",
            "description": "The reward for the coupon",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "inherits_from_tier": {
            "title": "Inherits From Tier",
            "description": "When true, revenue share is taken from the creator's current tier instead of `reward`.",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "CreatorProgramUpdate"
      },
      "CreatorRead": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "email": {
            "type": "string",
            "title": "Email"
          },
          "avatar_url": {
            "title": "Avatar Url",
            "type": "string"
          },
          "extra_terms_url": {
            "title": "Extra Terms Url",
            "type": "string"
          },
          "extra_terms_text": {
            "title": "Extra Terms Text",
            "type": "string"
          },
          "social_medias": {
            "items": {
              "$ref": "#/components/schemas/CreatorSocial"
            },
            "type": "array",
            "title": "Social Medias"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "coupon_count": {
            "type": "integer",
            "title": "Coupon Count",
            "default": 0
          },
          "revenue": {
            "type": "integer",
            "title": "Revenue",
            "default": 0
          },
          "balance": {
            "type": "integer",
            "title": "Balance",
            "default": 0
          },
          "terms": {
            "$ref": "#/components/schemas/CreatorTermsRead"
          },
          "creator_tier_group_id": {
            "title": "Creator Tier Group Id",
            "description": "Identifier of the tier group the creator is assigned to, if any.",
            "type": "string",
            "maxLength": 32
          },
          "current_creator_tier_id": {
            "title": "Current Creator Tier Id",
            "description": "Identifier of the tier the creator currently qualifies for based on lifetime gross revenue.",
            "type": "string",
            "maxLength": 32
          },
          "revenue_share_override_enabled": {
            "type": "boolean",
            "title": "Revenue Share Override Enabled",
            "description": "When true, revenue_share_override_bps takes precedence over the tier's revenue_share_bps.",
            "default": false
          },
          "revenue_share_override_bps": {
            "type": "integer",
            "title": "Revenue Share Override Bps",
            "description": "Per-creator revenue share override in basis points (0-10000).",
            "default": 0
          },
          "lifetime_gross_usd_cents": {
            "type": "integer",
            "title": "Lifetime Gross USD Cents",
            "description": "Cumulative gross revenue attributed to the creator, in USD cents.",
            "default": 0
          },
          "annotation": {
            "$ref": "#/components/schemas/CreatorAnnotation",
            "description": "Operator-only annotation attached to the creator (notes, internal display name)."
          },
          "earnings_cap": {
            "description": "Earnings cap configured for the creator; null means uncapped.",
            "$ref": "#/components/schemas/CreatorEarningsCap"
          }
        },
        "type": "object",
        "required": [
          "name",
          "email",
          "id"
        ],
        "title": "CreatorRead"
      },
      "CreatorSettings": {
        "properties": {
          "attribution_mode": {
            "$ref": "#/components/schemas/CreatorAttributionMode",
            "title": "Attribution Mode",
            "description": "Controls creator attribution when `coupon_code` belongs to a creator program. `persistent` (default) links the player to the creator so their future purchases also earn revenue share; `one_time` applies revenue share to this order only without linking the player.",
            "default": "persistent"
          }
        },
        "type": "object",
        "title": "CreatorSettings"
      },
      "CreatorSocial": {
        "properties": {
          "url": {
            "type": "string",
            "title": "Url"
          },
          "platform": {
            "$ref": "#/components/schemas/CreatorSocialPlatform",
            "default": "other"
          }
        },
        "type": "object",
        "required": [
          "url"
        ],
        "title": "CreatorSocial"
      },
      "CreatorSocialAccountRead": {
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/CreatorSocialPlatform"
          },
          "handle": {
            "type": "string",
            "title": "Handle"
          },
          "sync_status": {
            "$ref": "#/components/schemas/SyncStatus"
          },
          "synced_at": {
            "title": "Synced At",
            "type": "number"
          },
          "channel": {
            "$ref": "#/components/schemas/SocialChannelRead"
          },
          "content": {
            "items": {
              "$ref": "#/components/schemas/SocialContentItemRead"
            },
            "type": "array",
            "title": "Content"
          },
          "performance": {
            "items": {
              "$ref": "#/components/schemas/SocialPerformanceSnapshotRead"
            },
            "type": "array",
            "title": "Performance"
          }
        },
        "type": "object",
        "required": [
          "platform",
          "handle",
          "sync_status",
          "synced_at",
          "channel",
          "content",
          "performance"
        ],
        "title": "CreatorSocialAccountRead"
      },
      "CreatorSocialPlatform": {
        "type": "string",
        "enum": [
          "tiktok",
          "youtube",
          "instagram",
          "threads",
          "x_twitter",
          "facebook",
          "reddit",
          "twitch",
          "other"
        ],
        "title": "CreatorSocialPlatform"
      },
      "CreatorTermsRead": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "accepted_at": {
            "type": "integer",
            "title": "Accepted At"
          },
          "legal_name": {
            "title": "Legal Name",
            "type": "string"
          },
          "date_of_birth": {
            "title": "Date Of Birth",
            "type": "string",
            "format": "date"
          },
          "country": {
            "title": "Country",
            "type": "string",
            "pattern": "^[A-Z]{2}$"
          },
          "state": {
            "$ref": "#/components/schemas/UnitedStates"
          },
          "age": {
            "title": "Age",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "id",
          "accepted_at"
        ],
        "title": "CreatorTermsRead"
      },
      "CreatorTermsUpdate": {
        "properties": {
          "legal_name": {
            "title": "Legal Name",
            "type": "string",
            "maxLength": 255,
            "minLength": 1
          },
          "date_of_birth": {
            "title": "Date Of Birth",
            "type": "string",
            "format": "date"
          },
          "country": {
            "title": "Country",
            "type": "string",
            "pattern": "^[A-Z]{2}$"
          },
          "state": {
            "$ref": "#/components/schemas/UnitedStates"
          }
        },
        "type": "object",
        "title": "CreatorTermsUpdate",
        "description": "Fields to correct on accepted terms; unset fields keep their current value."
      },
      "CreatorUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          },
          "email": {
            "title": "Email",
            "type": "string"
          },
          "avatar_url": {
            "title": "Avatar Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "extra_terms_url": {
            "title": "Extra Terms Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "extra_terms_text": {
            "title": "Extra Terms Text",
            "type": "string"
          },
          "social_medias": {
            "title": "Social Medias",
            "items": {
              "$ref": "#/components/schemas/CreatorSocial"
            },
            "type": "array"
          },
          "creator_tier_group_id": {
            "title": "Creator Tier Group Id",
            "description": "New tier group to assign the creator to.",
            "type": "string",
            "maxLength": 32
          },
          "revenue_share_override_enabled": {
            "title": "Revenue Share Override Enabled",
            "description": "When true, the creator's revenue share is fixed at `revenue_share_override_bps` and ignores tier rates.",
            "type": "boolean"
          },
          "revenue_share_override_bps": {
            "title": "Revenue Share Override Bps",
            "description": "Override revenue share in basis points; required when enabling the override.",
            "type": "integer",
            "maximum": 10000.0,
            "minimum": 0.0
          },
          "earnings_cap": {
            "description": "Earnings cap to configure for the creator. Pass null to remove the cap; omit to leave it untouched.",
            "$ref": "#/components/schemas/CreatorEarningsCap"
          }
        },
        "type": "object",
        "title": "CreatorUpdate"
      },
      "Currency": {
        "type": "string",
        "enum": [
          "USD",
          "EUR",
          "AED",
          "AFN",
          "ALL",
          "AMD",
          "ANG",
          "AOA",
          "ARS",
          "AUD",
          "AWG",
          "AZN",
          "BAM",
          "BBD",
          "BDT",
          "BGN",
          "BHD",
          "BIF",
          "BMD",
          "BND",
          "BOB",
          "BRL",
          "BSD",
          "BTN",
          "BWP",
          "BYN",
          "BZD",
          "CAD",
          "CDF",
          "CHF",
          "CLP",
          "CNY",
          "COP",
          "CRC",
          "CUP",
          "CVE",
          "CZK",
          "DJF",
          "DKK",
          "DOP",
          "DZD",
          "EGP",
          "ERN",
          "ETB",
          "FJD",
          "FKP",
          "GBP",
          "GEL",
          "GHS",
          "GIP",
          "GMD",
          "GNF",
          "GTQ",
          "GYD",
          "HKD",
          "HNL",
          "HTG",
          "HUF",
          "IDR",
          "ILS",
          "INR",
          "IQD",
          "IRR",
          "ISK",
          "JMD",
          "JOD",
          "JPY",
          "KES",
          "KGS",
          "KHR",
          "KMF",
          "KPW",
          "KRW",
          "KWD",
          "KYD",
          "KZT",
          "LAK",
          "LBP",
          "LKR",
          "LRD",
          "LSL",
          "LYD",
          "MAD",
          "MDL",
          "MGA",
          "MKD",
          "MMK",
          "MNT",
          "MOP",
          "MRU",
          "MUR",
          "MVR",
          "MWK",
          "MXN",
          "MYR",
          "MZN",
          "NAD",
          "NGN",
          "NIO",
          "NOK",
          "NPR",
          "NZD",
          "OMR",
          "PAB",
          "PEN",
          "PGK",
          "PHP",
          "PKR",
          "PLN",
          "PYG",
          "QAR",
          "RON",
          "RSD",
          "RUB",
          "RWF",
          "SAR",
          "SBD",
          "SCR",
          "SDG",
          "SEK",
          "SGD",
          "SHP",
          "SLE",
          "SOS",
          "SRD",
          "SSP",
          "STN",
          "SVC",
          "SYP",
          "SZL",
          "THB",
          "TJS",
          "TMT",
          "TND",
          "TOP",
          "TRY",
          "TTD",
          "TWD",
          "TZS",
          "UAH",
          "UGX",
          "UYU",
          "UZS",
          "VED",
          "VES",
          "VND",
          "VUV",
          "WST",
          "XAF",
          "XCD",
          "XCG",
          "XOF",
          "XPF",
          "YER",
          "ZAR",
          "ZMW",
          "ZWG",
          "ZWL",
          "RP",
          "VC"
        ],
        "title": "Currency"
      },
      "CustomAttribute": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/AttrType"
          },
          "min": {
            "title": "Min",
            "type": "integer"
          },
          "max": {
            "title": "Max",
            "type": "integer"
          },
          "custom_values": {
            "title": "Custom Values",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "can_use_in_deep_link": {
            "title": "Can Use In Deep Link",
            "default": false,
            "type": "boolean"
          },
          "scope": {
            "$ref": "#/components/schemas/AttributeScope",
            "default": "private"
          },
          "profile_display": {
            "nullable": true,
            "$ref": "#/components/schemas/ProfileDisplay"
          },
          "is_hub_url_param": {
            "title": "Is Hub Url Param",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "name",
          "type"
        ],
        "title": "CustomAttribute"
      },
      "DailyRewardClaimMode": {
        "type": "string",
        "enum": [
          "modal",
          "inline"
        ],
        "title": "DailyRewardClaimMode",
        "description": "Controls the way the reward is claimed on hub."
      },
      "DailyRewardCreate": {
        "properties": {
          "enabled": {
            "type": "boolean",
            "title": "Enabled"
          },
          "key": {
            "title": "Key",
            "type": "string"
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name"
          },
          "description": {
            "type": "string",
            "maxLength": 100000,
            "title": "Description"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url"
          },
          "mode": {
            "$ref": "#/components/schemas/DailyRewardMode"
          },
          "rewards": {
            "$ref": "#/components/schemas/RewardsSettings"
          },
          "schedule": {
            "$ref": "#/components/schemas/Schedule"
          },
          "requirements_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "comment": {
            "title": "Comment",
            "type": "string"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "type": "string",
            "maxLength": 32
          },
          "type": {
            "$ref": "#/components/schemas/DailyRewardType",
            "default": "basic"
          }
        },
        "type": "object",
        "required": [
          "enabled",
          "name",
          "description",
          "mode",
          "rewards"
        ],
        "title": "DailyRewardCreate"
      },
      "DailyRewardGridMode": {
        "type": "string",
        "enum": [
          "auto",
          "manual"
        ],
        "title": "DailyRewardGridMode",
        "description": "Controls the daily rewards grid layout on hub."
      },
      "DailyRewardMode": {
        "type": "string",
        "enum": [
          "soft",
          "hard"
        ],
        "title": "DailyRewardMode"
      },
      "DailyRewardRead": {
        "properties": {
          "enabled": {
            "type": "boolean",
            "title": "Enabled"
          },
          "key": {
            "title": "Key",
            "type": "string"
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name"
          },
          "description": {
            "type": "string",
            "maxLength": 100000,
            "title": "Description"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url"
          },
          "mode": {
            "$ref": "#/components/schemas/DailyRewardMode"
          },
          "rewards": {
            "$ref": "#/components/schemas/RewardsSettingsRead"
          },
          "schedule": {
            "$ref": "#/components/schemas/Schedule"
          },
          "requirements_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "comment": {
            "title": "Comment",
            "type": "string"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "type": "string",
            "maxLength": 32
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "type": {
            "$ref": "#/components/schemas/DailyRewardType"
          },
          "status": {
            "$ref": "#/components/schemas/DailyRewardStatus"
          }
        },
        "type": "object",
        "required": [
          "enabled",
          "name",
          "description",
          "mode",
          "rewards",
          "id",
          "type",
          "status"
        ],
        "title": "DailyRewardRead"
      },
      "DailyRewardStatus": {
        "type": "string",
        "enum": [
          "active",
          "paused",
          "stopped",
          "scheduled",
          "completed"
        ],
        "title": "DailyRewardStatus"
      },
      "DailyRewardType": {
        "type": "string",
        "enum": [
          "basic",
          "seasonal",
          "schedule"
        ],
        "title": "DailyRewardType"
      },
      "DailyRewardUpdate": {
        "properties": {
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "key": {
            "title": "Key",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string",
            "maxLength": 255
          },
          "description": {
            "title": "Description",
            "type": "string",
            "maxLength": 100000
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url"
          },
          "mode": {
            "$ref": "#/components/schemas/DailyRewardMode"
          },
          "rewards": {
            "$ref": "#/components/schemas/RewardsSettings"
          },
          "requirements_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "schedule": {
            "$ref": "#/components/schemas/Schedule"
          },
          "comment": {
            "title": "Comment",
            "type": "string"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "DailyRewardUpdate"
      },
      "DailyRewardsBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "DailyRewardsBlock",
            "enum": [
              "DailyRewardsBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "variant": {
            "$ref": "#/components/schemas/DailyRewardsBlockVariant",
            "default": "expanded"
          },
          "non_compliance": {
            "title": "Non Compliance",
            "default": false,
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "DailyRewardsBlock"
      },
      "DailyRewardsBlockVariant": {
        "type": "string",
        "enum": [
          "expanded",
          "compact",
          "compact_mobile"
        ],
        "title": "DailyRewardsBlockVariant"
      },
      "DayReward": {
        "properties": {
          "day_number": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Day Number"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array",
            "maxItems": 10,
            "minItems": 1,
            "title": "Items"
          }
        },
        "type": "object",
        "required": [
          "day_number",
          "items"
        ],
        "title": "DayReward"
      },
      "DayRewardRead": {
        "properties": {
          "day_number": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Day Number"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array",
            "maxItems": 10,
            "minItems": 1,
            "title": "Items"
          },
          "items_read": {
            "items": {
              "$ref": "#/components/schemas/RewardItem"
            },
            "type": "array",
            "title": "Items Read"
          }
        },
        "type": "object",
        "required": [
          "day_number",
          "items",
          "items_read"
        ],
        "title": "DayRewardRead"
      },
      "DeclinePaymentNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "DeclinePaymentNode",
            "enum": [
              "DeclinePaymentNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "DeclinePaymentNode",
        "description": "Declines the payment without a retry."
      },
      "DeviceType": {
        "type": "string",
        "enum": [
          "Apple",
          "Android",
          "Unknown",
          "Other"
        ],
        "title": "DeviceType"
      },
      "DevtodevDeviceId": {
        "properties": {
          "deviceId": {
            "title": "Deviceid",
            "type": "string"
          },
          "devtodevId": {
            "title": "Devtodevid",
            "type": "integer"
          },
          "userId": {
            "title": "Userid",
            "type": "string"
          },
          "advertisingId": {
            "title": "Advertisingid",
            "type": "string"
          }
        },
        "type": "object",
        "title": "DevtodevDeviceId"
      },
      "DiscountDuration": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/SubscriptionOfferDiscountDurationType",
            "description": "Whether the discount lasts a fixed number of billing cycles or forever; mirrors Stripe's Coupon.duration."
          },
          "cycles": {
            "title": "Cycles",
            "description": "Number of billing cycles the discount applies to \u2014 required when type is cycles, omitted when type is forever.",
            "type": "integer",
            "minimum": 1.0
          }
        },
        "type": "object",
        "required": [
          "type"
        ],
        "title": "DiscountDuration"
      },
      "DisputeEvidenceFileCreate": {
        "properties": {
          "file_name": {
            "type": "string",
            "maxLength": 255,
            "title": "File Name",
            "description": "Original file name, kept as part of the stored object name."
          },
          "file_type": {
            "type": "string",
            "maxLength": 128,
            "title": "File Type",
            "description": "MIME type of the file, e.g. `application/pdf`.",
            "default": "application/octet-stream"
          },
          "file_base64_content": {
            "type": "string",
            "maxLength": 14680064,
            "title": "File Base64 Content",
            "description": "Base64-encoded file content."
          }
        },
        "type": "object",
        "required": [
          "file_name",
          "file_base64_content"
        ],
        "title": "DisputeEvidenceFileCreate"
      },
      "DisputeEvidencePlayerRead": {
        "properties": {
          "registered_at": {
            "title": "Registered At",
            "description": "Unix timestamp when the player registered in the game.",
            "type": "integer"
          },
          "last_active_at": {
            "title": "Last Active At",
            "description": "Unix timestamp of the player's last activity on the platform.",
            "type": "integer"
          },
          "first_login_ip": {
            "title": "First Login Ip",
            "description": "IP address of the player's first login in the game.",
            "type": "string"
          },
          "is_verified": {
            "title": "Is Verified",
            "description": "Whether the player's account is verified on the game side.",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "DisputeEvidencePlayerRead"
      },
      "DisputeEvidencePlayerUpdate": {
        "properties": {
          "registered_at": {
            "title": "Registered At",
            "description": "Unix timestamp when the player registered in the game. May predate the platform account, so it differs from the user's created_at.",
            "type": "integer"
          },
          "first_login_ip": {
            "title": "First Login Ip",
            "description": "IP address of the player's first login in the game, as reported by the game.",
            "type": "string",
            "maxLength": 64
          },
          "is_verified": {
            "title": "Is Verified",
            "description": "Whether the player's account is verified on the game side. Unrelated to the company account verification in onboarding.",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "DisputeEvidencePlayerUpdate"
      },
      "DisputeEvidenceRead": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The ID of the dispute evidence record."
          },
          "payment_number": {
            "type": "string",
            "title": "Payment Number",
            "description": "The payment number the evidence belongs to."
          },
          "purchase_used": {
            "title": "Purchase Used",
            "description": "Whether the purchased goods were consumed.",
            "type": "boolean"
          },
          "used_at": {
            "title": "Used At",
            "description": "Unix timestamp when the purchased goods were consumed.",
            "type": "integer"
          },
          "usage_id": {
            "title": "Usage Id",
            "description": "Partner-side identifier of the event where the goods were consumed, e.g. a match, session or quest id.",
            "type": "string"
          },
          "file_ids": {
            "title": "File Ids",
            "description": "IDs of the uploaded evidence files.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "comment": {
            "title": "Comment",
            "description": "Free-form note for support.",
            "type": "string"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "Unix timestamp when the evidence was last modified.",
            "type": "integer"
          },
          "player_attributes": {
            "$ref": "#/components/schemas/DisputeEvidencePlayerRead",
            "description": "Player fields stored on the player profile."
          }
        },
        "type": "object",
        "required": [
          "id",
          "payment_number",
          "player_attributes"
        ],
        "title": "DisputeEvidenceRead"
      },
      "DisputeEvidenceUpsert": {
        "properties": {
          "purchase_used": {
            "title": "Purchase Used",
            "description": "Whether the purchased goods were consumed.",
            "type": "boolean"
          },
          "used_at": {
            "title": "Used At",
            "description": "Unix timestamp when the purchased goods were consumed.",
            "type": "integer"
          },
          "usage_id": {
            "title": "Usage Id",
            "description": "Partner-side identifier of the event where the goods were consumed, e.g. a match, session or quest id. Stored as given and passed through to the dispute evidence package.",
            "type": "string",
            "maxLength": 512
          },
          "comment": {
            "title": "Comment",
            "description": "Free-form note for support.",
            "type": "string",
            "maxLength": 4096
          },
          "player_attributes": {
            "description": "Player fields stored on the player profile, not on the payment.",
            "$ref": "#/components/schemas/DisputeEvidencePlayerUpdate"
          }
        },
        "type": "object",
        "title": "DisputeEvidenceUpsert"
      },
      "DynamicBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "DynamicBlock",
            "enum": [
              "DynamicBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "graph_rules": {
            "$ref": "#/components/schemas/GraphRoot"
          }
        },
        "type": "object",
        "required": [
          "graph_rules"
        ],
        "title": "DynamicBlock"
      },
      "EmailActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "EmailActionNode",
            "enum": [
              "EmailActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "body": {
            "title": "Body",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "content_type": {
            "$ref": "#/components/schemas/HubPopupContentType"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "button_link": {
            "title": "Button Link",
            "type": "string"
          },
          "items": {
            "title": "Items",
            "items": {
              "$ref": "#/components/schemas/CommunicationItem"
            },
            "type": "array"
          },
          "caption": {
            "title": "Caption",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "EmailActionNode"
      },
      "EmailCollection": {
        "type": "string",
        "enum": [
          "auto",
          "none",
          "required"
        ],
        "title": "EmailCollection",
        "description": "Whether the checkout page asks the player for an email address.\n\n- `auto`: the platform decides, reusing an email the payment method provides\n- `none`: do not ask for an email\n- `required`: always ask, and require a value"
      },
      "EmailConsent": {
        "properties": {
          "granted_at": {
            "title": "Granted At",
            "type": "integer"
          },
          "revoked_at": {
            "title": "Revoked At",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "EmailConsent"
      },
      "EmailMarketingConsentGrant": {
        "properties": {
          "address": {
            "type": "string",
            "format": "email",
            "title": "Address",
            "description": "The player's email address."
          }
        },
        "type": "object",
        "required": [
          "address"
        ],
        "title": "EmailMarketingConsentGrant"
      },
      "Event": {
        "properties": {
          "event_time": {
            "type": "integer",
            "title": "Event Time",
            "description": "The time the event was created in seconds since epoch."
          },
          "event_type": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EventType"
              },
              {
                "type": "string"
              }
            ],
            "title": "Event Type"
          },
          "event_data": {
            "additionalProperties": true,
            "type": "object",
            "title": "Event Data",
            "description": "The data of the event."
          }
        },
        "type": "object",
        "required": [
          "event_time",
          "event_type",
          "event_data"
        ],
        "title": "Event"
      },
      "EventType": {
        "type": "string",
        "enum": [
          "game_login",
          "game_register",
          "purchase",
          "level_up"
        ],
        "title": "EventType"
      },
      "Experiment": {
        "properties": {
          "experiment_key": {
            "type": "string",
            "maxLength": 100,
            "minLength": 1,
            "title": "Experiment Key",
            "description": "The key of the experiment."
          },
          "variant_key": {
            "type": "string",
            "maxLength": 100,
            "minLength": 1,
            "title": "Variant Key",
            "description": "The key of the assigned variant."
          }
        },
        "type": "object",
        "required": [
          "experiment_key",
          "variant_key"
        ],
        "title": "Experiment"
      },
      "Expression": {
        "properties": {
          "tokens": {
            "title": "Tokens",
            "items": {
              "$ref": "#/components/schemas/Token"
            },
            "type": "array"
          },
          "variables": {
            "title": "Variables",
            "items": {
              "$ref": "#/components/schemas/MathExpression"
            },
            "type": "array"
          }
        },
        "type": "object",
        "title": "Expression"
      },
      "ExpressionSchema": {
        "properties": {
          "tokens": {
            "title": "Tokens",
            "items": {
              "$ref": "#/components/schemas/TokenSchema"
            },
            "type": "array"
          },
          "variables": {
            "title": "Variables",
            "items": {
              "$ref": "#/components/schemas/MathExpressionSchema"
            },
            "type": "array"
          }
        },
        "type": "object",
        "title": "ExpressionSchema",
        "description": "Pydantic v2 mirror of `campaign_user.expr.Expression` for the v2 News API."
      },
      "FeaturedItemBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "FeaturedItemBlock",
            "enum": [
              "FeaturedItemBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "fallback_store_item_id": {
            "title": "Fallback Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "fallback_store_id": {
            "title": "Fallback Store Id",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "type": "string",
            "maxLength": 32
          },
          "background_image_size": {
            "title": "Background Image Size",
            "type": "string"
          },
          "category_template_id": {
            "title": "Category Template Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "FeaturedItemBlock"
      },
      "FeaturedNewsBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "FeaturedNewsBlock",
            "enum": [
              "FeaturedNewsBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "news_id": {
            "title": "News Id",
            "type": "string",
            "maxLength": 32
          },
          "hide_date": {
            "title": "Hide Date",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "FeaturedNewsBlock"
      },
      "FeaturedPageBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "FeaturedPageBlock",
            "enum": [
              "FeaturedPageBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "page_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Page Id"
          },
          "is_collection": {
            "title": "Is Collection",
            "default": false,
            "type": "boolean"
          },
          "rotation_period": {
            "title": "Rotation Period",
            "type": "integer"
          },
          "hide_date": {
            "title": "Hide Date",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "page_id"
        ],
        "title": "FeaturedPageBlock"
      },
      "FiatPrice": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "fiat",
            "enum": [
              "fiat"
            ]
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "amount": {
            "type": "integer",
            "title": "Amount"
          }
        },
        "type": "object",
        "required": [
          "currency",
          "amount"
        ],
        "title": "FiatPrice"
      },
      "FullNewsBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "FullNewsBlock",
            "enum": [
              "FullNewsBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "news_id": {
            "title": "News Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "FullNewsBlock"
      },
      "GDPRDataRemovalRequest": {
        "properties": {
          "email": {
            "title": "Email",
            "description": "The email of the user to remove data for",
            "type": "string",
            "format": "email"
          },
          "user_id": {
            "title": "User Id",
            "description": "The user ID in the Aghanim system to remove data for",
            "type": "string",
            "maxLength": 32
          },
          "player_id": {
            "title": "Player Id",
            "description": "The player ID to remove data for",
            "type": "string"
          }
        },
        "type": "object",
        "title": "GDPRDataRemovalRequest"
      },
      "GraphRoot": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "GraphRoot"
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "nodes": {
            "title": "Nodes",
            "additionalProperties": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/ConditionNode"
                },
                {
                  "$ref": "#/components/schemas/EmailActionNode"
                },
                {
                  "$ref": "#/components/schemas/MobilePushActionNode"
                },
                {
                  "$ref": "#/components/schemas/MobilePopupActionNode"
                },
                {
                  "$ref": "#/components/schemas/TimerNode"
                },
                {
                  "$ref": "#/components/schemas/BrowserPushNotificationActionNode"
                },
                {
                  "$ref": "#/components/schemas/BrowserPopupNotificationActionNode"
                },
                {
                  "$ref": "#/components/schemas/PWAPromptActionNode"
                },
                {
                  "$ref": "#/components/schemas/WebhookActionNode"
                },
                {
                  "$ref": "#/components/schemas/SplitNode"
                },
                {
                  "$ref": "#/components/schemas/CreateItemBannerActionNode"
                },
                {
                  "$ref": "#/components/schemas/CreateVirtualSKUNode"
                },
                {
                  "$ref": "#/components/schemas/CreateUserStoreSettingsNode"
                },
                {
                  "$ref": "#/components/schemas/SetAttributeValuesNode"
                },
                {
                  "$ref": "#/components/schemas/VerifyPlayerNode"
                },
                {
                  "$ref": "#/components/schemas/AddUserAchievementNode"
                },
                {
                  "$ref": "#/components/schemas/CreateCouponNode"
                },
                {
                  "$ref": "#/components/schemas/ItemAddNode"
                },
                {
                  "$ref": "#/components/schemas/AddToSegmentNode"
                },
                {
                  "$ref": "#/components/schemas/RemoveFromSegmentNode"
                },
                {
                  "$ref": "#/components/schemas/AddStoreNode"
                },
                {
                  "$ref": "#/components/schemas/SortStoreItemsNode"
                },
                {
                  "$ref": "#/components/schemas/ItemCategorySortNode"
                },
                {
                  "$ref": "#/components/schemas/AddPageBlockNode"
                },
                {
                  "$ref": "#/components/schemas/BanUserNode"
                },
                {
                  "$ref": "#/components/schemas/BatchBanUserNode"
                },
                {
                  "$ref": "#/components/schemas/Require3DSNode"
                },
                {
                  "$ref": "#/components/schemas/DeclinePaymentNode"
                },
                {
                  "$ref": "#/components/schemas/RequirePennyDropNode"
                }
              ],
              "discriminator": {
                "propertyName": "model_type",
                "mapping": {
                  "AddPageBlockNode": "#/components/schemas/AddPageBlockNode",
                  "AddStoreNode": "#/components/schemas/AddStoreNode",
                  "AddToSegmentNode": "#/components/schemas/AddToSegmentNode",
                  "AddUserAchievementNode": "#/components/schemas/AddUserAchievementNode",
                  "BanUserNode": "#/components/schemas/BanUserNode",
                  "BatchBanUserNode": "#/components/schemas/BatchBanUserNode",
                  "BrowserPopupNotificationActionNode": "#/components/schemas/BrowserPopupNotificationActionNode",
                  "BrowserPushNotificationActionNode": "#/components/schemas/BrowserPushNotificationActionNode",
                  "ConditionNode": "#/components/schemas/ConditionNode",
                  "CreateCouponNode": "#/components/schemas/CreateCouponNode",
                  "CreateItemBannerActionNode": "#/components/schemas/CreateItemBannerActionNode",
                  "CreateUserStoreSettingsNode": "#/components/schemas/CreateUserStoreSettingsNode",
                  "CreateVirtualSKUNode": "#/components/schemas/CreateVirtualSKUNode",
                  "DeclinePaymentNode": "#/components/schemas/DeclinePaymentNode",
                  "EmailActionNode": "#/components/schemas/EmailActionNode",
                  "ItemAddNode": "#/components/schemas/ItemAddNode",
                  "ItemCategorySortNode": "#/components/schemas/ItemCategorySortNode",
                  "MobilePopupActionNode": "#/components/schemas/MobilePopupActionNode",
                  "MobilePushActionNode": "#/components/schemas/MobilePushActionNode",
                  "PWAPromptActionNode": "#/components/schemas/PWAPromptActionNode",
                  "RemoveFromSegmentNode": "#/components/schemas/RemoveFromSegmentNode",
                  "Require3DSNode": "#/components/schemas/Require3DSNode",
                  "RequirePennyDropNode": "#/components/schemas/RequirePennyDropNode",
                  "SetAttributeValuesNode": "#/components/schemas/SetAttributeValuesNode",
                  "SortStoreItemsNode": "#/components/schemas/SortStoreItemsNode",
                  "SplitNode": "#/components/schemas/SplitNode",
                  "TimerNode": "#/components/schemas/TimerNode",
                  "VerifyPlayerNode": "#/components/schemas/VerifyPlayerNode",
                  "WebhookActionNode": "#/components/schemas/WebhookActionNode"
                }
              }
            },
            "type": "object"
          },
          "view_port": {
            "$ref": "#/components/schemas/ViewPort"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "GraphRoot"
      },
      "GridConfig": {
        "properties": {
          "sm": {
            "items": {
              "type": "integer",
              "exclusiveMinimum": 0.0
            },
            "type": "array",
            "maxItems": 31,
            "minItems": 1,
            "title": "Sm"
          },
          "md": {
            "items": {
              "type": "integer",
              "exclusiveMinimum": 0.0
            },
            "type": "array",
            "maxItems": 31,
            "minItems": 1,
            "title": "Md"
          },
          "lg": {
            "items": {
              "type": "integer",
              "exclusiveMinimum": 0.0
            },
            "type": "array",
            "maxItems": 31,
            "minItems": 1,
            "title": "Lg"
          }
        },
        "type": "object",
        "required": [
          "sm",
          "md",
          "lg"
        ],
        "title": "GridConfig",
        "description": "Grid rows per breakpoint; each list item is the number of columns in that row."
      },
      "HTTPValidationError": {
        "properties": {
          "detail": {
            "items": {
              "$ref": "#/components/schemas/ValidationError"
            },
            "type": "array",
            "title": "Detail"
          }
        },
        "type": "object",
        "title": "HTTPValidationError"
      },
      "HardPityMechanicRead": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "hard_pity",
            "enum": [
              "hard_pity"
            ]
          },
          "opens_count": {
            "type": "integer",
            "title": "Opens Count",
            "description": "Number of opens accumulated within the current pity step"
          },
          "threshold": {
            "type": "integer",
            "title": "Threshold",
            "description": "Opens required within the current step to reach the next guaranteed prize"
          },
          "guaranteed_groups": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/LootboxGroupRead"
                },
                {
                  "$ref": "#/components/schemas/LootboxNestedItemRead"
                }
              ]
            },
            "type": "array",
            "title": "Guaranteed Groups",
            "description": "Groups with nested elements guaranteed on the next pity threshold"
          }
        },
        "type": "object",
        "required": [
          "opens_count",
          "threshold"
        ],
        "title": "HardPityMechanicRead"
      },
      "HighlightItem": {
        "properties": {
          "image_url": {
            "title": "Image Url",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          }
        },
        "type": "object",
        "title": "HighlightItem"
      },
      "Highlights": {
        "properties": {
          "title": {
            "title": "Title",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/HighlightItem"
            },
            "type": "array",
            "title": "Items"
          }
        },
        "type": "object",
        "required": [
          "items"
        ],
        "title": "Highlights"
      },
      "HubPopupContentType": {
        "type": "string",
        "enum": [
          "custom",
          "item",
          "event_item",
          "link_all_created_offers"
        ],
        "title": "HubPopupContentType"
      },
      "IFrameBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "IFrameBlock",
            "enum": [
              "IFrameBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "width": {
            "title": "Width",
            "type": "string"
          },
          "height": {
            "title": "Height",
            "type": "string"
          },
          "url": {
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri",
            "title": "Url"
          },
          "requires_auth": {
            "title": "Requires Auth",
            "type": "boolean"
          },
          "popup_background_image": {
            "title": "Popup Background Image",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "loading_background_image": {
            "title": "Loading Background Image",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "crossplay_disabled": {
            "title": "Crossplay Disabled",
            "type": "boolean"
          },
          "is_web_game_iframe": {
            "title": "Is Web Game Iframe",
            "type": "boolean"
          },
          "aspect_ratio": {
            "title": "Aspect Ratio",
            "type": "number"
          }
        },
        "type": "object",
        "required": [
          "url"
        ],
        "title": "IFrameBlock"
      },
      "ImageBannerBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "ImageBannerBlock",
            "enum": [
              "ImageBannerBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "link": {
            "title": "Link",
            "type": "string"
          },
          "image_url": {
            "type": "string",
            "title": "Image Url"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "text": {
            "title": "Text",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "image_url"
        ],
        "title": "ImageBannerBlock"
      },
      "InfinitePaginatedResponse_PriceTemplateShort_": {
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/PriceTemplateShort"
            },
            "type": "array",
            "title": "Data"
          },
          "has_more": {
            "type": "boolean",
            "title": "Has More"
          },
          "next_cursor": {
            "title": "Next Cursor",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "data",
          "has_more"
        ],
        "title": "InfinitePaginatedResponse[PriceTemplateShort]"
      },
      "InfinitePaginatedResponse_TranslationGlossaryRead_": {
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/TranslationGlossaryRead"
            },
            "type": "array",
            "title": "Data"
          },
          "has_more": {
            "type": "boolean",
            "title": "Has More"
          },
          "next_cursor": {
            "title": "Next Cursor",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "data",
          "has_more"
        ],
        "title": "InfinitePaginatedResponse[TranslationGlossaryRead]"
      },
      "Item": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique ID of the item."
          },
          "sku": {
            "type": "string",
            "minLength": 1,
            "title": "SKU",
            "description": "Stock Keeping Unit (SKU) identifier."
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the item."
          },
          "source": {
            "$ref": "#/components/schemas/ItemSource",
            "description": "The source of the payment item."
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "description": "The URL of the image for the item",
            "type": "string"
          },
          "quantity": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Quantity",
            "description": "The quantity of the item."
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "Nested items of the bundle.",
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "id",
          "sku",
          "name",
          "source",
          "quantity"
        ],
        "title": "Item"
      },
      "ItemAddData": {
        "properties": {
          "item_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Item Id"
          },
          "quantity": {
            "title": "Quantity",
            "nullable": true,
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "item_id"
        ],
        "title": "ItemAddData"
      },
      "ItemAddNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "ItemAddNode",
            "enum": [
              "ItemAddNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/ItemAddData"
            },
            "type": "array",
            "minItems": 1,
            "title": "Items"
          },
          "show_reward_popup": {
            "title": "Show Reward Popup",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "items"
        ],
        "title": "ItemAddNode"
      },
      "ItemBonus": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The ID of the bonus item that will be given to the user when they purchase this item."
          },
          "sku": {
            "title": "SKU",
            "type": "string"
          },
          "quantity_fixed": {
            "title": "Quantity Fixed",
            "description": "The fixed quantity of the bonus item",
            "nullable": true,
            "type": "integer"
          },
          "quantity_percent": {
            "title": "Quantity Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the price_after_discount_usd (in cents) of the purchased item.",
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "ItemBonus"
      },
      "ItemBonusSettings": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/ItemBonus"
            },
            "type": "array",
            "title": "Items"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "items"
        ],
        "title": "ItemBonusSettings"
      },
      "ItemBulkCreateOrUpdate": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "comment": {
            "title": "Comment",
            "description": "Internal comment for this item",
            "type": "string"
          },
          "is_system": {
            "title": "Is System",
            "description": "If true, this item will be skipped when sending webhooks",
            "nullable": true,
            "type": "boolean"
          },
          "meta": {
            "title": "Meta",
            "nullable": true,
            "additionalProperties": true,
            "type": "object"
          },
          "quantity_expression": {
            "description": "Math expression that computes the quantity for stackable items",
            "$ref": "#/components/schemas/MathExpression"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency"
        ],
        "title": "ItemBulkCreateOrUpdate"
      },
      "ItemBulkDelete": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "ItemBulkDelete"
      },
      "ItemBulkUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the item",
            "type": "string",
            "maxLength": 255
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/)",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the item",
            "type": "integer",
            "maximum": 100.0,
            "exclusiveMinimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the item",
            "type": "integer",
            "maximum": 1000.0,
            "exclusiveMinimum": 0.0
          },
          "currency": {
            "description": "The currency of the item",
            "$ref": "#/components/schemas/Currency"
          },
          "sku": {
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true,
            "type": "string",
            "maxLength": 255
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "description": "The type of the item",
            "$ref": "#/components/schemas/ItemType"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "title": "Quantity",
            "description": "The quantity of the item",
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "is_stackable": {
            "title": "Is Stackable",
            "description": "Whether the item is stackable",
            "type": "boolean"
          },
          "is_currency": {
            "title": "Is Currency",
            "description": "Whether the item is a currency.",
            "deprecated": true,
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the item was archived",
            "type": "number"
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "comment": {
            "title": "Comment",
            "description": "Internal comment for this item",
            "type": "string"
          },
          "is_system": {
            "title": "Is System",
            "description": "If true, this item will be skipped when sending webhooks",
            "nullable": true,
            "type": "boolean"
          },
          "meta": {
            "title": "Meta",
            "nullable": true,
            "additionalProperties": true,
            "type": "object"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "Child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "quantity_expression": {
            "description": "Math expression that computes the quantity for stackable items",
            "$ref": "#/components/schemas/MathExpression"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the item"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "ItemBulkUpdate"
      },
      "ItemCategoryBulkDelete": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "ItemCategoryBulkDelete"
      },
      "ItemCategoryBulkUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "parent_id": {
            "title": "Parent Id",
            "type": "string",
            "maxLength": 32
          },
          "item_template_id": {
            "title": "Item Template Id",
            "type": "string",
            "maxLength": 32
          },
          "pinned_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "slug": {
            "title": "Slug",
            "type": "string"
          },
          "icon": {
            "title": "Icon",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "header_image_url": {
            "title": "Header Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "divider_image_url": {
            "title": "Divider Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "divider_position": {
            "$ref": "#/components/schemas/StoreCategoryDividerPosition"
          },
          "divider_type": {
            "$ref": "#/components/schemas/StoreCategoryDividerType"
          },
          "background_color": {
            "title": "Background Color",
            "type": "string"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_size": {
            "$ref": "#/components/schemas/BackgroundSize"
          },
          "render_type": {
            "$ref": "#/components/schemas/StoreCategoryRenderType"
          },
          "render_options": {
            "$ref": "#/components/schemas/StoreCategoryRenderOptions"
          },
          "child_sort_attribute_name": {
            "title": "Child Sort Attribute Name",
            "type": "string",
            "maxLength": 255
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "ItemCategoryBulkUpdate"
      },
      "ItemCategoryCreate": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "position": {
            "type": "integer",
            "title": "Position"
          },
          "parent_id": {
            "title": "Parent Id",
            "type": "string",
            "maxLength": 32
          },
          "item_template_id": {
            "title": "Item Template Id",
            "type": "string",
            "maxLength": 32
          },
          "pinned_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "slug": {
            "title": "Slug",
            "type": "string"
          },
          "icon": {
            "title": "Icon",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "header_image_url": {
            "title": "Header Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "divider_image_url": {
            "title": "Divider Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "divider_position": {
            "default": "top",
            "$ref": "#/components/schemas/StoreCategoryDividerPosition"
          },
          "divider_type": {
            "default": "image",
            "$ref": "#/components/schemas/StoreCategoryDividerType"
          },
          "background_color": {
            "title": "Background Color",
            "type": "string"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_size": {
            "$ref": "#/components/schemas/BackgroundSize"
          },
          "render_type": {
            "$ref": "#/components/schemas/StoreCategoryRenderType"
          },
          "render_options": {
            "$ref": "#/components/schemas/StoreCategoryRenderOptions"
          },
          "child_sort_attribute_name": {
            "title": "Child Sort Attribute Name",
            "description": "Name of a player list attribute holding child category slugs in the order they must be shown.",
            "type": "string",
            "maxLength": 255
          }
        },
        "type": "object",
        "required": [
          "name",
          "position"
        ],
        "title": "ItemCategoryCreate"
      },
      "ItemCategoryRead": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "position": {
            "type": "integer",
            "title": "Position"
          },
          "parent_id": {
            "title": "Parent Id",
            "type": "string",
            "maxLength": 32
          },
          "item_template_id": {
            "title": "Item Template Id",
            "type": "string",
            "maxLength": 32
          },
          "pinned_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "slug": {
            "title": "Slug",
            "type": "string"
          },
          "icon": {
            "title": "Icon",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          },
          "header_image_url": {
            "title": "Header Image Url",
            "type": "string"
          },
          "divider_image_url": {
            "title": "Divider Image Url",
            "type": "string"
          },
          "divider_position": {
            "default": "top",
            "$ref": "#/components/schemas/StoreCategoryDividerPosition"
          },
          "divider_type": {
            "default": "image",
            "$ref": "#/components/schemas/StoreCategoryDividerType"
          },
          "background_color": {
            "title": "Background Color",
            "type": "string"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string"
          },
          "background_size": {
            "$ref": "#/components/schemas/BackgroundSize"
          },
          "render_type": {
            "$ref": "#/components/schemas/StoreCategoryRenderType"
          },
          "render_options": {
            "$ref": "#/components/schemas/StoreCategoryRenderOptions"
          },
          "child_sort_attribute_name": {
            "title": "Child Sort Attribute Name",
            "description": "Name of a player list attribute holding child category slugs in the order they must be shown.",
            "type": "string",
            "maxLength": 255
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "name",
          "position",
          "id"
        ],
        "title": "ItemCategoryRead"
      },
      "ItemCategorySortNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "ItemCategorySortNode",
            "enum": [
              "ItemCategorySortNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "item_category_ids": {
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array",
            "title": "Item Category Ids"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "item_category_ids"
        ],
        "title": "ItemCategorySortNode"
      },
      "ItemCategoryUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "parent_id": {
            "title": "Parent Id",
            "type": "string",
            "maxLength": 32
          },
          "item_template_id": {
            "title": "Item Template Id",
            "type": "string",
            "maxLength": 32
          },
          "pinned_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "slug": {
            "title": "Slug",
            "type": "string"
          },
          "icon": {
            "title": "Icon",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "header_image_url": {
            "title": "Header Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "divider_image_url": {
            "title": "Divider Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "divider_position": {
            "$ref": "#/components/schemas/StoreCategoryDividerPosition"
          },
          "divider_type": {
            "$ref": "#/components/schemas/StoreCategoryDividerType"
          },
          "background_color": {
            "title": "Background Color",
            "type": "string"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_size": {
            "$ref": "#/components/schemas/BackgroundSize"
          },
          "render_type": {
            "$ref": "#/components/schemas/StoreCategoryRenderType"
          },
          "render_options": {
            "$ref": "#/components/schemas/StoreCategoryRenderOptions"
          },
          "child_sort_attribute_name": {
            "title": "Child Sort Attribute Name",
            "type": "string",
            "maxLength": 255
          }
        },
        "type": "object",
        "title": "ItemCategoryUpdate"
      },
      "ItemCreate": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "comment": {
            "title": "Comment",
            "description": "Internal comment for this item",
            "type": "string"
          },
          "is_system": {
            "title": "Is System",
            "description": "If true, this item will be skipped when sending webhooks",
            "nullable": true,
            "type": "boolean"
          },
          "meta": {
            "title": "Meta",
            "nullable": true,
            "additionalProperties": true,
            "type": "object"
          },
          "quantity_expression": {
            "description": "Math expression that computes the quantity for stackable items",
            "$ref": "#/components/schemas/MathExpression"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency"
        ],
        "title": "ItemCreate"
      },
      "ItemOrderType": {
        "type": "string",
        "enum": [
          "created_at",
          "modified_at",
          "name",
          "position",
          "price"
        ],
        "title": "ItemOrderType",
        "description": "An enumeration."
      },
      "ItemPriceType": {
        "type": "string",
        "enum": [
          "fiat",
          "reward_points",
          "virtual_currency"
        ],
        "title": "ItemPriceType",
        "description": "An enumeration."
      },
      "ItemPropertyConfigNumber": {
        "properties": {
          "property_type": {
            "type": "string",
            "title": "Property Type",
            "default": "number",
            "enum": [
              "number"
            ]
          }
        },
        "type": "object",
        "title": "ItemPropertyConfigNumber"
      },
      "ItemPropertyConfigRange": {
        "properties": {
          "property_type": {
            "type": "string",
            "title": "Property Type",
            "default": "range",
            "enum": [
              "range"
            ]
          },
          "max": {
            "type": "integer",
            "title": "Max"
          },
          "min": {
            "type": "integer",
            "title": "Min",
            "default": 0
          }
        },
        "type": "object",
        "required": [
          "max"
        ],
        "title": "ItemPropertyConfigRange"
      },
      "ItemPropertyConfigString": {
        "properties": {
          "property_type": {
            "type": "string",
            "title": "Property Type",
            "default": "string",
            "enum": [
              "string"
            ]
          }
        },
        "type": "object",
        "title": "ItemPropertyConfigString"
      },
      "ItemPropertyRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the property"
          },
          "description": {
            "title": "Description",
            "description": "The description of the property",
            "type": "string",
            "maxLength": 512
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the property"
          },
          "config": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/ItemPropertyConfigRange"
              },
              {
                "$ref": "#/components/schemas/ItemPropertyConfigNumber"
              },
              {
                "$ref": "#/components/schemas/ItemPropertyConfigString"
              }
            ],
            "title": "Config",
            "description": "The config of the property",
            "discriminator": {
              "propertyName": "property_type",
              "mapping": {
                "number": "#/components/schemas/ItemPropertyConfigNumber",
                "range": "#/components/schemas/ItemPropertyConfigRange",
                "string": "#/components/schemas/ItemPropertyConfigString"
              }
            }
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the property"
          }
        },
        "type": "object",
        "required": [
          "name",
          "config",
          "id"
        ],
        "title": "ItemPropertyRead"
      },
      "ItemPropertyRelationData": {
        "properties": {
          "value": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "integer"
              },
              {
                "type": "string"
              }
            ],
            "title": "Value"
          }
        },
        "type": "object",
        "title": "ItemPropertyRelationData"
      },
      "ItemPropertyRelationRead": {
        "properties": {
          "property_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Property Id"
          },
          "data": {
            "$ref": "#/components/schemas/ItemPropertyRelationData"
          },
          "position": {
            "type": "integer",
            "title": "Position"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "item_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Item Id"
          },
          "item_property": {
            "$ref": "#/components/schemas/ItemPropertyRead"
          }
        },
        "type": "object",
        "required": [
          "property_id",
          "position",
          "id",
          "item_id",
          "item_property"
        ],
        "title": "ItemPropertyRelationRead"
      },
      "ItemRarityRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "Name of the item rarity"
          },
          "color_background_badge": {
            "title": "Color Background Badge",
            "description": "Background color of the badge with this rarity",
            "type": "string"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "name",
          "id"
        ],
        "title": "ItemRarityRead"
      },
      "ItemRead": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string"
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the item"
          },
          "properties": {
            "items": {
              "$ref": "#/components/schemas/ItemPropertyRelationRead"
            },
            "type": "array",
            "title": "Properties",
            "description": "The item properties"
          },
          "source": {
            "$ref": "#/components/schemas/ItemSource",
            "default": "order"
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "item_rarity": {
            "$ref": "#/components/schemas/ItemRarityRead"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the item",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the item",
            "type": "integer",
            "minimum": 0.0
          },
          "is_custom": {
            "type": "boolean",
            "title": "Is Custom",
            "default": false
          },
          "created_at": {
            "type": "number",
            "title": "Created At",
            "description": "The timestamp of when the item was created"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "The timestamp of when the item was modified",
            "type": "number"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the item was archived",
            "type": "number"
          },
          "price_minor_unit": {
            "title": "Price Minor Unit",
            "type": "integer"
          },
          "price_decimal": {
            "title": "Price Decimal",
            "type": "number"
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "ItemRead",
            "enum": [
              "ItemRead"
            ]
          },
          "nested_items_read": {
            "title": "Nested Items Read",
            "items": {
              "$ref": "#/components/schemas/ItemRead"
            },
            "type": "array"
          },
          "fallback_item": {
            "$ref": "#/components/schemas/ItemRead"
          },
          "comment": {
            "title": "Comment",
            "description": "Internal comment for this item",
            "type": "string"
          },
          "is_system": {
            "title": "Is System",
            "description": "If true, this item will be skipped when sending webhooks",
            "nullable": true,
            "type": "boolean"
          },
          "quantity_expression": {
            "description": "Math expression that computes the quantity for stackable items",
            "$ref": "#/components/schemas/MathExpression"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "id",
          "created_at"
        ],
        "title": "ItemRead"
      },
      "ItemRewardSettings": {
        "properties": {
          "available": {
            "items": {
              "$ref": "#/components/schemas/VCRewardConfig"
            },
            "type": "array",
            "title": "Available"
          }
        },
        "type": "object",
        "required": [
          "available"
        ],
        "title": "ItemRewardSettings"
      },
      "ItemSource": {
        "type": "string",
        "enum": [
          "order",
          "bonus",
          "bundle",
          "coupon",
          "lootbox",
          "free_item",
          "liveops",
          "daily_reward",
          "loyalty_reward",
          "progression_program",
          "rolling_offer",
          "pick_one_offer"
        ],
        "title": "ItemSource"
      },
      "ItemStackableType": {
        "type": "string",
        "enum": [
          "stackable",
          "non_stackable"
        ],
        "title": "ItemStackableType",
        "description": "An enumeration."
      },
      "ItemTranslate": {
        "properties": {
          "name": {
            "description": "Mapping of locale to translated name",
            "$ref": "#/components/schemas/LocaleMapping"
          },
          "description": {
            "description": "Mapping of locale to translated description",
            "$ref": "#/components/schemas/LocaleMapping"
          }
        },
        "type": "object",
        "title": "ItemTranslate",
        "examples": [
          {
            "name": {
              "en": "Sword",
              "pt": "Espada"
            }
          }
        ]
      },
      "ItemType": {
        "type": "string",
        "enum": [
          "item",
          "currency",
          "bundle",
          "lootbox",
          "subscription",
          "virtual_currency"
        ],
        "title": "ItemType"
      },
      "ItemUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the item",
            "type": "string",
            "maxLength": 255
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/)",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the item",
            "type": "integer",
            "maximum": 100.0,
            "exclusiveMinimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the item",
            "type": "integer",
            "maximum": 1000.0,
            "exclusiveMinimum": 0.0
          },
          "currency": {
            "description": "The currency of the item",
            "$ref": "#/components/schemas/Currency"
          },
          "sku": {
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true,
            "type": "string",
            "maxLength": 255
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "description": "The type of the item",
            "$ref": "#/components/schemas/ItemType"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "title": "Quantity",
            "description": "The quantity of the item",
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "is_stackable": {
            "title": "Is Stackable",
            "description": "Whether the item is stackable",
            "type": "boolean"
          },
          "is_currency": {
            "title": "Is Currency",
            "description": "Whether the item is a currency.",
            "deprecated": true,
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the item was archived",
            "type": "number"
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "comment": {
            "title": "Comment",
            "description": "Internal comment for this item",
            "type": "string"
          },
          "is_system": {
            "title": "Is System",
            "description": "If true, this item will be skipped when sending webhooks",
            "nullable": true,
            "type": "boolean"
          },
          "meta": {
            "title": "Meta",
            "nullable": true,
            "additionalProperties": true,
            "type": "object"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "Child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "quantity_expression": {
            "description": "Math expression that computes the quantity for stackable items",
            "$ref": "#/components/schemas/MathExpression"
          }
        },
        "type": "object",
        "title": "ItemUpdate"
      },
      "ItemViewOption": {
        "type": "string",
        "enum": [
          "default",
          "skeleton"
        ],
        "title": "ItemViewOption"
      },
      "ItemsCreate": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/StoreItemCreate"
            },
            "type": "array",
            "maxItems": 50,
            "minItems": 1,
            "title": "Items"
          }
        },
        "type": "object",
        "required": [
          "items"
        ],
        "title": "ItemsCreate"
      },
      "LatestNewsBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "LatestNewsBlock",
            "enum": [
              "LatestNewsBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "variant": {
            "default": "standard",
            "$ref": "#/components/schemas/LatestNewsBlockVariant"
          },
          "hide_controls": {
            "title": "Hide Controls",
            "type": "boolean"
          },
          "is_featured": {
            "title": "Is Featured",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "LatestNewsBlock"
      },
      "LatestNewsBlockVariant": {
        "type": "string",
        "enum": [
          "standard",
          "carousel"
        ],
        "title": "LatestNewsBlockVariant"
      },
      "LatestPagesBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "LatestPagesBlock",
            "enum": [
              "LatestPagesBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "variant": {
            "$ref": "#/components/schemas/LatestPagesBlockVariant"
          },
          "collection_id": {
            "title": "Collection Id",
            "type": "string",
            "maxLength": 32
          },
          "category_id": {
            "title": "Category Id",
            "type": "string",
            "maxLength": 32
          },
          "is_featured": {
            "title": "Is Featured",
            "type": "boolean"
          },
          "is_paginated": {
            "title": "Is Paginated",
            "type": "boolean"
          },
          "show_all_tab": {
            "title": "Show All Tab",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "LatestPagesBlock"
      },
      "LatestPagesBlockVariant": {
        "type": "string",
        "enum": [
          "linear",
          "blur"
        ],
        "title": "LatestPagesBlockVariant"
      },
      "LeaderboardCardBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "LeaderboardCardBlock",
            "enum": [
              "LeaderboardCardBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "leaderboard_id": {
            "title": "Leaderboard Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "LeaderboardCardBlock"
      },
      "LeaderboardCollectionBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "LeaderboardCollectionBlock",
            "enum": [
              "LeaderboardCollectionBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "LeaderboardCollectionBlock"
      },
      "LeaderboardCreate": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the leaderboard."
          },
          "description": {
            "type": "string",
            "maxLength": 512,
            "title": "Description",
            "description": "The description of the leaderboard."
          },
          "visibility": {
            "$ref": "#/components/schemas/LeaderboardVisibility",
            "description": "The visibility of the leaderboard. It can be either 'general' or 'personal'. General leaderboards are visible to all users, while personal leaderboards are only visible to leaderboard participants.",
            "default": "general"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start date of the leaderboard in Unix timestamp.If set, the leaderboard will only be visible in game-hub after this date.",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end date of the leaderboard in Unix timestamp.If set, the leaderboard will only be visible in game-hub before this date.",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "name",
          "description"
        ],
        "title": "LeaderboardCreate"
      },
      "LeaderboardFullBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "LeaderboardFullBlock",
            "enum": [
              "LeaderboardFullBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "leaderboard_id": {
            "title": "Leaderboard Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "LeaderboardFullBlock"
      },
      "LeaderboardMemberRead": {
        "properties": {
          "member_id": {
            "type": "string",
            "title": "Member Id",
            "description": "The unique identifier of the member."
          },
          "member_data": {
            "type": "string",
            "title": "Member Data",
            "description": "The data of the member. This might be a members's name."
          },
          "member_subdata": {
            "title": "Member Subdata",
            "description": "The additional subdata related to the member, such as a clan, team or guild they belong to.",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "description": "The image URL of the member.",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "score": {
            "type": "integer",
            "title": "Score",
            "description": "The score of the member."
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the leaderboard member."
          },
          "created_at": {
            "type": "integer",
            "title": "Created At",
            "description": "The unix timestamp of when the leaderboard member was created."
          },
          "modified_at": {
            "title": "Modified At",
            "description": "The unix timestamp of when the leaderboard member was last modified.",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "member_id",
          "member_data",
          "score",
          "id",
          "created_at"
        ],
        "title": "LeaderboardMemberRead"
      },
      "LeaderboardMemberUpdate": {
        "properties": {
          "member_id": {
            "title": "Member Id",
            "description": "The unique identifier of the member.",
            "type": "string"
          },
          "member_data": {
            "title": "Member Data",
            "description": "The data of the member.",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "description": "The image URL of the member.",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "score": {
            "title": "Score",
            "description": "The score of the member.",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "LeaderboardMemberUpdate"
      },
      "LeaderboardRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the leaderboard."
          },
          "description": {
            "type": "string",
            "maxLength": 512,
            "title": "Description",
            "description": "The description of the leaderboard."
          },
          "visibility": {
            "$ref": "#/components/schemas/LeaderboardVisibility",
            "description": "The visibility of the leaderboard. It can be either 'general' or 'personal'. General leaderboards are visible to all users, while personal leaderboards are only visible to leaderboard participants.",
            "default": "general"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start date of the leaderboard in Unix timestamp.If set, the leaderboard will only be visible in game-hub after this date.",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end date of the leaderboard in Unix timestamp.If set, the leaderboard will only be visible in game-hub before this date.",
            "type": "integer"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the leaderboard."
          }
        },
        "type": "object",
        "required": [
          "name",
          "description",
          "id"
        ],
        "title": "LeaderboardRead"
      },
      "LeaderboardUpdate": {
        "properties": {
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "name": {
            "title": "Name",
            "description": "The name of the leaderboard.",
            "type": "string",
            "maxLength": 255
          },
          "description": {
            "title": "Description",
            "description": "The description of the leaderboard.",
            "type": "string",
            "maxLength": 512
          },
          "visibility": {
            "$ref": "#/components/schemas/LeaderboardVisibility"
          }
        },
        "type": "object",
        "title": "LeaderboardUpdate"
      },
      "LeaderboardVisibility": {
        "type": "string",
        "enum": [
          "general",
          "personal"
        ],
        "title": "LeaderboardVisibility"
      },
      "LimitedStockSettings": {
        "properties": {
          "total_quantity": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Total Quantity"
          },
          "type": {
            "$ref": "#/components/schemas/LimitedStockType"
          },
          "start_calculation_at": {
            "title": "Start Calculation At",
            "nullable": true,
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "total_quantity",
          "type"
        ],
        "title": "LimitedStockSettings"
      },
      "LimitedStockType": {
        "type": "string",
        "enum": [
          "emulating_remainder",
          "real_remainder"
        ],
        "title": "LimitedStockType"
      },
      "LimitedStoreBannerBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "LimitedStoreBannerBlock",
            "enum": [
              "LimitedStoreBannerBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "button": {
            "title": "Button",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string"
          },
          "link": {
            "title": "Link",
            "type": "string"
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "LimitedStoreBannerBlock"
      },
      "LinkPlayerRequest": {
        "properties": {
          "player_id": {
            "type": "string",
            "title": "Player Id",
            "description": "The unique player ID to link to the user."
          }
        },
        "type": "object",
        "required": [
          "player_id"
        ],
        "title": "LinkPlayerRequest"
      },
      "LocalPriceAmount": {
        "properties": {
          "amount": {
            "type": "integer",
            "title": "Amount",
            "description": "Price amount in minor currency units"
          },
          "amount_decimal": {
            "type": "number",
            "title": "Amount Decimal",
            "description": "Price amount in major currency units"
          },
          "display": {
            "type": "string",
            "title": "Display",
            "description": "Formatted price display string"
          }
        },
        "type": "object",
        "required": [
          "amount",
          "amount_decimal",
          "display"
        ],
        "title": "LocalPriceAmount"
      },
      "Locale": {
        "type": "string",
        "enum": [
          "cs",
          "de",
          "en",
          "es",
          "fr",
          "fr-CA",
          "hi",
          "id",
          "it",
          "ja",
          "ko",
          "ms",
          "nl",
          "no",
          "pl",
          "pt",
          "pt-BR",
          "ru",
          "sv",
          "th",
          "tr",
          "uk",
          "vi",
          "zh",
          "zh-Hant"
        ],
        "title": "Locale",
        "description": "Language codes according to ISO 639-1."
      },
      "LocaleCreate": {
        "properties": {
          "locale": {
            "$ref": "#/components/schemas/Locale"
          },
          "published_at": {
            "title": "Published At",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "locale"
        ],
        "title": "LocaleCreate"
      },
      "LocaleMapping": {
        "properties": {
          "cs": {
            "title": "Cs",
            "type": "string"
          },
          "de": {
            "title": "De",
            "type": "string"
          },
          "en": {
            "title": "En",
            "type": "string"
          },
          "es": {
            "title": "Es",
            "type": "string"
          },
          "fr": {
            "title": "Fr",
            "type": "string"
          },
          "fr-CA": {
            "title": "Fr-Ca",
            "type": "string"
          },
          "hi": {
            "title": "Hi",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "it": {
            "title": "It",
            "type": "string"
          },
          "ja": {
            "title": "Ja",
            "type": "string"
          },
          "ko": {
            "title": "Ko",
            "type": "string"
          },
          "ms": {
            "title": "Ms",
            "type": "string"
          },
          "nl": {
            "title": "Nl",
            "type": "string"
          },
          "no": {
            "title": "No",
            "type": "string"
          },
          "pl": {
            "title": "Pl",
            "type": "string"
          },
          "pt": {
            "title": "Pt",
            "type": "string"
          },
          "pt-BR": {
            "title": "Pt-Br",
            "type": "string"
          },
          "ru": {
            "title": "Ru",
            "type": "string"
          },
          "sv": {
            "title": "Sv",
            "type": "string"
          },
          "th": {
            "title": "Th",
            "type": "string"
          },
          "tr": {
            "title": "Tr",
            "type": "string"
          },
          "uk": {
            "title": "Uk",
            "type": "string"
          },
          "vi": {
            "title": "Vi",
            "type": "string"
          },
          "zh": {
            "title": "Zh",
            "type": "string"
          },
          "zh-Hant": {
            "title": "Zh-Hant",
            "type": "string"
          }
        },
        "type": "object",
        "title": "LocaleMapping"
      },
      "LocaleRead": {
        "properties": {
          "locale": {
            "$ref": "#/components/schemas/Locale"
          },
          "published_at": {
            "title": "Published At",
            "type": "integer"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "stats": {
            "$ref": "#/components/schemas/LocaleStats"
          },
          "status": {
            "$ref": "#/components/schemas/LocaleStatus"
          },
          "modified_at": {
            "title": "Modified At",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "locale",
          "id",
          "stats",
          "status"
        ],
        "title": "LocaleRead"
      },
      "LocaleStats": {
        "properties": {
          "total": {
            "type": "integer",
            "title": "Total",
            "default": 0
          },
          "done": {
            "type": "integer",
            "title": "Done",
            "default": 0
          }
        },
        "type": "object",
        "title": "LocaleStats"
      },
      "LocaleStatus": {
        "type": "string",
        "enum": [
          "clean",
          "translating",
          "synchronization",
          "fuzzy"
        ],
        "title": "LocaleStatus"
      },
      "LocaleUpdate": {
        "properties": {},
        "type": "object",
        "title": "LocaleUpdate"
      },
      "LocaleUrlMapping": {
        "properties": {
          "cs": {
            "title": "Cs",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "de": {
            "title": "De",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "en": {
            "title": "En",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "es": {
            "title": "Es",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "fr": {
            "title": "Fr",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "fr-CA": {
            "title": "Fr-Ca",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "hi": {
            "title": "Hi",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "id": {
            "title": "Id",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "it": {
            "title": "It",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "ja": {
            "title": "Ja",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "ko": {
            "title": "Ko",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "ms": {
            "title": "Ms",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "nl": {
            "title": "Nl",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "no": {
            "title": "No",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pl": {
            "title": "Pl",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pt": {
            "title": "Pt",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pt-BR": {
            "title": "Pt-Br",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "ru": {
            "title": "Ru",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "sv": {
            "title": "Sv",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "th": {
            "title": "Th",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "tr": {
            "title": "Tr",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "uk": {
            "title": "Uk",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "vi": {
            "title": "Vi",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "zh": {
            "title": "Zh",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "zh-Hant": {
            "title": "Zh-Hant",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          }
        },
        "type": "object",
        "title": "LocaleUrlMapping"
      },
      "LoginPlayerInfo": {
        "properties": {
          "attributes": {
            "description": "The player's attributes.",
            "$ref": "#/components/schemas/PlayerAttributes"
          },
          "custom_attributes": {
            "title": "Custom Attributes",
            "description": "The player's custom attributes.",
            "additionalProperties": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "integer"
                },
                {
                  "type": "number"
                },
                {
                  "type": "string"
                },
                {
                  "items": {
                    "anyOf": [
                      {
                        "type": "boolean"
                      },
                      {
                        "type": "integer"
                      },
                      {
                        "type": "number"
                      },
                      {
                        "type": "string"
                      }
                    ]
                  },
                  "type": "array"
                }
              ]
            },
            "type": "object"
          },
          "name": {
            "title": "Name",
            "description": "The player's name.",
            "type": "string"
          },
          "avatar_url": {
            "title": "Avatar Url",
            "description": "The player's avatar URL.",
            "type": "string"
          }
        },
        "type": "object",
        "title": "LoginPlayerInfo"
      },
      "LoginRequest": {
        "properties": {
          "player_id": {
            "type": "string",
            "title": "Player Id",
            "description": "The unique player ID."
          },
          "nonce": {
            "title": "Nonce",
            "description": "The nonce to authenticate the user.",
            "type": "string"
          },
          "redirect_path": {
            "title": "Redirect Path",
            "description": "The game hub page to redirect the player to.",
            "type": "string"
          },
          "player_info": {
            "description": "The player info object.",
            "$ref": "#/components/schemas/LoginPlayerInfo"
          }
        },
        "type": "object",
        "required": [
          "player_id"
        ],
        "title": "LoginRequest"
      },
      "LoginResponse": {
        "properties": {
          "authorization_url": {
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri",
            "title": "Authorization Url",
            "description": "The URL to authenticate the user on the Game Hub."
          }
        },
        "type": "object",
        "required": [
          "authorization_url"
        ],
        "title": "LoginResponse"
      },
      "LootboxGroup": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "weight": {
            "type": "integer",
            "maximum": 1000000.0,
            "minimum": 0.0,
            "title": "Weight"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "nested_items": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/LootboxGroup"
                },
                {
                  "$ref": "#/components/schemas/LootboxNestedItem"
                }
              ]
            },
            "type": "array",
            "title": "Nested Items"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "LootboxGroup",
            "enum": [
              "LootboxGroup"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "weight",
          "name",
          "nested_items"
        ],
        "title": "LootboxGroup"
      },
      "LootboxGroupRead": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "weight": {
            "type": "integer",
            "title": "Weight"
          },
          "nested_items": {
            "anyOf": [
              {
                "items": {
                  "$ref": "#/components/schemas/LootboxGroupRead"
                },
                "type": "array"
              },
              {
                "items": {
                  "$ref": "#/components/schemas/LootboxNestedItemRead"
                },
                "type": "array"
              }
            ],
            "title": "Nested Items"
          }
        },
        "type": "object",
        "required": [
          "id",
          "name",
          "weight",
          "nested_items"
        ],
        "title": "LootboxGroupRead"
      },
      "LootboxNestedItem": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "weight": {
            "type": "integer",
            "maximum": 1000000.0,
            "minimum": 0.0,
            "title": "Weight"
          },
          "count": {
            "type": "integer",
            "title": "Count"
          },
          "sku": {
            "type": "string",
            "title": "SKU"
          },
          "reward_mode": {
            "$ref": "#/components/schemas/RewardMode",
            "default": "repeating"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "LootboxNestedItem",
            "enum": [
              "LootboxNestedItem"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "weight",
          "count",
          "sku"
        ],
        "title": "LootboxNestedItem"
      },
      "LootboxNestedItemRead": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "type": "string"
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/PublicNestedItem"
            },
            "type": "array"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the item"
          },
          "properties": {
            "items": {
              "$ref": "#/components/schemas/ItemPropertyRelationRead"
            },
            "type": "array",
            "title": "Properties",
            "description": "The item properties"
          },
          "source": {
            "$ref": "#/components/schemas/ItemSource",
            "default": "order"
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "item_rarity": {
            "$ref": "#/components/schemas/ItemRarityRead"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the item",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the item",
            "type": "integer",
            "minimum": 0.0
          },
          "is_custom": {
            "type": "boolean",
            "title": "Is Custom",
            "default": false
          },
          "created_at": {
            "type": "number",
            "title": "Created At",
            "description": "The timestamp of when the item was created"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "The timestamp of when the item was modified",
            "type": "number"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the item was archived",
            "type": "number"
          },
          "price_minor_unit": {
            "title": "Price Minor Unit",
            "type": "integer"
          },
          "price_decimal": {
            "title": "Price Decimal",
            "type": "number"
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "PublicItemRead",
            "enum": [
              "PublicItemRead"
            ]
          },
          "nested_items_read": {
            "title": "Nested Items Read",
            "items": {
              "$ref": "#/components/schemas/PublicItemRead"
            },
            "type": "array"
          },
          "fallback_item": {
            "$ref": "#/components/schemas/PublicItemRead"
          },
          "quantity_after_bonus": {
            "title": "Quantity After Bonus",
            "type": "integer"
          },
          "quantity_bonus_value": {
            "title": "Quantity Bonus Value",
            "type": "integer"
          },
          "probability": {
            "type": "number",
            "title": "Probability",
            "description": "The probability of the item appearing"
          },
          "weight": {
            "type": "integer",
            "title": "Weight"
          },
          "reward_mode": {
            "$ref": "#/components/schemas/RewardMode",
            "default": "repeating"
          },
          "is_won": {
            "type": "boolean",
            "title": "Is Won",
            "description": "True when the user has already won this non-repeating item",
            "default": false
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "id",
          "created_at",
          "probability",
          "weight"
        ],
        "title": "LootboxNestedItemRead"
      },
      "LootboxRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "lootbox_settings": {
            "$ref": "#/components/schemas/LootboxSettings",
            "description": "The settings of the lootbox"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the lootbox"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "LootboxRead",
            "enum": [
              "LootboxRead"
            ]
          },
          "groups": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/LootboxGroupRead"
                },
                {
                  "$ref": "#/components/schemas/LootboxNestedItemRead"
                }
              ]
            },
            "type": "array",
            "title": "Groups",
            "description": "Groups with nested elements that can be dropped"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the lootbox was archived",
            "type": "number"
          },
          "comment": {
            "title": "Comment",
            "description": "Internal comment for this item",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "lootbox_settings",
          "id"
        ],
        "title": "LootboxRead"
      },
      "LootboxSettings": {
        "properties": {
          "groups": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/LootboxGroup"
                },
                {
                  "$ref": "#/components/schemas/LootboxNestedItem"
                }
              ]
            },
            "type": "array",
            "title": "Groups"
          },
          "claim_video_url": {
            "title": "Claim Video Url",
            "type": "string"
          },
          "claimed_video_url": {
            "title": "Claimed Video Url",
            "type": "string"
          },
          "claim_video_url_mov": {
            "title": "Claim Video Url Mov",
            "type": "string"
          },
          "claimed_video_url_mov": {
            "title": "Claimed Video Url Mov",
            "type": "string"
          },
          "view_type": {
            "$ref": "#/components/schemas/LootboxViewType",
            "default": "default"
          },
          "pity": {
            "$ref": "#/components/schemas/PitySettings"
          },
          "price_step_up": {
            "$ref": "#/components/schemas/PriceStepUpSettings"
          },
          "progress_reset_at": {
            "title": "Progress Reset At",
            "type": "number"
          }
        },
        "type": "object",
        "required": [
          "groups"
        ],
        "title": "LootboxSettings"
      },
      "LootboxViewType": {
        "type": "string",
        "enum": [
          "default",
          "roulette"
        ],
        "title": "LootboxViewType"
      },
      "LoyaltyItem": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the item"
          },
          "properties": {
            "items": {
              "$ref": "#/components/schemas/ItemPropertyRelationRead"
            },
            "type": "array",
            "title": "Properties",
            "description": "The item properties"
          },
          "source": {
            "$ref": "#/components/schemas/ItemSource",
            "default": "order"
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "item_rarity": {
            "$ref": "#/components/schemas/ItemRarityRead"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the item",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the item",
            "type": "integer",
            "minimum": 0.0
          },
          "is_custom": {
            "type": "boolean",
            "title": "Is Custom",
            "default": false
          },
          "created_at": {
            "type": "number",
            "title": "Created At",
            "description": "The timestamp of when the item was created"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "The timestamp of when the item was modified",
            "type": "number"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the item was archived",
            "type": "number"
          },
          "price_minor_unit": {
            "title": "Price Minor Unit",
            "type": "integer"
          },
          "price_decimal": {
            "title": "Price Decimal",
            "type": "number"
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "count": {
            "title": "Count",
            "description": "Optional quantity override for the tier item. If not provided, the item's default quantity is used.",
            "type": "integer",
            "exclusiveMinimum": 0.0
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "id",
          "created_at"
        ],
        "title": "LoyaltyItem"
      },
      "LoyaltyItemCreateUpdate": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the item"
          },
          "count": {
            "title": "Count",
            "description": "Optional quantity override for the tier item. If not provided, the item's default quantity is used.",
            "nullable": true,
            "type": "integer",
            "exclusiveMinimum": 0.0
          },
          "sku": {
            "title": "SKU",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "LoyaltyItemCreateUpdate"
      },
      "LoyaltyPointsPriceSource": {
        "type": "string",
        "enum": [
          "local_price",
          "base_price"
        ],
        "title": "LoyaltyPointsPriceSource"
      },
      "LoyaltyProgramBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "LoyaltyProgramBlock",
            "enum": [
              "LoyaltyProgramBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "variant": {
            "$ref": "#/components/schemas/LoyaltyProgramBlockVariant",
            "default": "standard"
          },
          "slider_on_mobile": {
            "title": "Slider On Mobile",
            "nullable": true,
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "LoyaltyProgramBlock"
      },
      "LoyaltyProgramBlockVariant": {
        "type": "string",
        "enum": [
          "standard",
          "expanded",
          "compact"
        ],
        "title": "LoyaltyProgramBlockVariant"
      },
      "LoyaltySettings": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the loyalty program"
          },
          "key": {
            "title": "Key",
            "description": "External key of the loyalty program",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "description": "A brief description of the loyalty program",
            "nullable": true,
            "type": "string",
            "maxLength": 1024
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image associated with the loyalty program",
            "nullable": true
          },
          "custom_icon_url": {
            "title": "Custom Icon Url",
            "description": "Custom icon URL for loyalty points",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "activated_at": {
            "title": "Activated At",
            "description": "Timestamp when the program was activated (UNIX time)",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "Timestamp when the program ends (UNIX time)",
            "nullable": true,
            "type": "integer"
          },
          "period": {
            "type": "integer",
            "title": "Period",
            "description": "The duration of the loyalty program in days"
          },
          "repeatable": {
            "type": "boolean",
            "title": "Repeatable",
            "description": "Whether the program is repeatable",
            "default": false
          },
          "requirements_expression": {
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "points_rate": {
            "type": "number",
            "title": "Points Rate",
            "description": "Exchange rate against the dollar"
          },
          "price_source": {
            "description": "Source of price for calculating loyalty points: local_price (convert from local price) or base_price (use base USD price directly)",
            "default": "local_price",
            "nullable": true,
            "$ref": "#/components/schemas/LoyaltyPointsPriceSource"
          },
          "excluded_sales_channels": {
            "title": "Excluded Sales Channels",
            "description": "The list of Order Sources (sales channels) where paid orders will not issue Loyalty Points",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/OrderSourceType"
            },
            "type": "array"
          },
          "show_store_button": {
            "type": "boolean",
            "title": "Show Store Button",
            "description": "Whether to show the 'Go to Store' button in the loyalty program widget",
            "default": true
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier for the loyalty tier"
          },
          "game_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Game Id",
            "description": "The unique identifier of the game the accosiated with the loyalty program"
          }
        },
        "type": "object",
        "required": [
          "name",
          "period",
          "points_rate",
          "id",
          "game_id"
        ],
        "title": "LoyaltySettings"
      },
      "LoyaltySettingsDashboardRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the loyalty program"
          },
          "key": {
            "title": "Key",
            "description": "External key of the loyalty program",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "description": "A brief description of the loyalty program",
            "nullable": true,
            "type": "string",
            "maxLength": 1024
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image associated with the loyalty program",
            "nullable": true
          },
          "custom_icon_url": {
            "title": "Custom Icon Url",
            "description": "Custom icon URL for loyalty points",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "activated_at": {
            "title": "Activated At",
            "description": "Timestamp when the program was activated (UNIX time)",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "Timestamp when the program ends (UNIX time)",
            "nullable": true,
            "type": "integer"
          },
          "period": {
            "type": "integer",
            "title": "Period",
            "description": "The duration of the loyalty program in days"
          },
          "repeatable": {
            "type": "boolean",
            "title": "Repeatable",
            "description": "Whether the program is repeatable",
            "default": false
          },
          "requirements_expression": {
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "points_rate": {
            "type": "number",
            "title": "Points Rate",
            "description": "Exchange rate against the dollar"
          },
          "price_source": {
            "description": "Source of price for calculating loyalty points: local_price (convert from local price) or base_price (use base USD price directly)",
            "default": "local_price",
            "nullable": true,
            "$ref": "#/components/schemas/LoyaltyPointsPriceSource"
          },
          "excluded_sales_channels": {
            "title": "Excluded Sales Channels",
            "description": "The list of Order Sources (sales channels) where paid orders will not issue Loyalty Points",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/OrderSourceType"
            },
            "type": "array"
          },
          "show_store_button": {
            "type": "boolean",
            "title": "Show Store Button",
            "description": "Whether to show the 'Go to Store' button in the loyalty program widget",
            "default": true
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier for the loyalty tier"
          },
          "game_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Game Id",
            "description": "The unique identifier of the game the accosiated with the loyalty program"
          },
          "time_window": {
            "$ref": "#/components/schemas/LoyaltyTimeWindow"
          }
        },
        "type": "object",
        "required": [
          "name",
          "period",
          "points_rate",
          "id",
          "game_id",
          "time_window"
        ],
        "title": "LoyaltySettingsDashboardRead"
      },
      "LoyaltySettingsUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string",
            "maxLength": 255
          },
          "key": {
            "title": "Key",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string",
            "maxLength": 1024
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url"
          },
          "custom_icon_url": {
            "title": "Custom Icon Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "activated_at": {
            "title": "Activated At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "period": {
            "title": "Period",
            "type": "integer",
            "exclusiveMaximum": 365.0,
            "minimum": 0.0
          },
          "repeatable": {
            "title": "Repeatable",
            "type": "boolean"
          },
          "requirements_expression": {
            "$ref": "#/components/schemas/Expression"
          },
          "points_rate": {
            "title": "Points Rate",
            "type": "number"
          },
          "price_source": {
            "description": "Source of price for calculating loyalty points: local_price (convert from local price) or base_price (use base USD price directly)",
            "default": "local_price",
            "nullable": true,
            "$ref": "#/components/schemas/LoyaltyPointsPriceSource"
          },
          "excluded_sales_channels": {
            "title": "Excluded Sales Channels",
            "description": "The list of Order Sources (sales channels) where paid orders will not issue Loyalty Points",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/OrderSourceType"
            },
            "type": "array"
          },
          "show_store_button": {
            "title": "Show Store Button",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "LoyaltySettingsUpdate"
      },
      "LoyaltyTier": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the loyalty tier"
          },
          "points": {
            "type": "integer",
            "title": "Points",
            "description": "Points required to reach this tier"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The image URL for this loyalty tier"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier for the loyalty tier"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/LoyaltyItem"
            },
            "type": "array",
            "title": "Items",
            "description": "Items associated with this loyalty tier"
          }
        },
        "type": "object",
        "required": [
          "name",
          "points",
          "image_url",
          "id",
          "items"
        ],
        "title": "LoyaltyTier"
      },
      "LoyaltyTierCreateUpdate": {
        "properties": {
          "id": {
            "title": "Id",
            "type": "string",
            "maxLength": 32
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name"
          },
          "points": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Points"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/LoyaltyItemCreateUpdate"
            },
            "type": "array",
            "maxItems": 10,
            "minItems": 1,
            "title": "Items"
          }
        },
        "type": "object",
        "required": [
          "name",
          "points",
          "image_url",
          "items"
        ],
        "title": "LoyaltyTierCreateUpdate"
      },
      "LoyaltyTimeWindow": {
        "properties": {
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "LoyaltyTimeWindow"
      },
      "MarketingConsent": {
        "properties": {
          "email": {
            "$ref": "#/components/schemas/EmailConsent"
          }
        },
        "type": "object",
        "title": "MarketingConsent"
      },
      "Marketplace": {
        "type": "string",
        "enum": [
          "none",
          "app_store",
          "google_play",
          "aghanim",
          "other",
          "one_store",
          "galaxy_store"
        ],
        "title": "Marketplace"
      },
      "MathExpression": {
        "properties": {
          "tokens": {
            "title": "Tokens",
            "items": {
              "$ref": "#/components/schemas/Token"
            },
            "type": "array"
          },
          "name": {
            "type": "string",
            "title": "Name"
          }
        },
        "type": "object",
        "required": [
          "name"
        ],
        "title": "MathExpression"
      },
      "MathExpressionSchema": {
        "properties": {
          "tokens": {
            "title": "Tokens",
            "items": {
              "$ref": "#/components/schemas/TokenSchema"
            },
            "type": "array"
          },
          "name": {
            "type": "string",
            "title": "Name"
          }
        },
        "type": "object",
        "required": [
          "name"
        ],
        "title": "MathExpressionSchema"
      },
      "MaxPurchaseLimitPeriodType": {
        "type": "string",
        "enum": [
          "global",
          "personal"
        ],
        "title": "MaxPurchaseLimitPeriodType"
      },
      "MobilePopupActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "MobilePopupActionNode",
            "enum": [
              "MobilePopupActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "body": {
            "title": "Body",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "content_type": {
            "$ref": "#/components/schemas/HubPopupContentType"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "button_link": {
            "title": "Button Link",
            "type": "string"
          },
          "items": {
            "title": "Items",
            "items": {
              "$ref": "#/components/schemas/CommunicationItem"
            },
            "type": "array"
          },
          "url": {
            "title": "Url",
            "type": "string"
          },
          "response": {
            "title": "Response",
            "type": "string"
          },
          "status_code": {
            "title": "Status Code",
            "type": "integer"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "MobilePopupActionNode"
      },
      "MobilePushActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "MobilePushActionNode",
            "enum": [
              "MobilePushActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "body": {
            "title": "Body",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "content_type": {
            "$ref": "#/components/schemas/HubPopupContentType"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "button_link": {
            "title": "Button Link",
            "type": "string"
          },
          "items": {
            "title": "Items",
            "items": {
              "$ref": "#/components/schemas/CommunicationItem"
            },
            "type": "array"
          },
          "url": {
            "title": "Url",
            "type": "string"
          },
          "response": {
            "title": "Response",
            "type": "string"
          },
          "status_code": {
            "title": "Status Code",
            "type": "integer"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "MobilePushActionNode"
      },
      "Mode": {
        "type": "string",
        "enum": [
          "dark",
          "light",
          "auto"
        ],
        "title": "Mode"
      },
      "NestedItem": {
        "properties": {
          "id": {
            "title": "Id",
            "type": "string",
            "maxLength": 32
          },
          "count": {
            "title": "Count",
            "type": "integer"
          },
          "sku": {
            "title": "SKU",
            "type": "string"
          },
          "is_featured": {
            "title": "Is Featured",
            "type": "boolean"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "view_type": {
            "$ref": "#/components/schemas/NestedItemViewType"
          },
          "quantity_expression": {
            "$ref": "#/components/schemas/MathExpression"
          }
        },
        "type": "object",
        "title": "NestedItem"
      },
      "NestedItemViewType": {
        "type": "string",
        "enum": [
          "separated"
        ],
        "title": "NestedItemViewType"
      },
      "NewsBulkDelete": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "NewsBulkDelete"
      },
      "NewsBulkUpdate": {
        "properties": {
          "slug": {
            "title": "Slug",
            "description": "The slug of the news",
            "unique": true,
            "type": "string",
            "maxLength": 100
          },
          "title": {
            "title": "Title",
            "description": "The title of the news",
            "type": "string",
            "maxLength": 255
          },
          "description": {
            "title": "Description",
            "description": "The description of the news",
            "type": "string"
          },
          "text": {
            "title": "Text",
            "description": "The text of the news",
            "type": "string",
            "maxLength": 10000
          },
          "html": {
            "title": "Html",
            "description": "The html content of the news",
            "type": "string"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the news"
          },
          "tags": {
            "title": "Tags",
            "description": "The tags of the news, separated by commas",
            "type": "string"
          },
          "order_id": {
            "title": "Order Id",
            "description": "The order ID of the news",
            "default": 0,
            "type": "integer"
          },
          "category": {
            "description": "The category of the news",
            "$ref": "#/components/schemas/NewsCategory"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the news",
            "type": "integer"
          },
          "datetime": {
            "title": "Datetime",
            "description": "The date of the news",
            "type": "integer"
          },
          "render_options": {
            "description": "The additional render options of the news",
            "$ref": "#/components/schemas/NewsRenderOptions"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the news",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Determines the visibility of the news in the Carousel news block",
            "type": "boolean"
          },
          "collection_id": {
            "title": "Collection Id",
            "description": "The collection ID this news belongs to",
            "type": "string",
            "maxLength": 32
          },
          "requirements_expression": {
            "description": "Targeting rules; the news is shown only to matching users",
            "$ref": "#/components/schemas/ExpressionSchema"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the news"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "NewsBulkUpdate"
      },
      "NewsCategory": {
        "type": "string",
        "enum": [
          "bugfix",
          "company_news",
          "event",
          "maintenance",
          "update"
        ],
        "title": "NewsCategory"
      },
      "NewsCreate": {
        "properties": {
          "date": {
            "title": "Date",
            "description": "The date of the news",
            "type": "string",
            "format": "date"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the news"
          },
          "tags": {
            "type": "string",
            "title": "Tags",
            "description": "The tags of the news, separated by commas"
          },
          "order_id": {
            "type": "integer",
            "title": "Order Id",
            "description": "The order ID of the news",
            "default": 0
          },
          "category": {
            "$ref": "#/components/schemas/NewsCategory",
            "description": "The category of the news"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the news",
            "type": "integer"
          },
          "datetime": {
            "type": "integer",
            "title": "Datetime",
            "description": "The date of the news"
          },
          "render_options": {
            "description": "The additional render options of the news",
            "$ref": "#/components/schemas/NewsRenderOptions"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the news",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Determines the visibility of the news in the Carousel news block",
            "type": "boolean"
          },
          "collection_id": {
            "title": "Collection Id",
            "description": "The collection ID this news belongs to",
            "type": "string",
            "maxLength": 32
          },
          "requirements_expression": {
            "description": "Targeting rules; the news is shown only to matching users",
            "$ref": "#/components/schemas/ExpressionSchema"
          },
          "slug": {
            "type": "string",
            "maxLength": 100,
            "title": "Slug",
            "description": "The slug of the news",
            "nullable": false,
            "unique": true
          },
          "title": {
            "type": "string",
            "maxLength": 255,
            "title": "Title",
            "description": "The title of the news"
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of the news"
          },
          "text": {
            "type": "string",
            "maxLength": 10000,
            "title": "Text",
            "description": "The text of the news"
          },
          "html": {
            "title": "Html",
            "description": "The html content of the news",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "tags",
          "category",
          "datetime",
          "slug",
          "title",
          "description",
          "text"
        ],
        "title": "NewsCreate"
      },
      "NewsGroup": {
        "type": "string",
        "enum": [
          "event",
          "update",
          "other"
        ],
        "title": "NewsGroup",
        "description": "An enumeration."
      },
      "NewsRead": {
        "properties": {
          "date": {
            "title": "Date",
            "description": "The date of the news",
            "type": "string",
            "format": "date"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the news"
          },
          "tags": {
            "type": "string",
            "title": "Tags",
            "description": "The tags of the news, separated by commas"
          },
          "order_id": {
            "type": "integer",
            "title": "Order Id",
            "description": "The order ID of the news",
            "default": 0
          },
          "category": {
            "$ref": "#/components/schemas/NewsCategory",
            "description": "The category of the news"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the news",
            "type": "integer"
          },
          "datetime": {
            "type": "integer",
            "title": "Datetime",
            "description": "The date of the news"
          },
          "render_options": {
            "description": "The additional render options of the news",
            "$ref": "#/components/schemas/NewsRenderOptions"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the news",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Determines the visibility of the news in the Carousel news block",
            "type": "boolean"
          },
          "collection_id": {
            "title": "Collection Id",
            "description": "The collection ID this news belongs to",
            "type": "string",
            "maxLength": 32
          },
          "requirements_expression": {
            "description": "Targeting rules; the news is shown only to matching users",
            "$ref": "#/components/schemas/ExpressionSchema"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the news"
          },
          "slug": {
            "type": "string",
            "title": "Slug",
            "description": "The slug of the news"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "description": "The title of the news"
          },
          "description": {
            "title": "Description",
            "description": "The description of the news",
            "type": "string"
          },
          "text": {
            "type": "string",
            "title": "Text",
            "description": "The text of the news"
          },
          "html": {
            "title": "Html",
            "description": "The html content of the news",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "tags",
          "category",
          "datetime",
          "id",
          "slug",
          "title",
          "text"
        ],
        "title": "NewsRead"
      },
      "NewsRenderOptions": {
        "properties": {
          "is_promo_store": {
            "title": "Is Promo Store",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "NewsRenderOptions"
      },
      "NewsSortField": {
        "type": "string",
        "enum": [
          "slug",
          "title",
          "description",
          "date",
          "datetime",
          "tags",
          "category"
        ],
        "title": "NewsSortField",
        "description": "An enumeration."
      },
      "NewsState": {
        "type": "string",
        "enum": [
          "draft",
          "published"
        ],
        "title": "NewsState",
        "description": "An enumeration."
      },
      "NewsUpdate": {
        "properties": {
          "slug": {
            "title": "Slug",
            "description": "The slug of the news",
            "unique": true,
            "type": "string",
            "maxLength": 100
          },
          "title": {
            "title": "Title",
            "description": "The title of the news",
            "type": "string",
            "maxLength": 255
          },
          "description": {
            "title": "Description",
            "description": "The description of the news",
            "type": "string"
          },
          "text": {
            "title": "Text",
            "description": "The text of the news",
            "type": "string",
            "maxLength": 10000
          },
          "html": {
            "title": "Html",
            "description": "The html content of the news",
            "type": "string"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the news"
          },
          "tags": {
            "title": "Tags",
            "description": "The tags of the news, separated by commas",
            "type": "string"
          },
          "order_id": {
            "title": "Order Id",
            "description": "The order ID of the news",
            "default": 0,
            "type": "integer"
          },
          "category": {
            "description": "The category of the news",
            "$ref": "#/components/schemas/NewsCategory"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the news",
            "type": "integer"
          },
          "datetime": {
            "title": "Datetime",
            "description": "The date of the news",
            "type": "integer"
          },
          "render_options": {
            "description": "The additional render options of the news",
            "$ref": "#/components/schemas/NewsRenderOptions"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the news",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Determines the visibility of the news in the Carousel news block",
            "type": "boolean"
          },
          "collection_id": {
            "title": "Collection Id",
            "description": "The collection ID this news belongs to",
            "type": "string",
            "maxLength": 32
          },
          "requirements_expression": {
            "description": "Targeting rules; the news is shown only to matching users",
            "$ref": "#/components/schemas/ExpressionSchema"
          }
        },
        "type": "object",
        "title": "NewsUpdate"
      },
      "Offer": {
        "properties": {
          "key": {
            "type": "string",
            "title": "Key",
            "description": "Offer unique key."
          },
          "name": {
            "title": "Name",
            "description": "Offer display name.",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "key"
        ],
        "title": "Offer"
      },
      "OfferType": {
        "type": "string",
        "enum": [
          "sequential",
          "rolling",
          "range",
          "pick_one",
          "piggy_bank"
        ],
        "title": "OfferType"
      },
      "Order": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique ID of the order."
          },
          "player_id": {
            "type": "string",
            "title": "Player Id",
            "description": "The unique identifier for the player who placed the order."
          },
          "amount": {
            "type": "integer",
            "title": "Amount",
            "description": "The amount of the order in minor [currency units](https://docs.aghanim.com/currencies/)."
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the order."
          },
          "email": {
            "title": "Email",
            "description": "The player's email address.",
            "nullable": true,
            "type": "string"
          },
          "locale": {
            "description": "The player's preferred locale or language.",
            "nullable": true,
            "$ref": "#/components/schemas/Locale"
          },
          "country": {
            "title": "Country",
            "description": "The two-letter country code (ISO 3166-1 alpha-2) of the order.",
            "nullable": true,
            "type": "string",
            "pattern": "^[A-Z]{2}$"
          },
          "ip_address": {
            "title": "Ip Address",
            "description": "The IP address of the player who placed the order.",
            "nullable": true,
            "type": "string"
          },
          "payment_number": {
            "title": "Payment Number",
            "description": "The payment number associated with the order.",
            "nullable": true,
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/OrderStatus",
            "description": "The current status of the order."
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": "array",
            "title": "Items",
            "description": "The list of items included in the order."
          },
          "coupons": {
            "title": "Coupons",
            "description": "The list of coupons applied to the order.",
            "items": {
              "$ref": "#/components/schemas/Coupon"
            },
            "type": "array"
          },
          "platform": {
            "description": "The platform of the order.",
            "nullable": true,
            "$ref": "#/components/schemas/Platform"
          }
        },
        "type": "object",
        "required": [
          "id",
          "player_id",
          "amount",
          "currency",
          "status",
          "items"
        ],
        "title": "Order"
      },
      "OrderCreate": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/OrderItemCreate"
            },
            "type": "array",
            "minItems": 1,
            "title": "Items",
            "description": "A list of items the player wants to purchase."
          },
          "player_id": {
            "type": "string",
            "title": "Player Id",
            "description": "A unique identifier for the player making the purchase."
          },
          "email": {
            "title": "Email",
            "description": "The player's email address, used as the billing email address.",
            "type": "string",
            "format": "email"
          },
          "player_info": {
            "description": "Additional player information.",
            "$ref": "#/components/schemas/PlayerInfo"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The percentage of discount applied to the order.",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "eligible_for_reward_points": {
            "title": "Eligible For Reward Points",
            "description": "The number of reward points the order is eligible for.",
            "type": "integer"
          },
          "eligible_for_loyalty_points": {
            "title": "Eligible For Loyalty Points",
            "description": "The number of loyalty points the order is eligible for.",
            "type": "integer"
          },
          "country": {
            "title": "Country",
            "description": "The two-letter country code (ISO 3166-1 alpha-2) for the order. If not provided, the country will be determined by the IP address of the player when the checkout page is opened.",
            "type": "string",
            "pattern": "^[A-Z]{2}$"
          },
          "country_locked": {
            "title": "Country Locked",
            "description": "Whether the order country is locked after creation. If `true`, the player cannot pay from a different country than the one initially specified in the `country` field.",
            "type": "boolean"
          },
          "redirect_settings": {
            "description": "The settings for redirecting the player after a successful payment. Depending on the mode, the player will be redirected to either `back_to_game_url` or `back_to_store_url`, if provided.",
            "$ref": "#/components/schemas/RedirectSettings"
          },
          "ui_settings": {
            "description": "The UI settings for checkout page.",
            "$ref": "#/components/schemas/UISettings"
          },
          "ip_address": {
            "title": "Ip Address",
            "description": "The IP address of the player placing the order.",
            "type": "string",
            "format": "ipvanyaddress"
          },
          "user_agent": {
            "title": "User Agent",
            "description": "The User-Agent string representing the player's browser properties, including browser type, version, and operating system",
            "type": "string"
          },
          "locale": {
            "description": "The player's preferred locale or language.",
            "$ref": "#/components/schemas/Locale"
          },
          "return_url": {
            "title": "Return Url",
            "description": "DEPRECATED: Use `back_to_game_url` or `back_to_store_url` instead. The URL to redirect the player after the purchase.",
            "deprecated": true,
            "type": "string"
          },
          "back_to_game_url": {
            "title": "Back To Game Url",
            "description": "The URL to redirect the player back to the game after the purchase. Supports formatting with {order_id}.",
            "type": "string"
          },
          "back_to_store_url": {
            "title": "Back To Store Url",
            "description": "The URL to redirect the player back to the store. Supports formatting with {order_id}.",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "payment_methods_enabled": {
            "title": "Payment Methods Enabled",
            "description": "The list of payment methods enabled for the order.",
            "items": {
              "$ref": "#/components/schemas/PublicPaymentMethod"
            },
            "type": "array"
          },
          "coupons_enabled": {
            "title": "Coupons Enabled",
            "description": "Whether coupons are enabled for the order.",
            "type": "boolean"
          },
          "save_payment_method_enabled": {
            "title": "Save Payment Method Enabled",
            "description": "Whether the player is allowed to save a payment method (card, wallet) for future purchases on this order. Enabled by default.",
            "type": "boolean"
          },
          "metadata": {
            "title": "Metadata",
            "description": "The metadata object structured as key-value pairs to store additional information about the order.",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "price_decimal": {
            "anyOf": [
              {
                "type": "number",
                "maximum": 1000000000.0,
                "minimum": 0.0
              },
              {
                "type": "string",
                "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
              }
            ],
            "title": "Price Decimal",
            "description": "Order price in decimal units. Overrides item price if set.",
            "nullable": true
          },
          "currency": {
            "description": "Order currency (ISO 4217 code). See supported currencies.",
            "nullable": true,
            "$ref": "#/components/schemas/Currency"
          },
          "currency_preferred": {
            "type": "boolean",
            "title": "Currency Preferred",
            "description": "Prefer the specified currency and ignore country-specific pricing.",
            "default": false
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The unique identifier for the price template.",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "platform": {
            "description": "The platform of the order.",
            "nullable": true,
            "$ref": "#/components/schemas/OrderCreatePlatform"
          },
          "expires_at": {
            "title": "Expires At",
            "description": "Order expiration date in Unix epoch time. If not provided, defaults to 3 days from creation. Orders cannot be paid after this date.",
            "nullable": true,
            "type": "integer"
          },
          "coupon_code": {
            "title": "Coupon Code",
            "description": "A coupon code to apply to the order on creation. Used for creator attribution when the code belongs to a creator program.",
            "nullable": true,
            "type": "string",
            "minLength": 1
          },
          "creator_settings": {
            "title": "Creator Settings",
            "description": "Creator-program-related settings for this order.",
            "$ref": "#/components/schemas/CreatorSettings"
          },
          "experiments": {
            "title": "Experiments",
            "description": "The A/B test assignments.",
            "items": {
              "$ref": "#/components/schemas/Experiment"
            },
            "type": "array",
            "maxItems": 20
          }
        },
        "type": "object",
        "required": [
          "items",
          "player_id"
        ],
        "title": "OrderCreate",
        "examples": [
          {
            "items": [
              {
                "sku": "crystal"
              }
            ],
            "player_id": "r2d2-c3po"
          }
        ]
      },
      "OrderCreatePlatform": {
        "type": "string",
        "enum": [
          "ios",
          "android",
          "other"
        ],
        "title": "OrderCreatePlatform"
      },
      "OrderCreateResponse": {
        "properties": {
          "order_id": {
            "type": "string",
            "title": "Order Id",
            "description": "The unique ID of the created order."
          },
          "checkout_url": {
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri",
            "title": "Checkout Url",
            "description": "The URL to redirect the player to complete the purchase."
          }
        },
        "type": "object",
        "required": [
          "order_id",
          "checkout_url"
        ],
        "title": "OrderCreateResponse",
        "examples": [
          {
            "checkout_url": "https://pay.aghanim.com/order/ord_XXXXXXX",
            "order_id": "ord_XXXXXXX"
          }
        ]
      },
      "OrderItemCreate": {
        "properties": {
          "sku": {
            "type": "string",
            "minLength": 1,
            "title": "SKU",
            "description": "Stock Keeping Unit (SKU) identifier."
          },
          "name": {
            "title": "Name",
            "description": "The name of the item.",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item",
            "nullable": true
          },
          "quantity": {
            "title": "Quantity",
            "description": "The quantity of the item.",
            "nullable": true,
            "type": "integer",
            "exclusiveMinimum": 0.0
          },
          "store_key": {
            "title": "Store Key",
            "description": "The key of the store where order taking store item for discount and benefits.",
            "nullable": true,
            "type": "string"
          },
          "selected_plan_key": {
            "title": "Selected Plan Key",
            "description": "The key of the subscription plan to pre-select on the checkout page. Only applicable to subscription SKUs.",
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "sku"
        ],
        "title": "OrderItemCreate"
      },
      "OrderItemRead": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique ID of the item."
          },
          "sku": {
            "type": "string",
            "minLength": 1,
            "title": "SKU",
            "description": "Stock Keeping Unit (SKU) identifier."
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the item."
          },
          "source": {
            "$ref": "#/components/schemas/ItemSource",
            "description": "The source of the payment item."
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "description": "The URL of the image for the item",
            "type": "string"
          },
          "quantity": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Quantity",
            "description": "The quantity of the item."
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "Nested items of the bundle.",
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": "array"
          },
          "selected_plan_key": {
            "title": "Selected Plan Key",
            "description": "The key of the subscription plan to pre-select on the checkout page. Only applicable to subscription SKUs.",
            "nullable": true,
            "type": "string"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item."
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/)",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices",
            "type": "integer"
          },
          "price_decimal": {
            "title": "Price Decimal",
            "description": "price in decimal units",
            "type": "number"
          }
        },
        "type": "object",
        "required": [
          "id",
          "sku",
          "name",
          "source",
          "quantity",
          "currency"
        ],
        "title": "OrderItemRead"
      },
      "OrderRead": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique ID of the order."
          },
          "receipt_number": {
            "title": "Receipt Number",
            "description": "The number of the payment in receipt",
            "type": "string"
          },
          "amount": {
            "type": "integer",
            "title": "Amount",
            "description": "The amount of the order."
          },
          "amount_before_discount": {
            "type": "integer",
            "title": "Amount Before Discount",
            "description": "The amount of the order before discount."
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the order."
          },
          "player_id": {
            "type": "string",
            "title": "Player Id",
            "description": "The unique identifier for the player making the purchase."
          },
          "email": {
            "title": "Email",
            "description": "The player's email address.",
            "type": "string"
          },
          "player_info": {
            "description": "Additional player information.",
            "$ref": "#/components/schemas/PlayerInfo"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/OrderItemRead"
            },
            "type": "array",
            "title": "Items",
            "description": "The list of items the player wants to purchase included bonus items."
          },
          "status": {
            "$ref": "#/components/schemas/OrderStatus",
            "description": "The current status of the order."
          },
          "created_at": {
            "type": "integer",
            "title": "Created At",
            "description": "Order creation date in Unix epoch time."
          },
          "paid_at": {
            "title": "Paid At",
            "description": "Order payment date in Unix epoch time.",
            "type": "integer"
          },
          "metadata": {
            "title": "Metadata",
            "description": "The metadata object structured as key-value pairs to store additional information about the order.",
            "additionalProperties": true,
            "type": "object"
          },
          "expires_at": {
            "title": "Expires At",
            "description": "Order expiration date in Unix epoch time (seconds). Orders cannot be paid after this date.",
            "type": "integer"
          },
          "checkout_url": {
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri",
            "title": "Checkout Url",
            "description": "The URL to redirect the player to complete the purchase."
          },
          "redirect_settings": {
            "description": "The settings for redirecting the player after a successful payment. Depending on the mode, the player will be redirected to either `back_to_game_url` or `back_to_store_url`, if provided.",
            "$ref": "#/components/schemas/RedirectSettings"
          },
          "ui_settings": {
            "description": "The UI settings for checkout page.",
            "$ref": "#/components/schemas/UISettings"
          },
          "coupons_enabled": {
            "title": "Coupons Enabled",
            "description": "Whether coupons are enabled for the order.",
            "type": "boolean"
          },
          "save_payment_method_enabled": {
            "title": "Save Payment Method Enabled",
            "description": "Whether the player is allowed to save a payment method (card, wallet) for future purchases on this order. Enabled by default.",
            "type": "boolean"
          },
          "applied_reward_points": {
            "title": "Applied Reward Points",
            "description": "The applied reward points for the order that allowed you to receive a discount.",
            "type": "integer"
          },
          "coupons": {
            "title": "Coupons",
            "description": "The list of coupons applied to the order.",
            "items": {
              "$ref": "#/components/schemas/Coupon"
            },
            "type": "array"
          },
          "eligible_for_reward_points": {
            "title": "Eligible For Reward Points",
            "description": "The number of reward points the player is eligible to receive for this order.",
            "type": "integer"
          },
          "eligible_for_loyalty_points": {
            "title": "Eligible For Loyalty Points",
            "description": "The number of loyalty points the player is eligible to receive for this order.",
            "type": "integer"
          },
          "rewards": {
            "description": "The virtual currency rewards the player is eligible to receive for this order.",
            "$ref": "#/components/schemas/OrderRewards"
          },
          "experiments": {
            "title": "Experiments",
            "description": "The A/B test assignments.",
            "items": {
              "$ref": "#/components/schemas/Experiment"
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "id",
          "amount",
          "amount_before_discount",
          "currency",
          "player_id",
          "items",
          "status",
          "created_at",
          "checkout_url"
        ],
        "title": "OrderRead",
        "examples": [
          {
            "checkout_url": "https://pay.aghanim.com/order/ord_XXXXXXX",
            "created_at": 1690000000,
            "id": "ord_XXXXXXX",
            "items": [
              {
                "sku": "crystal"
              }
            ],
            "metadata": {
              "key": "value"
            },
            "paid_at": 1690000100,
            "player_id": "r2d2-c3po",
            "status": "paid"
          }
        ]
      },
      "OrderRefund": {
        "properties": {
          "reason": {
            "type": "string",
            "title": "Reason",
            "description": "Reason of refund order"
          }
        },
        "type": "object",
        "required": [
          "reason"
        ],
        "title": "OrderRefund"
      },
      "OrderRewards": {
        "properties": {
          "available": {
            "items": {
              "$ref": "#/components/schemas/OrderVirtualCurrencyReward"
            },
            "type": "array",
            "title": "Available"
          }
        },
        "type": "object",
        "required": [
          "available"
        ],
        "title": "OrderRewards"
      },
      "OrderSourceType": {
        "type": "string",
        "enum": [
          "s2s",
          "hub",
          "sdk",
          "checkout_link"
        ],
        "title": "OrderSourceType"
      },
      "OrderStatus": {
        "type": "string",
        "enum": [
          "created",
          "captured",
          "paid",
          "canceled",
          "refunded",
          "refund_requested",
          "reattempted",
          "disputed"
        ],
        "title": "OrderStatus"
      },
      "OrderUpdate": {
        "properties": {
          "handled_by_client": {
            "title": "Handled By Client",
            "description": "Whether the order was handled/consumed by the client or not.",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "OrderUpdate"
      },
      "OrderVirtualCurrencyReward": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "virtual_currency",
            "enum": [
              "virtual_currency"
            ]
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "virtual_currency_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Virtual Currency Id"
          },
          "amount": {
            "type": "integer",
            "title": "Amount"
          },
          "issue_status": {
            "$ref": "#/components/schemas/RewardIssueStatus"
          },
          "icon_url": {
            "title": "Icon Url",
            "type": "string"
          },
          "sku": {
            "title": "SKU",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "virtual_currency_id",
          "amount"
        ],
        "title": "OrderVirtualCurrencyReward"
      },
      "PWAPromptActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "PWAPromptActionNode",
            "enum": [
              "PWAPromptActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "body": {
            "title": "Body",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "content_type": {
            "$ref": "#/components/schemas/HubPopupContentType"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "button_link": {
            "title": "Button Link",
            "type": "string"
          },
          "items": {
            "title": "Items",
            "items": {
              "$ref": "#/components/schemas/CommunicationItem"
            },
            "type": "array"
          },
          "position": {
            "$ref": "#/components/schemas/PWAPromptPosition"
          },
          "skip_dialog": {
            "title": "Skip Dialog",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "PWAPromptActionNode"
      },
      "PWAPromptPosition": {
        "type": "string",
        "enum": [
          "top",
          "bottom"
        ],
        "title": "PWAPromptPosition",
        "description": "Where the hub renders the PWA install prompt."
      },
      "PageBulkDelete": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "PageBulkDelete"
      },
      "PageBulkUpdate": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "External unique page identifier",
            "nullable": true,
            "type": "string"
          },
          "title": {
            "title": "Title",
            "description": "The title of the page",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "description": "The description of the page",
            "type": "string"
          },
          "text": {
            "title": "Text",
            "type": "string"
          },
          "slug": {
            "title": "Slug",
            "description": "The slug of the page",
            "unique": true,
            "type": "string",
            "maxLength": 100,
            "minLength": 3
          },
          "layout": {
            "description": "The layout of the page. Define child blocks for the page",
            "nullable": true,
            "$ref": "#/components/schemas/PageLayout"
          },
          "html": {
            "title": "Html",
            "description": "The HTML content of the page",
            "nullable": true,
            "type": "string"
          },
          "type": {
            "description": "The type of the page layout",
            "nullable": true,
            "$ref": "#/components/schemas/PageLayoutType"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "description": "The `page.get` webhook serving the layout. A filled value makes the layout come from the webhook instead of the stored blocks.",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "parent_id": {
            "title": "Parent Id",
            "description": "The ID of the parent page",
            "nullable": true,
            "type": "string"
          },
          "datetime": {
            "title": "Datetime",
            "description": "The date of the page",
            "nullable": true,
            "type": "integer"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the page",
            "nullable": true
          },
          "featured_image_url": {
            "title": "Featured Image Url",
            "description": "The URL of the featured image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_image_url": {
            "title": "Pinned Image Url",
            "description": "The URL of the pinned image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_webview_image_url": {
            "title": "Pinned Webview Image Url",
            "description": "The URL of the pinned image for the page (in webview)",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the Page",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "description": "The position of the page in the page list",
            "nullable": true,
            "type": "integer"
          },
          "render_options": {
            "description": "The additional render options of the page",
            "$ref": "#/components/schemas/PageRenderOptions"
          },
          "child_sort_settings": {
            "description": "The sort settings for the child pages",
            "nullable": true,
            "$ref": "#/components/schemas/PageSortSettings"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Whether the page is featured",
            "nullable": true,
            "type": "boolean"
          },
          "is_pinned": {
            "title": "Is Pinned",
            "description": "Whether the page is pinned",
            "nullable": true,
            "type": "boolean"
          },
          "pin_scope": {
            "description": "How far the pin reaches: global pins also rank first among the pages of all sibling collections, collection pins only among the pages of their own collection. Unset is read as global.",
            "nullable": true,
            "$ref": "#/components/schemas/PagePinScope"
          },
          "tags": {
            "title": "Tags",
            "description": "Tags for the page",
            "nullable": true,
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "custom_url": {
            "title": "Custom Url",
            "description": "Custom URL that the page card links to instead of the page itself",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "button_text": {
            "title": "Button Text",
            "description": "Text for the page card button",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "requirements_expression": {
            "description": "Targeting rules; the page is shown only to matching users",
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the page"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "PageBulkUpdate"
      },
      "PageCreate": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "External unique page identifier",
            "type": "string"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "description": "The title of the page"
          },
          "text": {
            "type": "string",
            "title": "Text"
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of the page"
          },
          "slug": {
            "type": "string",
            "maxLength": 100,
            "minLength": 3,
            "title": "Slug",
            "description": "The slug of the page",
            "unique": true
          },
          "layout": {
            "description": "The layout of the page. Define child blocks for the page",
            "$ref": "#/components/schemas/PageLayout"
          },
          "html": {
            "title": "Html",
            "description": "The HTML content of the page",
            "type": "string"
          },
          "type": {
            "description": "The type of the page layout",
            "$ref": "#/components/schemas/PageLayoutType"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "description": "The `page.get` webhook serving the layout. A filled value makes the layout come from the webhook instead of the stored blocks.",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "parent_id": {
            "title": "Parent Id",
            "description": "The ID of the parent page",
            "nullable": true,
            "type": "string"
          },
          "date": {
            "title": "Date",
            "nullable": true,
            "type": "string",
            "format": "date"
          },
          "datetime": {
            "title": "Datetime",
            "description": "The date of the page",
            "nullable": true,
            "type": "integer"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The date of the page",
            "nullable": true
          },
          "featured_image_url": {
            "title": "Featured Image Url",
            "description": "The URL of the featured image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_image_url": {
            "title": "Pinned Image Url",
            "description": "The URL of the pinned image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_webview_image_url": {
            "title": "Pinned Webview Image Url",
            "description": "The URL of the pinned image for the page (in webview)",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the Page",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "description": "The position of the page in the page list",
            "nullable": true,
            "type": "integer"
          },
          "render_options": {
            "description": "The additional render options of the page",
            "$ref": "#/components/schemas/PageRenderOptions"
          },
          "child_sort_settings": {
            "description": "The sort settings for the child pages",
            "nullable": true,
            "$ref": "#/components/schemas/PageSortSettings"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Whether the page is featured",
            "nullable": true,
            "type": "boolean"
          },
          "is_pinned": {
            "title": "Is Pinned",
            "description": "Whether the page is pinned",
            "nullable": true,
            "type": "boolean"
          },
          "pin_scope": {
            "description": "How far the pin reaches: global pins also rank first among the pages of all sibling collections, collection pins only among the pages of their own collection. Unset is read as global.",
            "nullable": true,
            "$ref": "#/components/schemas/PagePinScope"
          },
          "tags": {
            "title": "Tags",
            "description": "Tags for the page",
            "nullable": true,
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "custom_url": {
            "title": "Custom Url",
            "description": "Custom URL that the page card links to instead of the page itself",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "button_text": {
            "title": "Button Text",
            "description": "Text for the page card button",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "requirements_expression": {
            "description": "Targeting rules; the page is shown only to matching users",
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          }
        },
        "type": "object",
        "required": [
          "title",
          "text",
          "description",
          "slug"
        ],
        "title": "PageCreate"
      },
      "PageLayout": {
        "properties": {
          "blocks": {
            "title": "Blocks",
            "items": {
              "items": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/FullNewsBlock"
                  },
                  {
                    "$ref": "#/components/schemas/FeaturedNewsBlock"
                  },
                  {
                    "$ref": "#/components/schemas/TwitchBlock"
                  },
                  {
                    "$ref": "#/components/schemas/YoutubeBlock"
                  },
                  {
                    "$ref": "#/components/schemas/TextBlock"
                  },
                  {
                    "$ref": "#/components/schemas/BannerBlock"
                  },
                  {
                    "$ref": "#/components/schemas/FeaturedItemBlock"
                  },
                  {
                    "$ref": "#/components/schemas/RedeemCouponBlock"
                  },
                  {
                    "$ref": "#/components/schemas/LatestNewsBlock"
                  },
                  {
                    "$ref": "#/components/schemas/LatestPagesBlock"
                  },
                  {
                    "$ref": "#/components/schemas/LeaderboardCardBlock"
                  },
                  {
                    "$ref": "#/components/schemas/LeaderboardFullBlock"
                  },
                  {
                    "$ref": "#/components/schemas/LeaderboardCollectionBlock"
                  },
                  {
                    "$ref": "#/components/schemas/LimitedStoreBannerBlock"
                  },
                  {
                    "$ref": "#/components/schemas/AchievementListBlock"
                  },
                  {
                    "$ref": "#/components/schemas/FeaturedPageBlock"
                  },
                  {
                    "$ref": "#/components/schemas/DailyRewardsBlock"
                  },
                  {
                    "$ref": "#/components/schemas/LoyaltyProgramBlock"
                  },
                  {
                    "$ref": "#/components/schemas/IFrameBlock"
                  },
                  {
                    "$ref": "#/components/schemas/ImageBannerBlock"
                  },
                  {
                    "$ref": "#/components/schemas/RichContentBlock"
                  },
                  {
                    "$ref": "#/components/schemas/CarouselBlock"
                  },
                  {
                    "$ref": "#/components/schemas/SequentialOfferBlock"
                  },
                  {
                    "$ref": "#/components/schemas/RangeOfferBlock"
                  },
                  {
                    "$ref": "#/components/schemas/ProgressionProgramBlock"
                  },
                  {
                    "$ref": "#/components/schemas/RollingOfferBlock"
                  },
                  {
                    "$ref": "#/components/schemas/CarouselNewsBlock"
                  },
                  {
                    "$ref": "#/components/schemas/PiggyBankOfferBlock"
                  },
                  {
                    "$ref": "#/components/schemas/PlaceBlock"
                  },
                  {
                    "$ref": "#/components/schemas/PickOneOfferBlock"
                  },
                  {
                    "$ref": "#/components/schemas/UserProfileBlock"
                  },
                  {
                    "$ref": "#/components/schemas/StoreBlock"
                  },
                  {
                    "$ref": "#/components/schemas/DynamicBlock"
                  }
                ],
                "discriminator": {
                  "propertyName": "block",
                  "mapping": {
                    "AchievementListBlock": "#/components/schemas/AchievementListBlock",
                    "BannerBlock": "#/components/schemas/BannerBlock",
                    "CarouselBlock": "#/components/schemas/CarouselBlock",
                    "CarouselNewsBlock": "#/components/schemas/CarouselNewsBlock",
                    "DailyRewardsBlock": "#/components/schemas/DailyRewardsBlock",
                    "DynamicBlock": "#/components/schemas/DynamicBlock",
                    "FeaturedItemBlock": "#/components/schemas/FeaturedItemBlock",
                    "FeaturedNewsBlock": "#/components/schemas/FeaturedNewsBlock",
                    "FeaturedPageBlock": "#/components/schemas/FeaturedPageBlock",
                    "FullNewsBlock": "#/components/schemas/FullNewsBlock",
                    "IFrameBlock": "#/components/schemas/IFrameBlock",
                    "ImageBannerBlock": "#/components/schemas/ImageBannerBlock",
                    "LatestNewsBlock": "#/components/schemas/LatestNewsBlock",
                    "LatestPagesBlock": "#/components/schemas/LatestPagesBlock",
                    "LeaderboardCardBlock": "#/components/schemas/LeaderboardCardBlock",
                    "LeaderboardCollectionBlock": "#/components/schemas/LeaderboardCollectionBlock",
                    "LeaderboardFullBlock": "#/components/schemas/LeaderboardFullBlock",
                    "LimitedStoreBannerBlock": "#/components/schemas/LimitedStoreBannerBlock",
                    "LoyaltyProgramBlock": "#/components/schemas/LoyaltyProgramBlock",
                    "PickOneOfferBlock": "#/components/schemas/PickOneOfferBlock",
                    "PiggyBankOfferBlock": "#/components/schemas/PiggyBankOfferBlock",
                    "PlaceBlock": "#/components/schemas/PlaceBlock",
                    "ProgressionProgramBlock": "#/components/schemas/ProgressionProgramBlock",
                    "RangeOfferBlock": "#/components/schemas/RangeOfferBlock",
                    "RedeemCouponBlock": "#/components/schemas/RedeemCouponBlock",
                    "RichContentBlock": "#/components/schemas/RichContentBlock",
                    "RollingOfferBlock": "#/components/schemas/RollingOfferBlock",
                    "SequentialOfferBlock": "#/components/schemas/SequentialOfferBlock",
                    "StoreBlock": "#/components/schemas/StoreBlock",
                    "TextBlock": "#/components/schemas/TextBlock",
                    "TwitchBlock": "#/components/schemas/TwitchBlock",
                    "UserProfileBlock": "#/components/schemas/UserProfileBlock",
                    "YoutubeBlock": "#/components/schemas/YoutubeBlock"
                  }
                }
              },
              "type": "array"
            },
            "type": "array"
          }
        },
        "type": "object",
        "title": "PageLayout"
      },
      "PageLayoutSource": {
        "type": "string",
        "enum": [
          "static",
          "webhook"
        ],
        "title": "PageLayoutSource"
      },
      "PageLayoutType": {
        "type": "string",
        "enum": [
          "content",
          "article",
          "news",
          "collection",
          "blocks"
        ],
        "title": "PageLayoutType"
      },
      "PagePinScope": {
        "type": "string",
        "enum": [
          "global",
          "collection"
        ],
        "title": "PagePinScope",
        "description": "How far a pin reaches.\n\nAn unset scope is read as GLOBAL."
      },
      "PageRead": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "External unique page identifier",
            "type": "string"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "description": "The title of the page"
          },
          "text": {
            "type": "string",
            "title": "Text"
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of the page"
          },
          "slug": {
            "type": "string",
            "title": "Slug",
            "description": "The slug of the page"
          },
          "layout": {
            "description": "The layout of the page. Define child blocks for the page",
            "$ref": "#/components/schemas/PageLayout"
          },
          "html": {
            "title": "Html",
            "description": "The HTML content of the page",
            "type": "string"
          },
          "type": {
            "description": "The type of the page layout",
            "$ref": "#/components/schemas/PageLayoutType"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "description": "The `page.get` webhook serving the layout. A filled value makes the layout come from the webhook instead of the stored blocks.",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "parent_id": {
            "title": "Parent Id",
            "description": "The ID of the parent page",
            "nullable": true,
            "type": "string"
          },
          "date": {
            "title": "Date",
            "nullable": true,
            "type": "string",
            "format": "date"
          },
          "datetime": {
            "title": "Datetime",
            "description": "The date of the page",
            "nullable": true,
            "type": "integer"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The date of the page",
            "nullable": true
          },
          "featured_image_url": {
            "title": "Featured Image Url",
            "description": "The URL of the featured image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_image_url": {
            "title": "Pinned Image Url",
            "description": "The URL of the pinned image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_webview_image_url": {
            "title": "Pinned Webview Image Url",
            "description": "The URL of the pinned image for the page (in webview)",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the Page",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "description": "The position of the page in the page list",
            "nullable": true,
            "type": "integer"
          },
          "render_options": {
            "description": "The additional render options of the page",
            "$ref": "#/components/schemas/PageRenderOptions"
          },
          "child_sort_settings": {
            "description": "The sort settings for the child pages",
            "nullable": true,
            "$ref": "#/components/schemas/PageSortSettings"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Whether the page is featured",
            "nullable": true,
            "type": "boolean"
          },
          "is_pinned": {
            "title": "Is Pinned",
            "description": "Whether the page is pinned",
            "nullable": true,
            "type": "boolean"
          },
          "pin_scope": {
            "description": "How far the pin reaches: global pins also rank first among the pages of all sibling collections, collection pins only among the pages of their own collection. Unset is read as global.",
            "nullable": true,
            "$ref": "#/components/schemas/PagePinScope"
          },
          "tags": {
            "title": "Tags",
            "description": "Tags for the page",
            "nullable": true,
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "custom_url": {
            "title": "Custom Url",
            "description": "Custom URL that the page card links to instead of the page itself",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "button_text": {
            "title": "Button Text",
            "description": "Text for the page card button",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "requirements_expression": {
            "description": "Targeting rules; the page is shown only to matching users",
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "parent": {
            "$ref": "#/components/schemas/PageReadBase"
          },
          "seo": {
            "$ref": "#/components/schemas/PageSeo"
          },
          "layout_source": {
            "$ref": "#/components/schemas/PageLayoutSource",
            "description": "The source used to populate the page layout",
            "readOnly": true
          }
        },
        "type": "object",
        "required": [
          "title",
          "text",
          "description",
          "slug",
          "id",
          "layout_source"
        ],
        "title": "PageRead"
      },
      "PageReadBase": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "External unique page identifier",
            "type": "string"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "description": "The title of the page"
          },
          "text": {
            "type": "string",
            "title": "Text"
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of the page"
          },
          "slug": {
            "type": "string",
            "title": "Slug",
            "description": "The slug of the page"
          },
          "layout": {
            "description": "The layout of the page. Define child blocks for the page",
            "$ref": "#/components/schemas/PageLayout"
          },
          "html": {
            "title": "Html",
            "description": "The HTML content of the page",
            "type": "string"
          },
          "type": {
            "description": "The type of the page layout",
            "$ref": "#/components/schemas/PageLayoutType"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "description": "The `page.get` webhook serving the layout. A filled value makes the layout come from the webhook instead of the stored blocks.",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "parent_id": {
            "title": "Parent Id",
            "description": "The ID of the parent page",
            "nullable": true,
            "type": "string"
          },
          "date": {
            "title": "Date",
            "nullable": true,
            "type": "string",
            "format": "date"
          },
          "datetime": {
            "title": "Datetime",
            "description": "The date of the page",
            "nullable": true,
            "type": "integer"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The date of the page",
            "nullable": true
          },
          "featured_image_url": {
            "title": "Featured Image Url",
            "description": "The URL of the featured image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_image_url": {
            "title": "Pinned Image Url",
            "description": "The URL of the pinned image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_webview_image_url": {
            "title": "Pinned Webview Image Url",
            "description": "The URL of the pinned image for the page (in webview)",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the Page",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "description": "The position of the page in the page list",
            "nullable": true,
            "type": "integer"
          },
          "render_options": {
            "description": "The additional render options of the page",
            "$ref": "#/components/schemas/PageRenderOptions"
          },
          "child_sort_settings": {
            "description": "The sort settings for the child pages",
            "nullable": true,
            "$ref": "#/components/schemas/PageSortSettings"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Whether the page is featured",
            "nullable": true,
            "type": "boolean"
          },
          "is_pinned": {
            "title": "Is Pinned",
            "description": "Whether the page is pinned",
            "nullable": true,
            "type": "boolean"
          },
          "pin_scope": {
            "description": "How far the pin reaches: global pins also rank first among the pages of all sibling collections, collection pins only among the pages of their own collection. Unset is read as global.",
            "nullable": true,
            "$ref": "#/components/schemas/PagePinScope"
          },
          "tags": {
            "title": "Tags",
            "description": "Tags for the page",
            "nullable": true,
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "custom_url": {
            "title": "Custom Url",
            "description": "Custom URL that the page card links to instead of the page itself",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "button_text": {
            "title": "Button Text",
            "description": "Text for the page card button",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "requirements_expression": {
            "description": "Targeting rules; the page is shown only to matching users",
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "layout_source": {
            "$ref": "#/components/schemas/PageLayoutSource",
            "description": "The source used to populate the page layout",
            "readOnly": true
          }
        },
        "type": "object",
        "required": [
          "title",
          "text",
          "description",
          "slug",
          "layout_source"
        ],
        "title": "PageReadBase",
        "description": "Read side of a page: the layout mode follows the webhook binding."
      },
      "PageRenderOptions": {
        "properties": {
          "is_promo_store": {
            "title": "Is Promo Store",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "PageRenderOptions"
      },
      "PageSeo": {
        "properties": {
          "title": {
            "title": "Title",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          }
        },
        "type": "object",
        "title": "PageSeo"
      },
      "PageSortField": {
        "type": "string",
        "enum": [
          "position",
          "datetime"
        ],
        "title": "PageSortField"
      },
      "PageSortSettings": {
        "properties": {
          "sort_by": {
            "$ref": "#/components/schemas/PageSortField"
          },
          "sort_order": {
            "$ref": "#/components/schemas/SortOrder"
          }
        },
        "type": "object",
        "required": [
          "sort_by",
          "sort_order"
        ],
        "title": "PageSortSettings"
      },
      "PageTranslate": {
        "properties": {
          "title": {
            "description": "Mapping of locale to translated title",
            "$ref": "#/components/schemas/LocaleMapping"
          },
          "description": {
            "description": "Mapping of locale to translated description",
            "$ref": "#/components/schemas/LocaleMapping"
          },
          "text": {
            "description": "Mapping of locale to translated text",
            "$ref": "#/components/schemas/LocaleMapping"
          },
          "html": {
            "description": "Mapping of locale to translated html",
            "$ref": "#/components/schemas/LocaleMapping"
          },
          "button_text": {
            "description": "Mapping of locale to translated button text",
            "$ref": "#/components/schemas/LocaleMapping"
          },
          "image_url": {
            "description": "Mapping of locale to translated image URL",
            "$ref": "#/components/schemas/LocaleUrlMapping"
          },
          "featured_image_url": {
            "description": "Mapping of locale to translated featured image URL",
            "$ref": "#/components/schemas/LocaleUrlMapping"
          },
          "pinned_image_url": {
            "description": "Mapping of locale to translated pinned image URL",
            "$ref": "#/components/schemas/LocaleUrlMapping"
          },
          "pinned_webview_image_url": {
            "description": "Mapping of locale to translated pinned image URL (in webview)",
            "$ref": "#/components/schemas/LocaleUrlMapping"
          }
        },
        "type": "object",
        "title": "PageTranslate",
        "examples": [
          {
            "title": {
              "en": "Home Page",
              "pt": "P\u00e1gina Inicial"
            }
          }
        ]
      },
      "PageUpdate": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "External unique page identifier",
            "nullable": true,
            "type": "string"
          },
          "title": {
            "title": "Title",
            "description": "The title of the page",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "description": "The description of the page",
            "type": "string"
          },
          "text": {
            "title": "Text",
            "type": "string"
          },
          "slug": {
            "title": "Slug",
            "description": "The slug of the page",
            "unique": true,
            "type": "string",
            "maxLength": 100,
            "minLength": 3
          },
          "layout": {
            "description": "The layout of the page. Define child blocks for the page",
            "nullable": true,
            "$ref": "#/components/schemas/PageLayout"
          },
          "html": {
            "title": "Html",
            "description": "The HTML content of the page",
            "nullable": true,
            "type": "string"
          },
          "type": {
            "description": "The type of the page layout",
            "nullable": true,
            "$ref": "#/components/schemas/PageLayoutType"
          },
          "webhook_id": {
            "title": "Webhook Id",
            "description": "The `page.get` webhook serving the layout. A filled value makes the layout come from the webhook instead of the stored blocks.",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "parent_id": {
            "title": "Parent Id",
            "description": "The ID of the parent page",
            "nullable": true,
            "type": "string"
          },
          "datetime": {
            "title": "Datetime",
            "description": "The date of the page",
            "nullable": true,
            "type": "integer"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the page",
            "nullable": true
          },
          "featured_image_url": {
            "title": "Featured Image Url",
            "description": "The URL of the featured image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_image_url": {
            "title": "Pinned Image Url",
            "description": "The URL of the pinned image for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "pinned_webview_image_url": {
            "title": "Pinned Webview Image Url",
            "description": "The URL of the pinned image for the page (in webview)",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "published_at": {
            "title": "Published At",
            "description": "The published date of the Page",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "description": "The position of the page in the page list",
            "nullable": true,
            "type": "integer"
          },
          "render_options": {
            "description": "The additional render options of the page",
            "$ref": "#/components/schemas/PageRenderOptions"
          },
          "child_sort_settings": {
            "description": "The sort settings for the child pages",
            "nullable": true,
            "$ref": "#/components/schemas/PageSortSettings"
          },
          "video_url": {
            "title": "Video Url",
            "description": "The URL of the video for the page",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "is_featured": {
            "title": "Is Featured",
            "description": "Whether the page is featured",
            "nullable": true,
            "type": "boolean"
          },
          "is_pinned": {
            "title": "Is Pinned",
            "description": "Whether the page is pinned",
            "nullable": true,
            "type": "boolean"
          },
          "pin_scope": {
            "description": "How far the pin reaches: global pins also rank first among the pages of all sibling collections, collection pins only among the pages of their own collection. Unset is read as global.",
            "nullable": true,
            "$ref": "#/components/schemas/PagePinScope"
          },
          "tags": {
            "title": "Tags",
            "description": "Tags for the page",
            "nullable": true,
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "custom_url": {
            "title": "Custom Url",
            "description": "Custom URL that the page card links to instead of the page itself",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "button_text": {
            "title": "Button Text",
            "description": "Text for the page card button",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "requirements_expression": {
            "description": "Targeting rules; the page is shown only to matching users",
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          }
        },
        "type": "object",
        "title": "PageUpdate"
      },
      "PaginatedResponse_list_CreatorRead__": {
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/CreatorRead"
            },
            "type": "array",
            "title": "Data"
          },
          "total": {
            "type": "integer",
            "title": "Total"
          },
          "limit": {
            "type": "integer",
            "title": "Limit"
          },
          "offset": {
            "type": "integer",
            "title": "Offset"
          },
          "has_next": {
            "type": "boolean",
            "title": "Has Next",
            "description": "Indicates if there are more items to fetch.",
            "readOnly": true
          }
        },
        "type": "object",
        "required": [
          "data",
          "total",
          "limit",
          "offset",
          "has_next"
        ],
        "title": "PaginatedResponse[list[CreatorRead]]"
      },
      "PaymentMethodDisplay": {
        "type": "string",
        "enum": [
          "auto",
          "express"
        ],
        "title": "PaymentMethodDisplay",
        "description": "Where a payment method appears on the checkout page.\n\n- `auto`: the platform decides based on availability, device and country\n- `express`: show in the express button row above the form"
      },
      "PaymentMethodSettings": {
        "properties": {
          "display": {
            "description": "Where a payment method appears on the checkout page.\n\n- `auto`: the platform decides based on availability, device and country\n- `express`: show in the express button row above the form\n",
            "$ref": "#/components/schemas/PaymentMethodDisplay"
          },
          "billing_address_collection": {
            "description": "How much of the billing address the checkout page asks for.\n\n- `full`: the complete address\n- `zip_only`: postal code only\n- `none`: do not ask for a billing address\n",
            "$ref": "#/components/schemas/BillingAddressCollection"
          },
          "email_collection": {
            "description": "Whether the checkout page asks the player for an email address.\n\n- `auto`: the platform decides, reusing an email the payment method provides\n- `none`: do not ask for an email\n- `required`: always ask, and require a value\n",
            "$ref": "#/components/schemas/EmailCollection"
          }
        },
        "type": "object",
        "title": "PaymentMethodSettings"
      },
      "PaymentRead": {
        "properties": {
          "user_id": {
            "type": "string",
            "title": "User Id",
            "description": "The user ID of the payment"
          },
          "player_id": {
            "title": "Player Id",
            "description": "The player ID of the payment",
            "type": "string"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "The time of the last modification",
            "type": "integer"
          },
          "player_name": {
            "title": "Player Name",
            "description": "The name of the player",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "description": "The ID of the purchased item. Deprecated: use `items` instead.",
            "deprecated": true,
            "type": "string"
          },
          "item_name": {
            "title": "Item Name",
            "description": "The name of the purchased item. Deprecated: use `items` instead.",
            "deprecated": true,
            "type": "string"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": "array",
            "title": "Items",
            "description": "List of items included in the payment"
          },
          "payment_method_name": {
            "type": "string",
            "title": "Payment Method Name",
            "description": "The name of the payment method"
          },
          "status": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/PaymentStatus"
              },
              {
                "type": "string"
              }
            ],
            "title": "Status",
            "description": "The status of the payment"
          },
          "sales_channel": {
            "description": "Indicates the sales channel",
            "$ref": "#/components/schemas/SalesChannel"
          },
          "currency": {
            "type": "string",
            "title": "Currency",
            "description": "The currency of the payment"
          },
          "country": {
            "title": "Country",
            "description": "The ISO code country of the payment",
            "type": "string"
          },
          "payment_id": {
            "title": "Payment Id",
            "description": "The ID of the payment",
            "type": "string"
          },
          "payment_number": {
            "type": "string",
            "title": "Payment Number",
            "description": "The number of the payment in receipt",
            "deprecated": true
          },
          "receipt_number": {
            "type": "string",
            "title": "Receipt Number",
            "description": "The number of the payment in receipt"
          },
          "checkout_profile_id": {
            "title": "Checkout Profile Id",
            "description": "The ID of the user checkout profile",
            "type": "string"
          },
          "order_id": {
            "title": "Order Id",
            "description": "The ID of the order",
            "type": "string",
            "maxLength": 32
          },
          "card_last_4_digits": {
            "title": "Card Last 4 Digits",
            "description": "The last 4 digits of the card",
            "type": "string"
          },
          "card_scheme": {
            "title": "Card Scheme",
            "description": "The scheme of the card",
            "type": "string"
          },
          "card_issuer_bank": {
            "title": "Card Issuer Bank",
            "description": "The name of the bank that issued the card, resolved from the card BIN. Best-effort: empty when the issuer is unknown, the BIN is not in the dictionary, or the payment was not made with a card. Legal names are returned as recorded by the BIN dictionary and are not canonicalized, so they are not a reliable grouping key.",
            "type": "string"
          },
          "card_issuing_country": {
            "title": "Card Issuing Country",
            "description": "The ISO 3166-1 alpha-2 country code of the card issuer, resolved from the card BIN. Best-effort: empty when the BIN is not in the dictionary or the payment was not made with a card. This is the country of the card, not the country of the payment (see `country`) or of the billing address.",
            "type": "string"
          },
          "total": {
            "type": "integer",
            "title": "Total",
            "description": "The total amount of the payment"
          },
          "total_usd": {
            "title": "Total USD",
            "description": "The payment amount converted at the exchange rate into dollars (Sales or GMV)",
            "type": "number"
          },
          "total_usd_revenue": {
            "title": "Total USD Revenue",
            "description": "The profit in dollars, that is total_usd excluding all fees and taxes",
            "type": "number"
          },
          "user_local_price": {
            "title": "User Local Price",
            "description": "The total amount in local currency of the payment before all discounts",
            "type": "integer"
          },
          "currency_minor_unit": {
            "type": "integer",
            "title": "Currency Minor Unit",
            "description": "The minor unit of the currency"
          },
          "fees": {
            "title": "Fees",
            "description": "This includes all charges related to a payment, including the payment system fee, Aghanim fee, conversion, etc",
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": "array"
          },
          "taxes": {
            "title": "Taxes",
            "description": "These are the taxes that arise from sales (the Withholding Tax is not included)",
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "type": "array"
          },
          "refund_customer_id": {
            "title": "Refund Customer Id",
            "description": "The ID of the refunded customer",
            "type": "string"
          },
          "refund_reason": {
            "title": "Refund Reason",
            "description": "The reason of the refund",
            "type": "string"
          },
          "ip": {
            "title": "Ip",
            "description": "The IP address of the payment"
          },
          "created_at": {
            "type": "integer",
            "title": "Created At",
            "description": "The time of the payment creation"
          },
          "fail_reason": {
            "title": "Fail Reason",
            "description": "The reason of the payment failure",
            "type": "string"
          },
          "fail_reason_code": {
            "title": "Fail Reason Code",
            "description": "The code of the payment failure reason",
            "type": "string"
          },
          "status_updated_at": {
            "title": "Status Updated At",
            "description": "The timestamp of the status update",
            "type": "integer"
          },
          "order_field": {
            "title": "Order Field",
            "description": "The transaction's serial number in the status list. Can be used to sort the transaction by the status list",
            "type": "integer"
          },
          "metadata": {
            "title": "Metadata",
            "description": "The metadata object of the order",
            "additionalProperties": true,
            "type": "object"
          },
          "platform": {
            "description": "The platform of the order",
            "$ref": "#/components/schemas/Platform"
          },
          "three_d_secure_flow": {
            "description": "The 3DS flow type: none, challenge, or frictionless",
            "$ref": "#/components/schemas/ThreeDSFlow"
          },
          "three_d_secure_result": {
            "description": "The 3DS authentication result: not_attempted, authenticated, or failed",
            "$ref": "#/components/schemas/ThreeDSecureResult"
          },
          "applied_reward_points": {
            "title": "Applied Reward Points",
            "description": "The applied reward points for the order that allowed you to receive a discount.",
            "type": "integer"
          },
          "coupons": {
            "title": "Coupons",
            "description": "The list of coupons applied to the order.",
            "items": {
              "$ref": "#/components/schemas/Coupon"
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "user_id",
          "payment_method_name",
          "status",
          "currency",
          "payment_number",
          "receipt_number",
          "total",
          "currency_minor_unit",
          "created_at"
        ],
        "title": "PaymentRead"
      },
      "PaymentStatus": {
        "type": "string",
        "enum": [
          "created",
          "failed",
          "expired",
          "voided",
          "rejected",
          "done",
          "refund_requested",
          "refunded",
          "dispute",
          "chargeback",
          "abandoned",
          "canceled"
        ],
        "title": "PaymentStatus"
      },
      "PeriodPurchaseStat": {
        "properties": {
          "start_calc_at": {
            "type": "integer",
            "title": "Start Calc At"
          },
          "ltv": {
            "type": "integer",
            "title": "Ltv"
          }
        },
        "type": "object",
        "required": [
          "start_calc_at",
          "ltv"
        ],
        "title": "PeriodPurchaseStat"
      },
      "PeriodType": {
        "type": "string",
        "enum": [
          "year",
          "month",
          "week",
          "day",
          "hour",
          "minute",
          "second"
        ],
        "title": "PeriodType"
      },
      "PersistentCampaignAttributes": {
        "properties": {
          "custom_attributes": {
            "title": "Custom Attributes",
            "items": {
              "$ref": "#/components/schemas/CustomAttribute"
            },
            "type": "array"
          },
          "abandoned_cart_duration": {
            "title": "Abandoned Cart Duration",
            "type": "integer"
          },
          "visit_duration": {
            "title": "Visit Duration",
            "type": "integer"
          },
          "page_slugs": {
            "title": "Page Slugs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "variables": {
            "title": "Variables",
            "items": {
              "$ref": "#/components/schemas/MathExpression"
            },
            "type": "array"
          },
          "run_for_subscription_id": {
            "title": "Run For Subscription Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "PersistentCampaignAttributes"
      },
      "PersistentPlayerAttributes": {
        "properties": {
          "game_hub_last_sent_webpush_unread": {
            "title": "Game Hub Last Sent Webpush Unread",
            "type": "integer"
          },
          "game_hub_last_sent_webpush_read": {
            "title": "Game Hub Last Sent Webpush Read",
            "type": "integer"
          },
          "last_email_date": {
            "title": "Last Email Date",
            "type": "integer"
          },
          "last_hub_popup_date": {
            "title": "Last Hub Popup Date",
            "type": "integer"
          },
          "last_communication_date": {
            "title": "Last Communication Date",
            "type": "integer"
          },
          "last_purchase_date": {
            "title": "Last Purchase Date",
            "type": "integer"
          },
          "last_purchase_item_id": {
            "title": "Last Purchase Item Id",
            "type": "string"
          },
          "last_purchase_sku": {
            "title": "Last Purchase SKU",
            "type": "string"
          },
          "last_purchase_amount": {
            "title": "Last Purchase Amount",
            "type": "integer"
          },
          "purchases_count": {
            "title": "Purchases Count",
            "posthog": true,
            "type": "integer"
          },
          "purchases_count_rp": {
            "title": "Purchases Count Rp",
            "type": "integer"
          },
          "game_hub_last_sent_popup_unread": {
            "title": "Game Hub Last Sent Popup Unread",
            "type": "integer"
          },
          "game_hub_last_sent_popup_read": {
            "title": "Game Hub Last Sent Popup Read",
            "type": "integer"
          },
          "prev_last_active_at": {
            "title": "Prev Last Active At",
            "type": "integer"
          },
          "last_period_purchase_stat": {
            "title": "Last Period Purchase Stat",
            "additionalProperties": {
              "$ref": "#/components/schemas/PeriodPurchaseStat"
            },
            "type": "object"
          },
          "level": {
            "type": "integer",
            "title": "Level",
            "default": 0,
            "posthog": true
          },
          "platform": {
            "$ref": "#/components/schemas/Platform"
          },
          "marketplace": {
            "$ref": "#/components/schemas/Marketplace",
            "default": "none"
          },
          "device_type": {
            "$ref": "#/components/schemas/DeviceType"
          },
          "tags": {
            "title": "Tags",
            "items": {
              "$ref": "#/components/schemas/PlayerTag"
            },
            "type": "array"
          },
          "soft_currency_amount": {
            "type": "integer",
            "title": "Soft Currency Amount",
            "default": 0
          },
          "hard_currency_amount": {
            "type": "integer",
            "title": "Hard Currency Amount",
            "default": 0
          },
          "saved_ach": {
            "type": "boolean",
            "title": "Saved Ach",
            "default": false
          },
          "saved_card": {
            "type": "boolean",
            "title": "Saved Card",
            "default": false
          },
          "subscriptions": {
            "title": "Subscriptions",
            "additionalProperties": {
              "type": "integer"
            },
            "type": "object"
          },
          "is_pwa_installed": {
            "title": "Is Pwa Installed",
            "type": "boolean"
          },
          "pwa_visit_at": {
            "title": "Pwa Visit At",
            "type": "integer"
          },
          "pwa_install_at": {
            "title": "Pwa Install At",
            "type": "integer"
          },
          "first_pwa_install_at": {
            "title": "First Pwa Install At",
            "type": "integer"
          },
          "registered_at": {
            "title": "Registered At",
            "type": "integer"
          },
          "first_login_ip": {
            "title": "First Login Ip",
            "type": "string",
            "maxLength": 64
          },
          "is_verified": {
            "title": "Is Verified",
            "type": "boolean"
          },
          "appsflyer_id": {
            "title": "Appsflyer Id",
            "type": "string"
          },
          "appsflyer_app_id": {
            "title": "Appsflyer App Id",
            "type": "string"
          },
          "appsflyer_meta": {
            "title": "Appsflyer Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "appsflyer_event_params": {
            "title": "Appsflyer Event Params",
            "additionalProperties": true,
            "type": "object"
          },
          "appsflyer_customer_user_id": {
            "title": "Appsflyer Customer User Id",
            "type": "string"
          },
          "adjust_device_id": {
            "title": "Adjust Device Id",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "adjust_adid": {
            "title": "Adjust Adid",
            "type": "string"
          },
          "adjust_app_token": {
            "title": "Adjust App Token",
            "type": "string"
          },
          "adjust_authorization_token": {
            "title": "Adjust Authorization Token",
            "type": "string"
          },
          "adjust_purchase_event_token": {
            "title": "Adjust Purchase Event Token",
            "type": "string"
          },
          "adjust_callback_params": {
            "title": "Adjust Callback Params",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "adjust_partner_params": {
            "title": "Adjust Partner Params",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "singular_device_id": {
            "title": "Singular Device Id",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "singular_app_id": {
            "title": "Singular App Id",
            "type": "string"
          },
          "devtodev_appid": {
            "title": "Devtodev Appid",
            "type": "string"
          },
          "devtodev_apikey": {
            "title": "Devtodev Apikey",
            "type": "string"
          },
          "devtodev_device_id": {
            "$ref": "#/components/schemas/DevtodevDeviceId"
          },
          "tenjin_analytics_installation_id": {
            "title": "Tenjin Analytics Installation Id",
            "type": "string"
          },
          "tenjin_advertising_id": {
            "title": "Tenjin Advertising Id",
            "type": "string"
          },
          "tenjin_developer_device_id": {
            "title": "Tenjin Developer Device Id",
            "type": "string"
          },
          "tenjin_bundle_id": {
            "title": "Tenjin Bundle Id",
            "type": "string"
          },
          "tenjin_platform": {
            "title": "Tenjin Platform",
            "type": "string"
          },
          "tenjin_os_version": {
            "title": "Tenjin Os Version",
            "type": "string"
          },
          "tenjin_app_version": {
            "title": "Tenjin App Version",
            "type": "string"
          },
          "tenjin_os_version_release": {
            "title": "Tenjin Os Version Release",
            "type": "string"
          },
          "tenjin_build_id": {
            "title": "Tenjin Build Id",
            "type": "string"
          },
          "tenjin_device_model": {
            "title": "Tenjin Device Model",
            "type": "string"
          },
          "ga4_client_id": {
            "title": "Ga4 Client Id",
            "description": "GA4 web `client_id` from the `_ga` cookie.",
            "type": "string"
          },
          "ga4firebase_app_instance_id": {
            "title": "Ga4Firebase App Instance Id",
            "description": "Firebase mobile `app_instance_id` from the SDK.",
            "type": "string"
          },
          "ga4_user_id": {
            "title": "Ga4 User Id",
            "description": "Partner-set GA4 cross-device `user_id`; falls back to `User.player_id` when unset.",
            "type": "string",
            "maxLength": 256
          }
        },
        "type": "object",
        "title": "PersistentPlayerAttributes"
      },
      "PickOneOfferBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "PickOneOfferBlock",
            "enum": [
              "PickOneOfferBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "pick_one_offer_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Pick One Offer Id"
          }
        },
        "type": "object",
        "required": [
          "pick_one_offer_id"
        ],
        "title": "PickOneOfferBlock"
      },
      "PiggyBankOfferBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "PiggyBankOfferBlock",
            "enum": [
              "PiggyBankOfferBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "piggy_bank_offer_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Piggy Bank Offer Id"
          }
        },
        "type": "object",
        "required": [
          "piggy_bank_offer_id"
        ],
        "title": "PiggyBankOfferBlock"
      },
      "PitySettings": {
        "properties": {
          "steps": {
            "items": {
              "$ref": "#/components/schemas/PityStep"
            },
            "type": "array",
            "minItems": 1,
            "title": "Steps"
          },
          "repeat_last": {
            "type": "boolean",
            "title": "Repeat Last",
            "default": true
          }
        },
        "type": "object",
        "required": [
          "steps"
        ],
        "title": "PitySettings"
      },
      "PityStep": {
        "properties": {
          "threshold": {
            "type": "integer",
            "minimum": 1.0,
            "title": "Threshold"
          },
          "guaranteed_groups": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/LootboxGroup"
                },
                {
                  "$ref": "#/components/schemas/LootboxNestedItem"
                }
              ]
            },
            "type": "array",
            "minItems": 1,
            "title": "Guaranteed Groups"
          }
        },
        "type": "object",
        "required": [
          "threshold",
          "guaranteed_groups"
        ],
        "title": "PityStep"
      },
      "PlaceBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "PlaceBlock",
            "enum": [
              "PlaceBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "key": {
            "type": "string",
            "title": "Key"
          }
        },
        "type": "object",
        "required": [
          "key"
        ],
        "title": "PlaceBlock"
      },
      "Plan": {
        "properties": {
          "key": {
            "type": "string",
            "title": "Key",
            "description": "Plan unique key within subscription."
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "Plan display name."
          },
          "offer": {
            "description": "Offer applied to the plan. Null if no offer is applied.",
            "$ref": "#/components/schemas/Offer"
          }
        },
        "type": "object",
        "required": [
          "key",
          "name"
        ],
        "title": "Plan"
      },
      "Platform": {
        "type": "string",
        "enum": [
          "any",
          "ios",
          "android",
          "other"
        ],
        "title": "Platform"
      },
      "PlayerAttributes": {
        "properties": {
          "level": {
            "type": "integer",
            "title": "Level",
            "default": 0,
            "posthog": true
          },
          "platform": {
            "$ref": "#/components/schemas/Platform"
          },
          "marketplace": {
            "$ref": "#/components/schemas/Marketplace",
            "default": "none"
          },
          "device_type": {
            "$ref": "#/components/schemas/DeviceType"
          },
          "tags": {
            "title": "Tags",
            "items": {
              "$ref": "#/components/schemas/PlayerTag"
            },
            "type": "array"
          },
          "soft_currency_amount": {
            "type": "integer",
            "title": "Soft Currency Amount",
            "default": 0
          },
          "hard_currency_amount": {
            "type": "integer",
            "title": "Hard Currency Amount",
            "default": 0
          },
          "appsflyer_id": {
            "title": "Appsflyer Id",
            "type": "string"
          },
          "appsflyer_app_id": {
            "title": "Appsflyer App Id",
            "type": "string"
          },
          "appsflyer_meta": {
            "title": "Appsflyer Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "appsflyer_event_params": {
            "title": "Appsflyer Event Params",
            "additionalProperties": true,
            "type": "object"
          },
          "appsflyer_customer_user_id": {
            "title": "Appsflyer Customer User Id",
            "type": "string"
          },
          "adjust_device_id": {
            "title": "Adjust Device Id",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "adjust_adid": {
            "title": "Adjust Adid",
            "type": "string"
          },
          "adjust_app_token": {
            "title": "Adjust App Token",
            "type": "string"
          },
          "adjust_authorization_token": {
            "title": "Adjust Authorization Token",
            "type": "string"
          },
          "adjust_purchase_event_token": {
            "title": "Adjust Purchase Event Token",
            "type": "string"
          },
          "adjust_callback_params": {
            "title": "Adjust Callback Params",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "adjust_partner_params": {
            "title": "Adjust Partner Params",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "singular_device_id": {
            "title": "Singular Device Id",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "singular_app_id": {
            "title": "Singular App Id",
            "type": "string"
          },
          "devtodev_appid": {
            "title": "Devtodev Appid",
            "type": "string"
          },
          "devtodev_apikey": {
            "title": "Devtodev Apikey",
            "type": "string"
          },
          "devtodev_device_id": {
            "$ref": "#/components/schemas/DevtodevDeviceId"
          },
          "tenjin_analytics_installation_id": {
            "title": "Tenjin Analytics Installation Id",
            "type": "string"
          },
          "tenjin_advertising_id": {
            "title": "Tenjin Advertising Id",
            "type": "string"
          },
          "tenjin_developer_device_id": {
            "title": "Tenjin Developer Device Id",
            "type": "string"
          },
          "tenjin_bundle_id": {
            "title": "Tenjin Bundle Id",
            "type": "string"
          },
          "tenjin_platform": {
            "title": "Tenjin Platform",
            "type": "string"
          },
          "tenjin_os_version": {
            "title": "Tenjin Os Version",
            "type": "string"
          },
          "tenjin_app_version": {
            "title": "Tenjin App Version",
            "type": "string"
          },
          "tenjin_os_version_release": {
            "title": "Tenjin Os Version Release",
            "type": "string"
          },
          "tenjin_build_id": {
            "title": "Tenjin Build Id",
            "type": "string"
          },
          "tenjin_device_model": {
            "title": "Tenjin Device Model",
            "type": "string"
          },
          "ga4_client_id": {
            "title": "Ga4 Client Id",
            "description": "GA4 web `client_id` from the `_ga` cookie.",
            "type": "string"
          },
          "ga4firebase_app_instance_id": {
            "title": "Ga4Firebase App Instance Id",
            "description": "Firebase mobile `app_instance_id` from the SDK.",
            "type": "string"
          },
          "ga4_user_id": {
            "title": "Ga4 User Id",
            "description": "Partner-set GA4 cross-device `user_id`; falls back to `User.player_id` when unset.",
            "type": "string",
            "maxLength": 256
          }
        },
        "type": "object",
        "title": "PlayerAttributes"
      },
      "PlayerInfo": {
        "properties": {
          "attributes": {
            "description": "The player's attributes.",
            "$ref": "#/components/schemas/PlayerAttributes"
          },
          "custom_attributes": {
            "title": "Custom Attributes",
            "description": "The player's custom attributes.",
            "additionalProperties": true,
            "type": "object"
          },
          "name": {
            "title": "Name",
            "description": "The player's name.",
            "type": "string"
          },
          "avatar_url": {
            "title": "Avatar Url",
            "description": "The player's avatar URL.",
            "type": "string"
          }
        },
        "type": "object",
        "title": "PlayerInfo"
      },
      "PlayerRead": {
        "properties": {
          "attributes": {
            "description": "The player's attributes.",
            "$ref": "#/components/schemas/PlayerAttributes"
          },
          "custom_attributes": {
            "title": "Custom Attributes",
            "description": "The player's custom attributes.",
            "additionalProperties": true,
            "type": "object"
          },
          "id": {
            "type": "string",
            "title": "Id",
            "description": "The unique identifier of the user."
          },
          "player_id": {
            "type": "string",
            "title": "Player Id",
            "description": "The unique player ID of the user."
          },
          "loyalty_points": {
            "title": "Loyalty Points",
            "description": "The amount of loyalty points the player has.",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "id",
          "player_id"
        ],
        "title": "PlayerRead"
      },
      "PlayerTag": {
        "type": "string",
        "enum": [
          "tester"
        ],
        "title": "PlayerTag"
      },
      "Price": {
        "properties": {
          "country": {
            "$ref": "#/components/schemas/Country"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "platform": {
            "$ref": "#/components/schemas/Platform"
          },
          "price": {
            "type": "integer",
            "maximum": 1000000000000.0,
            "minimum": 0.0,
            "title": "Price"
          }
        },
        "type": "object",
        "required": [
          "country",
          "currency",
          "platform",
          "price"
        ],
        "title": "Price"
      },
      "PriceAmount": {
        "properties": {
          "amount": {
            "type": "integer",
            "title": "Amount",
            "description": "Price amount in minor currency units"
          },
          "amount_decimal": {
            "type": "number",
            "title": "Amount Decimal",
            "description": "Price amount in major currency units"
          }
        },
        "type": "object",
        "required": [
          "amount",
          "amount_decimal"
        ],
        "title": "PriceAmount"
      },
      "PriceCategory": {
        "type": "string",
        "enum": [
          "none",
          "platform"
        ],
        "title": "PriceCategory"
      },
      "PricePoint": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id",
            "description": "ID of the price template associated with this price point"
          },
          "base_price": {
            "$ref": "#/components/schemas/PriceAmount",
            "description": "Base price"
          },
          "local_price": {
            "$ref": "#/components/schemas/LocalPriceAmount",
            "description": "Localized price"
          }
        },
        "type": "object",
        "required": [
          "id",
          "base_price",
          "local_price"
        ],
        "title": "PricePoint"
      },
      "PricePointsContext": {
        "properties": {
          "country": {
            "type": "string",
            "pattern": "^[A-Z]{2}$",
            "title": "Country",
            "description": "The country code for price localization"
          },
          "base_currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The base currency used for pricing"
          },
          "local_currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The local currency for the player's region"
          }
        },
        "type": "object",
        "required": [
          "country",
          "base_currency",
          "local_currency"
        ],
        "title": "PricePointsContext"
      },
      "PricePointsResponse": {
        "properties": {
          "context": {
            "$ref": "#/components/schemas/PricePointsContext",
            "description": "The context information for the price points"
          },
          "price_points": {
            "items": {
              "$ref": "#/components/schemas/PricePoint"
            },
            "type": "array",
            "title": "Price Points",
            "description": "The list of available price points"
          }
        },
        "type": "object",
        "required": [
          "context",
          "price_points"
        ],
        "title": "PricePointsResponse"
      },
      "PriceStepUpSettings": {
        "properties": {
          "steps": {
            "items": {
              "$ref": "#/components/schemas/PriceStepUpStep"
            },
            "type": "array",
            "maxItems": 50,
            "minItems": 1,
            "title": "Steps"
          }
        },
        "type": "object",
        "required": [
          "steps"
        ],
        "title": "PriceStepUpSettings"
      },
      "PriceStepUpStep": {
        "properties": {
          "count": {
            "type": "integer",
            "minimum": 1.0,
            "title": "Count",
            "description": "Number of purchases priced at this step"
          },
          "price": {
            "title": "Price",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "type": "string",
            "maxLength": 32
          },
          "price_template_key": {
            "title": "Price Template Key",
            "type": "string",
            "maxLength": 255
          },
          "prices": {
            "$ref": "#/components/schemas/BaseItemPrices"
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "count"
        ],
        "title": "PriceStepUpStep"
      },
      "PriceTemplateCreate": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "Unique key for the price template. If not set, the key will be generated from the name",
            "type": "string"
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "Name of the price template"
          },
          "price": {
            "type": "integer",
            "title": "Price",
            "description": "Price point used to derive pricing details"
          },
          "category": {
            "$ref": "#/components/schemas/PriceCategory",
            "description": "Category of the price template (e.g., none or platform)"
          },
          "customs": {
            "items": {
              "$ref": "#/components/schemas/Price"
            },
            "type": "array",
            "title": "Customs",
            "description": "List of price customizations overwriting platform suggested prices"
          }
        },
        "type": "object",
        "required": [
          "name",
          "price",
          "category",
          "customs"
        ],
        "title": "PriceTemplateCreate"
      },
      "PriceTemplateRead": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "Unique key for the price template. If not set, the key will be generated from the name",
            "type": "string"
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "Name of the price template"
          },
          "price": {
            "type": "integer",
            "title": "Price",
            "description": "Price point used to derive pricing details"
          },
          "category": {
            "$ref": "#/components/schemas/PriceCategory",
            "description": "Category of the price template (e.g., none or platform)"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "Unique identifier for the price template"
          },
          "items_count": {
            "type": "integer",
            "title": "Items Count",
            "description": "Number of items linked to the template",
            "default": 0
          },
          "created_at": {
            "type": "integer",
            "title": "Created At",
            "description": "Timestamp (in epoch seconds) when the template was created"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "Timestamp (in epoch seconds) when the template was last modified",
            "type": "integer"
          },
          "prices": {
            "items": {
              "$ref": "#/components/schemas/TemplatePrice"
            },
            "type": "array",
            "title": "Prices",
            "description": "List of prices derived from the template"
          }
        },
        "type": "object",
        "required": [
          "name",
          "price",
          "category",
          "id",
          "created_at",
          "prices"
        ],
        "title": "PriceTemplateRead"
      },
      "PriceTemplateShort": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "Unique key for the price template. If not set, the key will be generated from the name",
            "type": "string"
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "Name of the price template"
          },
          "price": {
            "type": "integer",
            "title": "Price",
            "description": "Price point used to derive pricing details"
          },
          "category": {
            "$ref": "#/components/schemas/PriceCategory",
            "description": "Category of the price template (e.g., none or platform)"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "Unique identifier for the price template"
          },
          "items_count": {
            "type": "integer",
            "title": "Items Count",
            "description": "Number of items linked to the template",
            "default": 0
          },
          "created_at": {
            "type": "integer",
            "title": "Created At",
            "description": "Timestamp (in epoch seconds) when the template was created"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "Timestamp (in epoch seconds) when the template was last modified",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "name",
          "price",
          "category",
          "id",
          "created_at"
        ],
        "title": "PriceTemplateShort"
      },
      "PriceTemplateUpdate": {
        "properties": {
          "key": {
            "title": "Key",
            "description": "Unique key for the price template",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "description": "Updated name of the price template",
            "type": "string"
          },
          "price": {
            "title": "Price",
            "description": "Updated price point",
            "type": "integer"
          },
          "category": {
            "description": "Updated category of the price template)",
            "$ref": "#/components/schemas/PriceCategory"
          },
          "customs": {
            "title": "Customs",
            "description": "List of price customizations overwriting platform suggested prices",
            "items": {
              "$ref": "#/components/schemas/Price"
            },
            "type": "array"
          }
        },
        "type": "object",
        "title": "PriceTemplateUpdate"
      },
      "PriceViewMode": {
        "type": "string",
        "enum": [
          "from_lowest_price",
          "specific_plan"
        ],
        "title": "PriceViewMode"
      },
      "PriceViewSettings": {
        "properties": {
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "PriceViewSettings",
            "enum": [
              "PriceViewSettings"
            ]
          },
          "price_mode": {
            "$ref": "#/components/schemas/PriceViewMode"
          },
          "plan_key": {
            "title": "Plan Key",
            "type": "string"
          },
          "show_period": {
            "type": "boolean",
            "title": "Show Period"
          }
        },
        "type": "object",
        "required": [
          "show_period"
        ],
        "title": "PriceViewSettings"
      },
      "ProfileDisplay": {
        "properties": {
          "display_name": {
            "title": "Display Name",
            "nullable": true,
            "type": "string"
          },
          "value_format": {
            "nullable": true,
            "$ref": "#/components/schemas/ProfileValueFormat"
          },
          "icon_url": {
            "title": "Icon Url",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "card_template_id": {
            "title": "Card Template Id",
            "description": "Card template rendering this attribute on the hub",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "title": "ProfileDisplay",
        "description": "How a player custom attribute is presented on the hub profile."
      },
      "ProfileValueFormat": {
        "type": "string",
        "enum": [
          "string",
          "number",
          "currency"
        ],
        "title": "ProfileValueFormat",
        "description": "How the hub renders a profile attribute value, or each element of a list value."
      },
      "ProgressionProgramBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "ProgressionProgramBlock",
            "enum": [
              "ProgressionProgramBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "program_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Program Id"
          },
          "variant": {
            "$ref": "#/components/schemas/LoyaltyProgramBlockVariant",
            "default": "standard"
          },
          "slider_on_mobile": {
            "title": "Slider On Mobile",
            "nullable": true,
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "program_id"
        ],
        "title": "ProgressionProgramBlock"
      },
      "PromotionPaymentLimits": {
        "properties": {
          "requires_payment_methods": {
            "title": "Requires Payment Methods",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "requires_payment_method_save": {
            "title": "Requires Payment Method Save",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "PromotionPaymentLimits"
      },
      "PublicItemRead": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "type": "string"
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/PublicNestedItem"
            },
            "type": "array"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the item"
          },
          "properties": {
            "items": {
              "$ref": "#/components/schemas/ItemPropertyRelationRead"
            },
            "type": "array",
            "title": "Properties",
            "description": "The item properties"
          },
          "source": {
            "$ref": "#/components/schemas/ItemSource",
            "default": "order"
          },
          "rarity_id": {
            "title": "Rarity Id",
            "description": "The rarity id of the item",
            "type": "string",
            "maxLength": 32
          },
          "item_rarity": {
            "$ref": "#/components/schemas/ItemRarityRead"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the item",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the item",
            "type": "integer",
            "minimum": 0.0
          },
          "is_custom": {
            "type": "boolean",
            "title": "Is Custom",
            "default": false
          },
          "created_at": {
            "type": "number",
            "title": "Created At",
            "description": "The timestamp of when the item was created"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "The timestamp of when the item was modified",
            "type": "number"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the item was archived",
            "type": "number"
          },
          "price_minor_unit": {
            "title": "Price Minor Unit",
            "type": "integer"
          },
          "price_decimal": {
            "title": "Price Decimal",
            "type": "number"
          },
          "fallback_item_id": {
            "title": "Fallback Item Id",
            "description": "The item that will be given as fallback if the main item can't be given to the player",
            "type": "string",
            "maxLength": 32
          },
          "fallback_item_quantity": {
            "title": "Fallback Item Quantity",
            "description": "The quantity of the fallback item",
            "type": "integer"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "PublicItemRead",
            "enum": [
              "PublicItemRead"
            ]
          },
          "nested_items_read": {
            "title": "Nested Items Read",
            "items": {
              "$ref": "#/components/schemas/PublicItemRead"
            },
            "type": "array"
          },
          "fallback_item": {
            "$ref": "#/components/schemas/PublicItemRead"
          },
          "quantity_after_bonus": {
            "title": "Quantity After Bonus",
            "type": "integer"
          },
          "quantity_bonus_value": {
            "title": "Quantity Bonus Value",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "id",
          "created_at"
        ],
        "title": "PublicItemRead"
      },
      "PublicLootboxGroup": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "weight": {
            "type": "integer",
            "maximum": 1000000.0,
            "minimum": 0.0,
            "title": "Weight"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "nested_items": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PublicLootboxGroup"
                },
                {
                  "$ref": "#/components/schemas/PublicLootboxNestedItem"
                }
              ]
            },
            "type": "array",
            "title": "Nested Items"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "LootboxGroup",
            "enum": [
              "LootboxGroup"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "weight",
          "name",
          "nested_items"
        ],
        "title": "PublicLootboxGroup"
      },
      "PublicLootboxNestedItem": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "weight": {
            "type": "integer",
            "maximum": 1000000.0,
            "minimum": 0.0,
            "title": "Weight"
          },
          "count": {
            "type": "integer",
            "title": "Count"
          },
          "sku": {
            "type": "string",
            "title": "SKU"
          },
          "reward_mode": {
            "$ref": "#/components/schemas/RewardMode",
            "default": "repeating"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "LootboxNestedItem",
            "enum": [
              "LootboxNestedItem"
            ]
          },
          "is_won": {
            "type": "boolean",
            "title": "Is Won",
            "description": "True when the user has already won this non-repeating item",
            "default": false
          }
        },
        "type": "object",
        "required": [
          "id",
          "weight",
          "count",
          "sku"
        ],
        "title": "PublicLootboxNestedItem"
      },
      "PublicLootboxRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "lootbox_settings": {
            "$ref": "#/components/schemas/PublicLootboxSettings",
            "description": "The settings of the lootbox"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the lootbox"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "PublicLootboxRead",
            "enum": [
              "PublicLootboxRead"
            ]
          },
          "groups": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/LootboxGroupRead"
                },
                {
                  "$ref": "#/components/schemas/LootboxNestedItemRead"
                }
              ]
            },
            "type": "array",
            "title": "Groups",
            "description": "Groups with nested elements that can be dropped; the user's won non-repeating items are marked with is_won"
          },
          "attempts_count": {
            "type": "integer",
            "title": "Attempts Count",
            "description": "The number of attempts to open this lootbox",
            "default": 0
          },
          "mechanics": {
            "items": {
              "$ref": "#/components/schemas/HardPityMechanicRead"
            },
            "type": "array",
            "title": "Mechanics",
            "description": "Active mechanics for the user; empty when none apply"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "lootbox_settings",
          "id"
        ],
        "title": "PublicLootboxRead"
      },
      "PublicLootboxSettings": {
        "properties": {
          "groups": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PublicLootboxGroup"
                },
                {
                  "$ref": "#/components/schemas/PublicLootboxNestedItem"
                }
              ]
            },
            "type": "array",
            "title": "Groups"
          },
          "claim_video_url": {
            "title": "Claim Video Url",
            "type": "string"
          },
          "claimed_video_url": {
            "title": "Claimed Video Url",
            "type": "string"
          },
          "claim_video_url_mov": {
            "title": "Claim Video Url Mov",
            "type": "string"
          },
          "claimed_video_url_mov": {
            "title": "Claimed Video Url Mov",
            "type": "string"
          },
          "view_type": {
            "$ref": "#/components/schemas/LootboxViewType",
            "default": "default"
          },
          "mechanics": {
            "items": {
              "$ref": "#/components/schemas/HardPityMechanicRead"
            },
            "type": "array",
            "title": "Mechanics",
            "description": "Mechanics configured for this lootbox. Carries user progress only on GET /lootboxes/{lootbox_id}, elsewhere it just signals their presence"
          }
        },
        "type": "object",
        "required": [
          "groups"
        ],
        "title": "PublicLootboxSettings",
        "description": "Lootbox settings for player-facing responses: raw pity and price ladder config is never serialized."
      },
      "PublicNestedItem": {
        "properties": {
          "id": {
            "title": "Id",
            "type": "string",
            "maxLength": 32
          },
          "count": {
            "title": "Count",
            "type": "integer"
          },
          "sku": {
            "title": "SKU",
            "type": "string"
          },
          "is_featured": {
            "title": "Is Featured",
            "type": "boolean"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "view_type": {
            "$ref": "#/components/schemas/NestedItemViewType"
          }
        },
        "type": "object",
        "title": "PublicNestedItem",
        "description": "Nested item as exposed to players, with the internal expression hidden."
      },
      "PublicPaymentMethod": {
        "type": "string",
        "enum": [
          "card",
          "paypal",
          "apple_pay",
          "google_pay",
          "cashapp",
          "klarna",
          "venmo"
        ],
        "title": "PublicPaymentMethod",
        "description": "Payment methods exposed to customers."
      },
      "PublicSubscriptionPlan": {
        "properties": {
          "key": {
            "type": "string",
            "title": "Key"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "billing_cycle": {
            "$ref": "#/components/schemas/SubscriptionBillingCycle"
          },
          "renewal_type": {
            "$ref": "#/components/schemas/SubscriptionRenewalType"
          },
          "type": {
            "$ref": "#/components/schemas/SubscriptionPlanType"
          },
          "price": {
            "title": "Price",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "type": "integer"
          },
          "price_after_discount": {
            "title": "Price After Discount",
            "type": "integer"
          },
          "price_after_discount_usd": {
            "title": "Price After Discount USD",
            "type": "integer"
          },
          "price_template_id": {
            "title": "Price Template Id",
            "type": "string",
            "maxLength": 32
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "grace_period": {
            "title": "Grace Period",
            "type": "integer"
          },
          "grace_mode": {
            "$ref": "#/components/schemas/SubscriptionGraceMode"
          },
          "trial_period": {
            "title": "Trial Period",
            "type": "integer"
          },
          "account_lock_duration": {
            "title": "Account Lock Duration",
            "type": "integer"
          },
          "change_payment_mode": {
            "title": "Change Payment Mode",
            "type": "boolean"
          },
          "is_downgrade_supported": {
            "type": "boolean",
            "title": "Is Downgrade Supported"
          },
          "is_pause_allowed": {
            "type": "boolean",
            "title": "Is Pause Allowed"
          },
          "is_reactivation_allowed": {
            "type": "boolean",
            "title": "Is Reactivation Allowed"
          },
          "benefits": {
            "title": "Benefits",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "nested_items": {
            "title": "Nested Items",
            "items": {
              "$ref": "#/components/schemas/PublicNestedItem"
            },
            "type": "array"
          },
          "nested_items_read": {
            "title": "Nested Items Read",
            "items": {
              "$ref": "#/components/schemas/PublicItemRead"
            },
            "type": "array"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "type": "integer"
          },
          "discount_duration": {
            "$ref": "#/components/schemas/DiscountDuration"
          }
        },
        "type": "object",
        "required": [
          "key",
          "name",
          "billing_cycle",
          "renewal_type",
          "type",
          "currency",
          "is_downgrade_supported",
          "is_pause_allowed",
          "is_reactivation_allowed"
        ],
        "title": "PublicSubscriptionPlan"
      },
      "PublicSubscriptionRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/PublicNestedItem"
            },
            "type": "array"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the subscription"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "PublicSubscriptionRead",
            "enum": [
              "PublicSubscriptionRead"
            ]
          },
          "subscription_settings": {
            "$ref": "#/components/schemas/PublicSubscriptionSettings",
            "description": "The settings of the subscription"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "id",
          "subscription_settings"
        ],
        "title": "PublicSubscriptionRead"
      },
      "PublicSubscriptionSettings": {
        "properties": {
          "plans": {
            "items": {
              "$ref": "#/components/schemas/PublicSubscriptionPlan"
            },
            "type": "array",
            "title": "Plans",
            "description": "The subscription plans"
          },
          "store_item_settings": {
            "$ref": "#/components/schemas/StoreItemSubscriptionSettings"
          },
          "selected_plan_key": {
            "title": "Selected Plan Key",
            "type": "string"
          }
        },
        "type": "object",
        "title": "PublicSubscriptionSettings"
      },
      "PublicVirtualCurrencyRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "vc_settings": {
            "$ref": "#/components/schemas/VirtualCurrencySettings",
            "description": "The settings of the virtual currency"
          },
          "start_at": {
            "title": "Start At",
            "description": "The timestamp of when the virtual currency becomes active",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The timestamp of when the virtual currency expires",
            "type": "integer"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the virtual currency"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "PublicVirtualCurrencyRead",
            "enum": [
              "PublicVirtualCurrencyRead"
            ]
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the virtual currency was archived",
            "type": "number"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "vc_settings",
          "id"
        ],
        "title": "PublicVirtualCurrencyRead"
      },
      "RangeField": {
        "type": "string",
        "enum": [
          "created_at",
          "modified_at",
          "status_updated_at"
        ],
        "title": "RangeField",
        "description": "An enumeration."
      },
      "RangeOfferBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "RangeOfferBlock",
            "enum": [
              "RangeOfferBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "range_offer_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Range Offer Id"
          }
        },
        "type": "object",
        "required": [
          "range_offer_id"
        ],
        "title": "RangeOfferBlock"
      },
      "ReactivatedSubscription": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id",
            "description": "Resulting subscription ID."
          },
          "status": {
            "$ref": "#/components/schemas/SubscriptionStatus",
            "description": "Resulting subscription status."
          }
        },
        "type": "object",
        "required": [
          "id",
          "status"
        ],
        "title": "ReactivatedSubscription"
      },
      "RecurrenceFrequency": {
        "type": "string",
        "enum": [
          "daily",
          "weekly"
        ],
        "title": "RecurrenceFrequency"
      },
      "RedeemCouponBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "RedeemCouponBlock",
            "enum": [
              "RedeemCouponBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "variant": {
            "$ref": "#/components/schemas/RedeemCouponBlockVariant",
            "default": "default"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string"
          }
        },
        "type": "object",
        "title": "RedeemCouponBlock"
      },
      "RedeemCouponBlockVariant": {
        "type": "string",
        "enum": [
          "default",
          "block"
        ],
        "title": "RedeemCouponBlockVariant"
      },
      "RedirectMode": {
        "type": "string",
        "enum": [
          "no_redirect",
          "immediate",
          "delayed"
        ],
        "title": "RedirectMode"
      },
      "RedirectSettings": {
        "properties": {
          "mode": {
            "$ref": "#/components/schemas/RedirectMode",
            "description": "The redirect mode after a successful payment. `no_redirect` - no automatic redirect, `immediate` - redirect immediately, `delayed` - redirect after delay in `delay_seconds`.",
            "default": "no_redirect"
          },
          "delay_seconds": {
            "title": "Delay Seconds",
            "description": "The redirect delay in seconds when `mode` is set to `delayed`. If not specified, defaults to 5 seconds.",
            "type": "number",
            "maximum": 300.0,
            "exclusiveMinimum": 0.0
          },
          "target": {
            "description": "The target of the redirect. `game` - redirect to the game (`back_to_game_url`), `store` - redirect to the store (`back_to_store_url`). If not specified, the target will be either `game` or `store` whichever URL is available in the order.",
            "$ref": "#/components/schemas/RedirectTarget"
          }
        },
        "type": "object",
        "title": "RedirectSettings"
      },
      "RedirectTarget": {
        "type": "string",
        "enum": [
          "game",
          "store"
        ],
        "title": "RedirectTarget"
      },
      "RejectAuthorizationReason": {
        "type": "string",
        "enum": [
          "not_eligible",
          "banned",
          "rejected"
        ],
        "title": "RejectAuthorizationReason",
        "description": "Reason a game hub login cannot proceed.\n\n- `not_eligible`: the player has not unlocked hub access yet\n- `banned`: the player's game account is suspended\n- `rejected`: the game server declined the login for any other reason"
      },
      "RejectAuthorizationRequest": {
        "properties": {
          "nonce": {
            "title": "Nonce",
            "description": "The nonce from the authorization deep link, used to notify the waiting hub session.",
            "type": "string",
            "maxLength": 255
          },
          "reason": {
            "$ref": "#/components/schemas/RejectAuthorizationReason",
            "description": "Why the login cannot proceed."
          }
        },
        "type": "object",
        "required": [
          "reason"
        ],
        "title": "RejectAuthorizationRequest"
      },
      "RejectAuthorizationResponse": {
        "properties": {
          "error_url": {
            "type": "string",
            "maxLength": 2083,
            "minLength": 1,
            "format": "uri",
            "title": "Error Url",
            "description": "The game hub URL that shows the error to the player. Opening it is purely optional and the login is already rejected either way."
          }
        },
        "type": "object",
        "required": [
          "error_url"
        ],
        "title": "RejectAuthorizationResponse"
      },
      "RemoveFromSegmentNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "RemoveFromSegmentNode",
            "enum": [
              "RemoveFromSegmentNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "segment_slug": {
            "title": "Segment Slug",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "RemoveFromSegmentNode"
      },
      "Require3DSNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "Require3DSNode",
            "enum": [
              "Require3DSNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "Require3DSNode",
        "description": "Lets the capture through, but billing must re-run it with a 3DS challenge."
      },
      "RequirePennyDropNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "RequirePennyDropNode",
            "enum": [
              "RequirePennyDropNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "RequirePennyDropNode",
        "description": "Lets the capture through, but billing must verify the card with a penny drop."
      },
      "RequirementsMismatchBehavior": {
        "type": "string",
        "enum": [
          "hide_from_store",
          "disable",
          "disable_and_show_description"
        ],
        "title": "RequirementsMismatchBehavior"
      },
      "ResourceState": {
        "type": "string",
        "enum": [
          "active",
          "archived"
        ],
        "title": "ResourceState",
        "description": "An enumeration."
      },
      "RewardIssueStatus": {
        "type": "string",
        "enum": [
          "issued",
          "revoked",
          "issue_failed",
          "revoke_failed"
        ],
        "title": "RewardIssueStatus"
      },
      "RewardItem": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "duration": {
            "title": "Duration",
            "type": "integer"
          },
          "quantity": {
            "type": "integer",
            "title": "Quantity"
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url"
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url"
          },
          "properties": {
            "items": {
              "$ref": "#/components/schemas/ItemPropertyRelationRead"
            },
            "type": "array",
            "title": "Properties"
          },
          "archived_at": {
            "title": "Archived At",
            "type": "integer"
          },
          "nested_items_read": {
            "title": "Nested Items Read",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PublicItemRead"
                },
                {
                  "$ref": "#/components/schemas/PublicLootboxRead"
                },
                {
                  "$ref": "#/components/schemas/PublicSubscriptionRead"
                },
                {
                  "$ref": "#/components/schemas/PublicVirtualCurrencyRead"
                }
              ]
            },
            "type": "array"
          },
          "highlights": {
            "$ref": "#/components/schemas/Highlights"
          }
        },
        "type": "object",
        "required": [
          "id",
          "name",
          "quantity",
          "is_stackable",
          "type",
          "properties"
        ],
        "title": "RewardItem"
      },
      "RewardMode": {
        "type": "string",
        "enum": [
          "repeating",
          "non_repeating"
        ],
        "title": "RewardMode"
      },
      "RewardPointsPrice": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "reward_points",
            "enum": [
              "reward_points"
            ]
          },
          "amount": {
            "type": "integer",
            "title": "Amount"
          }
        },
        "type": "object",
        "required": [
          "amount"
        ],
        "title": "RewardPointsPrice"
      },
      "RewardsSettings": {
        "properties": {
          "daily_rewards": {
            "items": {
              "$ref": "#/components/schemas/DayReward"
            },
            "type": "array",
            "title": "Daily Rewards"
          },
          "extra_reward_items": {
            "title": "Extra Reward Items",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "claim_mode": {
            "$ref": "#/components/schemas/DailyRewardClaimMode",
            "default": "inline"
          },
          "grid_mode": {
            "$ref": "#/components/schemas/DailyRewardGridMode",
            "default": "auto"
          },
          "grid_config": {
            "$ref": "#/components/schemas/GridConfig"
          }
        },
        "type": "object",
        "required": [
          "daily_rewards"
        ],
        "title": "RewardsSettings"
      },
      "RewardsSettingsRead": {
        "properties": {
          "daily_rewards": {
            "items": {
              "$ref": "#/components/schemas/DayRewardRead"
            },
            "type": "array",
            "title": "Daily Rewards"
          },
          "extra_reward_items": {
            "title": "Extra Reward Items",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "claim_mode": {
            "$ref": "#/components/schemas/DailyRewardClaimMode",
            "default": "inline"
          },
          "grid_mode": {
            "$ref": "#/components/schemas/DailyRewardGridMode",
            "default": "auto"
          },
          "grid_config": {
            "$ref": "#/components/schemas/GridConfig"
          },
          "extra_reward_items_read": {
            "title": "Extra Reward Items Read",
            "items": {
              "$ref": "#/components/schemas/RewardItem"
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "daily_rewards"
        ],
        "title": "RewardsSettingsRead"
      },
      "RichContentBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "RichContentBlock",
            "enum": [
              "RichContentBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "html": {
            "type": "string",
            "title": "Html"
          }
        },
        "type": "object",
        "required": [
          "html"
        ],
        "title": "RichContentBlock"
      },
      "RollingOfferBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "RollingOfferBlock",
            "enum": [
              "RollingOfferBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "rolling_offer_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Rolling Offer Id"
          },
          "variant": {
            "$ref": "#/components/schemas/RollingOfferBlockVariant",
            "default": "slider"
          },
          "max_items_count": {
            "title": "Max Items Count",
            "type": "integer"
          },
          "scroll_disabled": {
            "title": "Scroll Disabled",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "rolling_offer_id"
        ],
        "title": "RollingOfferBlock"
      },
      "RollingOfferBlockVariant": {
        "type": "string",
        "enum": [
          "slider",
          "snake"
        ],
        "title": "RollingOfferBlockVariant"
      },
      "RotationSettings": {
        "properties": {
          "count": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Count",
            "description": "Number of items to take for each rotation"
          },
          "period_value": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Period Value"
          },
          "period_type": {
            "$ref": "#/components/schemas/PeriodType"
          },
          "type": {
            "$ref": "#/components/schemas/RotationType"
          },
          "show_timer": {
            "title": "Show Timer",
            "description": "Determines whether to show the timer until the next rotation",
            "nullable": true,
            "type": "boolean"
          },
          "global_rotation": {
            "title": "Global Rotation",
            "description": "Whether the rotation is global or per user.",
            "nullable": true,
            "type": "boolean"
          },
          "last_global_rotated_at": {
            "title": "Last Global Rotated At",
            "description": "Last global rotation timestamp",
            "nullable": true,
            "type": "integer"
          },
          "current_rotated_store_item_ids": {
            "title": "Current Rotated Store Item Ids",
            "description": "Current visible store item ids",
            "nullable": true,
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "count",
          "period_value",
          "period_type",
          "type"
        ],
        "title": "RotationSettings"
      },
      "RotationType": {
        "type": "string",
        "enum": [
          "random",
          "random_by_weight",
          "round_robin"
        ],
        "title": "RotationType"
      },
      "SalesChannel": {
        "type": "string",
        "enum": [
          "game_hub",
          "checkout",
          "android_sdk",
          "checkout_link"
        ],
        "title": "SalesChannel"
      },
      "Schedule": {
        "properties": {
          "period_type": {
            "$ref": "#/components/schemas/PeriodType"
          },
          "count": {
            "type": "integer",
            "minimum": 1.0,
            "title": "Count"
          },
          "start_day_number": {
            "type": "integer",
            "minimum": 1.0,
            "title": "Start Day Number"
          }
        },
        "type": "object",
        "required": [
          "period_type",
          "count",
          "start_day_number"
        ],
        "title": "Schedule"
      },
      "SegmentCreate": {
        "properties": {
          "slug": {
            "type": "string",
            "title": "Slug"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "color": {
            "title": "Color",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "segment_group_id": {
            "title": "Segment Group Id",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "slug",
          "name"
        ],
        "title": "SegmentCreate"
      },
      "SegmentGroupCreate": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentGroupType"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled"
          },
          "is_template": {
            "type": "boolean",
            "title": "Is Template"
          }
        },
        "type": "object",
        "required": [
          "name",
          "type",
          "enabled",
          "is_template"
        ],
        "title": "SegmentGroupCreate"
      },
      "SegmentGroupRead": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentGroupType"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled"
          },
          "is_template": {
            "type": "boolean",
            "title": "Is Template"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "name",
          "type",
          "enabled",
          "is_template",
          "id"
        ],
        "title": "SegmentGroupRead"
      },
      "SegmentGroupReadStat": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentGroupType"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled"
          },
          "is_template": {
            "type": "boolean",
            "title": "Is Template"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "segment_count": {
            "type": "integer",
            "title": "Segment Count"
          }
        },
        "type": "object",
        "required": [
          "name",
          "type",
          "enabled",
          "is_template",
          "id",
          "segment_count"
        ],
        "title": "SegmentGroupReadStat"
      },
      "SegmentGroupType": {
        "type": "string",
        "enum": [
          "static",
          "dynamic"
        ],
        "title": "SegmentGroupType"
      },
      "SegmentGroupUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          },
          "graph": {
            "$ref": "#/components/schemas/GraphRoot"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentGroupType"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "is_template": {
            "title": "Is Template",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "SegmentGroupUpdate"
      },
      "SegmentRead": {
        "properties": {
          "slug": {
            "type": "string",
            "title": "Slug"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "color": {
            "title": "Color",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "segment_group_id": {
            "title": "Segment Group Id",
            "type": "string"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "segment_group": {
            "$ref": "#/components/schemas/SegmentGroupRead"
          }
        },
        "type": "object",
        "required": [
          "slug",
          "name",
          "id"
        ],
        "title": "SegmentRead"
      },
      "SegmentUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "color": {
            "title": "Color",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "segment_group_id": {
            "title": "Segment Group Id",
            "type": "string"
          },
          "slug": {
            "title": "Slug",
            "type": "string"
          }
        },
        "type": "object",
        "title": "SegmentUpdate"
      },
      "SequentialOfferBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "SequentialOfferBlock",
            "enum": [
              "SequentialOfferBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "sequential_offer_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Sequential Offer Id"
          }
        },
        "type": "object",
        "required": [
          "sequential_offer_id"
        ],
        "title": "SequentialOfferBlock"
      },
      "SetAttributeValue": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          },
          "value": {
            "title": "Value"
          },
          "type": {
            "$ref": "#/components/schemas/AttributeValueType"
          },
          "add_values_to_list": {
            "title": "Add Values To List",
            "type": "boolean"
          }
        },
        "type": "object",
        "required": [
          "name",
          "type"
        ],
        "title": "SetAttributeValue"
      },
      "SetAttributeValuesNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "SetAttributeValuesNode",
            "enum": [
              "SetAttributeValuesNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "values": {
            "additionalProperties": true,
            "type": "object",
            "title": "Values"
          },
          "values_from_variables": {
            "title": "Values From Variables",
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "new_values": {
            "title": "New Values",
            "items": {
              "$ref": "#/components/schemas/SetAttributeValue"
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "values"
        ],
        "title": "SetAttributeValuesNode"
      },
      "SocialChannelRead": {
        "properties": {
          "followers": {
            "title": "Followers",
            "type": "integer"
          },
          "total_views": {
            "title": "Total Views",
            "type": "integer"
          },
          "total_content_count": {
            "title": "Total Content Count",
            "type": "integer"
          },
          "avg_views_per_video_in_window": {
            "title": "Avg Views Per Video In Window",
            "type": "number"
          },
          "avg_views_per_video_window_days": {
            "title": "Avg Views Per Video Window Days",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "followers",
          "total_views",
          "total_content_count",
          "avg_views_per_video_in_window",
          "avg_views_per_video_window_days"
        ],
        "title": "SocialChannelRead"
      },
      "SocialContentItemRead": {
        "properties": {
          "url": {
            "type": "string",
            "title": "Url"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "thumbnail_url": {
            "title": "Thumbnail Url",
            "type": "string"
          },
          "published_at": {
            "type": "string",
            "format": "date-time",
            "title": "Published At"
          },
          "views": {
            "title": "Views",
            "type": "integer"
          },
          "likes": {
            "title": "Likes",
            "type": "integer"
          },
          "comments": {
            "title": "Comments",
            "type": "integer"
          },
          "is_short": {
            "type": "boolean",
            "title": "Is Short",
            "default": false
          }
        },
        "type": "object",
        "required": [
          "url",
          "title",
          "thumbnail_url",
          "published_at",
          "views",
          "likes",
          "comments"
        ],
        "title": "SocialContentItemRead"
      },
      "SocialPerformanceMetricsRead": {
        "properties": {
          "views": {
            "title": "Views",
            "type": "integer"
          },
          "likes": {
            "title": "Likes",
            "type": "integer"
          },
          "comments": {
            "title": "Comments",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "views",
          "likes",
          "comments"
        ],
        "title": "SocialPerformanceMetricsRead"
      },
      "SocialPerformanceSnapshotRead": {
        "properties": {
          "content_url": {
            "type": "string",
            "title": "Content Url"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "thumbnail_url": {
            "title": "Thumbnail Url",
            "type": "string"
          },
          "published_at": {
            "type": "string",
            "format": "date-time",
            "title": "Published At"
          },
          "taken_at": {
            "type": "string",
            "format": "date-time",
            "title": "Taken At"
          },
          "window_days": {
            "type": "integer",
            "title": "Window Days"
          },
          "metrics": {
            "$ref": "#/components/schemas/SocialPerformanceMetricsRead"
          }
        },
        "type": "object",
        "required": [
          "content_url",
          "title",
          "thumbnail_url",
          "published_at",
          "taken_at",
          "window_days",
          "metrics"
        ],
        "title": "SocialPerformanceSnapshotRead"
      },
      "SortOrder": {
        "type": "string",
        "enum": [
          "asc",
          "desc"
        ],
        "title": "SortOrder"
      },
      "SortStoreItemsNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "SortStoreItemsNode",
            "enum": [
              "SortStoreItemsNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "order": {
            "$ref": "#/components/schemas/SortOrder"
          },
          "sort_by": {
            "$ref": "#/components/schemas/SortStoreType"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "order",
          "sort_by"
        ],
        "title": "SortStoreItemsNode"
      },
      "SortStoreType": {
        "type": "string",
        "enum": [
          "price",
          "name",
          "discount",
          "position"
        ],
        "title": "SortStoreType"
      },
      "SplitInfo": {
        "properties": {
          "title": {
            "title": "Title",
            "default": "",
            "type": "string"
          },
          "value": {
            "type": "integer",
            "title": "Value"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "value"
        ],
        "title": "SplitInfo"
      },
      "SplitNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "SplitNode",
            "enum": [
              "SplitNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "distribution": {
            "items": {
              "$ref": "#/components/schemas/SplitInfo"
            },
            "type": "array",
            "title": "Distribution"
          },
          "random_value": {
            "title": "Random Value",
            "type": "number"
          },
          "value_next_node_id": {
            "title": "Value Next Node Id",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "distribution"
        ],
        "title": "SplitNode"
      },
      "StoreBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "StoreBlock",
            "enum": [
              "StoreBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "category_id": {
            "title": "Category Id",
            "type": "string",
            "maxLength": 32
          },
          "featured_category_id": {
            "title": "Featured Category Id",
            "type": "string",
            "maxLength": 32
          },
          "show_sticky_categories": {
            "title": "Show Sticky Categories",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "StoreBlock"
      },
      "StoreBulkDelete": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "StoreBulkDelete"
      },
      "StoreCardType": {
        "type": "string",
        "enum": [
          "default",
          "featured"
        ],
        "title": "StoreCardType"
      },
      "StoreCategoryDividerPosition": {
        "type": "string",
        "enum": [
          "top",
          "bottom"
        ],
        "title": "StoreCategoryDividerPosition"
      },
      "StoreCategoryDividerType": {
        "type": "string",
        "enum": [
          "image",
          "mask"
        ],
        "title": "StoreCategoryDividerType"
      },
      "StoreCategoryRenderOptions": {
        "properties": {
          "delay": {
            "title": "Delay",
            "type": "integer"
          },
          "loop": {
            "title": "Loop",
            "type": "boolean"
          },
          "autoplay": {
            "title": "Autoplay",
            "type": "boolean"
          },
          "show_dots": {
            "title": "Show Dots",
            "type": "boolean"
          },
          "display_type": {
            "$ref": "#/components/schemas/CarouselDisplayType"
          }
        },
        "type": "object",
        "title": "StoreCategoryRenderOptions"
      },
      "StoreCategoryRenderType": {
        "type": "string",
        "enum": [
          "default",
          "carousel"
        ],
        "title": "StoreCategoryRenderType"
      },
      "StoreCreate": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the store, used for display purposes.",
            "nullable": false
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of the store, such as its purpose, features, or additional details.",
            "nullable": false
          },
          "key": {
            "title": "Key",
            "description": "The key of the store.",
            "nullable": true,
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/StoreType",
            "description": "The type of the store (e.g., special, rotating, limited stock).",
            "nullable": false
          },
          "rotation_settings": {
            "description": "The configuration options for the rotating store type, such as how often the assortment is refreshed.",
            "nullable": true,
            "$ref": "#/components/schemas/RotationSettings"
          },
          "limited_stock_settings": {
            "description": "The configuration options for the limited stock store type, including purchase limits or stock availability rules.",
            "nullable": true,
            "$ref": "#/components/schemas/LimitedStockSettings"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start time of the store in Unix timestamp (seconds) when it becomes available to users.",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end time of the store in Unix timestamp (seconds) when it closes and is no longer accessible.",
            "nullable": true,
            "type": "integer"
          },
          "settings": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreSettings"
          }
        },
        "type": "object",
        "required": [
          "name",
          "description",
          "type"
        ],
        "title": "StoreCreate"
      },
      "StoreItemBenefit": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/StoreItemBenefitType"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "type": "integer"
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "type": "integer"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "type": "integer"
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "type": "integer"
          },
          "store_promotion_id": {
            "title": "Store Promotion Id",
            "type": "string",
            "maxLength": 32
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "type": "integer"
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "type": "integer"
          },
          "reward_settings": {
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "requires_payment_methods": {
            "title": "Requires Payment Methods",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "requires_payment_method_save": {
            "title": "Requires Payment Method Save",
            "type": "boolean"
          },
          "bonus_items_settings": {
            "$ref": "#/components/schemas/ItemBonusSettings"
          }
        },
        "type": "object",
        "required": [
          "type"
        ],
        "title": "StoreItemBenefit"
      },
      "StoreItemBenefitType": {
        "type": "string",
        "enum": [
          "base",
          "promotion",
          "user_promotion",
          "virtual_sku",
          "extra_promotion"
        ],
        "title": "StoreItemBenefitType"
      },
      "StoreItemBulkDelete": {
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "StoreItemBulkDelete"
      },
      "StoreItemBulkUpdate": {
        "properties": {
          "discount_percent": {
            "title": "Discount Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The user will receive a fixed quantity of the item.",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "nullable": true,
            "type": "integer"
          },
          "name": {
            "title": "Name",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "max_purchases": {
            "title": "Max Purchases",
            "nullable": true,
            "type": "integer"
          },
          "global_max_purchases": {
            "title": "Global Max Purchases",
            "nullable": true,
            "type": "integer"
          },
          "requirements_expression": {
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "requirements_mismatch_behavior": {
            "nullable": true,
            "$ref": "#/components/schemas/RequirementsMismatchBehavior"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "The custom badge for the item",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "start_at": {
            "title": "Start At",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "nullable": true,
            "type": "integer"
          },
          "availability_calendar": {
            "description": "Availability windows for the item. When omitted, it falls back to a single window built from start_at/end_at.",
            "nullable": true,
            "$ref": "#/components/schemas/AvailabilityCalendar"
          },
          "min_amount": {
            "title": "Min Amount",
            "nullable": true,
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "nullable": true,
            "type": "number"
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "nullable": true,
            "type": "integer"
          },
          "reward_settings": {
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "payment_bound": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemPaymentSettings"
          },
          "is_free_item": {
            "title": "Is Free Item",
            "type": "boolean"
          },
          "rotation_weight": {
            "title": "Rotation Weight",
            "nullable": true,
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "max_reward_points_percent": {
            "title": "Max Reward Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "max_purchases_period_type": {
            "nullable": true,
            "$ref": "#/components/schemas/PeriodType"
          },
          "max_purchases_period_value": {
            "title": "Max Purchases Period Value",
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "max_purchases_limit_type": {
            "description": "For 'global' limit all users will have the same timer based on max_purchases_period_value.For 'personal' limit each user will have their own timer based on max_purchases_period_value.",
            "nullable": true,
            "$ref": "#/components/schemas/MaxPurchaseLimitPeriodType"
          },
          "show_disabled_by_max_purchases": {
            "title": "Show Disabled By Max Purchases",
            "nullable": true,
            "type": "boolean"
          },
          "card_type": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreCardType"
          },
          "show_first_on_category_list": {
            "title": "Show First On Category List",
            "nullable": true,
            "type": "boolean"
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "deprecated": true,
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "deprecated": true,
            "nullable": true,
            "type": "integer"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "deprecated": true,
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_items_settings": {
            "description": "The bonus settings for the item, including bonus items and their quantities.",
            "nullable": true,
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for bonus badge",
            "nullable": true,
            "type": "string"
          },
          "subscription_settings": {
            "description": "The subscription settings for the item",
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemSubscriptionSettings"
          },
          "price": {
            "title": "Price",
            "nullable": true,
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "nullable": true,
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "quantity": {
            "title": "Quantity",
            "nullable": true,
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the item"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "StoreItemBulkUpdate"
      },
      "StoreItemCreate": {
        "properties": {
          "discount_percent": {
            "title": "Discount Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The user will receive a fixed quantity of the item.",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "type": "integer",
            "title": "Position"
          },
          "name": {
            "title": "Name",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "max_purchases": {
            "title": "Max Purchases",
            "description": "The maximum number of purchases allowed for the item per user.",
            "nullable": true,
            "type": "integer"
          },
          "global_max_purchases": {
            "title": "Global Max Purchases",
            "description": "The maximum number of purchases allowed for the item across all users.",
            "nullable": true,
            "type": "integer"
          },
          "requirements_expression": {
            "description": "Defines the rules by which an item is shown to the user",
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "The custom badge of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "campaign_id": {
            "title": "Campaign Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "user_campaign_id": {
            "title": "User Campaign Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "bond_user_id": {
            "title": "Bond User Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "start_at": {
            "title": "Start At",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "nullable": true,
            "type": "integer"
          },
          "availability_calendar": {
            "description": "Availability windows for the item. When omitted, it falls back to a single window built from start_at/end_at.",
            "nullable": true,
            "$ref": "#/components/schemas/AvailabilityCalendar"
          },
          "min_amount": {
            "title": "Min Amount",
            "nullable": true,
            "type": "integer"
          },
          "max_reward_points_percent": {
            "title": "Max Reward Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "description": "Percentage of reward points for the item.",
            "nullable": true,
            "type": "number"
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "description": "Fixed reward points for the item.",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "description": "Percentage of loyalty points for the item.",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "description": "Fixed loyalty points for the item.",
            "nullable": true,
            "type": "integer"
          },
          "reward_settings": {
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "payment_bound": {
            "description": "Payment settings for the item.",
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemPaymentSettings"
          },
          "is_free_item": {
            "type": "boolean",
            "title": "Is Free Item",
            "default": false
          },
          "rotation_weight": {
            "title": "Rotation Weight",
            "nullable": true,
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "max_purchases_period_type": {
            "description": "The period type for the max purchases limit. If not set, the limit is global and does not reset.",
            "nullable": true,
            "$ref": "#/components/schemas/PeriodType"
          },
          "max_purchases_period_value": {
            "title": "Max Purchases Period Value",
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "max_purchases_limit_type": {
            "description": "For 'global' limit all users will have the same timer based on max_purchases_period_value.For 'personal' limit each user will have their own timer based on max_purchases_period_value and last purchase date.",
            "nullable": true,
            "$ref": "#/components/schemas/MaxPurchaseLimitPeriodType"
          },
          "show_disabled_by_max_purchases": {
            "title": "Show Disabled By Max Purchases",
            "description": "Whether to show the item as disabled when max purchases limit is reached.",
            "nullable": true,
            "type": "boolean"
          },
          "requirements_mismatch_behavior": {
            "description": "Define what happens when the requirements_expression return false for current user.",
            "nullable": true,
            "$ref": "#/components/schemas/RequirementsMismatchBehavior"
          },
          "card_type": {
            "description": "The type of the card for the item, used for displaying in the store",
            "nullable": true,
            "$ref": "#/components/schemas/StoreCardType"
          },
          "show_first_on_category_list": {
            "title": "Show First On Category List",
            "description": "Whether to show the item first on the category list",
            "nullable": true,
            "type": "boolean"
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "description": "The ID of the bonus item that will be given to the user when they purchase this item.",
            "deprecated": true,
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "deprecated": true,
            "nullable": true,
            "type": "integer"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "deprecated": true,
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_items_settings": {
            "description": "The bonus settings for the item, including bonus items and their quantities.",
            "nullable": true,
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "subscription_settings": {
            "description": "The subscription settings for the item",
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemSubscriptionSettings"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for bonus badge",
            "nullable": true,
            "type": "string"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "nullable": true,
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point",
            "nullable": true,
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "quantity": {
            "title": "Quantity",
            "description": "The quantity of the item",
            "nullable": true,
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "item_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Item Id"
          }
        },
        "type": "object",
        "required": [
          "position",
          "item_id"
        ],
        "title": "StoreItemCreate"
      },
      "StoreItemPaymentSettings": {
        "properties": {
          "payment_method_ids": {
            "title": "Payment Method Ids",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          }
        },
        "type": "object",
        "title": "StoreItemPaymentSettings"
      },
      "StoreItemRead": {
        "properties": {
          "discount_percent": {
            "title": "Discount Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The user will receive a fixed quantity of the item.",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "type": "integer",
            "title": "Position"
          },
          "name": {
            "title": "Name",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "max_purchases": {
            "title": "Max Purchases",
            "description": "The maximum number of purchases allowed for the item per user.",
            "nullable": true,
            "type": "integer"
          },
          "global_max_purchases": {
            "title": "Global Max Purchases",
            "description": "The maximum number of purchases allowed for the item across all users.",
            "nullable": true,
            "type": "integer"
          },
          "requirements_expression": {
            "description": "Defines the rules by which an item is shown to the user",
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "The custom badge of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "campaign_id": {
            "title": "Campaign Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "user_campaign_id": {
            "title": "User Campaign Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "bond_user_id": {
            "title": "Bond User Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "start_at": {
            "title": "Start At",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "nullable": true,
            "type": "integer"
          },
          "availability_calendar": {
            "description": "Availability windows for the item. When omitted, it falls back to a single window built from start_at/end_at.",
            "nullable": true,
            "$ref": "#/components/schemas/AvailabilityCalendar"
          },
          "min_amount": {
            "title": "Min Amount",
            "nullable": true,
            "type": "integer"
          },
          "max_reward_points_percent": {
            "title": "Max Reward Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "description": "Percentage of reward points for the item.",
            "nullable": true,
            "type": "number"
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "description": "Fixed reward points for the item.",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "description": "Percentage of loyalty points for the item.",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "description": "Fixed loyalty points for the item.",
            "nullable": true,
            "type": "integer"
          },
          "reward_settings": {
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "payment_bound": {
            "description": "Payment settings for the item.",
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemPaymentSettings"
          },
          "is_free_item": {
            "type": "boolean",
            "title": "Is Free Item",
            "default": false
          },
          "rotation_weight": {
            "title": "Rotation Weight",
            "nullable": true,
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "max_purchases_period_type": {
            "description": "The period type for the max purchases limit. If not set, the limit is global and does not reset.",
            "nullable": true,
            "$ref": "#/components/schemas/PeriodType"
          },
          "max_purchases_period_value": {
            "title": "Max Purchases Period Value",
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "max_purchases_limit_type": {
            "description": "For 'global' limit all users will have the same timer based on max_purchases_period_value.For 'personal' limit each user will have their own timer based on max_purchases_period_value and last purchase date.",
            "nullable": true,
            "$ref": "#/components/schemas/MaxPurchaseLimitPeriodType"
          },
          "show_disabled_by_max_purchases": {
            "title": "Show Disabled By Max Purchases",
            "description": "Whether to show the item as disabled when max purchases limit is reached.",
            "nullable": true,
            "type": "boolean"
          },
          "requirements_mismatch_behavior": {
            "description": "Define what happens when the requirements_expression return false for current user.",
            "nullable": true,
            "$ref": "#/components/schemas/RequirementsMismatchBehavior"
          },
          "card_type": {
            "description": "The type of the card for the item, used for displaying in the store",
            "nullable": true,
            "$ref": "#/components/schemas/StoreCardType"
          },
          "show_first_on_category_list": {
            "title": "Show First On Category List",
            "description": "Whether to show the item first on the category list",
            "nullable": true,
            "type": "boolean"
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "description": "The ID of the bonus item that will be given to the user when they purchase this item.",
            "deprecated": true,
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "deprecated": true,
            "nullable": true,
            "type": "integer"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "deprecated": true,
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_items_settings": {
            "description": "The bonus settings for the item, including bonus items and their quantities.",
            "nullable": true,
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "subscription_settings": {
            "description": "The subscription settings for the item",
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemSubscriptionSettings"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for bonus badge",
            "nullable": true,
            "type": "string"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "nullable": true,
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point",
            "nullable": true,
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "quantity": {
            "title": "Quantity",
            "description": "The quantity of the item",
            "nullable": true,
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          },
          "item_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Item Id"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "created_at": {
            "type": "number",
            "title": "Created At"
          },
          "item": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/ItemRead"
              },
              {
                "$ref": "#/components/schemas/LootboxRead"
              },
              {
                "$ref": "#/components/schemas/SubscriptionRead"
              },
              {
                "$ref": "#/components/schemas/VirtualCurrencyRead"
              }
            ],
            "title": "Item"
          },
          "store_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Store Id"
          },
          "created_from_campaign_node_id": {
            "title": "Created From Campaign Node Id",
            "nullable": true,
            "type": "string"
          },
          "created_from_campaign_version": {
            "title": "Created From Campaign Version",
            "nullable": true,
            "type": "string"
          },
          "disabled": {
            "title": "Disabled",
            "type": "boolean"
          },
          "purchases_left": {
            "title": "Purchases Left",
            "type": "integer"
          },
          "next_purchase_at": {
            "title": "Next Purchase At",
            "type": "number"
          },
          "next_reset_at": {
            "title": "Next Reset At",
            "type": "number"
          },
          "benefits": {
            "title": "Benefits",
            "items": {
              "$ref": "#/components/schemas/StoreItemBenefit"
            },
            "type": "array"
          },
          "bonus_items": {
            "title": "Bonus Items",
            "items": {
              "$ref": "#/components/schemas/ItemRead"
            },
            "type": "array"
          },
          "current_purchase_count": {
            "title": "Current Purchase Count",
            "type": "integer"
          },
          "background_image_url": {
            "title": "Background Image Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "applied_store_promotion_id": {
            "title": "Applied Store Promotion Id",
            "type": "string",
            "maxLength": 32
          },
          "applied_store_promotion_ids": {
            "title": "Applied Store Promotion Ids",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "dynamic_nested_items_read": {
            "title": "Dynamic Nested Items Read",
            "items": {
              "$ref": "#/components/schemas/ItemRead"
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "position",
          "item_id",
          "id",
          "created_at",
          "item",
          "store_id"
        ],
        "title": "StoreItemRead"
      },
      "StoreItemSubscriptionSettings": {
        "properties": {
          "cta_button_type": {
            "$ref": "#/components/schemas/CTAButtonType"
          },
          "cta_button_settings": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/TrialSettings"
              },
              {
                "$ref": "#/components/schemas/PriceViewSettings"
              },
              {
                "$ref": "#/components/schemas/CTAButtonTextSettings"
              }
            ],
            "title": "Cta Button Settings",
            "discriminator": {
              "propertyName": "model_type",
              "mapping": {
                "CTAButtonTextSettings": "#/components/schemas/CTAButtonTextSettings",
                "PriceViewSettings": "#/components/schemas/PriceViewSettings",
                "TrialSettings": "#/components/schemas/TrialSettings"
              }
            }
          },
          "override_trial_days": {
            "title": "Override Trial Days",
            "nullable": true,
            "type": "integer",
            "minimum": 1.0
          },
          "card_view_type": {
            "$ref": "#/components/schemas/SubscriptionCardViewType",
            "description": "How to display subscription plans in the store",
            "default": "one_card"
          },
          "supported_text": {
            "description": "Text under the CTA button",
            "$ref": "#/components/schemas/CTASupportedText"
          },
          "is_change_plan_allowed": {
            "type": "boolean",
            "title": "Is Change Plan Allowed",
            "description": "Whether changing the subscription plan is allowed",
            "default": true
          }
        },
        "type": "object",
        "required": [
          "cta_button_type",
          "cta_button_settings"
        ],
        "title": "StoreItemSubscriptionSettings"
      },
      "StoreItemUpdate": {
        "properties": {
          "discount_percent": {
            "title": "Discount Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "nullable": true,
            "type": "integer"
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The user will receive a fixed quantity of the item.",
            "nullable": true,
            "type": "integer"
          },
          "position": {
            "title": "Position",
            "nullable": true,
            "type": "integer"
          },
          "name": {
            "title": "Name",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "max_purchases": {
            "title": "Max Purchases",
            "nullable": true,
            "type": "integer"
          },
          "global_max_purchases": {
            "title": "Global Max Purchases",
            "nullable": true,
            "type": "integer"
          },
          "requirements_expression": {
            "nullable": true,
            "$ref": "#/components/schemas/Expression"
          },
          "requirements_mismatch_behavior": {
            "nullable": true,
            "$ref": "#/components/schemas/RequirementsMismatchBehavior"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "The custom badge for the item",
            "nullable": true,
            "type": "string",
            "maxLength": 100
          },
          "start_at": {
            "title": "Start At",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "nullable": true,
            "type": "integer"
          },
          "availability_calendar": {
            "description": "Availability windows for the item. When omitted, it falls back to a single window built from start_at/end_at.",
            "nullable": true,
            "$ref": "#/components/schemas/AvailabilityCalendar"
          },
          "min_amount": {
            "title": "Min Amount",
            "nullable": true,
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "nullable": true,
            "type": "number"
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "nullable": true,
            "type": "integer"
          },
          "reward_settings": {
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "payment_bound": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemPaymentSettings"
          },
          "is_free_item": {
            "title": "Is Free Item",
            "type": "boolean"
          },
          "rotation_weight": {
            "title": "Rotation Weight",
            "nullable": true,
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "max_reward_points_percent": {
            "title": "Max Reward Points Percent",
            "nullable": true,
            "type": "integer"
          },
          "max_purchases_period_type": {
            "nullable": true,
            "$ref": "#/components/schemas/PeriodType"
          },
          "max_purchases_period_value": {
            "title": "Max Purchases Period Value",
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "max_purchases_limit_type": {
            "description": "For 'global' limit all users will have the same timer based on max_purchases_period_value.For 'personal' limit each user will have their own timer based on max_purchases_period_value.",
            "nullable": true,
            "$ref": "#/components/schemas/MaxPurchaseLimitPeriodType"
          },
          "show_disabled_by_max_purchases": {
            "title": "Show Disabled By Max Purchases",
            "nullable": true,
            "type": "boolean"
          },
          "card_type": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreCardType"
          },
          "show_first_on_category_list": {
            "title": "Show First On Category List",
            "nullable": true,
            "type": "boolean"
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "deprecated": true,
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "deprecated": true,
            "nullable": true,
            "type": "integer"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "deprecated": true,
            "nullable": true,
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_items_settings": {
            "description": "The bonus settings for the item, including bonus items and their quantities.",
            "nullable": true,
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for bonus badge",
            "nullable": true,
            "type": "string"
          },
          "subscription_settings": {
            "description": "The subscription settings for the item",
            "nullable": true,
            "$ref": "#/components/schemas/StoreItemSubscriptionSettings"
          },
          "price": {
            "title": "Price",
            "nullable": true,
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "nullable": true,
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "nullable": true,
            "type": "string",
            "maxLength": 32
          },
          "quantity": {
            "title": "Quantity",
            "nullable": true,
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0
          }
        },
        "type": "object",
        "title": "StoreItemUpdate"
      },
      "StorePromotionBulkUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the promotion",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start date of the promotion in seconds when the promotion starts to be applied",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end date of the promotion in seconds when the promotion ends to be applied",
            "type": "integer"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent of the promotion",
            "type": "integer",
            "ge": 0,
            "le": 99
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent of the promotion for a stackable items",
            "type": "integer",
            "ge": 0
          },
          "max_purchase_count": {
            "title": "Max Purchase Count",
            "description": "The maximum purchase count of the promotion. If the user exceeds this count, the promotion will not be applied.",
            "type": "integer"
          },
          "max_purchase_count_per_user": {
            "title": "Max Purchase Count Per User",
            "description": "The maximum purchase count per user. If the user exceeds this count, the promotion will not be applied. This setting is mutually exclusive with 'max_purchase_count'",
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "description": "The rewards points percent of the promotion",
            "type": "number",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "description": "The fixed rewards points points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "description": "The loyalty points percent of the promotion",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "description": "The fixed loyalty points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "reward_settings": {
            "description": "Abstract reward settings for the promotion",
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "exclude_items_for_reward_points": {
            "title": "Exclude Items For Reward Points",
            "description": "Turn off discount benefit for items that can be purchased with reward points",
            "type": "boolean"
          },
          "store_ids": {
            "title": "Store Ids",
            "description": "Store ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "item_ids": {
            "title": "Item Ids",
            "description": "Item ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_ids": {
            "title": "Category Ids",
            "description": "Category ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "description": "The item ID that the user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "type": "integer"
          },
          "bonus_items_settings": {
            "description": "Bonus items settings for the promotion",
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "item_background_image_url": {
            "title": "Item Background Image Url",
            "description": "Background image URL to override item background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "item_featured_card_background_image_url": {
            "title": "Item Featured Card Background Image Url",
            "description": "Featured card background image URL to override item featured card background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "active": {
            "title": "Active",
            "description": "Allows to enable or disable the promotion",
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The date when the promotion is archived in seconds",
            "type": "integer"
          },
          "requirements_expression": {
            "description": "Defines the conditions under which the promotion is applied. Only applicable for authenticated users.",
            "$ref": "#/components/schemas/Expression"
          },
          "payment_limits": {
            "description": "Defines the payment methods limits for the promotion. If it set benefits shown only on checkout page",
            "$ref": "#/components/schemas/PromotionPaymentLimits"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for store items bonus badge during the promotion",
            "type": "string"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "Custom text to override store items custom badge during the promotion",
            "type": "string"
          },
          "apply_to_free_items": {
            "title": "Apply To Free Items",
            "description": "Whether the promotion should be applied to free items",
            "type": "boolean"
          },
          "offers": {
            "description": "Offers that the promotion is applied to",
            "$ref": "#/components/schemas/StorePromotionOffers"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "StorePromotionBulkUpdate"
      },
      "StorePromotionCreate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the promotion",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start date of the promotion in seconds when the promotion starts to be applied",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end date of the promotion in seconds when the promotion ends to be applied",
            "nullable": true,
            "type": "integer"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent of the promotion",
            "type": "integer",
            "ge": 0,
            "le": 99
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent of the promotion for a stackable items",
            "type": "integer",
            "ge": 0
          },
          "max_purchase_count": {
            "title": "Max Purchase Count",
            "description": "The maximum purchase count of the promotion. If the user exceeds this count, the promotion will not be applied.",
            "type": "integer"
          },
          "max_purchase_count_per_user": {
            "title": "Max Purchase Count Per User",
            "description": "The maximum purchase count per user. If the user exceeds this count, the promotion will not be applied. This setting is mutually exclusive with 'max_purchase_count'",
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "description": "The rewards points percent of the promotion",
            "type": "number",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "description": "The fixed rewards points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "description": "The loyalty points percent of the promotion",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "description": "The fixed loyalty points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "reward_settings": {
            "description": "Abstract reward settings for the promotion",
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "store_ids": {
            "title": "Store Ids",
            "description": "Store ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "item_ids": {
            "title": "Item Ids",
            "description": "Item ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_ids": {
            "title": "Category Ids",
            "description": "Category ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "exclude_items_for_reward_points": {
            "title": "Exclude Items For Reward Points",
            "description": "Turn off discount benefit for items that can be purchased with reward points",
            "type": "boolean"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "description": "The item ID that the user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "type": "integer"
          },
          "bonus_items_settings": {
            "description": "Bonus items settings for the promotion",
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "item_background_image_url": {
            "title": "Item Background Image Url",
            "description": "Background image URL to override item background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "item_featured_card_background_image_url": {
            "title": "Item Featured Card Background Image Url",
            "description": "Featured card background image URL to override item featured card background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "active": {
            "title": "Active",
            "description": "Allows to enable or disable the promotion",
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The date when the promotion is archived in seconds",
            "type": "integer"
          },
          "requirements_expression": {
            "description": "Defines the conditions under which the promotion is applied. Only applicable for authenticated users.",
            "$ref": "#/components/schemas/Expression"
          },
          "payment_limits": {
            "description": "Defines the payment methods limits for the promotion. If it set benefits shown only on checkout page",
            "$ref": "#/components/schemas/PromotionPaymentLimits"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for store items bonus badge during the promotion",
            "type": "string"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "Custom text to override store items custom badge during the promotion",
            "type": "string"
          },
          "apply_to_free_items": {
            "title": "Apply To Free Items",
            "description": "Whether the promotion should be applied to free items",
            "type": "boolean"
          },
          "offers": {
            "description": "Offers that the promotion is applied to",
            "$ref": "#/components/schemas/StorePromotionOffers"
          }
        },
        "type": "object",
        "title": "StorePromotionCreate"
      },
      "StorePromotionOffer": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/OfferType"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          }
        },
        "type": "object",
        "required": [
          "type",
          "id"
        ],
        "title": "StorePromotionOffer"
      },
      "StorePromotionOffers": {
        "properties": {
          "offers": {
            "items": {
              "$ref": "#/components/schemas/StorePromotionOffer"
            },
            "type": "array",
            "maxItems": 100,
            "minItems": 1,
            "title": "Offers"
          }
        },
        "type": "object",
        "required": [
          "offers"
        ],
        "title": "StorePromotionOffers"
      },
      "StorePromotionRead": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the promotion",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start date of the promotion in seconds when the promotion starts to be applied",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end date of the promotion in seconds when the promotion ends to be applied",
            "nullable": true,
            "type": "integer"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent of the promotion",
            "type": "integer",
            "ge": 0,
            "le": 99
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent of the promotion for a stackable items",
            "type": "integer",
            "ge": 0
          },
          "max_purchase_count": {
            "title": "Max Purchase Count",
            "description": "The maximum purchase count of the promotion. If the user exceeds this count, the promotion will not be applied.",
            "type": "integer"
          },
          "max_purchase_count_per_user": {
            "title": "Max Purchase Count Per User",
            "description": "The maximum purchase count per user. If the user exceeds this count, the promotion will not be applied. This setting is mutually exclusive with 'max_purchase_count'",
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "description": "The rewards points percent of the promotion",
            "type": "number",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "description": "The fixed rewards points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "description": "The loyalty points percent of the promotion",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "description": "The fixed loyalty points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "reward_settings": {
            "description": "Abstract reward settings for the promotion",
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "store_ids": {
            "title": "Store Ids",
            "description": "Store ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "item_ids": {
            "title": "Item Ids",
            "description": "Item ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_ids": {
            "title": "Category Ids",
            "description": "Category ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "exclude_items_for_reward_points": {
            "title": "Exclude Items For Reward Points",
            "description": "Turn off discount benefit for items that can be purchased with reward points",
            "type": "boolean"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "description": "The item ID that the user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "type": "integer"
          },
          "bonus_items_settings": {
            "description": "Bonus items settings for the promotion",
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "item_background_image_url": {
            "title": "Item Background Image Url",
            "description": "Background image URL to override item background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "item_featured_card_background_image_url": {
            "title": "Item Featured Card Background Image Url",
            "description": "Featured card background image URL to override item featured card background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "active": {
            "title": "Active",
            "description": "Allows to enable or disable the promotion",
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The date when the promotion is archived in seconds",
            "type": "integer"
          },
          "requirements_expression": {
            "description": "Defines the conditions under which the promotion is applied. Only applicable for authenticated users.",
            "$ref": "#/components/schemas/Expression"
          },
          "payment_limits": {
            "description": "Defines the payment methods limits for the promotion. If it set benefits shown only on checkout page",
            "$ref": "#/components/schemas/PromotionPaymentLimits"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for store items bonus badge during the promotion",
            "type": "string"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "Custom text to override store items custom badge during the promotion",
            "type": "string"
          },
          "apply_to_free_items": {
            "title": "Apply To Free Items",
            "description": "Whether the promotion should be applied to free items",
            "type": "boolean"
          },
          "offers": {
            "description": "Offers that the promotion is applied to",
            "$ref": "#/components/schemas/StorePromotionOffers"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "created_at": {
            "type": "integer",
            "title": "Created At"
          },
          "current_purchase_count": {
            "type": "integer",
            "title": "Current Purchase Count"
          },
          "user_id": {
            "title": "User Id",
            "type": "string",
            "maxLength": 32
          },
          "campaign_id": {
            "title": "Campaign Id",
            "type": "string",
            "maxLength": 32
          },
          "user_campaign_id": {
            "title": "User Campaign Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "required": [
          "id",
          "created_at",
          "current_purchase_count"
        ],
        "title": "StorePromotionRead"
      },
      "StorePromotionUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the promotion",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start date of the promotion in seconds when the promotion starts to be applied",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end date of the promotion in seconds when the promotion ends to be applied",
            "type": "integer"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent of the promotion",
            "type": "integer",
            "ge": 0,
            "le": 99
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent of the promotion for a stackable items",
            "type": "integer",
            "ge": 0
          },
          "max_purchase_count": {
            "title": "Max Purchase Count",
            "description": "The maximum purchase count of the promotion. If the user exceeds this count, the promotion will not be applied.",
            "type": "integer"
          },
          "max_purchase_count_per_user": {
            "title": "Max Purchase Count Per User",
            "description": "The maximum purchase count per user. If the user exceeds this count, the promotion will not be applied. This setting is mutually exclusive with 'max_purchase_count'",
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "description": "The rewards points percent of the promotion",
            "type": "number",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "description": "The fixed rewards points points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "description": "The loyalty points percent of the promotion",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "description": "The fixed loyalty points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "reward_settings": {
            "description": "Abstract reward settings for the promotion",
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "exclude_items_for_reward_points": {
            "title": "Exclude Items For Reward Points",
            "description": "Turn off discount benefit for items that can be purchased with reward points",
            "type": "boolean"
          },
          "store_ids": {
            "title": "Store Ids",
            "description": "Store ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "item_ids": {
            "title": "Item Ids",
            "description": "Item ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_ids": {
            "title": "Category Ids",
            "description": "Category ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "description": "The item ID that the user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "type": "integer"
          },
          "bonus_items_settings": {
            "description": "Bonus items settings for the promotion",
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "item_background_image_url": {
            "title": "Item Background Image Url",
            "description": "Background image URL to override item background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "item_featured_card_background_image_url": {
            "title": "Item Featured Card Background Image Url",
            "description": "Featured card background image URL to override item featured card background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "active": {
            "title": "Active",
            "description": "Allows to enable or disable the promotion",
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The date when the promotion is archived in seconds",
            "type": "integer"
          },
          "requirements_expression": {
            "description": "Defines the conditions under which the promotion is applied. Only applicable for authenticated users.",
            "$ref": "#/components/schemas/Expression"
          },
          "payment_limits": {
            "description": "Defines the payment methods limits for the promotion. If it set benefits shown only on checkout page",
            "$ref": "#/components/schemas/PromotionPaymentLimits"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for store items bonus badge during the promotion",
            "type": "string"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "Custom text to override store items custom badge during the promotion",
            "type": "string"
          },
          "apply_to_free_items": {
            "title": "Apply To Free Items",
            "description": "Whether the promotion should be applied to free items",
            "type": "boolean"
          },
          "offers": {
            "description": "Offers that the promotion is applied to",
            "$ref": "#/components/schemas/StorePromotionOffers"
          }
        },
        "type": "object",
        "title": "StorePromotionUpdate"
      },
      "StoreRead": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the store, used for display purposes.",
            "nullable": false
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of the store, such as its purpose, features, or additional details.",
            "nullable": false
          },
          "key": {
            "title": "Key",
            "description": "The key of the store.",
            "nullable": true,
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/StoreType",
            "description": "The type of the store (e.g., special, rotating, limited stock).",
            "nullable": false
          },
          "rotation_settings": {
            "description": "The configuration options for the rotating store type, such as how often the assortment is refreshed.",
            "nullable": true,
            "$ref": "#/components/schemas/RotationSettings"
          },
          "limited_stock_settings": {
            "description": "The configuration options for the limited stock store type, including purchase limits or stock availability rules.",
            "nullable": true,
            "$ref": "#/components/schemas/LimitedStockSettings"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start time of the store in Unix timestamp (seconds) when it becomes available to users.",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end time of the store in Unix timestamp (seconds) when it closes and is no longer accessible.",
            "nullable": true,
            "type": "integer"
          },
          "settings": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreSettings"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "current_purchase_count": {
            "title": "Current Purchase Count",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "name",
          "description",
          "type",
          "id"
        ],
        "title": "StoreRead"
      },
      "StoreReadStat": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The name of the store, used for display purposes.",
            "nullable": false
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of the store, such as its purpose, features, or additional details.",
            "nullable": false
          },
          "key": {
            "title": "Key",
            "description": "The key of the store.",
            "nullable": true,
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/StoreType",
            "description": "The type of the store (e.g., special, rotating, limited stock).",
            "nullable": false
          },
          "rotation_settings": {
            "description": "The configuration options for the rotating store type, such as how often the assortment is refreshed.",
            "nullable": true,
            "$ref": "#/components/schemas/RotationSettings"
          },
          "limited_stock_settings": {
            "description": "The configuration options for the limited stock store type, including purchase limits or stock availability rules.",
            "nullable": true,
            "$ref": "#/components/schemas/LimitedStockSettings"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start time of the store in Unix timestamp (seconds) when it becomes available to users.",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end time of the store in Unix timestamp (seconds) when it closes and is no longer accessible.",
            "nullable": true,
            "type": "integer"
          },
          "settings": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreSettings"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "current_purchase_count": {
            "title": "Current Purchase Count",
            "type": "integer"
          },
          "item_count": {
            "type": "integer",
            "title": "Item Count"
          }
        },
        "type": "object",
        "required": [
          "name",
          "description",
          "type",
          "id",
          "item_count"
        ],
        "title": "StoreReadStat"
      },
      "StoreSettings": {
        "properties": {
          "webhook_settings": {
            "$ref": "#/components/schemas/StoreWebhookSettings"
          }
        },
        "type": "object",
        "title": "StoreSettings"
      },
      "StoreType": {
        "type": "string",
        "enum": [
          "default",
          "special",
          "rotation",
          "limited_stock",
          "webhook"
        ],
        "title": "StoreType"
      },
      "StoreUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the store, used for display purposes.",
            "nullable": true,
            "type": "string"
          },
          "description": {
            "title": "Description",
            "description": "The description of the store, such as its purpose, features, or additional details.",
            "nullable": true,
            "type": "string"
          },
          "key": {
            "title": "Key",
            "description": "The key of the store.",
            "nullable": true,
            "type": "string"
          },
          "type": {
            "description": "The type of the store (e.g., special, rotating, limited stock).",
            "nullable": true,
            "$ref": "#/components/schemas/StoreType"
          },
          "rotation_settings": {
            "description": "The configuration options for the rotating store type, such as how often the assortment is refreshed.",
            "nullable": true,
            "$ref": "#/components/schemas/RotationSettings"
          },
          "limited_stock_settings": {
            "description": "The configuration options for the limited stock store type, including purchase limits or stock availability rules.",
            "nullable": true,
            "$ref": "#/components/schemas/LimitedStockSettings"
          },
          "settings": {
            "nullable": true,
            "$ref": "#/components/schemas/StoreSettings"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start time of the store in Unix timestamp (seconds) when it becomes available to users.",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end time of the store in Unix timestamp (seconds) when it closes and is no longer accessible.",
            "nullable": true,
            "type": "integer"
          }
        },
        "type": "object",
        "title": "StoreUpdate"
      },
      "StoreWebhookSettings": {
        "properties": {
          "webhook_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Webhook Id"
          },
          "cache_period_type": {
            "$ref": "#/components/schemas/PeriodType"
          },
          "cache_period_value": {
            "title": "Cache Period Value",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "webhook_id"
        ],
        "title": "StoreWebhookSettings"
      },
      "SubscriptionBillingCycle": {
        "properties": {
          "period_type": {
            "$ref": "#/components/schemas/PeriodType",
            "description": "The type of billing period (year, month, week, day)"
          },
          "period_value": {
            "type": "integer",
            "title": "Period Value",
            "description": "The number of periods in a billing cycle"
          }
        },
        "type": "object",
        "required": [
          "period_type",
          "period_value"
        ],
        "title": "SubscriptionBillingCycle"
      },
      "SubscriptionCardViewType": {
        "type": "string",
        "enum": [
          "one_card",
          "separate_cards"
        ],
        "title": "SubscriptionCardViewType"
      },
      "SubscriptionGraceMode": {
        "type": "string",
        "enum": [
          "free_to_paid",
          "paid_to_paid"
        ],
        "title": "SubscriptionGraceMode"
      },
      "SubscriptionOffer": {
        "properties": {
          "key": {
            "type": "string",
            "title": "Key",
            "description": "The unique key of the offer"
          },
          "name": {
            "title": "Name",
            "description": "The display name of the offer",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "description": "The description of the offer",
            "type": "string"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percentage for the offer",
            "type": "integer"
          },
          "discount_duration": {
            "$ref": "#/components/schemas/DiscountDuration",
            "description": "How long the offer discount applies; mirrors Stripe's Coupon.duration."
          },
          "eligibility_rules": {
            "title": "Eligibility Rules",
            "description": "The list of eligibility rules for the offer",
            "items": {
              "$ref": "#/components/schemas/SubscriptionOfferEligibility"
            },
            "type": "array"
          },
          "grace_extension": {
            "title": "Grace Extension",
            "description": "The grace period extension in days",
            "type": "integer"
          },
          "trial_extension": {
            "title": "Trial Extension",
            "description": "The trial period extension in days",
            "type": "integer"
          },
          "activation_limits": {
            "title": "Activation Limits",
            "description": "The maximum number of times this offer can be activated",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "key"
        ],
        "title": "SubscriptionOffer"
      },
      "SubscriptionOfferDiscountDurationType": {
        "type": "string",
        "enum": [
          "cycles",
          "forever"
        ],
        "title": "SubscriptionOfferDiscountDurationType"
      },
      "SubscriptionOfferEligibility": {
        "type": "string",
        "enum": [
          "new_acquisition",
          "returning"
        ],
        "title": "SubscriptionOfferEligibility"
      },
      "SubscriptionPlan": {
        "properties": {
          "key": {
            "type": "string",
            "title": "Key",
            "description": "The unique key of the plan"
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "The display name of the plan"
          },
          "billing_cycle": {
            "$ref": "#/components/schemas/SubscriptionBillingCycle",
            "description": "The billing cycle configuration"
          },
          "renewal_type": {
            "$ref": "#/components/schemas/SubscriptionRenewalType",
            "description": "The renewal type of the plan"
          },
          "price": {
            "title": "Price",
            "description": "The price in minor currency units",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices",
            "type": "integer"
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the plan",
            "default": "USD"
          },
          "grace_period": {
            "title": "Grace Period",
            "description": "The grace period in days before subscription is canceled",
            "type": "integer"
          },
          "grace_mode": {
            "description": "The grace mode for payment transitions",
            "$ref": "#/components/schemas/SubscriptionGraceMode"
          },
          "trial_period": {
            "title": "Trial Period",
            "description": "The trial period in days",
            "type": "integer"
          },
          "account_lock_duration": {
            "title": "Account Lock Duration",
            "description": "The duration in days to lock account after cancellation",
            "type": "integer"
          },
          "change_payment_mode": {
            "title": "Change Payment Mode",
            "description": "Whether changing payment method is allowed",
            "type": "boolean"
          },
          "is_downgrade_supported": {
            "type": "boolean",
            "title": "Is Downgrade Supported",
            "description": "Whether downgrading to this plan is supported",
            "default": false
          },
          "is_pause_allowed": {
            "type": "boolean",
            "title": "Is Pause Allowed",
            "description": "Whether pausing the subscription is allowed",
            "default": false
          },
          "is_reactivation_allowed": {
            "type": "boolean",
            "title": "Is Reactivation Allowed",
            "description": "Whether reactivating the subscription is allowed",
            "default": false
          },
          "offers": {
            "title": "Offers",
            "description": "The list of special offers for this plan",
            "items": {
              "$ref": "#/components/schemas/SubscriptionOffer"
            },
            "type": "array"
          },
          "benefits": {
            "title": "Benefits",
            "description": "The list of benefit descriptions for this plan",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "Nested items references for this subscription plan",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp when the plan was archived",
            "type": "number"
          },
          "type": {
            "$ref": "#/components/schemas/SubscriptionPlanType",
            "description": "The type of the plan",
            "default": "default"
          }
        },
        "type": "object",
        "required": [
          "key",
          "name",
          "billing_cycle",
          "renewal_type"
        ],
        "title": "SubscriptionPlan"
      },
      "SubscriptionPlanType": {
        "type": "string",
        "enum": [
          "default",
          "special"
        ],
        "title": "SubscriptionPlanType"
      },
      "SubscriptionRenewalType": {
        "type": "string",
        "enum": [
          "auto",
          "no_renew"
        ],
        "title": "SubscriptionRenewalType"
      },
      "SubscriptionSettings": {
        "properties": {
          "plans": {
            "items": {
              "$ref": "#/components/schemas/SubscriptionPlan"
            },
            "type": "array",
            "title": "Plans",
            "description": "The subscription plans"
          }
        },
        "type": "object",
        "title": "SubscriptionSettings"
      },
      "SubscriptionStatus": {
        "type": "string",
        "enum": [
          "trial",
          "active",
          "grace",
          "canceled",
          "locked",
          "ended",
          "expired",
          "paused",
          "pending"
        ],
        "title": "SubscriptionStatus"
      },
      "SubscriptionTransferRequest": {
        "properties": {
          "new_player_id": {
            "type": "string",
            "minLength": 1,
            "title": "New Player Id",
            "description": "Player ID to transfer the subscription to."
          }
        },
        "type": "object",
        "required": [
          "new_player_id"
        ],
        "title": "SubscriptionTransferRequest"
      },
      "SubscriptionType": {
        "type": "string",
        "enum": [
          "news",
          "sales"
        ],
        "title": "SubscriptionType"
      },
      "SyncStatus": {
        "type": "string",
        "enum": [
          "pending",
          "ok",
          "error",
          "not_found"
        ],
        "title": "SyncStatus"
      },
      "TemplatePrice": {
        "properties": {
          "country": {
            "$ref": "#/components/schemas/Country"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "platform": {
            "$ref": "#/components/schemas/Platform"
          },
          "price": {
            "type": "integer",
            "maximum": 1000000000000.0,
            "minimum": 0.0,
            "title": "Price"
          },
          "is_custom": {
            "type": "boolean",
            "title": "Is Custom",
            "description": "Flag indicating whether the price is a custom value"
          }
        },
        "type": "object",
        "required": [
          "country",
          "currency",
          "platform",
          "price",
          "is_custom"
        ],
        "title": "TemplatePrice"
      },
      "TextBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "TextBlock",
            "enum": [
              "TextBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "text": {
            "title": "Text",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          }
        },
        "type": "object",
        "title": "TextBlock"
      },
      "ThreeDSFlow": {
        "type": "string",
        "enum": [
          "none",
          "challenge",
          "frictionless"
        ],
        "title": "ThreeDSFlow"
      },
      "ThreeDSecureResult": {
        "type": "string",
        "enum": [
          "not_attempted",
          "authenticated",
          "failed"
        ],
        "title": "ThreeDSecureResult"
      },
      "TimerNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "TimerNode",
            "enum": [
              "TimerNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "delay": {
            "type": "integer",
            "title": "Delay"
          },
          "start_wait": {
            "title": "Start Wait",
            "type": "integer"
          },
          "end_wait": {
            "title": "End Wait",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y",
          "delay"
        ],
        "title": "TimerNode"
      },
      "Token": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/TokenType"
          },
          "value": {
            "title": "Value"
          }
        },
        "type": "object",
        "required": [
          "type"
        ],
        "title": "Token"
      },
      "TokenSchema": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/TokenType"
          },
          "value": {
            "title": "Value"
          }
        },
        "type": "object",
        "required": [
          "type"
        ],
        "title": "TokenSchema"
      },
      "TokenType": {
        "type": "string",
        "enum": [
          "attribute",
          "custom_attribute",
          "event_attribute",
          "custom_event_attribute",
          "operator",
          "number",
          "date",
          "string",
          "boolean",
          "list",
          "variable",
          "virtual_currency"
        ],
        "title": "TokenType"
      },
      "TransferredSubscription": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id",
            "description": "New subscription ID created for the target player."
          },
          "status": {
            "$ref": "#/components/schemas/SubscriptionStatus",
            "description": "New subscription status."
          }
        },
        "type": "object",
        "required": [
          "id",
          "status"
        ],
        "title": "TransferredSubscription"
      },
      "TranslatableFeaturedBannerConfig": {
        "properties": {
          "title": {
            "title": "Title",
            "type": "string"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "image_url": {
            "title": "Image Url",
            "type": "string"
          },
          "background_image_size": {
            "title": "Background Image Size",
            "type": "string"
          },
          "featured_item_id": {
            "title": "Featured Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "replace_item_block": {
            "title": "Replace Item Block",
            "type": "boolean"
          },
          "replace_item_block_name": {
            "title": "Replace Item Block Name",
            "type": "string"
          }
        },
        "type": "object",
        "title": "TranslatableFeaturedBannerConfig"
      },
      "TranslationGlossaryCreate": {
        "properties": {
          "locale_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Locale Id",
            "description": "The unique identifier of the locale"
          },
          "term": {
            "type": "string",
            "maxLength": 255,
            "title": "Term",
            "description": "The glossary term"
          },
          "translation": {
            "type": "string",
            "maxLength": 255,
            "title": "Translation",
            "description": "The translation of the glossary term"
          }
        },
        "type": "object",
        "required": [
          "locale_id",
          "term",
          "translation"
        ],
        "title": "TranslationGlossaryCreate"
      },
      "TranslationGlossaryRead": {
        "properties": {
          "locale_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Locale Id",
            "description": "The unique identifier of the locale"
          },
          "term": {
            "type": "string",
            "maxLength": 255,
            "title": "Term",
            "description": "The glossary term"
          },
          "translation": {
            "type": "string",
            "maxLength": 255,
            "title": "Translation",
            "description": "The translation of the glossary term"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the glossary"
          }
        },
        "type": "object",
        "required": [
          "locale_id",
          "term",
          "translation",
          "id"
        ],
        "title": "TranslationGlossaryRead"
      },
      "TranslationGlossaryUpdate": {
        "properties": {
          "term": {
            "title": "Term",
            "description": "The glossary term",
            "type": "string",
            "maxLength": 255
          },
          "translation": {
            "title": "Translation",
            "description": "The translation of the glossary term",
            "type": "string",
            "maxLength": 255
          }
        },
        "type": "object",
        "title": "TranslationGlossaryUpdate"
      },
      "TrialSettings": {
        "properties": {
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "TrialSettings",
            "enum": [
              "TrialSettings"
            ]
          },
          "trial_text_mode": {
            "$ref": "#/components/schemas/TrialTextMode"
          }
        },
        "type": "object",
        "title": "TrialSettings"
      },
      "TrialTextMode": {
        "type": "string",
        "enum": [
          "start_free_trial",
          "try_free_for_n_days"
        ],
        "title": "TrialTextMode"
      },
      "TwitchBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "TwitchBlock",
            "enum": [
              "TwitchBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "video": {
            "$ref": "#/components/schemas/VideoBlockSettings"
          }
        },
        "type": "object",
        "required": [
          "video"
        ],
        "title": "TwitchBlock"
      },
      "TwitchData": {
        "properties": {
          "channel": {
            "type": "string",
            "title": "Channel",
            "description": "The channel of the Twitch video"
          }
        },
        "type": "object",
        "required": [
          "channel"
        ],
        "title": "TwitchData"
      },
      "UISettings": {
        "properties": {
          "mode": {
            "description": "The appearance mode for checkout page. `dark` (dark mode), `light` (light mode), or `auto` (follows system preference)",
            "$ref": "#/components/schemas/Mode"
          },
          "show_player_info": {
            "title": "Show Player Info",
            "description": "Whether to display player information on checkout page",
            "type": "boolean"
          }
        },
        "type": "object",
        "title": "UISettings"
      },
      "UnitedStates": {
        "type": "string",
        "enum": [
          "US-AL",
          "US-MS",
          "US-NE",
          "US-PR"
        ],
        "title": "UnitedStates"
      },
      "UnsetType": {
        "type": "string",
        "enum": [
          "unset"
        ],
        "title": "UnsetType",
        "description": "An enumeration."
      },
      "UserCouponRead": {
        "properties": {
          "free_items": {
            "description": "Items granted when the coupon is redeemed",
            "$ref": "#/components/schemas/CouponFreeItems"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent for the coupon",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent for the coupon",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "bonus_fixed": {
            "title": "Bonus Fixed",
            "description": "The fixed bonus amount for the coupon",
            "nullable": true,
            "type": "integer",
            "minimum": 1.0
          },
          "discount_amount_usd": {
            "title": "Discount Amount USD",
            "description": "The discount amount in USD for the coupon",
            "type": "integer",
            "minimum": 0.0
          },
          "requirements_expression": {
            "description": "The requirement expression for the coupon",
            "$ref": "#/components/schemas/Expression"
          },
          "expires_at": {
            "title": "Expires At",
            "description": "The expiration date of the coupon",
            "type": "integer"
          },
          "applicable_item_ids": {
            "title": "Applicable Item Ids",
            "description": "The applicable item IDs",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_id": {
            "title": "Category Id",
            "description": "The coupon category ID",
            "type": "string",
            "maxLength": 32
          },
          "min_amount": {
            "title": "Min Amount",
            "description": "Require a minimum order amount to apply the coupon",
            "type": "integer"
          },
          "max_redemptions": {
            "title": "Max Redemptions",
            "description": "Limit the number of times this code can be redeemed",
            "type": "integer"
          },
          "max_redemptions_per_user": {
            "title": "Max Redemptions Per User",
            "description": "Limit the number of times a user can redeem the coupon",
            "type": "integer"
          },
          "is_stackable_with_bonus_coupons": {
            "title": "Is Stackable With Bonus Coupons",
            "description": "Allow stacking with bonus coupons",
            "type": "boolean"
          },
          "stackable_bonus_limit_percent": {
            "title": "Stackable Bonus Limit Percent",
            "description": "Limit the bonus percent when stacking with bonus coupons",
            "type": "integer"
          },
          "is_stackable_with_discount_coupons": {
            "title": "Is Stackable With Discount Coupons",
            "description": "Allow stacking with discount coupons",
            "type": "boolean"
          },
          "stackable_discount_limit_percent": {
            "title": "Stackable Discount Limit Percent",
            "description": "Limit the discount percent when stacking with discount coupons",
            "type": "integer"
          },
          "store_item_discount_limit_percent": {
            "title": "Store Item Discount Limit Percent",
            "description": "Limit the combined store item and coupon discount percent",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "store_item_bonus_limit_percent": {
            "title": "Store Item Bonus Limit Percent",
            "description": "Limit the combined store item and coupon bonus percent",
            "type": "integer",
            "maximum": 1000.0,
            "minimum": 0.0
          },
          "start_at": {
            "title": "Start At",
            "description": "The timestamp when the coupon becomes valid",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The timestamp when the coupon ceases to be valid",
            "type": "integer"
          },
          "player_ids": {
            "title": "Player Ids",
            "description": "The player IDs that can redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "exclude_player_ids": {
            "title": "Exclude Player Ids",
            "description": "The player IDs that cannot redeem the coupon",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the coupon"
          },
          "code": {
            "type": "string",
            "maxLength": 20,
            "title": "Code",
            "description": "The code of the coupon"
          },
          "type": {
            "$ref": "#/components/schemas/CouponType",
            "description": "The type of the coupon"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the coupon"
          },
          "creator_program": {
            "description": "The creator program for the coupon",
            "$ref": "#/components/schemas/CreatorProgramBase"
          },
          "current_balance_usd": {
            "title": "Current Balance USD",
            "description": "The current balance in USD for fixed discount coupon type",
            "type": "integer"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/ItemRead"
            },
            "type": "array",
            "title": "Items",
            "description": "All items granted by the coupon, in the same order as `free_items.items`."
          },
          "redeemed_at": {
            "title": "Redeemed At",
            "type": "integer"
          },
          "order_item_id": {
            "title": "Order Item Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "required": [
          "name",
          "code",
          "type",
          "id"
        ],
        "title": "UserCouponRead"
      },
      "UserProfileBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "UserProfileBlock",
            "enum": [
              "UserProfileBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          }
        },
        "type": "object",
        "title": "UserProfileBlock"
      },
      "UserRead": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id",
            "description": "The unique identifier of the user."
          },
          "name": {
            "title": "Name",
            "description": "The name of the user.",
            "type": "string"
          },
          "avatar_url": {
            "title": "Avatar Url",
            "description": "The avatar URL of the user.",
            "type": "string"
          },
          "player_id": {
            "title": "Player Id",
            "description": "The unique player ID of the user. If the user is not linked to a player, this field will be null.",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id"
        ],
        "title": "UserRead"
      },
      "UserStorePromotionRead": {
        "properties": {
          "name": {
            "title": "Name",
            "description": "The name of the promotion",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "description": "The start date of the promotion in seconds when the promotion starts to be applied",
            "nullable": true,
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The end date of the promotion in seconds when the promotion ends to be applied",
            "nullable": true,
            "type": "integer"
          },
          "discount_percent": {
            "title": "Discount Percent",
            "description": "The discount percent of the promotion",
            "type": "integer",
            "ge": 0,
            "le": 99
          },
          "bonus_percent": {
            "title": "Bonus Percent",
            "description": "The bonus percent of the promotion for a stackable items",
            "type": "integer",
            "ge": 0
          },
          "max_purchase_count": {
            "title": "Max Purchase Count",
            "description": "The maximum purchase count of the promotion. If the user exceeds this count, the promotion will not be applied.",
            "type": "integer"
          },
          "max_purchase_count_per_user": {
            "title": "Max Purchase Count Per User",
            "description": "The maximum purchase count per user. If the user exceeds this count, the promotion will not be applied. This setting is mutually exclusive with 'max_purchase_count'",
            "type": "integer"
          },
          "reward_points_percent": {
            "title": "Reward Points Percent",
            "description": "The rewards points percent of the promotion",
            "type": "number",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "reward_points_fixed": {
            "title": "Reward Points Fixed",
            "description": "The fixed rewards points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "loyalty_points_percent": {
            "title": "Loyalty Points Percent",
            "description": "The loyalty points percent of the promotion",
            "type": "integer",
            "maximum": 100.0,
            "minimum": 0.0
          },
          "loyalty_points_fixed": {
            "title": "Loyalty Points Fixed",
            "description": "The fixed loyalty points amount",
            "type": "integer",
            "minimum": 1.0
          },
          "reward_settings": {
            "description": "Abstract reward settings for the promotion",
            "nullable": true,
            "$ref": "#/components/schemas/ItemRewardSettings"
          },
          "store_ids": {
            "title": "Store Ids",
            "description": "Store ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "item_ids": {
            "title": "Item Ids",
            "description": "Item ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "category_ids": {
            "title": "Category Ids",
            "description": "Category ids that the promotion is applied to",
            "items": {
              "type": "string",
              "maxLength": 32
            },
            "type": "array"
          },
          "exclude_items_for_reward_points": {
            "title": "Exclude Items For Reward Points",
            "description": "Turn off discount benefit for items that can be purchased with reward points",
            "type": "boolean"
          },
          "bonus_item_percent": {
            "title": "Bonus Item Percent",
            "description": "The user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "integer",
            "minimum": 0.0
          },
          "bonus_item_id": {
            "title": "Bonus Item Id",
            "description": "The item ID that the user will receive a quantity equivalent to the set percentage of the total USD (in cents) purchase.",
            "type": "string",
            "maxLength": 32
          },
          "bonus_item_quantity": {
            "title": "Bonus Item Quantity",
            "description": "The fixed quantity of the bonus item",
            "type": "integer"
          },
          "bonus_items_settings": {
            "description": "Bonus items settings for the promotion",
            "$ref": "#/components/schemas/ItemBonusSettings"
          },
          "item_background_image_url": {
            "title": "Item Background Image Url",
            "description": "Background image URL to override item background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "item_featured_card_background_image_url": {
            "title": "Item Featured Card Background Image Url",
            "description": "Featured card background image URL to override item featured card background during the promotion",
            "nullable": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "active": {
            "title": "Active",
            "description": "Allows to enable or disable the promotion",
            "type": "boolean"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The date when the promotion is archived in seconds",
            "type": "integer"
          },
          "requirements_expression": {
            "description": "Defines the conditions under which the promotion is applied. Only applicable for authenticated users.",
            "$ref": "#/components/schemas/Expression"
          },
          "payment_limits": {
            "description": "Defines the payment methods limits for the promotion. If it set benefits shown only on checkout page",
            "$ref": "#/components/schemas/PromotionPaymentLimits"
          },
          "bonus_badge": {
            "title": "Bonus Badge",
            "description": "Custom text for store items bonus badge during the promotion",
            "type": "string"
          },
          "custom_badge": {
            "title": "Custom Badge",
            "description": "Custom text to override store items custom badge during the promotion",
            "type": "string"
          },
          "apply_to_free_items": {
            "title": "Apply To Free Items",
            "description": "Whether the promotion should be applied to free items",
            "type": "boolean"
          },
          "offers": {
            "description": "Offers that the promotion is applied to",
            "$ref": "#/components/schemas/StorePromotionOffers"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id"
          },
          "created_at": {
            "type": "integer",
            "title": "Created At"
          },
          "current_purchase_count": {
            "type": "integer",
            "title": "Current Purchase Count"
          },
          "user_id": {
            "title": "User Id",
            "type": "string",
            "maxLength": 32
          },
          "campaign_id": {
            "title": "Campaign Id",
            "type": "string",
            "maxLength": 32
          },
          "user_campaign_id": {
            "title": "User Campaign Id",
            "type": "string",
            "maxLength": 32
          }
        },
        "type": "object",
        "required": [
          "id",
          "created_at",
          "current_purchase_count"
        ],
        "title": "UserStorePromotionRead"
      },
      "UserUpdate": {
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          },
          "email": {
            "title": "Email",
            "type": "string"
          },
          "country": {
            "title": "Country",
            "type": "string",
            "pattern": "^[A-Z]{2}$"
          },
          "banned": {
            "title": "Banned",
            "type": "boolean"
          },
          "banned_reason": {
            "title": "Banned Reason",
            "type": "string"
          },
          "avatar_url": {
            "title": "Avatar Url",
            "type": "string"
          },
          "attributes": {
            "$ref": "#/components/schemas/PersistentPlayerAttributes"
          },
          "custom_attributes": {
            "title": "Custom Attributes",
            "additionalProperties": true,
            "type": "object"
          },
          "segments": {
            "title": "Segments",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "creator_program_id": {
            "title": "Creator Program Id",
            "type": "string",
            "maxLength": 32
          },
          "registration_marketplace": {
            "$ref": "#/components/schemas/Marketplace"
          },
          "balances": {
            "title": "Balances",
            "items": {
              "$ref": "#/components/schemas/VirtualCurrencyShort"
            },
            "type": "array"
          },
          "marketing_consent": {
            "$ref": "#/components/schemas/MarketingConsent"
          },
          "custom_attributes_from_deeplink": {
            "title": "Custom Attributes From Deeplink",
            "additionalProperties": true,
            "type": "object"
          }
        },
        "type": "object",
        "title": "UserUpdate"
      },
      "VCPriceSource": {
        "type": "string",
        "enum": [
          "local_price",
          "base_price"
        ],
        "title": "VCPriceSource"
      },
      "VCRewardConfig": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "virtual_currency",
            "enum": [
              "virtual_currency"
            ]
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "virtual_currency_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Virtual Currency Id"
          },
          "virtual_currency_sku": {
            "title": "Virtual Currency SKU",
            "type": "string"
          },
          "reward_percent": {
            "title": "Reward Percent",
            "type": "number"
          },
          "reward_fixed": {
            "title": "Reward Fixed",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "virtual_currency_id"
        ],
        "title": "VCRewardConfig"
      },
      "ValidationError": {
        "properties": {
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "type": "array",
            "title": "Location"
          },
          "msg": {
            "type": "string",
            "title": "Message"
          },
          "type": {
            "type": "string",
            "title": "Error Type"
          }
        },
        "type": "object",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError"
      },
      "VerifyPlayerNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "VerifyPlayerNode",
            "enum": [
              "VerifyPlayerNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "VerifyPlayerNode"
      },
      "VideoBlockSettings": {
        "properties": {
          "title": {
            "type": "string",
            "title": "Title"
          },
          "description": {
            "type": "string",
            "title": "Description"
          },
          "order_id": {
            "type": "integer",
            "title": "Order Id",
            "default": 0
          },
          "thumbnail_url": {
            "title": "Thumbnail Url",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "show_thumbnail": {
            "type": "boolean",
            "title": "Show Thumbnail",
            "default": true
          },
          "auto_play": {
            "title": "Auto Play",
            "type": "boolean"
          },
          "platform": {
            "$ref": "#/components/schemas/VideoPlatform"
          },
          "data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/YoutubeData"
              },
              {
                "$ref": "#/components/schemas/TwitchData"
              }
            ],
            "title": "Data"
          }
        },
        "type": "object",
        "required": [
          "title",
          "description",
          "platform",
          "data"
        ],
        "title": "VideoBlockSettings"
      },
      "VideoCreate": {
        "properties": {
          "title": {
            "type": "string",
            "maxLength": 255,
            "title": "Title",
            "description": "The title of the video"
          },
          "description": {
            "type": "string",
            "maxLength": 512,
            "title": "Description",
            "description": "The description of the video"
          },
          "order_id": {
            "type": "integer",
            "title": "Order Id",
            "description": "The order ID of the video",
            "default": 0
          },
          "thumbnail_url": {
            "title": "Thumbnail Url",
            "description": "The URL of the thumbnail for the video",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "platform": {
            "$ref": "#/components/schemas/VideoPlatform",
            "description": "The platform of the video"
          },
          "data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/YoutubeData"
              },
              {
                "$ref": "#/components/schemas/TwitchData"
              }
            ],
            "title": "Data",
            "description": "The data of the video"
          }
        },
        "type": "object",
        "required": [
          "title",
          "description",
          "platform",
          "data"
        ],
        "title": "VideoCreate"
      },
      "VideoPlatform": {
        "type": "string",
        "enum": [
          "youtube",
          "twitch"
        ],
        "title": "VideoPlatform"
      },
      "VideoRead": {
        "properties": {
          "title": {
            "type": "string",
            "maxLength": 255,
            "title": "Title",
            "description": "The title of the video"
          },
          "description": {
            "type": "string",
            "maxLength": 512,
            "title": "Description",
            "description": "The description of the video"
          },
          "order_id": {
            "type": "integer",
            "title": "Order Id",
            "description": "The order ID of the video",
            "default": 0
          },
          "thumbnail_url": {
            "title": "Thumbnail Url",
            "description": "The URL of the thumbnail for the video",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "platform": {
            "$ref": "#/components/schemas/VideoPlatform",
            "description": "The platform of the video"
          },
          "data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/YoutubeData"
              },
              {
                "$ref": "#/components/schemas/TwitchData"
              }
            ],
            "title": "Data",
            "description": "The data of the video"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the video"
          }
        },
        "type": "object",
        "required": [
          "title",
          "description",
          "platform",
          "data",
          "id"
        ],
        "title": "VideoRead"
      },
      "VideoUpdate": {
        "properties": {
          "title": {
            "title": "Title",
            "description": "The title of the video",
            "type": "string",
            "maxLength": 255
          },
          "description": {
            "title": "Description",
            "description": "The description of the video",
            "type": "string",
            "maxLength": 512
          },
          "order_id": {
            "title": "Order Id",
            "description": "The order ID of the video",
            "type": "integer"
          },
          "thumbnail_url": {
            "title": "Thumbnail Url",
            "description": "The URL of the thumbnail for the video",
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          }
        },
        "type": "object",
        "title": "VideoUpdate"
      },
      "ViewPort": {
        "properties": {
          "x": {
            "type": "number",
            "title": "X"
          },
          "y": {
            "type": "number",
            "title": "Y"
          },
          "zoom": {
            "type": "number",
            "title": "Zoom"
          }
        },
        "type": "object",
        "required": [
          "x",
          "y",
          "zoom"
        ],
        "title": "ViewPort"
      },
      "VirtualCurrencyPrice": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "virtual_currency",
            "enum": [
              "virtual_currency"
            ]
          },
          "virtual_currency_id": {
            "type": "string",
            "maxLength": 32,
            "title": "Virtual Currency Id"
          },
          "virtual_currency_sku": {
            "title": "Virtual Currency SKU",
            "type": "string"
          },
          "amount": {
            "type": "integer",
            "title": "Amount"
          }
        },
        "type": "object",
        "required": [
          "virtual_currency_id",
          "amount"
        ],
        "title": "VirtualCurrencyPrice"
      },
      "VirtualCurrencyRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "vc_settings": {
            "$ref": "#/components/schemas/VirtualCurrencySettings",
            "description": "The settings of the virtual currency"
          },
          "start_at": {
            "title": "Start At",
            "description": "The timestamp of when the virtual currency becomes active",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "description": "The timestamp of when the virtual currency expires",
            "type": "integer"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the virtual currency"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "VirtualCurrencyRead",
            "enum": [
              "VirtualCurrencyRead"
            ]
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the virtual currency was archived",
            "type": "number"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "vc_settings",
          "id"
        ],
        "title": "VirtualCurrencyRead"
      },
      "VirtualCurrencySettings": {
        "properties": {
          "rate": {
            "type": "number",
            "exclusiveMinimum": 0.0,
            "title": "Rate",
            "default": 1.0
          },
          "enabled_for_checkout": {
            "type": "boolean",
            "title": "Enabled For Checkout",
            "default": false
          },
          "reward_active": {
            "type": "boolean",
            "title": "Reward Active",
            "default": false
          },
          "reward_percentage": {
            "type": "number",
            "minimum": 0.0,
            "title": "Reward Percentage",
            "default": 0.0
          },
          "excluded_sales_channels": {
            "title": "Excluded Sales Channels",
            "items": {
              "$ref": "#/components/schemas/OrderSourceType"
            },
            "type": "array"
          },
          "price_source": {
            "$ref": "#/components/schemas/VCPriceSource",
            "default": "local_price"
          },
          "allow_non_secure_auth": {
            "type": "boolean",
            "title": "Allow Non Secure Auth",
            "default": false
          }
        },
        "type": "object",
        "title": "VirtualCurrencySettings"
      },
      "VirtualCurrencyShort": {
        "properties": {
          "sku": {
            "type": "string",
            "title": "SKU"
          },
          "quantity": {
            "type": "integer",
            "title": "Quantity"
          }
        },
        "type": "object",
        "required": [
          "sku",
          "quantity"
        ],
        "title": "VirtualCurrencyShort"
      },
      "VirtualSKUBonusSource": {
        "type": "string",
        "enum": [
          "custom",
          "event_item"
        ],
        "title": "VirtualSKUBonusSource"
      },
      "WebhookActionNode": {
        "properties": {
          "id": {
            "type": "string",
            "title": "Id"
          },
          "next_node_id": {
            "title": "Next Node Id",
            "type": "string"
          },
          "title": {
            "title": "Title",
            "type": "string"
          },
          "x": {
            "type": "integer",
            "title": "X"
          },
          "y": {
            "type": "integer",
            "title": "Y"
          },
          "result": {
            "title": "Result",
            "type": "string"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "WebhookActionNode",
            "enum": [
              "WebhookActionNode"
            ]
          },
          "break_on_error": {
            "title": "Break On Error",
            "type": "boolean"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "body": {
            "title": "Body",
            "type": "string"
          },
          "item_id": {
            "title": "Item Id",
            "type": "string",
            "maxLength": 32
          },
          "link_created_offer": {
            "title": "Link Created Offer",
            "type": "boolean"
          },
          "store_item_id": {
            "title": "Store Item Id",
            "type": "string",
            "maxLength": 32
          },
          "store_id": {
            "title": "Store Id",
            "type": "string",
            "maxLength": 32
          },
          "content_type": {
            "$ref": "#/components/schemas/HubPopupContentType"
          },
          "button_text": {
            "title": "Button Text",
            "type": "string"
          },
          "button_link": {
            "title": "Button Link",
            "type": "string"
          },
          "items": {
            "title": "Items",
            "items": {
              "$ref": "#/components/schemas/CommunicationItem"
            },
            "type": "array"
          },
          "url": {
            "title": "Url",
            "type": "string"
          },
          "response": {
            "title": "Response",
            "type": "string"
          },
          "status_code": {
            "title": "Status Code",
            "type": "integer"
          }
        },
        "type": "object",
        "required": [
          "id",
          "x",
          "y"
        ],
        "title": "WebhookActionNode"
      },
      "WebhookCreate": {
        "properties": {
          "events": {
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            },
            "type": "array",
            "description": "The list of events that trigger the webhook."
          },
          "url": {
            "type": "string",
            "title": "Url",
            "description": "The URL where the webhook will be sent."
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of a webhook.",
            "nullable": true
          },
          "method": {
            "description": "The HTTP method used to send the webhook.",
            "$ref": "#/components/schemas/WebhookMethod"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled",
            "description": "The enabled status of the webhook.",
            "default": true
          },
          "enabled_logs": {
            "type": "boolean",
            "title": "Enabled Logs",
            "description": "The enabled logs of the webhook.",
            "default": true
          },
          "player_context_enabled": {
            "type": "boolean",
            "title": "Player Context Enabled",
            "description": "Enable send player attributes in context",
            "nullable": true
          },
          "batch_mode": {
            "type": "boolean",
            "title": "Batch Mode",
            "description": "Enable batch delivery [mode](https://docs.aghanim.com/webhooks/batching).",
            "nullable": true
          }
        },
        "type": "object",
        "required": [
          "events",
          "url",
          "method"
        ],
        "title": "WebhookCreate"
      },
      "WebhookEventType": {
        "type": "string",
        "enum": [
          "player.verify",
          "item.add",
          "item.remove",
          "analytics.checkout.payment_method.select",
          "analytics.checkout.submit_payment_form",
          "analytics.checkout.back_store",
          "analytics.checkout.back_game",
          "analytics.checkout.pageview",
          "analytics.checkout.pageshow",
          "analytics.checkout.pagehide",
          "analytics.checkout.pageexit",
          "analytics.checkout.payment_method.close",
          "analytics.hub.sign_up",
          "analytics.hub.login",
          "analytics.hub.buy_click",
          "analytics.hub.free_item_claimed",
          "batch.ready",
          "order.*",
          "order.created",
          "order.paid",
          "order.canceled",
          "order.refunded",
          "payment.*",
          "payment.succeeded",
          "payment.abandoned",
          "payment.canceled",
          "payment.chargeback",
          "payment.declined",
          "payment.dispute",
          "payment.expired",
          "payment.pending",
          "payment.refunded",
          "payment.rejected",
          "payment.voided",
          "fraud.reported",
          "subscription.activated",
          "subscription.updated",
          "subscription.renewed",
          "subscription.deactivated",
          "coupon.redeemed",
          "ingame.push",
          "ingame.popup",
          "campaign.custom",
          "player.is_idle",
          "player.lookup",
          "player.marketing_consent.updated",
          "player.update",
          "store.get",
          "page.get",
          "daily_reward.get"
        ],
        "title": "WebhookEventType",
        "description": "An enumeration."
      },
      "WebhookMethod": {
        "type": "string",
        "enum": [
          "GET",
          "POST"
        ],
        "title": "WebhookMethod",
        "description": "An enumeration."
      },
      "WebhookRedacted": {
        "properties": {
          "events": {
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            },
            "type": "array",
            "description": "The list of events that trigger the webhook."
          },
          "url": {
            "type": "string",
            "title": "Url",
            "description": "The URL where the webhook will be sent."
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of a webhook.",
            "nullable": true
          },
          "method": {
            "description": "The HTTP method used to send the webhook.",
            "$ref": "#/components/schemas/WebhookMethod"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled",
            "description": "The enabled status of the webhook.",
            "default": true
          },
          "enabled_logs": {
            "type": "boolean",
            "title": "Enabled Logs",
            "description": "The enabled logs of the webhook.",
            "default": true
          },
          "player_context_enabled": {
            "type": "boolean",
            "title": "Player Context Enabled",
            "description": "Enable send player attributes in context",
            "nullable": true
          },
          "batch_mode": {
            "type": "boolean",
            "title": "Batch Mode",
            "description": "Enable batch delivery [mode](https://docs.aghanim.com/webhooks/batching).",
            "nullable": true
          },
          "secret_redacted": {
            "type": "string",
            "title": "Secret Redacted"
          },
          "id": {
            "type": "string",
            "title": "Id",
            "description": "The unique identifier of the webhook."
          },
          "game_id": {
            "type": "string",
            "title": "Game Id",
            "description": "The unique identifier of the game."
          }
        },
        "type": "object",
        "required": [
          "events",
          "url",
          "method",
          "secret_redacted",
          "id",
          "game_id"
        ],
        "title": "WebhookRedacted"
      },
      "WebhookRevealed": {
        "properties": {
          "events": {
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            },
            "type": "array",
            "description": "The list of events that trigger the webhook."
          },
          "url": {
            "type": "string",
            "title": "Url",
            "description": "The URL where the webhook will be sent."
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of a webhook.",
            "nullable": true
          },
          "method": {
            "description": "The HTTP method used to send the webhook.",
            "$ref": "#/components/schemas/WebhookMethod"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled",
            "description": "The enabled status of the webhook.",
            "default": true
          },
          "enabled_logs": {
            "type": "boolean",
            "title": "Enabled Logs",
            "description": "The enabled logs of the webhook.",
            "default": true
          },
          "player_context_enabled": {
            "type": "boolean",
            "title": "Player Context Enabled",
            "description": "Enable send player attributes in context",
            "nullable": true
          },
          "batch_mode": {
            "type": "boolean",
            "title": "Batch Mode",
            "description": "Enable batch delivery [mode](https://docs.aghanim.com/webhooks/batching).",
            "nullable": true
          },
          "id": {
            "type": "string",
            "title": "Id",
            "description": "The unique identifier of the webhook."
          },
          "game_id": {
            "type": "string",
            "title": "Game Id",
            "description": "The unique identifier of the game."
          },
          "secret": {
            "type": "string",
            "title": "Secret",
            "description": "The secret used to sign the webhook."
          }
        },
        "type": "object",
        "required": [
          "events",
          "url",
          "method",
          "id",
          "game_id",
          "secret"
        ],
        "title": "WebhookRevealed"
      },
      "WebhookUpdate": {
        "properties": {
          "events": {
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            },
            "type": "array",
            "description": "The list of events that trigger the webhook."
          },
          "url": {
            "type": "string",
            "title": "Url",
            "description": "The URL where the webhook will be sent."
          },
          "description": {
            "type": "string",
            "title": "Description",
            "description": "The description of a webhook."
          },
          "method": {
            "description": "The HTTP method used to send the webhook.",
            "$ref": "#/components/schemas/WebhookMethod"
          },
          "enabled": {
            "type": "boolean",
            "title": "Enabled",
            "description": "The enabled status of the webhook."
          },
          "enabled_logs": {
            "type": "boolean",
            "title": "Enabled Logs",
            "description": "The enabled logs of the webhook."
          },
          "player_context_enabled": {
            "type": "boolean",
            "title": "Player Context Enabled",
            "description": "Enable player context.",
            "nullable": true
          },
          "batch_mode": {
            "type": "boolean",
            "title": "Batch Mode",
            "description": "Enable batch delivery mode."
          }
        },
        "type": "object",
        "title": "WebhookUpdate"
      },
      "Weekday": {
        "type": "string",
        "enum": [
          "monday",
          "tuesday",
          "wednesday",
          "thursday",
          "friday",
          "saturday",
          "sunday"
        ],
        "title": "Weekday"
      },
      "YoutubeBlock": {
        "properties": {
          "block": {
            "type": "string",
            "title": "Block",
            "default": "YoutubeBlock",
            "enum": [
              "YoutubeBlock"
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "start_at": {
            "title": "Start At",
            "type": "integer"
          },
          "end_at": {
            "title": "End At",
            "type": "integer"
          },
          "video": {
            "$ref": "#/components/schemas/VideoBlockSettings"
          }
        },
        "type": "object",
        "required": [
          "video"
        ],
        "title": "YoutubeBlock"
      },
      "YoutubeData": {
        "properties": {
          "video_id": {
            "type": "string",
            "title": "Video Id",
            "description": "The video ID of the YouTube video"
          }
        },
        "type": "object",
        "required": [
          "video_id"
        ],
        "title": "YoutubeData"
      },
      "aghanim__loyalty__schemas__IssueLoyaltyPointsRequest": {
        "properties": {
          "user_id": {
            "type": "string",
            "maxLength": 32,
            "title": "User Id",
            "description": "The unique identifier of the user"
          },
          "amount": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Amount",
            "description": "The amount of loyalty points to issue"
          }
        },
        "type": "object",
        "required": [
          "user_id",
          "amount"
        ],
        "title": "IssueLoyaltyPointsRequest"
      },
      "aghanim__s2s__player__schemas__IssueLoyaltyPointsRequest": {
        "properties": {
          "amount": {
            "type": "integer",
            "exclusiveMinimum": 0.0,
            "title": "Amount",
            "description": "The amount of loyalty points to issue."
          }
        },
        "type": "object",
        "required": [
          "amount"
        ],
        "title": "IssueLoyaltyPointsRequest"
      },
      "aghanim__s2s__player__subscription__schemas__SubscriptionRead": {
        "properties": {
          "sku": {
            "type": "string",
            "title": "SKU",
            "description": "Subscription unique SKU."
          },
          "id": {
            "type": "string",
            "title": "Id",
            "description": "Unique identifier for this subscription instance. Use this ID to track and manage the subscription throughout its lifecycle."
          },
          "name": {
            "type": "string",
            "title": "Name",
            "description": "Subscription display name."
          },
          "order_id": {
            "type": "string",
            "title": "Order Id",
            "description": "Order ID where the subscription was originally activated. Use this to correlate with order webhooks."
          },
          "status": {
            "$ref": "#/components/schemas/SubscriptionStatus",
            "description": "Subscription status."
          },
          "created_at": {
            "type": "integer",
            "title": "Created At",
            "description": "Subscription creation date in Unix epoch time (seconds)."
          },
          "updated_at": {
            "title": "Updated At",
            "description": "Subscription last update date in Unix epoch time (seconds). Null if the subscription has not been updated.",
            "type": "integer"
          },
          "effective_until": {
            "title": "Effective Until",
            "description": "The date until which the subscription is effective in Unix epoch time (seconds) representing when the subscription benefits should remain accessible.",
            "type": "integer"
          },
          "metadata": {
            "title": "Metadata",
            "description": "Custom key-value pairs attached to the subscription. Null if no metadata is set.",
            "additionalProperties": true,
            "type": "object"
          },
          "plan": {
            "$ref": "#/components/schemas/Plan",
            "description": "Selected plan for the subscription."
          }
        },
        "type": "object",
        "required": [
          "sku",
          "id",
          "name",
          "order_id",
          "status",
          "created_at",
          "plan"
        ],
        "title": "SubscriptionRead"
      },
      "SubscriptionRead": {
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name",
            "description": "The name of the item"
          },
          "description": {
            "title": "Description",
            "description": "The description of the item",
            "nullable": true,
            "type": "string",
            "maxLength": 512
          },
          "highlights": {
            "description": "Localized benefit descriptions shown for the item",
            "nullable": true,
            "$ref": "#/components/schemas/Highlights"
          },
          "price": {
            "title": "Price",
            "description": "The price of the item in minor [currency units](https://docs.aghanim.com/currencies/). The system will automatically adjust this to the closest available price point. If you want to set a specific price point, use `price_template_id` instead.",
            "type": "integer"
          },
          "price_point": {
            "title": "Price Point",
            "description": "The price point for local prices `DEPRECATED`",
            "type": "integer",
            "maximum": 5000000.0,
            "exclusiveMinimum": 0.0
          },
          "price_template_id": {
            "title": "Price Template Id",
            "description": "The ID of the price template",
            "type": "string",
            "maxLength": 32
          },
          "reward_points_price": {
            "title": "Reward Points Price",
            "description": "The reward points price for local prices",
            "type": "integer"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency",
            "description": "The currency of the item"
          },
          "sku": {
            "type": "string",
            "maxLength": 255,
            "title": "SKU",
            "description": "The SKU of the item",
            "unique": true
          },
          "image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url",
            "description": "The URL of the image for the item"
          },
          "image_url_apple": {
            "title": "Image Url Apple",
            "description": "The Apple-specific URL of the image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "icon_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Icon Url",
            "description": "The URL of the icon for the item"
          },
          "icon_url_apple": {
            "title": "Icon Url Apple",
            "description": "The Apple-specific URL of the icon for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "image_url_featured": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Image Url Featured",
            "description": "The URL of the image for the item in the featured card"
          },
          "image_url_featured_apple": {
            "title": "Image Url Featured Apple",
            "description": "The Apple-specific URL of the image for the item in the featured card",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Background Image Url",
            "description": "The URL of the background image for the item"
          },
          "background_image_url_apple": {
            "title": "Background Image Url Apple",
            "description": "The Apple-specific URL of the background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "background_image_color": {
            "title": "Background Image Color",
            "description": "The color of the background image for the item",
            "type": "string"
          },
          "featured_card_background_image_url": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 65536,
                "minLength": 1,
                "format": "uri"
              },
              {
                "type": "string",
                "enum": [
                  ""
                ]
              }
            ],
            "title": "Featured Card Background Image Url",
            "description": "The URL of the featured card background image for the item"
          },
          "featured_card_background_image_url_apple": {
            "title": "Featured Card Background Image Url Apple",
            "description": "The Apple-specific URL of the featured card background image for the item",
            "deprecated": true,
            "type": "string",
            "maxLength": 65536,
            "minLength": 1,
            "format": "uri"
          },
          "type": {
            "$ref": "#/components/schemas/ItemType",
            "description": "The type of the item"
          },
          "view_option": {
            "description": "Controls the store appearance of the item",
            "default": "default",
            "$ref": "#/components/schemas/ItemViewOption"
          },
          "quantity": {
            "type": "integer",
            "maximum": 1e+18,
            "minimum": 1.0,
            "title": "Quantity",
            "description": "The quantity of the item",
            "default": 1
          },
          "is_stackable": {
            "type": "boolean",
            "title": "Is Stackable",
            "description": "Whether the item is stackable"
          },
          "is_currency": {
            "type": "boolean",
            "title": "Is Currency",
            "description": "Whether the item is a currency."
          },
          "position": {
            "title": "Position",
            "description": "Position of the item in list",
            "type": "integer"
          },
          "categories": {
            "title": "Categories",
            "description": "The list of category IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "duration": {
            "title": "Duration",
            "description": "Item's in-game action in seconds",
            "type": "integer"
          },
          "enable_reward_points_redemption": {
            "title": "Enable Reward Points Redemption",
            "description": "Allows using Reward Points on purchase",
            "type": "boolean"
          },
          "nested_items": {
            "title": "Nested Items",
            "description": "The child items of the bundle",
            "items": {
              "$ref": "#/components/schemas/NestedItem"
            },
            "type": "array"
          },
          "meta": {
            "title": "Meta",
            "additionalProperties": true,
            "type": "object"
          },
          "id": {
            "type": "string",
            "maxLength": 32,
            "title": "Id",
            "description": "The unique identifier of the subscription"
          },
          "model_type": {
            "type": "string",
            "title": "Model Type",
            "default": "SubscriptionRead",
            "enum": [
              "SubscriptionRead"
            ]
          },
          "created_at": {
            "type": "number",
            "title": "Created At",
            "description": "The timestamp of when the subscription was created"
          },
          "modified_at": {
            "title": "Modified At",
            "description": "The timestamp of when the subscription was modified",
            "type": "number"
          },
          "archived_at": {
            "title": "Archived At",
            "description": "The timestamp of when the subscription was archived",
            "type": "number"
          },
          "comment": {
            "title": "Comment",
            "description": "Internal comment for this subscription",
            "type": "string",
            "maxLength": 255
          },
          "subscription_settings": {
            "$ref": "#/components/schemas/SubscriptionSettings",
            "description": "The settings of the subscription"
          }
        },
        "type": "object",
        "required": [
          "name",
          "currency",
          "sku",
          "type",
          "is_stackable",
          "is_currency",
          "id",
          "created_at",
          "subscription_settings"
        ],
        "title": "SubscriptionRead"
      }
    },
    "securitySchemes": {
      "HTTPBearer": {
        "type": "http",
        "scheme": "bearer",
        "description": "Refer to the [Authentication](https://docs.aghanim.com/api-reference/) section for instructions on obtaining an API key and use it as the `Bearer` token."
      }
    }
  },
  "servers": [
    {
      "url": "https://api.aghanim.com/s2s",
      "description": "Production"
    }
  ]
}
