In my game, there will be "season resets" that occur once per month. A scheduled cloud script will run at this time, updating player statistics and player data. In order to prevent various types of issues, it makes sense to me to temporarily make the game unavailable in "maintenance mode" for perhaps 15 or 30 minutes.
Is there a recommended way to do this? A few solutions I can think of:
1. Use the "Disable client API access" option in title settings -> api features
2. Update the permissions policy to disable API calls from the client
3. Have a flag in title data indicating if in maintenance mode, then all CloudScript functions check the flag before executing. (I'm sure this would work, but seems overboard)
Solution 1 seems ideal (except that the client won't get a response like, "In maintenance mode," but I can work the timing logic into the client to predict when maintenance occurs). I mainly wanted to check, is this part of the intended use for this option, and I assume that I can re-enable the client API access with no issue? If I should not use this option in this way, what solution is recommended?
Thanks!
-Matt
Edit: I think the solution I'm going to use, is #3 above. Each season, 15 before and after the maintenance is done, a scheduled cloud script will set the title-data flag. Then all cloudscript functions will check if in maintenance mode, which won't cause much any API overhead because I'm already calling getCombinedInfo with every cloudscript.