While our switches and routers do use Spanning Tree Protocol, and no network changes were made to trigger the routing loop - unfortunately it still happened.
Strangely using STP debugging commands and checking the logs of each switch - it wasn't even clear that it was an STP loop, we only managed to determine that it was a routing loop through trial and error, by turning ports off until the network came back up.
It's unclear why the issue was triggered, given no network changes were made for a long time, but nevertheless, we've resolved the issue :)