I found the (kinda minimalistic) documentation about overriding contexts here: https://docs.blender.org/api/current/bpy.ops.html#overriding-context
Unfortunately, it only explains how to override setting the selection or the active object for script runs. An extensive list on what you can override with it would be helpful, but I wasn't able to find one.
Specifically, I want to override which objects are rendered using
bpy.ops.render.render()
usage could look something like this
override = context.copy()
override["render_objects"] = list(obj1, obj2, obj3)
with context.temp_override(**override):
bpy.ops.render.render()