webrpc is a schema-driven approach to writing apis with code generation of full client libraries in many languages