Even when clients know which operation to call, they can disagree with the server about how to supply its inputs. One bookstore client might send tag=architecture,reliability when the server expects tag=architecture&tag=reliability. Another might submit a review without a rating because the documentation shows rating in an example without saying it is required. Both problems come from input details the documentation leaves unstated.
An input contract needs to describe location, representation, and permitted values.
This chapter explains how OpenAPI 3.1.2 expresses parameters and request bodies, using catalog filtering and review submission as practical examples.