Very interesting solution!
Maybe there's also a way to integrate VCRpy with your workflow: github.com/kevin1024/vcrpy
This way you can return realistic responses while you're offline.
It's mainly used for offline testing but I don't think there's anything precluding you to use it in the actual code.
Maybe you can merge your "sandbox switch" with VCR and create a library of request / responses you can load while you're offline.
Hope this helps!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.