So path params are in the order they occur in the path.
ruma-client-api contains serializable types for the requests and responses for each endpoint in the Matrix client API specification. These types can be shared by client and server code.