I think you want to say the opposite. I don’t see why it is difficult to run synchronous code in an asynchronous context. It is just a code that will block the event loop if it takes too much time. Not a big deal. But called an async function in a synchronous code is another story. You need to use some api like loop.run_until_complete, etc..