MuleSoft Releases RAML .NET Parser, Visual Studio Extension

MuleSoft (parent company of ProgrammableWebhas released a parser and Visual Studio extension for its Anypoint Platform that aim to give developers the ability to more easily work with APIs using RAML.

RAML, the RESTful API Modeling Language, is based on YAML, which has become an especially popular data representation format for configuration files. Using RAML, developers can document APIs in a human-readable form, define resources and methods, detail response formats and reuse common usage patterns. 

With MuleSoft's .NET RAML parser, developers can load and work with RAML documents. In Visual Studio, developers can now use RAML definitions to generate client proxies. In a blog post, MuleSoft software architect Pablo Cibraro explained, "This proxy internally references a ASP.NET Web API HttpClient class to make the underline calls to the Web API. Therefore, a developer can still use the available extensions and methods available in HttpClient. The proxy will also include the model classes inferred from the JSON schemas exposed in the RAML definition."

Additionally, it is possible to generate a full ASP.NET Web API using a RAML API definition. As Cibraro detailed, "The implementation includes controller classes and route registrations that map exactly to the resources exposed in the RAML definition and model classes for their representation. The model classes are generated from the available JSON schemas."

Making it easier to develop APIs

REST APIs have taken over the world and developers increasingly find themselves building APIs and API clients. RAML aims to make it easier to developers to define and document RESTful APIs. When RAML was released as an open specification in October 2013, RAML co-chairman Uri Sarid explained, "In defining RAML, we looked to address some of the practical and pervasive problems across nearly all APIs. It seeks to address the overarching concerns of any API strategy, in as lightweight a way as possible."

Of course, RAML's ultimate ability to be of practical use to developers depends on there being sufficient tooling that takes advantage of what RAML can offer. RAML-backer MuleSoft seems committed to helping build out that tooling and the release of a .NET parser and Visual Studio extension should be a welcome addition for .NET developers. Other tooling available includes:  RAML JavaScript ParserAPIkit 1.0, and API Notebook.

Be sure to read the next API Design article: LucyBot Eliminates Cross-Language Programming Necessity