An API contract describes what the server accepts and returns: routes, methods, input and output formats, status codes, errors. It lets the client and server be developed and tested separately, and be verified automatically, for example with an OpenAPI specification.