So at least there is a method to enable/disable engine assignment rules. The Rest API for it though uses version 4 which I don’t think has been exposed (at least it hasn’t been in FME Flow 2023). You can still figure it out, but because, it’s not exposed you can expect that it might change between FME Server versions.
Essentially you would want to have all jobs which require ArcGIS to be directed to a certain queue, this is easiest to do if you have then all in a specific repository. You would then set up a rule to assign engines to that queue. The engine assignment rule can be enabled/disabled meaning that a queue can have no engines assigned to it and the’ll just get queued up. The queue will cleared again once the engine assignment rule as been enabled again
What you could do right now, is have a special queue that has no engines assigned to it. If you detect that the ArcServer is down then you can redirect all the jobs to that queue which has no engines (You can use job routing tags to specify which queue to send jobs to). This would mean that what ever process you use right now to submit the jobs to FME Server needs to know the status of the ArcGIS.
Later when the server is back up you can go in and manually assign engines to the queue to start of the process.
Indeed it would be better to have automated control over these rules. I did figure out the call to enable/disable engine assignment rules but I wouldn’t rely on it not changing with future versions of FME.
Heres the documentation on queue control: https://docs.safe.com/fme/html/FME-Flow/WebUI/Queue-Control.htm