Add docstrings to functions to clarify their purpose/parameters/expected return
Develop the error handling in world/create_hero. Maybe a more descriptive error message, so you know what went wrong.
Build on the error handling in dungeon/create_dungeon. Possibly a more descriptive error message, so you know what went wrong.
Put in error handling in dungeon/create_monster. Right now, there is none. It would be helpful to know if an attempt to create a monster failed and why it did.
Add error handling in guild/create_guild. Currently, there is none. It would be helpful to know if an attempt to create a monster failed and why it did.
Remove unnecessary comments like on lines 49-51 in world.py.
You could create more helper functions to simplify the longer functions in your code.
Should the access token be in your .env file and not hardcoded in your example flows? I think this would make your project more secure.
Make the error message in guild/recruit_hero more specific. Possibly separate the message depending on if the hero was not found or if it is already in a guild.
In the world/create_hero endpoint, validate the level parameter to ensure it falls within a valid range and is of the correct data type.
In the dungeon/create_dungeon endpoint, validate the level parameter to ensure it falls within a valid range and is of the correct data type.
In the dungeon/create_monster endpoint, validate the level parameter to ensure it falls within a valid range and is of the correct data type.