Hi All,
I have come across a requirement where I need to create an OData based API.
I have usually developed a Restful API based on Raml.
I am not able to find any useful documents where I can see the difference between these two
please help me with this.
which one to use and how does benefit with Raml based API.
Thanks in Advance,
Hi @dheerajsen,
As the documentations say, OData helps you expose data source services (Oracle DB, MySQL etc) as restful APIs. Using Odata, you can query the datasources over HTTP (with odata specific conventions query params etc). Please refer this link: understand-odata-in-6-steps
The difference is that, Odata is solely used for datasource interactions where as RAML based APIs are used for implementing any typical Restful APIs. In an ideal case in Mule API-led implementation, you can define your system layer as an Odata API (but not sure how much robustness you can bring in as of now :) ), and process/experience layer as normal RAML API. Please check this link: creating-an-odata-api-with-apikit and check out the 'OData MySQL example' provided there for a sample implementation.
Thanks,
Shijil.R.K