Defining Schema
Naming things is one of the hardest things in computer science. This is because it involves collaborating with other people and detailed semantics.
When you are building an api in tandem with developing an application, changes to the schema need to be implemented in both places. This can mean that the changes need to be coordinated across teams or in different languages. For projects in production, deploying these together can become quite sensitive.